AI pe înțeles

Învățarea automată (machine learning) explicată simplu

Învățarea automată pe înțeles: învățare supravegheată, nesupravegheată și prin întărire, date de antrenare și test, supraînvățare și evaluarea unui model.

De Redacția LumeaTehnologiei10 min de citit
Monitoare cu grafice circulare și diagrame de date pregătite pentru analiză

Învățarea automată (în engleză, machine learning) este felul în care un calculator ajunge să rezolve o sarcină fără ca cineva să-i scrie pas cu pas regulile: îi arăți multe exemple, iar programul descoperă singur tiparul care le leagă. Dacă îi dai mii de e-mailuri marcate ca „spam” sau „normal”, învață ce le deosebește și poate apoi sorta mesaje pe care nu le-a văzut niciodată.

Este motorul din spatele majorității aplicațiilor numite azi „inteligență artificială”. În rândurile de mai jos afli ce tipuri de învățare există, cum arată concret un proiect de la date la model funcțional, de ce un model care pare excelent în laborator poate eșua în practică și ce întrebări merită să pui când cineva îți spune că un sistem „a învățat” ceva.

De la reguli scrise la reguli învățate

Diferența dintre programarea clasică și învățarea automată stă în direcția în care se lucrează: în programarea clasică omul scrie regulile, iar în învățarea automată regulile sunt deduse din date. Un exemplu concret ajută să vezi de ce contează.

Să presupunem că vrei un program care recunoaște dacă într-o fotografie apare o pisică. Cu reguli scrise ar trebui să descrii urechile, mustățile, blana, toate pozițiile posibile, toate unghiurile și luminile. Sarcina este practic imposibilă. Cu învățare automată, aduni câteva zeci de mii de fotografii etichetate „pisică” și „altceva”, iar modelul învață singur combinațiile de forme și texturi care deosebesc cele două categorii.

AspectProgramare clasicăÎnvățare automată
Cine stabilește regulileprogramatorulalgoritmul, pornind din date
Ce primește la intraredate și regulidate și răspunsuri corecte
Ce producerăspunsuriun model care produce răspunsuri
Când se potriveștereguli clare, puține excepțiitipare complexe, greu de descris
Ce se întâmplă la situații noiurmează exact regulaaproximează după exemplele văzute

Învățarea automată nu înlocuiește programarea clasică, ci o completează. Calculul unei facturi, de exemplu, se face în continuare cu reguli exacte; estimarea probabilității ca o plată să fie frauduloasă se face mai bine cu un model antrenat. Locul acestei metode în ansamblul inteligenței artificiale este descris în ghidul complet despre inteligența artificială.

Cele trei mari tipuri de învățare

Există trei moduri principale prin care un model învață, iar alegerea depinde de ce date ai și de ce vrei să obții. Fiecare are aplicații tipice și limite proprii.

Învățarea supravegheată

În învățarea supravegheată, fiecare exemplu are atașat răspunsul corect, numit etichetă. Modelul învață să ajungă de la datele de intrare la etichetă. Este tipul cel mai răspândit și se împarte în două familii:

  • clasificare, când răspunsul este o categorie: spam sau nu, tranzacție suspectă sau nu, ce cifră e scrisă de mână;
  • regresie, când răspunsul este un număr: temperatura de mâine, durata unei călătorii, consumul de energie al unei clădiri.

Dezavantajul este că etichetarea costă timp și muncă umană: cineva trebuie să marcheze manual mii sau milioane de exemple.

Învățarea nesupravegheată

În învățarea nesupravegheată datele nu au etichete, iar modelul caută singur structuri ascunse. Cea mai cunoscută sarcină este gruparea (clustering): un magazin online își poate împărți clienții în grupuri cu obiceiuri de cumpărare asemănătoare, fără să știe dinainte câte grupuri există. Tot aici intră detectarea anomaliilor, adică a exemplelor care nu seamănă cu nimic din rest.

Învățarea prin întărire

În învățarea prin întărire (reinforcement learning) un agent face acțiuni într-un mediu și primește recompense sau penalizări. Nu i se spune care e mișcarea corectă, ci doar cât de bine a ieșit rezultatul. Așa învață sisteme care joacă jocuri de strategie sau care controlează un braț robotic. O variantă a acestei metode, cu evaluări date de oameni, este folosită și la reglarea asistenților conversaționali, așa cum explicăm în Modelele de limbaj mari (LLM): cum generează text.

Cum arată un proiect de învățare automată, pas cu pas

