logo

Modele de învățare automată

Un model de învățare automată este definit ca o reprezentare matematică a rezultatului procesului de instruire. Învățarea automată este studiul diferiților algoritmi care se pot îmbunătăți automat prin experiență și date vechi și pot construi modelul. Un model de învățare automată este similar cu software-ul de calculator conceput pentru a recunoaște tipare sau comportamente bazate pe experiența sau datele anterioare. Algoritmul de învățare descoperă modele în datele de antrenament și emite un model ML care captează aceste modele și face predicții asupra datelor noi.

Modele de învățare automată

Să înțelegem un exemplu de model ML în care creăm o aplicație pentru a recunoaște emoțiile utilizatorului pe baza expresiilor faciale. Deci, crearea unei astfel de aplicații este posibilă prin modele de învățare automată, în care vom antrena un model prin hrănirea imaginilor cu fețe cu diferite emoții etichetate pe ele. Ori de câte ori această aplicație este utilizată pentru a determina starea de spirit a utilizatorului, citește toate datele furnizate, apoi determină starea de spirit a oricărui utilizator.

Prin urmare, în cuvinte simple, putem spune că a Modelul de învățare automată este o reprezentare simplificată a ceva sau a unui proces. În acest subiect, vom discuta diferite modele de învățare automată și tehnicile și algoritmii acestora .

Ce este modelul de învățare automată?

Modelele de învățare automată pot fi înțelese ca un program care a fost antrenat pentru a găsi modele în date noi și pentru a face predicții. Aceste modele sunt reprezentate ca o funcție matematică care preia cererile sub formă de date de intrare, face predicții asupra datelor de intrare și apoi oferă o ieșire ca răspuns. În primul rând, aceste modele sunt antrenate pe un set de date și apoi li se oferă un algoritm pentru a raționa datele, a extrage modelul din datele de feed și a învăța din acele date. Odată ce aceste modele sunt instruite, ele pot fi folosite pentru a prezice setul de date nevăzut.

Există diferite tipuri de modele de învățare automată disponibile pe baza diferitelor obiective de afaceri și seturi de date.

Clasificarea modelelor de învățare automată:

Pe baza diferitelor obiective de afaceri și seturi de date, există trei modele de învățare pentru algoritmi. Fiecare algoritm de învățare automată se stabilește într-unul dintre cele trei modele:

  • Învățare supravegheată
  • Învățare nesupravegheată
  • Consolidarea învățării
Modele de învățare automată

Învățarea supravegheată este împărțită în două categorii:

  • Clasificare
  • Regresia

Învățarea nesupravegheată este, de asemenea, împărțită în următoarele categorii:

  • Clustering
  • Regula de asociere
  • Reducerea dimensionalității

1. Modele de învățare automată supravegheate

Învățarea supravegheată este cel mai simplu model de învățare automată pentru a înțelege în ce date de intrare se numesc date de antrenament și are o etichetă sau un rezultat cunoscut ca rezultat. Deci, funcționează pe principiul perechilor intrare-ieșire. Necesită crearea unei funcții care poate fi antrenată folosind un set de date de antrenament, apoi este aplicată datelor necunoscute și are o anumită performanță predictivă. Învățarea supravegheată se bazează pe sarcini și este testată pe seturi de date etichetate.

Putem implementa un model de învățare supravegheată pe probleme simple din viața reală. De exemplu, avem un set de date format din vârstă și înălțime; apoi, putem construi un model de învățare supravegheată pentru a prezice înălțimea persoanei în funcție de vârsta acesteia.

Modelele de învățare supravegheată sunt clasificate în continuare în două categorii:

Regresia

În problemele de regresie, rezultatul este o variabilă continuă. Unele modele de regresie utilizate în mod obișnuit sunt următoarele:

a) Regresia liniară

Regresia liniară este cel mai simplu model de învățare automată în care încercăm să prezicem o variabilă de ieșire folosind una sau mai multe variabile de intrare. Reprezentarea regresiei liniare este o ecuație liniară, care combină un set de valori de intrare (x) și ieșire prezisă (y) pentru setul acelor valori de intrare. Este reprezentat sub forma unei linii:

Y = bx + c.

Modele de învățare automată

Scopul principal al modelului de regresie liniară este de a găsi cea mai bună linie care se potrivește cel mai bine punctelor de date.

Regresia liniară este extinsă la regresia liniară multiplă (găsește un plan de cea mai bună potrivire) și regresie polinomială (găsește curba de cea mai bună potrivire).

b) Arborele decizional

caracter cu șir

Arborele de decizie sunt modelele populare de învățare automată care pot fi utilizate atât pentru probleme de regresie, cât și pentru probleme de clasificare.

Un arbore de decizie folosește o structură arborescentă a deciziilor împreună cu posibilele consecințe și rezultate ale acestora. În aceasta, fiecare nod intern este folosit pentru a reprezenta un test pe un atribut; fiecare ramură este folosită pentru a reprezenta rezultatul testului. Cu cât un arbore de decizie are mai multe noduri, cu atât rezultatul va fi mai precis.

Avantajul arborilor de decizie este că sunt intuitivi și ușor de implementat, dar le lipsește acuratețea.

Arborii de decizie sunt folosiți pe scară largă în cercetare operațională, în special în analiza deciziilor, planificarea strategică , și în principal în învățarea automată.

c) Pădurea aleatorie

Random Forest este metoda de învățare prin ansamblu, care constă dintr-un număr mare de arbori de decizie. Fiecare arbore de decizie dintr-o pădure aleatoare prezice un rezultat, iar predicția cu majoritatea voturilor este considerată ca rezultat.

Un model de pădure aleatoare poate fi utilizat atât pentru probleme de regresie, cât și pentru probleme de clasificare.

Pentru sarcina de clasificare, rezultatul pădurii aleatorii se ia din majoritatea voturilor. În timp ce în sarcina de regresie, rezultatul este luat din media sau media predicțiilor generate de fiecare arbore.

d) Rețele neuronale

Rețelele neuronale sunt subsetul învățării automate și sunt cunoscute și sub numele de rețele neuronale artificiale. Rețelele neuronale sunt formate din neuroni artificiali și proiectate într-un mod care seamănă cu structura și funcționarea creierului uman. Fiecare neuron artificial se conectează cu mulți alți neuroni dintr-o rețea neuronală și astfel de milioane de neuroni conectați creează o structură cognitivă sofisticată.

Modele de învățare automată

Rețelele neuronale constau dintr-o structură multistrat, care conține un strat de intrare, unul sau mai multe straturi ascunse și un strat de ieșire. Pe măsură ce fiecare neuron este conectat cu un alt neuron, acesta transferă date de la un strat la celălalt neuron al straturilor următoare. În cele din urmă, datele ajung la ultimul strat sau strat de ieșire al rețelei neuronale și generează ieșire.

Rețelele neuronale depind de datele de antrenament pentru a învăța și a-și îmbunătăți acuratețea. Cu toate acestea, o rețea neuronală perfect pregătită și precisă poate grupa datele rapid și poate deveni un instrument puternic de învățare automată și AI. Una dintre cele mai cunoscute rețele neuronale este Algoritmul de căutare Google.

Clasificare

Modelele de clasificare sunt al doilea tip de tehnici de Învățare Supervizată, care sunt utilizate pentru a genera concluzii din valorile observate în formă categorială. De exemplu, modelul de clasificare poate identifica dacă e-mailul este spam sau nu; un cumpărător va cumpăra produsul sau nu, etc. Algoritmii de clasificare sunt utilizați pentru a prezice două clase și a clasifica rezultatele în grupuri diferite.

În clasificare, este proiectat un model de clasificator care clasifică setul de date în diferite categorii și fiecărei categorii i se atribuie o etichetă.

Există două tipuri de clasificări în învățarea automată:

    Clasificare binară: Dacă problema are doar două clase posibile, numite clasificator binar. De exemplu, pisică sau câine, Da sau Nu,Clasificare multiclasă: Dacă problema are mai mult de două clase posibile, este un clasificator cu mai multe clase.

Unii algoritmi de clasificare populari sunt după cum urmează:

a) Regresia logistică

