Dacă ați fost suficient de mult timp la învățarea automată, știți că există un principiu „fără prânz gratuit” – nu există un algoritm unic care să vă ajute să rezolvați fiecare problemă și să abordați fiecare set de date.

Lucrez pentru Springboard – am pus multe cercetări în formarea și resursele de învățare automată. La Springboard, oferim primul curs online cu o garanție de locuri de muncă de învățare automată.

Ceea ce ajută foarte mult atunci când vă confruntați cu o nouă problemă este să aveți un manual pentru algoritmul care ar putea fi cel mai potrivit pentru anumite situații. Aici, vorbim despre diferite probleme și tipuri de date și discutăm care ar putea fi cel mai eficient algoritm de încercat pentru fiecare, împreună cu o resursă care vă poate ajuta să implementați acel model particular.

Amintiți-vă: dovada este în budincă: cea mai bună abordare a datelor dvs. este modelul care vă oferă empiric cele mai bune rezultate. Acest ghid este menit să vă îmbunătățească primele instincte și să vă ajute să vă amintiți ce modele ar putea fi cele mai eficiente pentru fiecare problemă și care ar fi impracticabil de utilizat.

Să începem prin a vorbi despre variabilele pe care trebuie să le luăm în considerare.

Unvățare supravegheată vs învățare supravegheată

Învățare nesupravegheată este locul în care permiteți algoritmului de învățare automată să înceapă să învețe și să scoată un rezultat fără nicio prelucrare explicită umană a datelor în prealabil.

Învățare supravegheată implică o anumită etichetare și prelucrare a datelor de instruire în prealabil pentru a le structura pentru prelucrare.

Tipul de învățare pe care îl puteți efectua va conta foarte mult atunci când începeți să lucrați cu diferiți algoritmi de învățare automată.

Sconsiderente de ritm și timp

Sunt considerente de spațiu și timp pentru fiecare algoritm de învățare automată. În timp ce, în practică, veți lucra probabil cu versiuni optimizate ale fiecărui algoritm ambalat într-un cadru, este bine să luați în considerare modul în care algoritmii pe care îi alegeți pot afecta performanța.

Ieșirea

În al treilea rând, și poate cel mai important, este rezultatul pe care doriți să îl obțineți. Încercați să clasificați datele? Îl folosiți pentru a prezice puncte de date viitoare? Ceea ce doriți să obțineți ca rezultat și ce doriți să faceți cu datele dvs. vor determina în mare măsură abordările algoritmice pe care ar trebui să le luați.

Cateva exemple

Te uiți la construiți un model predictiv simplu cu un set de date bine structurat, fără prea multe complicații.

Cel mai bun pariu aici este, probabil, regresia liniară, ceva care poate lua o serie întreagă de factori și apoi vă oferă un rezultat predictiv cu o explicație simplă a ratei de eroare și o explicație simplă pentru care factori contribuie la predicție. Nici nu este nevoie de multă putere de calcul pentru a rula o regresie liniară.

Resursă: Regresie liniară – Vizualizare detaliată

Căutați să vă clasificați date care au fost deja etichetate în două sau mai multe tipuri distincte de etichete (de exemplu, încercarea de a determina dacă copiii sunt probabil bărbați sau femei în funcție de greutatea și înălțimea lor) într-un cadru supravegheat.

Primul instinct pe care ar trebui să îl ai atunci când vezi o astfel de situație este să aplici model de regresie logistică. După rularea modelului, veți vedea că forțează fiecare punct de date în două categorii diferite, permițându-vă să transmiteți cu ușurință care punct aparține categoriei. Modelul de regresie logistică poate fi, de asemenea, generalizat cu ușurință la lucrul cu mai multe clase țintă și rezultate, dacă asta este ceea ce cere problema ta.

Resursă: Construirea unei regresii logistice

Căutați să plasați date continue neetichetate în diferite grupuri (de exemplu, punerea clienților cu anumite trăsături înregistrate și încercarea de a descoperi categorii / grupuri din care pot face parte).

Prima potrivire naturală pentru această problemă este algoritmul de grupare K-Means, care va grupa și grupa datele măsurând distanța dintre fiecare punct. Apoi, există o varietate de algoritmi de grupare, cum ar fi clusterizarea spațială bazată pe densitate a aplicațiilor cu algoritmi de zgomot și schimbare medie.