Un proiect real de învățare automată urmează o succesiune de etape, iar antrenarea propriu-zisă ocupă de obicei o parte mică din timp. Majoritatea efortului merge în pregătirea datelor și în verificare.

  1. Formularea problemei: ce vrei să prezici, pe baza căror informații și cum vei ști că rezultatul e util.
  2. Colectarea datelor: din baze de date interne, senzori, formulare, arhive. Despre felul în care sunt organizate informațiile găsești detalii în Bazele de date: ce sunt și cum organizează informația.
  3. Curățarea datelor: eliminarea duplicatelor, completarea sau scoaterea valorilor lipsă, corectarea erorilor evidente.
  4. Alegerea caracteristicilor: ce informații folosește modelul (de pildă, pentru estimarea valorii unui apartament: suprafața, etajul, anul construcției, cartierul).
  5. Împărțirea datelor: o parte pentru antrenare, o parte pentru validare, o parte pentru testul final.
  6. Antrenarea și ajustarea: se încearcă mai mulți algoritmi și setări, comparate pe datele de validare.
  7. Evaluarea finală: pe setul de test, pe care modelul nu l-a văzut niciodată.
  8. Punerea în funcțiune și monitorizarea: modelul este folosit efectiv, iar performanța lui este urmărită în timp.

Sfat: Când citești că un model are „95% acuratețe”, întreabă pe ce date a fost măsurată. O cifră obținută pe aceleași date pe care s-a antrenat modelul nu spune aproape nimic despre comportamentul lui real.

Caracteristicile, materia primă a modelului

Caracteristicile (features) sunt informațiile concrete pe care modelul le primește pentru fiecare exemplu. Alegerea lor contează enorm. Un model care estimează timpul de livrare fără să știe ora din zi va ignora complet aglomerația de la orele de vârf. În modelele moderne de învățare profundă, o parte din caracteristici sunt descoperite automat din datele brute, cum ar fi pixelii unei imagini, mecanism descris în Rețelele neuronale: cum învață un model din date.

Antrenare, validare și test: de ce se împart datele

Datele se împart în mai multe seturi pentru că singurul mod corect de a afla cât de bine se descurcă un model este să-l testezi pe exemple pe care nu le-a văzut. Seamănă cu un examen: dacă elevul primește dinainte exact subiectele, nota nu arată ce a înțeles.

Set de dateLa ce foloseșteProporție orientativă
Antrenaremodelul își ajustează parametrii pe elcea mai mare parte
Validarealegerea setărilor și compararea varianteloro parte mică
Testevaluarea finală, o singură dată, la sfârșito parte mică, păstrată deoparte

Proporțiile exacte variază după volumul de date. Esențial este ca setul de test să fie cu adevărat separat și să semene cu situațiile reale în care va lucra modelul. Dacă antrenezi un model pe fotografii făcute ziua și îl testezi tot pe fotografii de zi, nu afli nimic despre comportamentul lui noaptea.

Supraînvățarea și subînvățarea

Supraînvățarea (overfitting) apare când un model memorează datele de antrenare, inclusiv zgomotul și întâmplările lor, în loc să învețe tiparul general. Rezultatul este un model care are scoruri excelente la antrenare și slabe pe date noi.

Imaginează-ți un elev care învață pe de rost rezolvările din culegere, fără să înțeleagă metoda. La teză, cu numere schimbate, nu mai știe ce să facă. Opusul este subînvățarea (underfitting): modelul e prea simplu ca să prindă tiparul, așa că greșește și pe datele de antrenare, și pe cele noi.

Cum se combate supraînvățarea

  • mai multe date, și mai variate, care fac memorarea mai grea decât generalizarea;
  • modele mai simple sau cu mai puțini parametri, când datele sunt puține;
  • regularizare, adică o penalizare matematică pentru modelele prea complicate;
  • oprirea timpurie: antrenarea se întrerupe când scorul pe datele de validare începe să scadă;
  • validarea încrucișată, în care datele sunt împărțite de mai multe ori în moduri diferite, iar rezultatele se compară.
Mână de robot și mână umană care se apropie pe fundal alb

Cum se măsoară dacă un model e bun

Calitatea unui model se măsoară cu indicatori aleși după sarcină, iar acuratețea simplă poate fi înșelătoare. Cel mai bun exemplu este detectarea unor evenimente rare.

Să zicem că doar o tranzacție din o mie este frauduloasă. Un model care declară „totul e în regulă” la fiecare plată are o acuratețe de 99,9%, dar nu prinde nicio fraudă. De aceea se folosesc și alți indicatori.

IndicatorÎntrebarea la care răspunde
Acuratețedin toate predicțiile, câte au fost corecte?
Preciziedin cazurile marcate pozitive, câte chiar erau pozitive?
Sensibilitate (recall)din toate cazurile pozitive reale, câte au fost găsite?
Scor F1un echilibru între precizie și sensibilitate
Eroare mediela regresie, cu cât se abat în medie estimările de la valoarea reală

Compromisul dintre tipurile de greșeli

Orice model face două tipuri de greșeli: fals pozitive (alarmă fără motiv) și fals negative (problemă ratată). Care contează mai mult depinde de context. Un filtru de spam care aruncă un e-mail important face o greșeală mai gravă decât unul care mai lasă să treacă o reclamă. Un sistem care semnalează posibile fraude bancare preferă, de obicei, să mai trimită o alertă inutilă decât să rateze o fraudă reală.

