Tutorial de învățare automată pentru începători: ce este, elementele de bază ale ML
⚡ Rezumat inteligent
Învățarea automată este o familie de algoritmi informatici care se îmbunătățesc pornind de la exemple în loc să fie codificați explicit, combinând datele cu instrumente statistice pentru a prezice rezultate pe care oamenii le pot transforma în decizii acționabile.
Ce este învățarea automată?
Invatare mecanica este un sistem de algoritmi informatici care pot învăța din exemple prin auto-îmbunătățire, fără a fi codificați explicit de un programator. Învățarea automată este o parte a inteligență artificială care combină datele cu instrumente statistice pentru a prezice un rezultat ce poate fi utilizat pentru a genera informații concrete.
Descoperirea vine cu ideea că o mașină poate învăța singură din date (adică exemple) pentru a produce rezultate precise. Învățarea automată este strâns legată de data mining și modelare predictivă bayesiană. Mașina primește date ca intrare și folosește un algoritm pentru a formula răspunsuri.
O sarcină tipică de învățare automată este de a oferi o recomandare. Pentru cei care au o Netflix cont, toate recomandările de filme sau seriale se bazează pe datele istorice ale utilizatorului. Companiile de tehnologie folosesc învățare nesupravegheată pentru a îmbunătăți experiența utilizatorului prin personalizarea recomandărilor.
Învățarea automată este utilizată și pentru o varietate de sarcini, cum ar fi detectarea fraudelor, mentenanța predictivă, optimizarea portofoliului și automatizarea sarcinilor.
Învățare automată vs. programare tradițională
Programarea tradițională diferă semnificativ de învățarea automată. În programarea tradițională, un programator codifică toate regulile în consultare cu un expert din industria pentru care este dezvoltat software-ul. Fiecare regulă se bazează pe o fundație logică; mașina produce un rezultat urmând instrucțiunea logică. Pe măsură ce sistemul devine complex, este nevoie să fie scrise mai multe reguli, iar întreținerea acestuia poate deveni rapid nesustenabilă. Diagrama de mai jos arată acest flux, în care datele și regulile scrise de mână intră, iar răspunsurile ies.

