L.14Partea 3 / Învățarea
Cuprins

Supraînvățarea

Coborârea pantei caută cu încăpățânare reglajul care micșorează greșeala pe exemplele pe care i le dăm. Dacă modelul are prea multe butoane, el poate ajunge să nu mai greșească absolut deloc pe acele exemple — și tocmai atunci devine complet inutil în lumea reală. A memora pe de rost și a înțelege sunt două lucruri complet diferite, iar distanța dintre ele se poate măsura cu precizie.

Termeni: grad set de antrenare set de test subînvățare supraînvățare regularizare set de validare

Iluzia potrivirii perfecte

Până acum am lucrat cu o linie dreaptă echipată cu doar două butoane. Dreapta era cuminte și rigidă: nu putea trece exact prin toate punctele noastre de măsurătoare. Putem fi tentați să facem modelul mai flexibil: în loc de o dreaptă, folosim o curbă suplă, cu mai multe ondulații, adăugând câte un buton pentru fiecare nouă îndoitură. Numărul de îndoituri posibile este gradul curbei.

La prima vedere, logica pare de neclintit: cu cât avem mai multe butoane, cu atât modelul ar trebui să fie mai deștept și mai capabil. Dacă îi dăm destule butoane, potrivirea devine uluitoare: prin 14 puncte putem trece o curbă de gradul 13 care le atinge pe fiecare cu o precizie chirurgicală. Pe acele 14 puncte, eroarea scade la zero absolut!

Privită de aproape însă, această curbă perfectă este un dezastru. Între punctele cunoscute, ea face salturi sălbatice spre cer și prăpăstii adânci. Dacă o întrebi cât durează un drum pentru o distanță pe care nu a văzut-o încă, va da răspunsuri absurde — de pildă, că un drum de 15 kilometri durează zece ore sau chiar minus cinci minute. Modelul seamănă leit cu un elev care a memorat pe de rost răspunsurile la un test-grilă fără să înțeleagă materia: ia nota 10 pe testul știut, dar se blochează complet la prima întrebare nouă.

Datele văzute și cele nevăzute

Pentru a demasca această capcană, cercetătorii folosesc o metodă simplă și elegantă: împart măsurătorile disponibile în două grămezi încă de la bun început. O parte dintre exemple sunt puse la dispoziția algoritmului pentru a căuta butoanele ideale; ele formează setul de antrenare. Cealaltă parte este încuiată într-un seif și nu participă deloc la antrenare; ea formează setul de test.

În acest fel, calculăm costul de două ori: o dată pe datele de antrenare (care ne arată cât de bine a memorat mașina ce i s-a arătat) și o dată pe datele de test (care ne măsoară adevărata înțelegere). Această separare riguroasă este piatra de temelie a întregii inteligențe artificiale moderne: singurul mod cinstit de a verifica dacă o mașină a înțeles un concept este să o pui la încercare pe exemple pe care nu le-a mai văzut niciodată.

Aceleași măsurători, curbe de grade diferite
antrenare test curba potrivită legătura adevărată
2
14
0

Curba în formă de U: harta învățării

Dacă urmărim comportamentul celor două costuri pe măsură ce mărim numărul de butoane (gradul curbei), iese la iveală cel mai faimos tipar din machine learning. Costul de antrenare (linia albastră) scade necontenit: mai multe butoane înseamnă întotdeauna o potrivire mai strânsă pe exemplele cunoscute. În schimb, costul de test (linia violetă) scade la început, atinge un punct minim ideal, iar apoi începe să urce vertiginos!

Zona din stânga minimului se numește subînvățare (sau underfitting): modelul este prea rigid, prea sărac în butoane pentru a surprinde forma reală a fenomenului. Zona din dreapta minimului se numește supraînvățare (sau overfitting): modelul este atât de flexibil încât începe să urmărească fiecare oscilație întâmplătoare a datelor de antrenare, crezând că orice accident este o lege universală.

Costul pe cele două seturi, pentru fiecare grad

Punctul cel mai de jos al curbei violete marchează reglajul de aur. Fii atent: acest optim nu poate fi descoperit privind doar datele de antrenare, pentru că pe datele de antrenare modelul pare din ce în ce mai bun pe măsură ce devine tot mai inutil! Fără un set de testare, un creator de modele este la fel de orb ca un elev care își dă singur note pe temele făcute acasă cu manualul deschis.

Semnal și zgomot: de ce apare iluzia