Regresia logistică este utilizată pentru a rezolva problemele de clasificare în învățarea automată. Ele sunt similare cu regresia liniară, dar sunt folosite pentru a prezice variabilele categoriale. Poate prezice rezultatul fie în Da sau Nu, 0 sau 1, Adevărat sau Fals etc. Cu toate acestea, în loc să ofere valorile exacte, oferă valori probabilistice între 0 și 1.

b) Suport Vector Machine

Support vector machine sau SVM este algoritmul popular de învățare automată, care este utilizat pe scară largă pentru sarcini de clasificare și regresie. Cu toate acestea, în mod specific, este folosit pentru a rezolva probleme de clasificare. Scopul principal al SVM este de a găsi cele mai bune limite de decizie într-un spațiu N-dimensional, care poate segrega punctele de date în clase, iar cea mai bună limită de decizie este cunoscută sub numele de Hyperplane. SVM selectează vectorul extrem pentru a găsi hiperplanul, iar acești vectori sunt cunoscuți ca vectori suport.

Modele de învățare automată

c) Bayes naiv

Naïve Bayes este un alt algoritm de clasificare popular folosit în învățarea automată. Se numește astfel deoarece se bazează pe teorema Bayes și urmează ipoteza naivă (independentă) dintre caracteristicile care este dată ca:

Modele de învățare automată

Fiecare clasificator Bayes naiv presupune că valoarea unei anumite variabile este independentă de orice altă variabilă/funcție. De exemplu, dacă un fruct trebuie clasificat în funcție de culoare, formă și gust. Deci galbenul, ovalul și dulce vor fi recunoscute ca mango. Aici fiecare caracteristică este independentă de alte caracteristici.

2. Modele de învățare automată nesupravegheate

Modelele de învățare automată nesupravegheată implementează procesul de învățare opus învățării supravegheate, ceea ce înseamnă că permite modelului să învețe din setul de date de antrenament neetichetat. Pe baza setului de date neetichetat, modelul prezice rezultatul. Folosind învățarea nesupravegheată, modelul învață modele ascunse din setul de date singur, fără nicio supraveghere.

Modelele de învățare nesupravegheată sunt utilizate în principal pentru a îndeplini trei sarcini, care sunt următoarele:

    Clustering
    Clustering este o tehnică de învățare nesupravegheată care implică gruparea sau bâjbâitul punctelor de date în grupuri diferite, bazate pe asemănări și diferențe. Obiectele cu cele mai multe asemănări rămân în același grup și nu au asemănări sau foarte puține din alte grupuri.
    Algoritmii de grupare pot fi utilizați pe scară largă în diferite sarcini, cum ar fi Segmentarea imaginilor, Analiza datelor statistice, Segmentarea pietei , etc.
    Unii algoritmi de clusterizare folosiți în mod obișnuit sunt K înseamnă Clustering, Clustering ierarhic, DBSCAN , etc.
    Modele de învățare automată Învățarea regulilor de asociere
    Învățarea regulilor de asociere este o tehnică de învățare nesupravegheată, care găsește relații interesante între variabilele dintr-un set mare de date. Scopul principal al acestui algoritm de învățare este de a găsi dependența unui element de date de un alt element de date și de a mapa acele variabile în consecință, astfel încât să poată genera profit maxim. Acest algoritm este aplicat în principal în Analiza coșului de piață, extragerea utilizării web, producție continuă , etc.
    Unii algoritmi populari de învățare a regulilor de asociere sunt Algoritmul Apriori, Eclat, algoritmul FP-growth. Reducerea dimensionalității
    Numărul de caracteristici/variabile prezente într-un set de date este cunoscut sub numele de dimensionalitatea setului de date, iar tehnica utilizată pentru a reduce dimensionalitatea este cunoscută ca tehnica de reducere a dimensionalității.
    Deși mai multe date oferă rezultate mai precise, acestea pot afecta și performanța modelului/algoritmului, cum ar fi problemele de supraadaptare. În astfel de cazuri, se folosesc tehnici de reducere a dimensionalității.
    ' Este un proces de conversie a setului de date cu dimensiuni mai mari în setul de date cu dimensiuni mai mici, asigurându-se că oferă informații similare .'
    Diferite metode de reducere a dimensionalității, cum ar fi ca PCA (Analiza componentelor principale), Descompunerea valorii singulare etc.

