AI 101
Supervised vs Unsupervised Learning
I maskinlæring kan de fleste opgaver let kategoriseres i en af ​​to forskellige klasser: overvågede læringsproblemer eller uovervågede læringsproblemer. I overvåget læring har data etiketter eller klasser knyttet til sig, mens dataene i tilfælde af uovervåget læring er umærkede. Lad os se nærmere på, hvorfor denne skelnen er vigtig, og se på nogle af de algoritmer, der er forbundet med hver type læring.
Supervised vs Unsupervised Learning
De fleste maskinlæringsopgaver er inden for domænet af overvåget læring. I overvågede læringsalgoritmer får de enkelte instanser/datapunkter i datasættet en klasse eller etiket tildelt. Det betyder, at maskinlæringsmodellen kan lære at skelne, hvilke funktioner der er korreleret med en given klasse, og at maskinlæringsingeniøren kan kontrollere modellens ydeevne ved at se, hvor mange forekomster der blev klassificeret korrekt. Klassifikationsalgoritmer kan bruges til at skelne mange komplekse mønstre, så længe dataene er mærket med de rigtige klasser. For eksempel kan en maskinlæringsalgoritme lære at skelne forskellige dyr fra hinanden baseret på egenskaber som "knurhår", "hale", "kløer" osv.
I modsætning til superviseret læring, involverer uovervåget læring at skabe en model, der er i stand til at udtrække mønstre fra umærkede data. Computeren analyserer med andre ord inputfunktionerne og bestemmer selv, hvad de vigtigste funktioner og mønstre er. Uovervåget læring forsøger at finde de iboende ligheder mellem forskellige instanser. Hvis en overvåget læringsalgoritme sigter mod at placere datapunkter i kendte klasser, vil uovervågede læringsalgoritmer undersøge de funktioner, der er fælles for objektforekomsterne, og placere dem i grupper baseret på disse funktioner, hvilket i det væsentlige skaber sine egne klasser.
Eksempler på overvågede læringsalgoritmer er lineær regression, logistisk regression, K-nærmeste naboer, beslutningstræer og støttevektormaskiner.
I mellemtiden er nogle eksempler på uovervågede læringsalgoritmer Principal Component Analysis og K-Means Clustering.
Supervised Learning Algoritme
Lineær regression er en algoritme, der tager to funktioner og plotter forholdet mellem dem. Lineær regression bruges til at forudsige numeriske værdier i forhold til andre numeriske variable. Lineær regression har ligningen Y = a +bX, hvor b er linjens hældning og a er hvor y krydser X-aksen.
Logistisk regression er en binær klassifikationsalgoritme. Algoritmen undersøger forholdet mellem numeriske træk og finder sandsynligheden for, at instansen kan klassificeres i en af ​​to forskellige klasser. Sandsynlighedsværdierne "klemmes" mod enten 0 eller 1. Med andre ord vil stærke sandsynligheder nærme sig 0.99, mens svage sandsynligheder nærmer sig 0.
K-Nærmeste Naboer tildeler en klasse til nye datapunkter baseret på de tildelte klasser fra en eller anden valgt mængde af naboer i træningssættet. Antallet af naboer, der tages i betragtning af algoritmen, er vigtigt, og for få eller for mange naboer kan fejlklassificere punkter.
Beslutningstræer er en type klassifikations- og regressionsalgoritme. Et beslutningstræ fungerer ved at opdele et datasæt i mindre og mindre dele, indtil delmængderne ikke kan opdeles yderligere, og resultatet er et træ med noder og blade. Noderne er, hvor beslutninger om datapunkter træffes ved hjælp af forskellige filtreringskriterier, mens bladene er de forekomster, der er blevet tildelt en eller anden etiket (et datapunkt, der er blevet klassificeret). Beslutningstræalgoritmer er i stand til at håndtere både numeriske og kategoriske data. Der laves opdelinger i træet på specifikke variabler/funktioner.
Support vektormaskiner er en klassifikationsalgoritme, der fungerer ved at tegne hyperplaner eller adskillelseslinjer mellem datapunkter. Datapunkter er opdelt i klasser baseret på hvilken side af hyperplanet de er på. Flere hyperplaner kan tegnes hen over et plan, og dykker et datasæt ind i flere klasser. Klassificereren vil forsøge at maksimere afstanden mellem dykkerhyperplanet og punkterne på hver side af flyet, og jo større afstanden er mellem linjen og punkterne, jo mere sikker er klassificereren.
Uovervågede læringsalgoritmer
Hovedkomponentanalyse er en teknik, der bruges til dimensionalitetsreduktion, hvilket betyder, at dimensionaliteten eller kompleksiteten af ​​dataene er repræsenteret på en enklere måde. Principal Component Analysis-algoritmen finder nye dimensioner for de data, der er ortogonale. Mens dimensionaliteten af ​​dataene er reduceret, bør variansen mellem dataene bevares så meget som muligt. Hvad dette betyder i praksis er, at det tager funktionerne i datasættet og destillerer dem ned til færre funktioner, der repræsenterer det meste af dataene.
K-Means Clustering er en algoritme, der automatisk grupperer datapunkter i klynger baseret på lignende funktioner. Mønstrene i datasættet analyseres, og datapunkterne opdeles i grupper baseret på disse mønstre. I det væsentlige opretter K-means sine egne klasser ud fra umærkede data. K-Means-algoritmen fungerer ved at tildele centre til klyngerne eller tyngdepunkterne og flytte tyngdepunkterne, indtil den optimale position for tyngdepunkterne er fundet. Den optimale position vil være en, hvor afstanden mellem tyngdepunkterne til de omgivende datapunkter inden for klassen er minimeret. "K" i K-betyder clustering refererer til, hvor mange tyngdepunkter, der er blevet valgt.
Resumé
For at lukke, lad os hurtigt gennemgå de vigtigste forskelle mellem superviseret og uovervåget læring.
Som vi tidligere har diskuteret, er inputdataene mærket i superviserede læringsopgaver, og antallet af klasser er kendt. I mellemtiden er inputdata umærket, og antallet af klasser er ikke kendt i uovervågede læringssager. Ikke-superviseret læring har en tendens til at være mindre beregningsmæssigt kompleks, mens superviseret læring har en tendens til at være mere beregningsmæssigt kompleks. Mens overvågede læringsresultater har tendens til at være meget nøjagtige, har uovervågede læringsresultater en tendens til at være mindre nøjagtige/moderat nøjagtige.