Fəsil 01 · 3 dəq oxu

Datadan öyrənmək

Datadan öyrənmək

Adi proqram insanın yazdığı funksiyadır: input-lar daxil olur, qaydalar tətbiq edilir, output-lar alınır. Machine learning bu sxemi tərsinə çevirir. Biz input-ları və almaq istədiyimiz output-ları veririk, alqoritm isə onları birləşdirən funksiyanı axtarır. Tapılan funksiya model adlanır.

Bütün hiylə məhz bu tərsinə çevirmədədir. Kitabın qalan hissəsi isə bu axtarışı necə yaxşı aparmaq və onun nə vaxt yanlış istiqamətə getdiyini necə bilmək barədə təfərrüatlardır.

Öyrənmə proqramlaşdırmadan nə vaxt üstündür

Datadan öyrənmək o zaman zəhmətə dəyər ki, aşağıdakı şərtlərdən ən azı biri ödənsin:

  • Qaydalar məlum deyil və ya yazıla bilmir. Pişik şəklini it şəklindən fərqləndirən qaydaları heç kim kağıza köçürə bilməz, amma nümunələr ucuzdur.
  • Qaydalar dəyişir. Fırıldaqçılıq sxemləri, klik davranışı və dil daim sürüşür. Təzə data üzərində retrain edilmiş model bu dəyişikliyi izləyir; qaydalar kitabçası isə yox.
  • Qaydalar həddindən artıq çoxdur. Yüz milyon istifadəçidən birinə on milyon məhsuldan birini tövsiyə etmək heç kimin əl ilə tərtib edə biləcəyi lookup table deyil.

Bu şərtlərdən heç biri ödənmirsə, model adətən yanlış alətdir. Vergi hesablamasının qaydaları məlumdur; onları nümunələrdən öyrənmək daha yavaş, daha az dəqiq və audit edilməsi mümkünsüz olardı.

Üç tərkib hissəsi

Hər bir öyrənmə quruluşunun üç komponenti var.

Data. Model-in öhdəsindən gəlməli olduğu şeyin nümunələri. hər nümunə ilə, yəni düzgün cavabla gəlir. Unsupervised learning-də yoxdur və məqsəd datada struktur tapmaqdır. Reinforcement learning isə ayrı dayanır: agent hərəkət edir, mühit reward ilə cavab verir və model policy öyrənir.

Hypothesis space. Alqoritmin seçim edə biləcəyi funksiyalar ailəsi. Linear model-lər yalnız düz xətt çəkə bilir; oxlara paralel düzbucaqlılar çəkir; kifayət qədər capacity olduqda demək olar ki, hər şeyi çəkə bilir. Daha böyük hypothesis space daha çox şeyi təsvir edə bilir, amma onu axtarmaq çətin, aldatmaq isə asandır.

və . namizəd funksiyanın üzərində nə qədər səhv etdiyini ölçür. isə loss-u azaltmaq üçün funksiyanı tənzimləyir. Differentiable olan hər şey üçün əsas iş atı, çoxsaylı variantları ilə birlikdə, .

Məqsəd generalization-dır

mükəmməl təkrarlayan model qurmaq olduqca asandır: onu əzbərləmək kifayətdir. Belə model faydasızdır, çünki bizi maraqlandıran yeganə input-lar hələ görmədiklərimizdir.

model-in ilə eyni distribution-dan götürülmüş yeni data üzərində yaxşı işləmək qabiliyyətidir. Machine learning-dəki hər dizayn qərarı son nəticədə haqqındadır:

  • : model pattern-i tutmaq üçün həddindən artıq sadədir. Training error yüksəkdir. Çarə: daha çox capacity, daha yaxşı .
  • : model xas noise-u tutub. Training error aşağı, test error yüksəkdir. Çarə: daha çox data, , daha az capacity, .

Training və test nəticələri arasındakı fərq istənilən eksperimentdəki ən məlumatlı rəqəmdir. Hər şeydən əvvəl ona baxın.

Hər şeyin üzərində dayandığı fərziyyə

Model-lər gələcək datanın keçmiş dataya bənzəyəcəyini fərz edir. Formal dillə desək, training və nümunələri independent and identically distributed-dir. Sadə dillə: datanı topladığınız an ilə model-i istifadə etdiyiniz an arasında dünya dəyişmir.

Dünya isə daim dəyişir. Məhsul dəyişəndən sonra istifadəçilər başqa cür davranır. Sensorlar edir. Pandemiya hər demand forecast-ı yenidən yazır. nadir hal deyil; production-dakı model-in normal iş rejimidir və Fəsil 5 böyük ölçüdə onunla yaşamaq barədədir.

Qısa lüğət

TerminMənası
Model-in gördüyü input dəyişəni
/ targetModel-in proqnozlaşdırmağa öyrədildiyi output
Model-i fit etmək üçün istifadə olunan data
Model-lər və parametrlər arasında seçim etmək üçün istifadə olunan data
Real nəticəni qiymətləndirmək üçün sonda bir dəfə istifadə olunan data
Öyrənilməyən, mühəndisin seçdiyi parametr (tree depth, learning rate)
Train edilmiş model-in yeni input üzərində işlədilməsi

Bu kitab nəyi əhatə edir

Fəsil 2 praktikada həqiqətən istifadə edəcəyiniz supervised alqoritmləri gəzir. Fəsil 3 evaluation haqqındadır, real səhvlərin əksəriyyəti məhz orada baş verir. Fəsil 4 əhatə edir, tabular məsələlərin çoxunda onlar alqoritmdən daha vacibdir. Fəsil 5 production haqqındadır, model-in fayl olmaqdan çıxıb sistemə çevrildiyi yer.

Tapşırıqlar

  1. Öz işinizdən "qaydalar məlum deyil" meyarına uyğun gələn bir məsələ və uyğun gəlməyən bir məsələ adlandırın.
  2. İstənilən dataset götürün. Onu əzbərləyən model qurun. Training və test error-u ölçün. Aradakı fərqi müşahidə edin.
  3. Məhsulunuzun bu gün topladığı datanın bir il əvvəl topladığı datadan fərqlənə biləcəyi üç yolu sadalayın.