Datele: punctul forte și punctul slab

Un model de învățare automată nu poate fi mai bun decât datele din care învață; dacă datele sunt incomplete, vechi sau dezechilibrate, modelul preia aceste defecte. Specialiștii rezumă ideea în expresia „gunoi la intrare, gunoi la ieșire”.

Problemele frecvente legate de date:

  • eșantion nereprezentativ: datele provin doar dintr-o regiune, o grupă de vârstă sau un tip de dispozitiv;
  • etichete greșite: oamenii care au marcat exemplele au făcut erori sau au interpretat diferit aceeași situație;
  • dezechilibru: o categorie are mult mai multe exemple decât alta;
  • scurgeri de informație: în date apare, din greșeală, un indiciu care nu va exista în realitate, iar modelul învață să se bazeze pe el;
  • învechire: lumea se schimbă, iar tiparele de acum câțiva ani nu mai sunt valabile.

Ultimul fenomen se numește derivă a datelor (data drift) și explică de ce modelele trebuie monitorizate și reantrenate periodic. Un model de recomandare antrenat înainte de o schimbare majoră a obiceiurilor de consum va propune lucruri tot mai puțin potrivite. Despre volumele foarte mari de date și metodele lor de analiză afli mai multe în Big data: ce înseamnă și cum se analizează volumele mari.

Important: Când un model este folosit pentru decizii care privesc oameni, de exemplu la angajare sau la creditare, dezechilibrele din date pot produce discriminare. De aceea astfel de sisteme sunt supuse unor reguli stricte în Uniunea Europeană, rezumate în Regulamentul european privind AI (AI Act) pe scurt.

Ce algoritmi vei întâlni des

Nu există un algoritm „cel mai bun” pentru orice problemă; alegerea depinde de tipul și volumul datelor, de nevoia de a explica deciziile și de resursele de calcul disponibile. Iată familiile cele mai cunoscute, explicate pe scurt.

  • Regresia liniară: trasează cea mai potrivită dreaptă printre puncte; simplă, rapidă și ușor de explicat.
  • Regresia logistică: în ciuda numelui, servește la clasificare; estimează probabilitatea ca un exemplu să aparțină unei categorii.
  • Arborii de decizie: o succesiune de întrebări de tip da/nu, ușor de urmărit de un om.
  • Pădurile aleatorii și metodele de amplificare: combină sute de arbori și obțin rezultate foarte bune pe date tabelare.
  • Vecinii cei mai apropiați: un exemplu nou primește eticheta exemplelor care îi seamănă cel mai mult.
  • Rețelele neuronale: potrivite pentru imagini, sunet și text, unde tiparele sunt foarte complexe.

Explicabilitatea

Unele modele, cum sunt arborii de decizie, pot fi citite de un om: vezi exact de ce a fost luată o decizie. Altele, precum rețelele neuronale mari, sunt greu de interpretat și sunt numite adesea „cutii negre”. Când o decizie automată te afectează, contează să existe o explicație, iar domeniul care se ocupă de asta se numește AI explicabilă.

Recapitulare: ce trebuie să știi despre învățarea automată

Învățarea automată înseamnă să lași calculatorul să deducă regulile din exemple, nu să i le scrii tu. Rezultatul este un model care aproximează un tipar și care trebuie testat pe date noi, măsurat cu indicatori potriviți și urmărit în timp, pentru că lumea din jurul lui se schimbă.

De reținut:

  • există învățare supravegheată, nesupravegheată și prin întărire;
  • datele se împart în antrenare, validare și test, iar testul rămâne neatins până la final;
  • supraînvățarea înseamnă memorare în loc de generalizare;
  • acuratețea singură poate păcăli, mai ales la evenimente rare;
  • calitatea datelor contează mai mult decât algoritmul ales.

Întrebări frecvente

Învățarea automată și inteligența artificială sunt același lucru?

Nu chiar. Învățarea automată este o metodă, cea mai folosită azi, prin care se construiesc sisteme de inteligență artificială; AI este domeniul mai larg, care include și sisteme bazate pe reguli scrise manual.

De câte date are nevoie un model?

Depinde de complexitatea sarcinii. Un model simplu pe date tabelare poate funcționa cu câteva mii de exemple, pe când recunoașterea imaginilor sau a limbajului cere de obicei volume mult mai mari.

Poate un model să învețe singur după ce a fost pus în funcțiune?

Doar dacă a fost construit special pentru asta. Majoritatea modelelor rămân neschimbate după antrenare și sunt reantrenate periodic de echipa care le administrează, cu date noi și verificate.

Ce înseamnă că un model este o cutie neagră?

Înseamnă că ajunge la rezultate corecte, dar drumul prin care ajunge acolo este greu de explicat în termeni pe care un om îi poate urmări. Problema contează mai ales când deciziile afectează direct oameni.

↑