Consolidarea învățării

În învățarea prin întărire, algoritmul învață acțiuni pentru un anumit set de stări care conduc la o stare de obiectiv. Este un model de învățare bazat pe feedback care preia semnale de feedback după fiecare stare sau acțiune prin interacțiunea cu mediul. Acest feedback funcționează ca o recompensă (pozitiv pentru fiecare acțiune bună și negativ pentru fiecare acțiune proastă), iar scopul agentului este de a maximiza recompensele pozitive pentru a-și îmbunătăți performanța.

Comportamentul modelului în învățarea prin întărire este similar cu învățarea umană, deoarece oamenii învață lucruri prin experiențe ca feedback și interacționează cu mediul.

Mai jos sunt câțiva algoritmi populari care fac obiectul învățării prin consolidare:

    Q-learning:Q-learning este unul dintre algoritmii populari de învățare prin întărire fără model, care se bazează pe ecuația Bellman.

Acesta își propune să învețe politica care poate ajuta agentul AI să ia cea mai bună acțiune pentru maximizarea recompensei într-o anumită circumstanță. Acesta încorporează valori Q pentru fiecare pereche stare-acțiune care indică recompensa pentru a urma o anumită cale de stare și încearcă să maximizeze valoarea Q.

    Stat-Acțiune-Recompensă-Stat-Acțiune (SARSA):SARSA este un algoritm On-policy bazat pe procesul de decizie Markov. Utilizează acțiunea efectuată de politica curentă pentru a afla valoarea Q. Algoritmul SARSA este în picioare pentru State Action Reward State Action, care simbolizează tuplu (s, a, r, s', a'). Rețeaua Deep Q:DQN sau Deep Q Neural Network este Q-learning în cadrul rețelei neuronale. Practic este folosit într-un mediu spațial de stat mare, unde definirea unui Q-table ar fi o sarcină complexă. Deci, într-un astfel de caz, în loc să folosească Q-table, rețeaua neuronală folosește Q-valori pentru fiecare acțiune bazată pe stare.

Antrenamentul modelelor de învățare automată

Odată construit modelul de învățare automată, acesta este antrenat pentru a obține rezultatele adecvate. Pentru a antrena un model de învățare automată, este nevoie de o cantitate imensă de date preprocesate. Aici datele preprocesate înseamnă date în formă structurată cu valori nule reduse etc. Dacă nu furnizăm date preprocesate, atunci există șanse mari ca modelul nostru să aibă rezultate teribil.

Cum să alegi cel mai bun model?

În secțiunea de mai sus, am discutat despre diferite modele și algoritmi de învățare automată. Dar o întrebare cea mai confuză care poate apărea oricărui începător este „ce model ar trebui să aleg?”. Deci, răspunsul este că depinde în principal de cerințele afacerii sau ale proiectului. În afară de aceasta, depinde și de atributele asociate, de volumul setului de date disponibil, de numărul de caracteristici, de complexitate etc. Cu toate acestea, în practică, se recomandă să începem întotdeauna cu cel mai simplu model care poate fi aplicat unui anumit model. problema și apoi îmbunătățiți treptat complexitatea și testați acuratețea cu ajutorul reglajului parametrilor și validării încrucișate.

Diferența dintre modelul de învățare automată și algoritmi

Una dintre cele mai confuze întrebări în rândul începătorilor este că sunt modelele de învățare automată, iar algoritmii sunt aceiași? Deoarece în diferite cazuri în învățarea automată și în știința datelor, acești doi termeni sunt folosiți interschimbabil.

Răspunsul la această întrebare este Nu, iar modelul de învățare automată nu este același cu un algoritm. Într-un mod simplu, an Algoritmul ML este ca o procedură sau o metodă care rulează pe date pentru a descoperi modele din acestea și generați modelul. În același timp, a Modelul de învățare automată este ca un program de calculator care generează rezultate sau face predicții . Mai precis, atunci când antrenăm un algoritm cu date, acesta devine un model.

 Machine Learning Model = Model Data + Prediction Algorithm