Ce înseamnă SVM (mașini cu vectori suport)
Un SVM (Support Vector Machine, în română „mașină cu vectori suport”) este un algoritm de clasificare care caută linia (sau, în mai multe dimensiuni, „planul”) care desparte cel mai bine două categorii. Dintre toate granițele posibile, o alege pe cea cu cea mai mare distanță față de cele mai apropiate puncte din fiecare categorie, numită marjă.
Forma modernă a fost publicată în 1995 de Corinna Cortes și Vladimir Vapnik. Înainte de deep learning, SVM-urile erau printre cele mai bune metode pentru clasificarea textelor, a imaginilor și a datelor biologice, iar astăzi se folosesc încă pentru seturi de date mici și medii.
Cum funcționează
Punctele cele mai apropiate de graniță se numesc vectori suport: ele „susțin” granița, care depinde doar de ele, nu de restul datelor. O marjă mare înseamnă că modelul va clasifica mai sigur exemplele noi.
Când datele nu pot fi separate de o linie dreaptă, SVM-ul folosește trucul kernel: transformă matematic datele într-un spațiu cu mai multe dimensiuni, unde devin separabile, fără să calculeze explicit acea transformare. Varianta pentru regresie se numește SVR.
Pe înțelesul tuturor
Pe un teren de joacă, copiii din două echipe stau amestecați pe margini. Vrei să trasezi o linie cu creta între echipe, cât mai departe de copiii din ambele părți, ca să nu calce nimeni pe ea. Copiii cei mai apropiați de linie sunt „vectorii suport”: ei decid unde poate fi trasă linia.
Exemplu
Un laborator are 300 de probe de sânge descrise prin 20 de valori de analize, dintre care 120 de la pacienți cu o anumită afecțiune. Cu atât de puține date, o rețea neuronală ar face ușor overfitting, în timp ce un SVM cu kernel poate găsi o graniță bună și ușor de validat. Rezultatul ar fi folosit doar ca semnal pentru medic, nu ca diagnostic.
De reținut
- SVM-ul caută granița cu cea mai mare marjă între categorii.
- Granița depinde doar de punctele cele mai apropiate (vectorii suport).
- Trucul kernel permite separarea datelor care nu se despart printr-o linie dreaptă.
Nu confunda
- „Mașină” nu înseamnă aparat: SVM este un algoritm, la fel ca „machine” din „machine learning”.
Termeni înrudiți
- Clasificare: Sarcina de machine learning în care modelul pune fiecare exemplu într-o categorie dintr-o listă fixă, de exemplu „spam” sau „nu e spam”.
- k-NN (cei mai apropiați k vecini): Metodă care clasifică un exemplu nou după categoria majoritară a celor mai asemănători k exemple cunoscute.
- Arbore de decizie: Model care ia decizii printr-o succesiune de întrebări simple de tip da/nu, organizate ca ramurile unui copac.
- Machine learning (învățare automată): Ramura AI în care programele învață din exemple, în loc să primească reguli scrise pas cu pas de un programator.
- Overfitting (supraînvățare): Situația în care un model memorează datele de antrenare, cu tot cu zgomot, și apoi greșește pe date noi.