
Ushbu maqolaning maqsadi yangi boshlovchi ma'lumotlar olimlariga yordam berishdir. Chiziqli regressiya tenglamasini yechishning uchta usulini ko'rib chiqdik: analitik yechim, gradient tushishi va stoxastik gradient tushishi. Keyin, analitik yechim uchun biz formulani qo'lladik.
Ushbu maqolada, sarlavhadan ko'rinib turibdiki, biz ushbu formulaning qo'llanilishini asoslaymiz yoki boshqacha qilib aytganda, uni o'zimiz chiqaramiz.
Nima uchun formulaga ko'proq e'tibor berish mantiqan to'g'ri keladi
?
Ko'pgina hollarda, chiziqli regressiya bilan tanishish matritsa tenglamasidan boshlanadi. Biroq, formulaning qanday olinganligi haqida batafsil tushuntirishlar kam uchraydi.
Masalan, Yandexning mashinani o'rganish kurslarida talabalarga muntazamlashtirish bilan tanishtirilganda, ularga kutubxonadagi funksiyalardan foydalanish taklif etiladi. sklearn, lekin algoritmning matritsali ifodasi haqida bir og'iz ham aytilmagan. Aynan shu paytda ba'zi tinglovchilar ushbu masalani chuqurroq o'rganishni va tayyor funksiyalardan foydalanmasdan kod yozishni xohlashlari mumkin. Buning uchun avval tenglamani regularizer bilan matritsa shaklida ifodalashingiz kerak. Ushbu maqola qiziquvchilarga ushbu ko'nikmalarni o'zlashtirishga yordam beradi. Keling, boshlaymiz.
Dastlabki shartlar
Maqsadli ko'rsatkichlar
Bizda bir qator maqsadli indikator qiymatlari mavjud. Masalan, maqsadli indikator aktivning narxi bo'lishi mumkin: neft, oltin, bug'doy, dollar va boshqalar. Bir qator maqsadli indikator qiymatlari deganda biz kuzatuvlar sonini nazarda tutamiz. Bunday kuzatuvlar, masalan, bir yil davomida oylik neft narxlari bo'lishi mumkin, ya'ni bizda 12 ta maqsadli indikator qiymati bo'ladi. Keling, ba'zi belgilar bilan boshlaylik. Biz har bir maqsadli indikator qiymatini quyidagicha belgilaymiz
Jami bizda bor
kuzatishlar, ya'ni biz kuzatishlarimizni quyidagicha ifodalashimiz mumkin
.
Regressorlar
Maqsadli indikator qiymatlarini ma'lum darajada tushuntiruvchi omillar mavjud deb faraz qilaylik. Masalan, dollar/rubl kursiga neft narxi, Fed foiz stavkasi va boshqa omillar kuchli ta'sir qiladi. Bunday omillar regressorlar deb ataladi. Bundan tashqari, har bir maqsadli indikator qiymati regressor qiymatiga mos kelishi kerak. Ya'ni, agar bizda 2018-yilda har oy uchun 12 ta maqsadli indikator bo'lsa, unda bizda shu davr uchun 12 ta regressor qiymati ham bo'lishi kerak. Har bir regressorning qiymatlarini quyidagicha belgilaylik
Bizning holatimizda shunday bo'lsin
regressorlar (ya'ni
maqsadli indikator qiymatlariga ta'sir qiluvchi omillar). Bu shuni anglatadiki, bizning regressorlarimiz quyidagicha ifodalanishi mumkin: 1-regressor uchun (masalan, neft narxi):
, 2-regressor uchun (masalan, Fed stavkasi):
, Uchun "
-th" regressori: 
Maqsadli ko'rsatkichlarning regressorlarga bog'liqligi
Maqsadli indikator quyidagilarga bog'liq deb faraz qilaylik
regressorlardan "
-th" kuzatuvini quyidagi shakldagi chiziqli regressiya tenglamasi orqali ifodalash mumkin:

qayerda
- "
-th" regressorning 1 dan 1 gacha bo'lgan qiymati
,
— 1 dan 1 gacha bo'lgan regressorlar soni 
— regressor o'zgarganda hisoblangan maqsadli ko'rsatkichning o'rtacha qanchaga o'zgarishini ifodalovchi burchak koeffitsientlari.
Boshqacha aytganda, biz hamma uchunmiz (bundan mustasno)
) biz regressor uchun "bizning" koeffitsientimizni aniqlaymiz
, keyin koeffitsientlarni regressorlarning qiymatlariga ko'paytiramiz "
-th" kuzatuvi, natijada biz ba'zi taxminiy natijalarga erishamiz "
-th" maqsadli ko'rsatkich.
Shuning uchun biz bunday koeffitsientlarni tanlashimiz kerak
, buning uchun bizning taxminiy funksiyamizning qiymatlari
maqsadli indikator qiymatlariga iloji boricha yaqinroq joylashtiriladi.
Taxminiy funksiya sifatini baholash
Biz eng kichik kvadratlar usuli yordamida yaqinlashtiruvchi funksiyaning sifat bahosini aniqlaymiz. Bu holda sifat bahosi funksiyasi quyidagi shaklda bo'ladi:

