Învățarea din exemple
Gândește-te cum recunoști chipul unui prieten sau cum mergi pe bicicletă: știi să o faci impecabil, dar nu poți scrie un manual cu pași exacți pentru asta. Pentru astfel de sarcini fără rețetă, mașina nu mai primește instrucțiuni rigide pas cu pas, ci exemple din care își descoperă singură tiparele. Este marea schimbare de perspectivă pe care se sprijină toată inteligența artificială modernă.
Termeni: cunoaștere tacită regulă cu praguri învățare automată exemple etichetate antrenare familie de reguli
Când mintea știe mai mult decât poate explica
În primele două părți ale acestui curs am văzut cum funcționează un calculator clasic: îi dăm o listă minuțioasă de instrucțiuni, iar el le execută orbește cu o viteză uluitoare. Dar ce ne facem atunci când sarcina nu poate fi descompusă într-o rețetă limpede de pași?
Dacă vezi un prieten într-o gară aglomerată, îl recunoști într-o fracțiune de secundă. La fel de firesc deosebești o pisică de un cățel, recunoști o literă mâzgălită pe un bilet de autobuz sau simți dacă o frază are umor. Totuși, dacă cineva te-ar ruga să așezi pe hârtie o listă de reguli matematice infailibile — ce anume măsori la fiecare milimetru și în ce ordine — ai constata că sarcina e aproape imposibilă.
Nu este o lipsă de atenție sau de pricepere. Filozoful Michael Polanyi a numit această realitate a gândirii noastre, în 1966, cunoaștere tacită, sintetizând-o printr-o vorbă memorabilă: „Știm mai mult decât putem spune”. Decenii la rând, cercetătorii au încercat să scrie manual mii de reguli de tipul „dacă... atunci...” pentru astfel de probleme. Rezultatul a fost mereu același: liste nesfârșite de condiții complicate, care mergeau pe câteva exemple avute în minte și se prăbușeau la primul caz nou.
Să încercăm totuși: o regulă mecanică
Ca să vedem direct unde se poticnește abordarea clasică, hai să încercăm totuși să scriem o rețetă manuală. Vrem să învățăm mașina să deosebească cifra 7 de cifra 1 pe baza a două trăsături simple, măsurate pe desen: câtă cerneală se adună în treimea superioară a imaginii și cât de lat este desenul în raport cu înălțimea lui.
Regula noastră scrisă de mână sună curat și rezonabil: „Considerăm că este un 7 dacă cel puțin 40% din cerneală se află în treimea de sus și dacă lățimea desenului este de cel puțin un sfert (26%) din înălțime.”
Unde se rupe logica rigidă
Privește ce se întâmplă când experimentezi: dacă desenezi un 7 grăbit, vertical și cu bara de sus scurtă, cerneala din treimea superioară coboară sub pragul de 40%, iar regula decide greșit că ai desenat altceva. Dacă trasezi un 1 stilizat, cu o codiță lungă la vârf și o talpă orizontală lată, regula este păcălită și îl declară cu entuziasm drept un 7 veritabil.
Am putea fi tentați să adăugăm o nouă condiție salvatoare: „dacă linia din mijloc e înclinată...”. Dar acea condiție nouă va strica alte zeci de cazuri care înainte funcționau. În lumea reală, noțiunea de „șapte” nu are o definiție geometrică unică și îngustă. Ea este o familie uriașă de forme înrudite, plină de variații pe care nimeni nu le poate enumera dinainte. Un concept uman nu este o definiție fixă de dicționar, ci o rețea suplă de asemănări de familie — iar astfel de familii nu încap în câteva instrucțiuni rigide.
Aceeași regulă, dar cu butoane reglabile
Pragurile alese de noi — 40% cerneală sus și 26% lățime — nu erau litere de lege, ci doar două numere alese din ochi. Ce-ar fi dacă le-am transforma în manete reglabile? În galeria de mai jos avem 40 de desene generate de pagină (20 de cifre 1 și 20 de cifre 7). Chenarul roșu marchează exemplele pe care regula le judecă greșit la reglajul curent.
Dacă apeși pe „Încearcă toate combinațiile”, mașina face într-o clipă ceea ce unui om i-ar lua ore întregi: parcurge sistematic peste 15.000 de perechi posibile de praguri și o alege pe aceea care face cele mai puține erori. Totul durează o fracțiune de secundă și nu necesită nicio teorie filosofică despre ce înseamnă cifra șapte.
Privește însă cu atenție rezultatul optim: chiar și cu cea mai bună pereche de praguri imaginabilă, regula continuă să greșească două sau trei exemple! Problema nu era că nu găsisem noi valorile ideale, ci că o regulă rigidă cu doar două praguri drepte pur și simplu nu are destulă finețe pentru a separa toate formele reale. Iar dacă apeși de câteva ori pe „Alte exemple”, vei observa că uneori nimerim din pur noroc un set care se separă perfect — o iluzie temporară pe care o vom demonta mai târziu.
Marea răsturnare de perspectivă
În programarea tradițională, fluxul are o singură direcție: omul gândește și scrie regulile logice, mașina le aplică asupra datelor și produce răspunsuri. Când regulile nu pot fi exprimate în cuvinte sau formule clare, această abordare se blochează din prima secundă.
Ce putem face în schimb este să inversăm sensul întrebării: îi oferim mașinii o mulțime de date însoțite de răspunsurile corecte pe care le așteptăm, și lăsăm mașina să descopere automat regula care le leagă. Săgețile își schimbă sensul: ce era ieșire devine intrare, iar ce era intrare devine ieșire. Calculatorul rămâne același — circuite, tranzistori, comutatoare logice —, dar întrebarea pe care i-o adresăm este complet nouă.
programare obișnuită
învățare din exemple
Programele care lucrează în această a doua direcție alcătuiesc domeniul numit învățare automată (sau machine learning). Datele însoțite de răspunsurile corecte se numesc exemple etichetate, iar procesul prin care mașina își calibrează manetele pentru a găsi tiparul optim se numește antrenare.
Ce înseamnă cu adevărat că mașina „găsește regula”?
Formularea „mașina găsește regula” este generoasă și poate crea iluzia că algoritmul inventează concepte din nimic, printr-o scânteie magică. În realitate, lucrurile sunt mult mai limpezi și mai disciplinate: mașina nu inventează forme noi.
Omul este cel care alege dinainte o familie de reguli posibile — de exemplu, „o regulă bazată pe două praguri pe care le putem regla”. Această familie vine la pachet cu un set de manete (butoane sau parametri). Ceea ce face mașina este să exploreze aceste manete și să le oprească în poziția care greșește cel mai puțin pe exemplele oferite. Automatizăm așadar căutarea, nu invenția. Alegerea familiei rămâne în întregime responsabilitatea omului: dacă familia aleasă este prea simplă sau nepotrivită, nici cel mai dibaci algoritm de căutare nu va putea elimina erorile.
De aici se desprind cele două mari întrebări care vor ghida întreaga noastră explorare: Ce familii de reguli sunt destul de bogate și flexibile pentru a cuprinde concepte complexe din viața reală, precum chipul unui om sau sensul unui cuvânt? Și Cum căutăm printre ele atunci când butoanele nu mai sunt două, ci sute de miliarde, iar încercarea pe rând a tuturor combinațiilor ar dura miliarde de ani? În lecția următoare luăm cea mai simplă și prietenoasă familie cu două manete — o dreaptă — pentru a înțelege cum măsurăm greșeala și cum o micșorăm pas cu pas.