O fotografie, un mesaj nedorit și o mutare pe tabla de joc par să aibă puține în comun. În spatele lor se află însă o schimbare care a accelerat evoluția inteligenței artificiale: calculatoarele au devenit tot mai bune la folosirea exemplelor pentru a rezolva situații noi.
Privești o fotografie și recunoști aproape imediat o pisică. Poate fi adormită, fotografiată din spate sau ascunsă pe jumătate sub un scaun. Nici măcar nu trebuie să semene prea mult cu pisicile pe care le-ai văzut până atunci. Acum încearcă să scrii toate regulile prin care ai ajuns la răspuns. Ai putea începe cu urechile și mustățile, dar aceste trăsături apar și la alte animale, iar uneori nici nu se văd în fotografie. Cu fiecare regulă adăugată, descoperi încă o excepție la care trebuie să te gândești.
Această diferență dintre ușurința cu care facem ceva și dificultatea de a explica fiecare pas a însoțit mult timp cercetarea AI. Sistemele bazate pe reguli puteau fi utile acolo unde oamenii reușeau să descrie bine problema. Pentru imagini, sunete și multe situații obișnuite, numărul variațiilor devenea greu de cuprins.
Cercetătorii explorau deja o altă posibilitate: să construiască sisteme care găsesc regularități în exemple. Între anii 1990 și 2016, această direcție a câștigat tot mai mult teren. Au început să se întâlnească metode mai bune, cantități mai mari de informații digitale și calculatoare capabile să le prelucreze. Înțelegerea acestei întâlniri ne ajută să vedem de ce progresul AI a prins viteză.
Cum arăți unui calculator ce cauți
Să ne întoarcem la fotografie. Într-o variantă simplificată, putem pregăti multe imagini și putem indica în care dintre ele apare o pisică. Un sistem este antrenat pe aceste exemple, iar ceea ce învață trebuie verificat apoi pe alte imagini, pe care nu le-a întâlnit în timpul pregătirii. Scopul este să recunoască animalul și într-o fotografie nouă, cu altă lumină, alt fundal și altă poziție.
Această abordare face parte din învățarea automată, cunoscută și sub denumirea engleză machine learning. Există mai multe metode, însă ideea comună este că performanța sistemului se construiește folosind date. Oamenii stabilesc sarcina, aleg metoda și pregătesc procesul de învățare. Programul își ajustează calculele folosind aceste exemple. Ceea ce rezultă din antrenare se numește un model: un sistem pregătit să producă răspunsuri pentru tipul de sarcină pe care l-a învățat.
Pentru a vedea utilitatea, ne putem gândi la mesajele nedorite din e-mail. Dacă am bloca orice mesaj care conține cuvântul „ofertă”, am putea pierde și o propunere legitimă. Un filtru antrenat pe mesaje deja clasificate poate lua în calcul combinații de indicii, apoi poate estima cât de probabil este ca un mesaj nou să fie nedorit. În 1998, o echipă de cercetători a publicat o asemenea abordare, folosind exemple de e-mailuri pentru construirea filtrului.
În loc să descriem fiecare situație prin reguli, puteam pregăti calculatorul cu exemple. Asta deschidea posibilități practice, dar schimba și felul în care trebuia verificat rezultatul. Un sistem putea rata un mesaj nedorit sau putea trimite din greșeală un mesaj important în dosarul greșit. Calitatea se vedea în utilizare, pe situații diferite de cele din pregătire.
O victorie la șah atrage privirile lumii
În timp ce asemenea metode se dezvoltau, un alt drum al cercetării ajungea în centrul atenției publice. În mai 1997, calculatorul Deep Blue, construit de IBM, l-a învins pe Garry Kasparov, campionul mondial de șah în exercițiu, într-un meci de șase partide, cu scorul de 3,5 la 2,5. Cu un an înainte, Kasparov câștigase prima lor confruntare.
Revanșa era ușor de urmărit chiar și pentru cine nu înțelegea toate subtilitățile șahului. Un om aflat la vârful unui joc asociat cu inteligența avea în față un adversar construit de ingineri. Rezultatul dădea o formă vizibilă unei întrebări vechi: cât de departe poate ajunge o mașină într-o activitate în care oamenii excelează?
Deep Blue putea evalua aproximativ 200 de milioane de poziții pe secundă. Combina această putere de calcul cu metode de căutare și de evaluare a pozițiilor, dezvoltate cu ajutorul specialiștilor. Deep Blue nu folosea învățarea profundă. Victoria lui arăta cât de departe putea ajunge un calculator specializat în șah.
Pentru a recunoaște obiecte într-o fotografie, cercetătorii aveau nevoie de metode potrivite unui alt tip de dificultate: variația enormă a lucrurilor întâlnite în lumea reală.
Rețelele neuronale primesc o nouă șansă
Printre metodele urmărite în continuare se aflau rețelele neuronale, ale căror începuturi le-am întâlnit în episodul anterior. Numele lor vine din inspirația biologică, dar putem să le înțelegem aici ca pe sisteme de calcul alcătuite din multe unități conectate. Legăturile dintre ele sunt ajustate în timpul antrenării, astfel încât răspunsurile să se apropie de rezultatele dorite.
Un reper important apăruse în 1986. David Rumelhart, Geoffrey Hinton și Ronald Williams publicaseră o lucrare care a contribuit la răspândirea unei metode de antrenare a rețelelor cu mai multe straturi. Pe scurt, greșeala de la ieșirea sistemului era folosită pentru a calcula cum trebuie ajustate legăturile din interior. Repetând procesul pe multe exemple, rețeaua putea învăța relații utile.
Mai multe straturi înseamnă că informația trece prin etape succesive de prelucrare. În recunoașterea imaginilor, unele etape pot surprinde diferențe simple, precum margini și contraste, iar altele pot combina aceste informații în forme mai complexe. De aici vine expresia „învățare profundă”, sau deep learning: este vorba despre numărul de niveluri prin care este prelucrată informația.
Ideile existau, însă antrenarea unor rețele mari cerea mult calcul și suficiente exemple. O metodă promițătoare putea rămâne greu de folosit dacă pregătirea ei dura prea mult sau dacă imaginile disponibile erau prea puține și prea asemănătoare. Următorul progres avea să vină și dintr-o muncă mai puțin spectaculoasă: strângerea și organizarea datelor.
Cineva trebuia să adune imaginile
Pentru noi, internetul devenea un loc tot mai plin de fotografii. Pentru un sistem care trebuie să învețe ce reprezintă ele, simpla lor existență era doar începutul. Avea nevoie de exemple selectate și de informații despre conținutul lor.
În 2009, o echipă din care făceau parte Fei-Fei Li și Jia Deng a prezentat ImageNet, un proiect de organizare a imaginilor într-o colecție de mari dimensiuni. Fotografiile erau grupate în categorii, astfel încât cercetătorii să poată antrena și evalua programe de recunoaștere. Oamenii au avut un rol esențial în verificarea imaginilor și a încadrării lor.
Munca aceasta răspundea unei dificultăți ușor de înțeles. Dacă toate fotografiile cu pisici ar arăta animale albe, așezate pe aceeași canapea, programul ar putea învăța legături care funcționează numai acolo. Exemplele variate îi dau șansa să găsească indicii mai utile. Un set separat de imagini arată apoi dacă recunoașterea rezistă și în alte situații.
Colecția a devenit și baza unei competiții în care echipele își puteau compara rezultatele. Exista acum o problemă comună și un mod de a măsura progresul. În 2012, una dintre echipe avea să obțină un rezultat care a atras atenția întregului domeniu.
Saltul din 2012
Alex Krizhevsky, Ilya Sutskever și Geoffrey Hinton au folosit o rețea neuronală profundă, devenită cunoscută drept AlexNet, pentru clasificarea imaginilor. În competiția ImageNet din 2012, sistemul lor a câștigat cu o diferență mare față de următorul clasat.
În spatele rezultatului se întâlneau mai multe piese. Rețeaua era antrenată pe peste un milion de imagini, iar echipa folosise două procesoare grafice pentru calcule. Aceste procesoare, cunoscute prin prescurtarea GPU, sunt potrivite pentru executarea multor operații în paralel. Ele au făcut posibilă pregătirea unei rețele de asemenea dimensiuni într-un interval practic pentru experimentare.
Rezultatul dădea cercetătorilor un motiv concret să investească mai mult în această direcție. Nu era doar o demonstrație reușită pe câteva fotografii alese: echipa participase la o evaluare comună, pe imagini de test, alături de alte metode. Diferența de performanță putea fi măsurată, iar lucrarea publicată explica felul în care fusese construit sistemul.
Accelerarea AI a venit din întâlnirea metodelor, datelor și puterii de calcul. Fiecare făcea mai utile progresele celorlalte. Pentru o tehnologie cu zeci de ani de istorie, această întâlnire schimba ritmul în care puteau fi încercate și îmbunătățite ideile.
Pe tabla de Go, învățarea întâlnește strategia
În martie 2016, la Seul, o nouă confruntare dintre un om și un calculator a captat atenția lumii. AlphaGo, sistemul dezvoltat de DeepMind, juca împotriva lui Lee Sedol, unul dintre cei mai puternici jucători de Go ai epocii.
Go se joacă pe o tablă pe care sunt așezate pietre albe și negre, cu scopul de a controla teritoriu. Regulile de bază sunt puține, dar posibilitățile de joc sunt enorme. Numărarea rapidă a variantelor, fără o orientare bună spre mutările promițătoare, nu era suficientă pentru performanța dorită.
AlphaGo combina rețele neuronale cu metode de explorare a continuărilor posibile. Învățase din partide ale jucătorilor umani, apoi își îmbunătățise jocul prin partide împotriva unor versiuni ale sale. Unele componente îl ajutau să identifice mutări promițătoare, iar altele să estimeze cât de favorabilă era o poziție. Învățarea și căutarea lucrau împreună.
În a doua partidă, mutarea 37 a lui AlphaGo a devenit unul dintre momentele emblematice ale confruntării: o alegere neobișnuită, care a surprins și a contribuit la victoria sistemului. În partida a patra, Lee Sedol a găsit la rândul lui o mutare remarcabilă și a câștigat. Scorul final a fost 4 la 1 pentru AlphaGo.
Confruntarea avea o miză care depășea rezultatul sportiv. Un sistem antrenat pe exemple și îmbunătățit prin joc reușea să găsească soluții pe care jucătorii le puteau studia. Mașina devenea, în acest cadru, și o sursă de idei pentru oameni.
Un sistem putea învăța de la oameni, apoi putea descoperi prin exercițiu soluții care îi surprindeau chiar și pe experți. Performanța rămânea legată de jocul pentru care fusese pregătit. AlphaGo nu putea prelua orice problemă din viața unui utilizator, însă arăta cât de puternică putea deveni combinația dintre învățare și explorarea posibilităților.
Progresul începea să ne privească pe toți
Până în 2016, calculatoarele arătaseră că pot deveni foarte bune la sarcini pentru care scrierea tuturor regulilor era dificilă. Un filtru putea învăța indicii ale mesajelor nedorite, o rețea putea recunoaște obiecte în imagini, iar un sistem precum AlphaGo putea folosi experiența din partide pentru a-și ghida alegerile.
Pentru un utilizator obișnuit, miza se vede mai ușor în căsuța de e-mail decât pe o tablă de Go: un program poate lua asupra lui o parte dintr-o muncă repetitivă, chiar dacă nu i-am scris o regulă pentru fiecare caz. Tot aici apare și motivul pentru care trebuie să-i înțelegem limitele. Dacă învață din exemple, contează ce exemple primește și cât de mult seamănă ele cu situațiile în care îl vom folosi.
Programele conversaționale existau de mult, așa cum am văzut în episodul despre ELIZA. Întrebarea devenea cât de mult putea câștiga și conversația din aceste metode de învățare: puteau sistemele să răspundă mai flexibil, să lucreze cu subiecte variate și să ne ajute să formulăm ceva nou?
Dar limbajul oferea și el o cantitate uriașă de exemple: texte, dialoguri, explicații și cod. Ce ar putea învăța un sistem din ele? Și cum ar putea folosi ceea ce învață pentru a răspunde unei cereri? Următorul capitol urmărește drumul de la aceste întrebări la AI generativă și la apariția ChatGPT.
Surse și documentare
Mehran Sahami, Susan Dumais, David Heckerman și Eric Horvitz, A Bayesian Approach to Filtering Junk E-Mail, 1998. Exemplu timpuriu de învățare automată aplicată filtrării mesajelor.
IBM, Deep Blue. Confruntările cu Garry Kasparov, metodele sistemului și capacitatea de calcul.
David Rumelhart, Geoffrey Hinton și Ronald Williams, Learning Representations by Back-Propagating Errors, 1986. Reper în dezvoltarea metodelor de antrenare a rețelelor neuronale.
Yann LeCun, Yoshua Bengio și Geoffrey Hinton, Deep Learning, 2015. Explicația rețelelor cu mai multe niveluri și a progresului din domeniu.
Jia Deng și colaboratorii, ImageNet: A Large-Scale Hierarchical Image Database, 2009. Lucrarea originală despre construirea colecției de imagini.
Alex Krizhevsky, Ilya Sutskever și Geoffrey Hinton, ImageNet Classification with Deep Convolutional Neural Networks, 2012. Lucrarea originală despre rețeaua cunoscută drept AlexNet.
David Silver și colaboratorii, Mastering the Game of Go with Deep Neural Networks and Tree Search, 2016. Metodele folosite în dezvoltarea AlphaGo.
Google DeepMind, AlphaGo. Confruntarea cu Lee Sedol și momentele sale importante.