Biz qiymat bo'lgan $w$ koeffitsientlarining shunday qiymatlarini tanlashimiz kerak
eng kichigi bo'ladi.
Biz tenglamani matritsa shakliga aylantiramiz
Vektorli tasvir
Avvalo, hayotingizni osonlashtirish uchun siz chiziqli regressiya tenglamasiga e'tibor berishingiz va birinchi koeffitsientga e'tibor berishingiz kerak
hech qanday regressor bilan ko'paytirilmaydi. Biroq, ma'lumotlarni matritsa shakliga o'tkazganimizda, yuqorida aytib o'tilgan holat hisob-kitoblarni jiddiy ravishda murakkablashtiradi. Shu munosabat bilan birinchi koeffitsient uchun yana bir regressorni kiritish taklif etiladi.
va uni bittaga tenglashtiring. Yoki aniqrog'i, har biri "
Bu regressorning "-chi" qiymati birga tenglashtirilishi kerak - axir, bittaga ko'paytirilganda hisoblash natijasi jihatidan hech narsa o'zgarmaydi va matritsa ko'paytma qoidalari jihatidan bizning azobimiz sezilarli darajada kamayadi.
Hozircha, sodda qilib aytganda, bizda faqat bitta "bor deb faraz qilaylik.
-th" kuzatuvi. Keyin, biz regressorlarning qiymatlarini taqdim etamiz "
vektor sifatida -th" kuzatuvi
Vektor
o'lchamga ega
, ya'ni
qatorlar va 1 ustun:

Biz kerakli koeffitsientlarni vektor shaklida ifodalaymiz
, o'lchamga ega
:

"uchun chiziqli regressiya tenglamasi
-th" kuzatuvi quyidagi shaklda bo'ladi:

Chiziqli model sifatini baholash funktsiyasi quyidagi shaklda bo'ladi:

E'tibor bering, matritsalarni ko'paytirish qoidalariga ko'ra, biz vektorni transpozitsiya qilishimiz kerak edi
.
Matritsa tasviri
Vektorlarni ko'paytirish natijasida biz quyidagi sonni olamiz:
, bu siz kutgan narsa. Bu raqam " ning taxminiy qiymatidir.
-th" maqsadli indikator. Lekin bizga faqat bitta maqsadli indikator qiymatining emas, balki ularning barchasining taxminiy qiymati kerak. Buning uchun biz barcha "
matritsa formatidagi -th" regressorlari
Olingan matritsaning o'lchamlari bor
:

Endi chiziqli regressiya tenglamasi quyidagicha ko'rinadi:

Maqsadli ko'rsatkichlarning qiymatlarini belgilaylik (barchasi
) vektor uchun
o'lcham
:

Endi chiziqli model sifatini baholash uchun tenglamani matritsa formatida yozishimiz mumkin:

Aslida, ushbu formuladan biz o'zimizga ma'lum bo'lgan formulani qo'shimcha ravishda olamiz 
Bu qanday amalga oshiriladi? Qavslar ochiladi, differentsiatsiya amalga oshiriladi, natijada hosil bo'lgan ifodalar o'zgartiriladi va hokazo, va endi biz aynan shunday qilamiz.
Matritsa transformatsiyalari
Qavslarni ochaylik


Keling, differentsiatsiya uchun tenglama tayyorlaylik
Buning uchun biz ba'zi o'zgarishlarni amalga oshiramiz. Keyingi hisob-kitoblarda, agar vektor bo'lsa, qulayroq bo'ladi
tenglamadagi har bir ko'paytmaning boshida ko'rsatiladi.
Transformatsiya 1

Bu qanday sodir bo'ldi? Bu savolga javob berish uchun ko'paytirilayotgan matritsalarning o'lchamlariga qarash va natijaning raqam yoki boshqa narsa ekanligini ko'rish kifoya.
.
Matritsa ifodalarining o'lchamlarini yozib chiqamiz.



Transformatsiya 2

Keling, buni 1-transformatsiyaga o'xshash tarzda yozamiz


Natijada, biz farqlashimiz kerak bo'lgan tenglamani olamiz:

Model sifatini baholash funktsiyasini farqlaylik
Keling, vektorga nisbatan farqlaylik
:




Savollar yo'q, nima uchun
bo'lmasligi kerak, lekin biz boshqa ikkita ifodadagi hosilalarni aniqlash amallarini batafsilroq ko'rib chiqamiz.
Farqlash 1
Keling, farqlashni kengaytiraylik: 
Matritsa yoki vektorning hosilasini aniqlash uchun ularning ichida nima borligiga qarash kerak. Keling, quyidagilarni ko'rib chiqaylik:



Matritsalar ko'paytmasini belgilaylik
matritsa orqali
Matritsa
Bu kvadrat va bundan tashqari, simmetrik. Bu xususiyatlar keyinchalik biz uchun foydali bo'ladi, shuning uchun ularni eslaylik. Matritsa
o'lchamga ega
:

Endi bizning vazifamiz vektorlarni matritsaga to'g'ri ko'paytirish va "ikkiga ko'paytirilgan ikki besh" bo'lmasligi kerak, shuning uchun diqqatimizni jamlaylik va juda ehtiyot bo'laylik.




Biroq, biz ancha murakkab ifodani o'ylab topdik! Aslida, biz sonni oldik — skalyar. Va endi, aslida, biz differentsializatsiyaga o'tamiz. Biz har bir koeffitsientga nisbatan hosil bo'lgan ifodaning hosilasini topishimiz kerak.
va chiqishda o'lcham vektorini oling
Har ehtimolga qarshi, men protseduralarni bosqichma-bosqich bayon qilaman:
1) ga nisbatan farqlash
, biz quyidagilarni olamiz: 
2) ga nisbatan farqlash
, biz quyidagilarni olamiz: 
3) ga nisbatan farqlash
, biz quyidagilarni olamiz: 
Chiqish va'da qilingan o'lcham vektoridir
:

Agar siz vektorga diqqat bilan qarasangiz, vektorning chap va mos keladigan o'ng elementlari shunday guruhlanishi mumkinligini ko'rasizki, natijada taqdim etilgan vektordan vektorni ajratib olish mumkin.
hajmi
. Masalan,
(vektorning yuqori qatorining chap elementi)
(vektorning yuqori qatorining o'ng elementi) quyidagicha ifodalanishi mumkin
va
- kabi
va hokazo har bir satr uchun. Keling, guruhlaymiz:

Keling, vektorni chiqaramiz
va natijada biz quyidagilarni olamiz:

Endi hosil bo'lgan matritsani batafsil ko'rib chiqamiz. Matritsa ikkita matritsaning yig'indisidir.
:

Eslatib o'tamiz, biroz oldinroq biz matritsaning bitta muhim xususiyatini ta'kidlagan edik
— u simmetrikdir. Ushbu xususiyatga asoslanib, biz ishonch bilan ifodani aytishimiz mumkin
teng
Buni matritsa mahsuloti elementini elementma-element kengaytirish orqali tekshirish oson.
Biz buni bu yerda qilmaymiz; xohlovchilar buni o'zlari tekshirishlari mumkin.
Keling, ifodamizga qaytaylik. O'zgarishlardan so'ng, biz xohlaganimizdek bo'lib chiqdi:

Demak, biz birinchi differentsiatsiyani yakunladik. Keling, ikkinchi ifodaga o'tamiz.
Farqlash 2

Keling, odatiy yo'ldan boraylik. Bu avvalgisidan ancha qisqaroq bo'ladi, shuning uchun ekrandan juda uzoqlashmang.
Keling, vektor va matritsa elementlarini elementma-element kengaytiramiz:



Keling, hozircha ikkalasini hisob-kitoblardan olib tashlaymiz — bu katta rol o'ynamaydi — lekin keyinroq uni qayta qo'yamiz. Keling, vektorlarni matritsaga ko'paytiramiz. Avval matritsani ko'paytiramiz.
vektorga
, bu yerda bizda hech qanday cheklovlar yo'q. Biz o'lcham vektorini olamiz
:

Keyingi amalni bajaramiz - vektorni ko'paytiramiz
natijada olingan vektorga. Chiqish quyidagicha bo'ladi:

Biz uni farqlaymiz. Chiqish o'lchov vektori bo'ladi
:

Bu sizga biror narsani eslatyaptimi? To'g'ri! Bu matritsa mahsuloti.
vektorga
.
Shunday qilib, ikkinchi differentsiatsiya muvaffaqiyatli yakunlandi.
Xulosa o'rniga
Endi tenglik qanday paydo bo'lganini bilamiz.
.
Nihoyat, biz asosiy formulalarni o'zgartirishning tezkor usulini tasvirlab beramiz.
Keling, model sifatini eng kichik kvadratlar usuli yordamida baholaylik:


Olingan ifodani farqlaylik:


adabiyot
Internet manbalari:
1)
2)
3)
4)
Darsliklar, muammolar to'plami:
1) Oliy matematika bo'yicha ma'ruza matnlari: to'liq kurs / D.T. Pismenny – 4-nashr. – M.: Iris-press, 2006
2) Amaliy regressiya tahlili / N. Draper, G. Smit - 2-nashr. – M.: Moliya va statistika, 1986 (ingliz tilidan tarjima)
3) Matritsa tenglamalarini yechish bo'yicha masalalar:
Manba: www.habr.com