Resursă: Cele 5 algoritmi de grupare Datele pe care oamenii de știință trebuie să le cunoască

Încercați să preziceți dacă un șir de caractere sau un grup de trăsături se încadrează într-o categorie de date sau alta (clasificarea textului supravegheat) – de exemplu, dacă o recenzie este pozitivă sau negativă.

Cel mai bun pariu aici este probabil Naive Bayes, care este un model simplu, dar puternic, care poate fi utilizat pentru clasificarea textului. Cu unele pre-procesare și curățare a textului (fiind deosebit de atent să eliminați cuvintele de oprire a umplerii, cum ar fi „și” care ar putea adăuga zgomot la setul de date), puteți obține un set remarcabil de rezultate cu un model foarte simplu.

Un alt pariu decent este regresia logistică, care este un model simplu de înțeles și explicat, și mai puțin greu de ales decât Naive Bayes (care deseori atribuie probabilități cuvânt cu cuvânt, mai degrabă decât etichetarea holistică a unui fragment de text ca făcând parte dintr-un grup sau altul ).

Trecând la ceva mai puternic, algoritmul Linear Support Vector Machine vă va ajuta probabil să vă îmbunătățiți performanța. Dacă doriți să treceți chiar aici, puteți (deși vă sugerez să încercați ambele modele și să comparați care dintre ele funcționează cel mai bine – Naive Bayes are o implementare absurd de ușoară pe cadre precum scikit-learn și nu este foarte costisitor din punct de vedere al calculului, așa că vă puteți permite să testați ambele).

În cele din urmă, analiza sacului de cuvinte ar putea de asemenea să funcționeze – luați în considerare realizarea unui ansamblu de metode diferite și testarea tuturor acestor metode unele împotriva altora, în funcție de setul de date în cauză.

Resursă: Comparație și selecție a modelului de clasificare a textelor în mai multe clase

Căutați să faceți învățare nestructurată pe seturi de date de imagine sau video la scară largă (de exemplu, clasificarea imaginilor).

Cel mai bun algoritm pentru a aborda trecerea prin diferite imagini este o rețea neuronală convoluțională, organizată în mod similar cu modul în care sunt analizate cortexele vizuale ale animalelor.

Măsurată în funcție de performanță (rata de eroare redusă) în competiția ImageNet, arhitectura SE-Resnet iese în evidență, deși pe măsură ce câmpul este încă în curs de dezvoltare, noi progrese apar aproape în fiecare zi.

Cu toate acestea, trebuie să știți că rețelele neuronale convoluționale sunt dense și necesită multă putere de calcul – deci asigurați-vă că aveți capacitatea hardware pentru a rula aceste modele pe seturi de date la scară largă.

Resursă: Revizuirea algoritmilor de învățare profundă pentru clasificarea imaginilor

Căutați să clasificați punctele de rezultat care ies dintr-un proces bine definit (de exemplu: numărul de angajări dintr-un proces de interviu prestabilit, în care știți sau puteți deduce calculal probabilitățile fiecărui eveniment).

Cea mai bună opțiune pentru acest lucru este probabil un algoritm al arborelui decizional care va explica clar care sunt punctele divizate între clasificarea ceva într-un grup sau altul.

Resursă: Arbori de decizie în învățarea automată

Căutați să faceți analize de serii temporale cu date bine definite, supravegheate (de exemplu, prezicerea prețurilor acțiunilor pe baza modelelor istorice de pe piața bursieră, aranjate pe o bază cronologică din trecut până în prezent).

O rețea neuronală recurentă este configurată pentru a face analiza secvenței prin conținerea unei memorii interne in-stream a datelor pe care le procesează, permițându-i să ia în considerare relația dintre date și orizontul de timp și ordinea în care este implementat.

Resursă: Rețele neuronale recurente și LSTM

Înfășurându-se

Luați recomandările și resursele de mai sus și aplicați-le ca un fel de prim instinct pentru modelarea dvs. – vă va ajuta să intrați în orice lucrare pe care o faceți puțin mai repede. Dacă sunteți interesat să fiți mentorat de un expert în învățarea automată în învățarea modului de instruire a instinctelor dvs., consultați Springboard’s AI / Machine Learning Career Track.