Învățarea automată (machine learning) are scopul de a depăși această problemă. Mașina învață cum sunt corelate datele de intrare și cele de ieșire și scrie regula însăși. Programatorii nu trebuie să scrie reguli noi de fiecare dată când există date noi. Algoritmii se adaptează ca răspuns la noile date și experiență pentru a îmbunătăți eficacitatea în timp. A doua diagramă inversează prima: datele și răspunsurile cunoscute intră, iar regula apare.
Cum funcționează învățarea automată?
Având în vedere acest contrast, următoarea întrebare este ce se întâmplă de fapt în cadrul etapei de învățare.
Învățarea automată este creierul în care are loc toată învățarea. Modul în care mașina învață este similar cu modul în care o face o ființă umană. Oamenii învață din experiență: cu cât știm mai multe, cu atât putem prezice mai ușor. Prin analogie, atunci când ne confruntăm cu o situație necunoscută, probabilitatea de succes este mai mică decât într-o situație cunoscută. Mașinile sunt antrenate în același mod. Pentru a face o predicție precisă, mașina vede un exemplu. Când îi oferim mașinii un exemplu similar, aceasta poate afla rezultatul. Cu toate acestea, la fel ca un om, dacă i se administrează un exemplu nevăzut anterior, mașina are dificultăți în a prezice.
Obiectivele principale ale învățării automate sunt învățarea și inferența. În primul rând, mașina învață prin descoperirea de modele, iar această descoperire este posibilă datorită datelor. O parte crucială a sarcinii specialistului în date este de a alege cu atenție ce date să furnizeze mașinii. Lista de atribute utilizate pentru a rezolva o problemă se numește... vector caracteristicăVă puteți gândi la un vector de caracteristici ca la un subset de date utilizat pentru a aborda o problemă.
Mașina folosește algoritmi pentru a simplifica realitatea și a transforma această descoperire într-un model. Prin urmare, etapa de învățare este utilizată pentru a descrie datele și a le rezuma într-un model, așa cum este ilustrat mai jos.
De exemplu, mașina încearcă să înțeleagă relația dintre salariul unui individ și probabilitatea de a merge la un restaurant elegant. Se pare că mașina găsește o relație pozitivă între salariu și frecventarea unui restaurant de lux: acesta este modelul.
Deducerea
Când modelul este construit, este posibil să se testeze cât de puternic este pe date nemaivăzute până acum. Noile date sunt transformate într-un vector de caracteristici, trec prin model și oferă o predicție. Aceasta este partea valoroasă a învățării automate. Nu este nevoie să actualizați regulile sau să antrenați din nou modelul - puteți utiliza modelul antrenat anterior pentru a face o inferență pe baza datelor noi, exact așa cum arată diagrama de mai jos.
Viața unui program de învățare automată este simplă și poate fi rezumată în următoarele puncte:
- Definiți o întrebare
- Colectați date
- Vizualizați datele
- Algoritmul de tren
- Testați algoritmul
- Colectați feedback
- Rafinați algoritmul
- Repetați pașii de la 4 la 7 până când rezultatele sunt satisfăcătoare
- Utilizați modelul pentru a face o predicție
Odată ce algoritmul devine bun în a trage concluziile corecte, aplică aceste cunoștințe unor noi seturi de date.
Invatare mecanica Algorithms și unde sunt folosite?
Graficul de mai jos grupează cei mai comuni algoritmi în funcție de tipul de sarcină pe care o rezolvă.
Învățarea automată poate fi grupată în două mari sarcini de învățare: supravegheat și nesupravegheațiDouă alte familii se află între și dincolo de ele — învățarea semi-supervizată, care combină un set mic etichetat cu unul mare neetichetat și Consolidarea învățării, unde un agent învață din recompense mai degrabă decât din răspunsuri etichetate.
Învățare supravegheată
Un algoritm folosește date de antrenament și feedback de la oameni pentru a învăța relația dintre date de intrare date și un rezultat dat. De exemplu, un practician poate folosi cheltuielile de marketing și prognoza meteo ca date de intrare pentru a prezice vânzările de conserve.
Poți să folosești învățare supravegheată când datele de ieșire sunt cunoscute. Algoritmul va face apoi predicții pe baza noilor date.
Există două categorii de învățare supravegheată:
- Sarcina de clasificare
- Sarcina de regresie
Clasificare
Imaginează-ți că vrei să prezici sexul unui client pentru o reclamă. Vei începe prin a colecta date despre înălțime, greutate, loc de muncă, salariu, coș de cumpărături și așa mai departe din baza ta de date cu clienți. Cunoști sexul fiecăruia dintre clienții tăi și poate fi doar bărbat sau femeie. Obiectivul clasificatorului este de a atribui o probabilitate de a fi bărbat sau femeie (adică eticheta) pe baza informațiilor pe care le-ai colectat (adică caracteristicile). Când modelul a învățat cum să recunoască bărbatul sau femeia, poți utiliza date noi pentru a face o predicție. De exemplu, tocmai ai primit informații noi de la un client necunoscut și vrei să știi dacă clientul este bărbat sau femeie. Dacă clasificatorul prezice bărbat = 70%, înseamnă că algoritmul este 70% sigur că acest client este bărbat și 30% sigur că este femeie.
Eticheta poate avea două sau mai multe clase. Exemplul de învățare automată de mai sus are doar două clase, dar dacă un clasificator trebuie să prezică obiecte, acesta poate avea zeci de clase (de exemplu, pahar, masă, pantofi - fiecare obiect reprezintă o clasă).
Regres
Când rezultatul este o valoare continuă, sarcina este o regresie. De exemplu, un analist financiar poate fi nevoit să prognozeze valoarea unei acțiuni pe baza unei serii de caracteristici, cum ar fi capitalul propriu, performanța anterioară a acțiunilor și indicii macroeconomici. Sistemul va fi antrenat să estimeze prețul acțiunii cu cea mai mică eroare posibilă.
Tabelul de mai jos enumeră algoritmii supervizați pe care îi veți întâlni cel mai des și sarcina pentru care este potrivit fiecare.
| Algoritm | Descriere | Tip |
|---|---|---|
| Regresie liniara | Găsește o modalitate de a corela fiecare caracteristică cu rezultatul pentru a ajuta la prezicerea valorilor viitoare. | Regres |
| Regresie logistică | Extinderea regresiei liniare utilizată pentru sarcini de clasificare. Variabila de ieșire este binară (de exemplu, doar negru sau alb) mai degrabă decât continuă (de exemplu, o listă infinită de culori potențiale). | Clasificare |
| Arborele decizional | Clasificare sau model de regresie foarte interpretabil care împarte valorile caracteristicilor de date în ramuri la nodurile de decizie (de exemplu, dacă o caracteristică este o culoare, fiecare culoare posibilă devine o nouă ramură) până când se face o decizie finală. | Regres Clasificare |
| Bayes naiv | Metoda Bayesiană este o metodă de clasificare care utilizează teorema Bayesiană. Teorema actualizează cunoștințele anterioare ale unui eveniment cu probabilitatea independentă a fiecărei caracteristici care poate afecta evenimentul. | Regres Clasificare |
| Suportă mașină vectorială | Mașina cu vectori suport, sau SVM, este de obicei utilizată pentru sarcina de clasificare. Algoritmul SVM găsește un hiperplan care împarte optim clasele. Cel mai bine este utilizat cu un solver neliniar. | Regresie (nu foarte frecventă) Clasificare |
| Padure aleatorie | Algoritmul este construit pe un arbore decizional pentru a îmbunătăți drastic precizia. Pădurea aleatorie generează mulți arbori decizionali simpli și folosește metoda „votului majoritar” pentru a decide ce etichetă să returneze. Pentru sarcina de clasificare, predicția finală va fi cea cu cele mai multe voturi; pentru sarcina de regresie, predicția medie a tuturor arborilor este predicția finală. | Regres Clasificare |
| AdaBoost | Tehnica de clasificare sau regresie care folosește o multitudine de modele pentru a lua o decizie, dar le cântărește în funcție de acuratețea lor în prezicerea rezultatului | Regres Clasificare |
| Copaci care măresc gradientul | Arborii cu amplificare a gradienților reprezintă o tehnică de clasificare/regresie de ultimă generație. Se concentrează pe eroarea comisă de arborii anteriori și încearcă să o corecteze. | Regres Clasificare |
Învățare nesupravegheată
În învățarea nesupervizată, un algoritm explorează datele de intrare fără a i se furniza o variabilă de ieșire explicită (de exemplu, explorează datele demografice ale clienților pentru a identifica tipare).
Îl poți folosi atunci când nu știi cum să clasifici datele și vrei ca algoritmul să găsească tiparele și să grupeze datele pentru tine. Principalii algoritmi nesupervizați sunt rezumați mai jos.
| Nume algoritm | Descriere | Tip |
|---|---|---|
| K-înseamnă grupare | Pune datele în unele grupuri (k), fiecare conține date cu caracteristici similare (așa cum este determinat de model, nu în prealabil de oameni) | ClusterING |
| Model de amestec gaussian | O generalizare a grupării k-means care oferă mai multă flexibilitate în dimensiunea și forma grupurilor (clustere) | ClusterING |
| Gruparea ierarhică | Împarte grupurile de-a lungul unui arbore ierarhic pentru a forma un sistem de clasificare. Poate fi folosit pentru a grupa clienții cu carduri de fidelitate. | ClusterING |
| Sistem de recomandare | Ajută la definirea datelor relevante pentru formularea unei recomandări. | ClusterING |
| PCA/t-SNE | Utilizat în cea mai mare parte pentru a reduce dimensionalitatea datelor. Algoritmii reduc numărul de caracteristici la 3 sau 4 vectori cu cele mai mari variații. | Reducerea dimensiunii |
Cum să alegeți algoritmul de învățare automată
Există o mulțime de algoritmi de învățare automată, iar alegerea algoritmului este determinată de obiectiv, mai degrabă decât de modă.
În exemplul de învățare automată de mai jos, sarcina este de a prezice tipul de floare dintre trei soiuri. Predicțiile se bazează pe lungimea și lățimea petalei. Imaginea prezintă rezultatele a zece algoritmi diferiți. Imaginea din stânga sus este setul de date în sine, cu datele clasificate în trei categorii: roșu, albastru deschis și albastru închis. Unele grupe...pings sunt vizibile. De exemplu, în a doua imagine, tot ce se află în stânga sus aparține categoriei roșii, partea din mijloc conține un amestec de incertitudine și albastru deschis, în timp ce partea de jos corespunde categoriei întunecate. Celelalte imagini arată cum diferiți algoritmi încearcă să clasifice aceleași date.
Odată ce un candidat este ales, calitatea acestuia este evaluată pe baza unor date pe care nu le-a mai văzut niciodată, de obicei cu o matrice de confuzie și cifrele de acuratețe, precizie și rechemare derivate din aceasta.
Provocări și limitări ale învățării automate
Principala provocare a învățării automate este lipsa datelor sau lipsa diversității în cadrul setului de date. O mașină nu poate învăța dacă nu există date disponibile. Un set de date căruia îi lipsește diversitatea îi pune, de asemenea, dificultăți mașinii, deoarece o mașină are nevoie de eterogenitate pentru a învăța o informație semnificativă. Este rar ca un algoritm să poată ex...tracinformații t atunci când nu există sau există puține variații. O regulă generală este să existe cel puțin 20 de observații per grup pentru a ajuta mașina să învețe; sub această valoare, atât evaluarea, cât și predicția au de suferit.
Volumul de date nu este singura limită. Modelele antrenate pe baza unor înregistrări istorice părtinitoare reproduc această părtinire, modelele complexe sunt greu de explicat unei autorități de reglementare sau unui client, iar orice model se degradează pe măsură ce lumea în care a fost antrenat se schimbă.
Aplicarea Machine Learning
Tehnicile de mai sus sunt deja utilizate în producție în majoritatea industriilor. Exemplele de mai jos se mută de la asistență generală la sectoare specifice.
Augmentare: Învățarea automată îi ajută pe oameni în sarcinile lor zilnice, personale sau comerciale, fără a avea control complet asupra rezultatului. O astfel de învățare automată este utilizată în diferite moduri, cum ar fi asistenții virtuali, analiza datelor și soluțiile software. Scopul principal este de a reduce erorile cauzate de prejudecățile umane.
Automatizare: Învățarea automată funcționează complet autonom în orice domeniu, fără a fi nevoie de intervenție umană. De exemplu, roboții efectuează etapele esențiale ale procesului în fabricile de producție.
Industria financiară: Învățarea automată (machine learning) câștigă popularitate în industria financiară. Băncile folosesc în principal învățarea automată (machine learning) pentru a găsi tipare în interiorul datelor, dar și pentru a preveni frauda.
Organizații guvernamentale: Guvernele utilizează tehnologia de învățare automată (ML) pentru a gestiona siguranța publică și utilitățile. Luați exemplul Chinei și al programului său de recunoaștere facială la scară largă, unde aplicații de inteligență artificială sunt folosite pentru a identifica pietonii ilegali.
Industria de sănătate: Industria medicală a fost una dintre primele industrii care a utilizat învățarea automată, începând cu detectarea imaginilor.
Marketing: Utilizarea pe scară largă a inteligenței artificiale este realizată în marketing datorită accesului abundent la date. Înainte de era datelor în masă, cercetătorii au dezvoltat instrumente matematice avansate, cum ar fi analiza bayesiană, pentru a estima valoarea unui client. Odată cu explozia datelor, departamentele de marketing se bazează pe inteligența artificială pentru a optimiza relațiile cu clienții și campaniile de marketing.
Exemplu de învățare automată în lanțul de aprovizionare
Învățarea automată oferă rezultate solide pentru recunoașterea vizuală a modelelor, deschizând numeroase aplicații potențiale în inspecția fizică și întreținerea în întreaga rețea a lanțului de aprovizionare.
Învățarea nesupravegheată poate căuta rapid modele comparabile într-un set de date divers. La rândul său, mașina poate efectua inspecții de calitate în întregul centru logistic și poate marca expedierile cu deteriorări și uzură.
De exemplu, IBMPlatforma Watson poate determina navaping deteriorarea containerului. Watson combină date vizuale și bazate pe sisteme pentru a track, raportează și face recomandări în timp real.
În trecut, managerii de stocuri se bazau în mare măsură pe metode manuale pentru a evalua și prognoza inventarul. Atunci când se combină big data și învățarea automată, devin posibile tehnici de prognoză mai bune, cu îmbunătățiri raportate de 20 până la 30% față de instrumentele tradiționale de prognoză. În ceea ce privește vânzările, aceasta se traduce printr-o creștere de 2 până la 3% datorită reducerii potențiale a costurilor stocurilor.
Exemplu de învățare automată în Google Mașină
Toată lumea știe Google mașină. Mașina este acoperită cu lasere pe acoperiș, care îi indică poziția în raport cu zona înconjurătoare. Are un radar în față, care informează mașina despre viteza și mișcarea tuturor mașinilor din jurul ei. Folosește toate aceste date nu doar pentru a-și da seama cum să conducă mașina, ci și pentru a prezice ce vor face șoferii din jurul ei. Ceea ce este impresionant este că mașina procesează aproape un gigabyte de date pe secundă.
De ce este importantă învățarea automată?
Învățarea automată este cel mai bun instrument de până acum pentru a analiza, înțelege și identifica un model în date. Una dintre ideile principale din spatele învățării automate este că un computer poate fi antrenat să automatizeze sarcini care ar fi epuizante sau imposibile pentru o ființă umană. Ruptura clară față de analiza tradițională este că învățarea automată poate lua decizii cu o intervenție umană minimă.
Să luăm următorul exemplu: un agent imobiliar poate estima prețul unei case pe baza experienței personale și a cunoștințelor despre piață.
O mașină poate fi antrenată să transpună cunoștințele expertului respectiv în caracteristici. Caracteristicile sunt toate caracteristicile unei case, ale cartierului, ale mediului economic și așa mai departe, care fac ca prețul să difere. Pentru expert, probabil că i-au trebuit ani de zile să stăpânească arta estimării prețului unei case, iar expertiza se îmbunătățește după fiecare vânzare.
Pentru mașină, este nevoie de milioane de puncte de date (adică exemple) pentru a stăpâni această artă. Chiar la începutul învățării sale, mașina face greșeli, la fel ca un agent de vânzări junior. Odată ce mașina a văzut suficiente exemple, are suficiente cunoștințe pentru a face estimarea și pentru a o face cu o precizie ridicată. De asemenea, mașina este capabilă să își corecteze greșelile pe măsură ce apar noi vânzări.
Majoritatea companiilor mari au înțeles valoarea învățării automate și a stocării datelor. Institutul Global McKinsey a estimat valoarea anuală a tuturor tehnicilor de analiză la 9.5 trilioane de dolari până la 15.4 trilioane de dolari și a atribuit aproximativ 40% din această valoare - între 3.5 trilioane de dolari și 5.8 trilioane de dolari pe an - tehnicilor avansate de inteligență artificială bazate pe rețele neuronale profunde, așa cum se prevede în raportul său. Note de la frontiera IA cercetare.
Acolo unde regulile sunt cunoscute, dar imprecise, mai degrabă decât absente, o abordare bazată pe reguli, cum ar fi logica fuzzy poate fi o potrivire mai bună decât un model învățat, așa că cele două tehnici sunt adesea comparate înainte de începerea unui proiect.




