IA 101
Ce este Machine Learning?

Machine learning este unul dintre cele mai rapide domenii tehnologice în creștere, dar în ciuda frecvenței cu care se folosesc cuvintele “machine learning”, poate fi dificil de înțeles ce este exact machine learning.
Machine learning nu se referă la o singură lucrare, ci la un termen generic care poate fi aplicat la multe concepte și tehnici diferite. Înțelegerea machine learning înseamnă a fi familiarizat cu diferite forme de analiză a modelului, variabile și algoritmi. Să aruncăm o privire atentă asupra machine learning pentru a înțelege mai bine ce cuprinde.
Ce este Machine Learning?
În timp ce termenul de machine learning poate fi aplicat la multe lucruri diferite, în general, termenul se referă la capacitatea de a permite unui computer să efectueze sarcini fără a primi instrucțiuni explicite, linie cu linie, pentru a face acest lucru. Un specialist în machine learning nu trebuie să scrie toți pașii necesari pentru a rezolva problema, deoarece computerul este capabil să “învețe” prin analizarea modelelor din date și generalizarea acestor modele la noi date.
Sistemele de machine learning au trei părți de bază:
- Intrări
- Algoritmi
- Ieșiri
Intrările sunt datele care sunt alimentate în sistemul de machine learning, iar datele de intrare pot fi împărțite în etichete și caracteristici. Caracteristicile sunt variabilele relevante, variabilele care vor fi analizate pentru a învăța modele și a trage concluzii. Între timp, etichetele sunt clase/descrieri date instanțelor individuale de date.
Caracteristicile și etichetele pot fi utilizate în două tipuri de probleme de machine learning: învățarea supervizată și învățarea nesupervizată.
Învățarea nesupervizată vs. Învățarea supervizată
În învățarea supervizată, datele de intrare sunt însoțite de o adevăr de bază. Problemele de învățare supervizată au valorile de ieșire corecte ca parte a setului de date, astfel încât clasele așteptate sunt cunoscute dinainte. Acest lucru face posibilă pentru omul de știință să verifice performanța algoritmului prin testarea datelor pe un set de test și a vedea ce procentaj de articole a fost clasificat corect.
În contrast, învățarea nesupervizată nu are etichete de adevăr de bază atașate. Un algoritm de machine learning antrenat pentru a efectua sarcini de învățare nesupervizată trebuie să poată deduce modelele relevante din date de la sine.
Algoritmii de învățare supervizată sunt utilizați în mod normal pentru probleme de clasificare, unde aveți un set de date mare plin cu instanțe care trebuie sortate în una dintre multe clase diferite. Un alt tip de învățare supervizată este o sarcină de regresie, unde valoarea de ieșire a algoritmului este continuă în natură, și nu categorică.
Între timp, algoritmii de învățare nesupervizată sunt utilizați pentru sarcini precum estimarea densității, clusteringul și învățarea reprezentării. Aceste trei sarcini necesită modelul de machine learning să deducă structura datelor, nu există clase predefinite date modelului.
Să aruncăm o privire scurtă asupra unora dintre cele mai comune algoritmi utilizați în ambele învățări nesupervizate și supervizate.
Tipuri de învățare supervizată
Algoritmii comuni de învățare supervizată includ:
- Naive Bayes
- Mașini de suport vectorial
- Regresie logistică
- Păduri aleatorii
- Rețele neuronale artificiale
Mașinile de suport vectorial sunt algoritmi care divid un set de date în clase diferite. Punctele de date sunt grupate în cluster prin desenarea de linii care separă clasele una de alta. Punctele găsite pe o parte a liniei vor aparține unei clase, în timp ce punctele de pe partea cealaltă a liniei sunt o clasă diferită. Mașinile de suport vectorial își propun să maximizeze distanța dintre linie și punctele găsite pe ambele părți ale liniei, și cu cât distanța este mai mare, cu atât clasificatorul este mai sigur că punctul aparține unei clase și nu alteia.
Regresia logistică este un algoritm utilizat în sarcini de clasificare binară atunci când punctele de date trebuie să fie clasificate ca aparținând uneia dintre două clase. Regresia logistică funcționează prin etichetarea punctului de date cu 1 sau 0. Dacă valoarea percepută a punctului de date este 0,49 sau mai mică, este clasificat ca 0, în timp ce dacă este 0,5 sau mai mare, este clasificat ca 1.
Algoritmii de arbore de decizie funcționează prin divizarea seturilor de date în fragmente din ce în ce mai mici. Criteriul exact utilizat pentru a divide datele este la latitudinea inginerului de machine learning, dar scopul este în cele din urmă să divizeze datele în puncte de date individuale, care vor fi apoi clasificate utilizând o cheie.
Un algoritm de pădure aleatorie este în esență mulți clasificatori de arbore de decizie individuali legați împreună într-un clasificator mai puternic.
Clasificatorul Naive Bayes calculează probabilitatea ca un anumit punct de date să fi apărut pe baza probabilității unui eveniment anterior. Se bazează pe teorema lui Bayes și plasează punctele de date în clase pe baza probabilității calculate. Atunci când se implementează un clasificator Naive Bayes, se presupune că toți predictorii au aceeași influență asupra rezultatului clasei.
O rețea neuronală artificială, sau percepție multi-strat, sunt algoritmi de machine learning inspirați de structura și funcția creierului uman. Rețelele neuronale artificiale își primesc numele de la faptul că sunt alcătuite din multe noduri/neuroni legați împreună. Fiecare neuron manipulează datele cu o funcție matematică. În rețelele neuronale artificiale, există straturi de intrare, straturi ascunse și straturi de ieșire.
Stratul ascuns al rețelei neuronale este unde datele sunt de fapt interpretate și analizate pentru modele. Cu alte cuvinte, este unde algoritmul învață. Mai multe neuroni legați împreună fac rețele mai complexe capabile să învețe modele mai complexe.
Tipuri de învățare nesupervizată
Algoritmii de învățare nesupervizată includ:
- Clustering K-means
- Autoencoder
- Analiză a componentelor principale
Clusteringul K-means este o tehnică de clasificare nesupervizată, și funcționează prin separarea punctelor de date în cluster sau grupuri pe baza caracteristicilor lor. Clusteringul K-means analizează caracteristicile găsite în punctele de date și distinge modele în ele care fac punctele de date găsite într-o clasă de cluster mai asemănătoare unele cu altele decât sunt cu clusterul care conține punctele de date ale altor cluster. Acest lucru se realizează prin plasarea centrelor posibile pentru cluster, sau centroizii, într-un grafic al datelor și reatribuirea poziției centroidului până când se găsește o poziție care minimizează distanța dintre centroid și punctele care aparțin clasei centroidului. Cercetătorul poate specifica numărul dorit de cluster.
Analiza componentelor principale este o tehnică care reduce un număr mare de caracteristici/variabile la un spațiu de caracteristici mai mic/mai puține caracteristici. “Componentele principale” ale punctelor de date sunt selectate pentru a fi păstrate, în timp ce celelalte caracteristici sunt comprimate într-o reprezentare mai mică. Relația dintre porțiunile originale de date este păstrată, dar deoarece complexitatea punctelor de date este mai simplă, datele sunt mai ușor de cuantificat și de descris.
Autoencoderii sunt versiuni de rețele neuronale care pot fi aplicate la sarcini de învățare nesupervizată. Autoencoderii sunt capabili să ia date nelabelate, libere, și să le transforme în date pe care o rețea neuronală le poate utiliza, creând practic propriul set de date de antrenament etichetate. Scopul autoencoderului este de a converti datele de intrare și de a le reconstrui cât mai exact posibil, astfel încât rețelei îi este în interesul de a determina care caracteristici sunt cele mai importante și de a le extrage.