Orice măsurătoare din viața reală conține două ingrediente amestecate inseparabil: semnalul (legătura fizică adevărată, care se va repeta și mâine) și zgomotul (abaterile întâmplătoare produse de vânt, neatenție sau o frână bruscă, care nu se vor repeta niciodată identic). Modelul ideal ar trebui să asculte doar semnalul și să ignore complet zgomotul.

Dar modelul nu are de unde să știe care este care: în cifrele brute, zgomotul și semnalul arată la fel! Un model simplu nu are destule butoane pentru a urmări micile zigzaguri ale zgomotului, așa că reține doar tendința generală a semnalului. În schimb, un model cu zeci de butoane are „libertate” din belșug. Coborârea pantei o va folosi pe toată pentru a reduce costul, contorsionând curba după fiecare punct zgomotos.

A generaliza înseamnă a avea o judecată sănătoasă și despre situațiile pe care nu le-ai întâlnit încă. Iar pentru a generaliza bine, trebuie să nu-ți cheltuiești întreaga capacitate de atenție memorând fiecare detaliu accidental din trecut.

Leacul cel mai sigur: mai multe exemple

Supraînvățarea nu este o condamnare veșnică a unui model bogat, ci o consecință a raportului dintre numărul de parametri și numărul de exemple. Aceeași curbă de gradul zece care memorează caraghios 14 puncte se transformă într-o elevă conștiincioasă dacă îi oferim 500 de puncte: oricât de mult și-ar dori, nu se mai poate contorsiona prin 500 de abateri aleatorii, așa că este forțată să învețe doar tendința reală.

Poți verifica acest lucru chiar în figură: mărește numărul de puncte de antrenare spre 60. Vei observa cum prăpastia din dreapta a curbei violete se estompează spectaculos, iar gradul 13 devine aproape la fel de cuminte ca gradul 2!

Iată unul dintre marile secrete ale succesului rețelelor neuronale uriașe din ziua de azi (cum sunt modelele din spatele asistenților de conversație). Ele posedă sute de miliarde de butoane — o capacitate care ar trebui teoretic să ducă la memorare oarbă —, dar sunt hrănite cu trilioane de cuvinte culese din întreaga cultură scrisă a omenirii.

Punerea unui frâu: regularizarea

Dar ce facem dacă nu putem strânge mai multe date din lumea reală? Putem pune o frână matematică direct pe libertatea butoanelor! În prima figură avem o manetă numită „frâu” (în termeni tehnici, regularizare). Aceasta adaugă la cost o taxă suplimentară pentru valorile mari ale parametrilor: cu cât o curbă încearcă să facă bucle mai violente, cu atât este pedepsită mai aspru.

Mișcă maneta frâului spre dreapta când gradul este 13: vei vedea cum acea curbă zvăpăiată se calmează treptat, îmblânzindu-se până devine o formă lină și elegantă. Regularizarea îi spune practic algoritmului: „Ai voie să folosești toate butoanele, dar ține-le cât mai aproape de zero, cu excepția cazului în care datele insistă categoric pentru o schimbare.”

Alături de regularizare, programatorii folosesc des și oprirea timpurie: monitorizează continuu eroarea pe datele de test în timpul coborârii pantei și opresc antrenamentul exact în momentul în care eroarea de test începe să crească, înainte ca modelul să apuce să memoreze pe de rost.

Seiful secret: setul de validare

A mai rămas o subtilitate esențială, în care cad adesea chiar și specialiștii. Dacă alegem gradul optim sau valoarea frâului uitându-ne cu coada ochiului la costul de test, atunci setul de test a participat indirect la deciziile noastre! Nu mai este cu adevărat o verificare independentă din umbră, ci a fost contaminat.

Regula de aur a cercetării împarte de aceea datele în trei părți distincte: pe setul de antrenare mașina își reglează parametrii interni; pe un al doilea set, numit set de validare, omul testează diverse variante de reglaj (câte butoane să folosească, cât de strâns să fie frâul); iar setul de test rămâne neatins într-un seif sigilat până în ultima zi a proiectului, fiind deschis o singură dată pentru a măsura performanța reală.

Curbele cu îndoituri pe care le-am folosit aici au o limită clară: încearcă să rezolve totul pe o singură axă, îndoindu-se tot mai complicat. Pentru a desluși însă lumea reală — cum ar fi un tablou sau o melodie — avem nevoie de o arhitectură mult mai armonioasă: combinarea mai multor măsurători diferite într-o rețea vie. În lecția următoare construim chiar cărămida fundamentală a acestei lumi: neuronul artificial.