stub Hvad er Machine Learning? - Unite.AI
Følg os

AI 101

Hvad er maskinlæring?

mm
Opdateret on

Machine learning er et af de hurtigst voksende teknologiske felter, men på trods af hvor ofte ordene "machine learning" bliver kastet rundt, kan det være svært at forstå, hvad machine learning præcist er.

Maskinelæring henviser ikke til kun én ting, det er et paraplybegreb, der kan anvendes på mange forskellige koncepter og teknikker. At forstå maskinlæring betyder at være bekendt med forskellige former for modelanalyse, variabler og algoritmer. Lad os se nærmere på maskinlæring for bedre at forstå, hvad det omfatter.

Hvad er Machine Learning?

Mens termen maskinlæring kan anvendes på mange forskellige ting, refererer udtrykket generelt til at gøre det muligt for en computer at udføre opgaver uden at modtage eksplicitte linje-for-linje instruktioner til at gøre det. En maskinlæringsspecialist behøver ikke at skrive alle de nødvendige trin for at løse problemet, fordi computeren er i stand til at "lære" ved at analysere mønstre i dataene og generalisere disse mønstre til nye data.

Maskinlæringssystemer har tre grundlæggende dele:

  • Indgange
  • Algoritmer
  • Udgange

Indgangene er de data, der føres ind i maskinlæringssystemet, og inputdataene kan opdeles i etiketter og funktioner. Funktioner er de relevante variable, de variable, der vil blive analyseret for at lære mønstre og drage konklusioner. I mellemtiden er etiketterne klasser/beskrivelser givet til de individuelle forekomster af dataene.

Funktioner og etiketter kan bruges i to forskellige typer maskinlæringsproblemer: overvåget læring og uovervåget læring.

Uovervåget vs. Superviseret læring

In overvåget læring, er inputdataene ledsaget af en grundsandhed. Overvågede læringsproblemer har de korrekte outputværdier som en del af datasættet, så de forventede klasser er kendt på forhånd. Dette gør det muligt for dataforskeren at kontrollere algoritmens ydeevne ved at teste dataene på et testdatasæt og se, hvor stor en procentdel af emnerne, der var korrekt klassificeret.

I modsætning, uovervåget læring problemer har ikke sandhedsmærker knyttet til dem. En maskinlæringsalgoritme, der er trænet til at udføre uovervågede læringsopgaver, skal selv kunne udlede de relevante mønstre i dataene.

Overvågede læringsalgoritmer bruges typisk til klassifikationsproblemer, hvor man har et stort datasæt fyldt med instanser, der skal sorteres i en af ​​mange forskellige klasser. En anden type superviseret læring er en regressionsopgave, hvor værdien output af algoritmen er af kontinuerlig karakter i stedet for kategorisk.

I mellemtiden bruges uovervågede læringsalgoritmer til opgaver som tæthedsestimering, klyngedannelse og repræsentationslæring. Disse tre opgaver kræver maskinlæringsmodellen for at udlede strukturen af ​​dataene, der er ingen foruddefinerede klasser givet til modellen.

Lad os tage et kort kig på nogle af de mest almindelige algoritmer, der bruges i både uovervåget læring og overvåget læring.

Typer af superviseret læring

Almindelige overvågede læringsalgoritmer inkluderer:

  • Naiv Bayes
  • Support vektormaskiner
  • Logistisk regression
  • Tilfældige skove
  • Kunstige neurale netværk

Support vektormaskiner er algoritmer, der deler et datasæt op i forskellige klasser. Datapunkter er grupperet i klynger ved at tegne linjer, der adskiller klasserne fra hinanden. Punkter fundet på den ene side af linjen vil tilhøre én klasse, mens punkterne på den anden side af linjen er en anden klasse. Support Vector Machines sigter mod at maksimere afstanden mellem linjen og de punkter, der findes på hver side af linjen, og jo større afstanden er, desto mere sikker er klassificereren på, at punktet tilhører én klasse og ikke en anden klasse.

Logistisk regression er en algoritme, der bruges i binære klassifikationsopgaver, når datapunkter skal klassificeres som tilhørende en af ​​to klasser. Logistisk regression fungerer ved at mærke datapunktet enten et 1 eller et 0. Hvis den opfattede værdi af datapunktet er 0.49 eller derunder, klassificeres det som 0, mens hvis det er 0.5 eller derover, klassificeres det som 1.

Decision Tree algoritmer operere ved at dele datasæt op i mindre og mindre fragmenter. De nøjagtige kriterier, der bruges til at opdele dataene, er op til maskinlæringsingeniøren, men målet er i sidste ende at dele dataene op i enkelte datapunkter, som derefter vil blive klassificeret ved hjælp af en nøgle.

En Random Forest-algoritme er i det væsentlige mange enkelt Decision Tree-klassifikatorer forbundet til en mere kraftfuld klassifikator.

Naiv Bayes Classifier beregner sandsynligheden for, at et givet datapunkt er indtruffet baseret på sandsynligheden for, at en tidligere hændelse indtræffer. Det er baseret på Bayes Theorem, og det placerer datapunkterne i klasser baseret på deres beregnede sandsynlighed. Når man implementerer en Naiv Bayes-klassifikator, antages det, at alle prædiktorerne har samme indflydelse på klassens resultat.

An Kunstigt neuralt netværk, eller flerlagsperceptron, er maskinlæringsalgoritmer inspireret af den menneskelige hjernes struktur og funktion. Kunstige neurale netværk får deres navn fra det faktum, at de er lavet af mange noder/neuroner forbundet med hinanden. Hver neuron manipulerer dataene med en matematisk funktion. I kunstige neurale netværk er der inputlag, skjulte lag og outputlag.

Det skjulte lag af det neurale netværk er, hvor dataene faktisk fortolkes og analyseres for mønstre. Det er med andre ord, hvor algoritmen lærer. Flere neuroner sammenføjet gør mere komplekse netværk i stand til at lære mere komplekse mønstre.

Typer af uovervåget læring

Uovervågede læringsalgoritmer inkluderer:

  • K-betyder gruppering
  • Autoencodere
  • Hovedkomponentanalyse

K-betyder gruppering er en uovervåget klassifikationsteknik, og den virker ved at adskille datapunkter i klynger eller grupper baseret på deres egenskaber. K-means clustering analyserer de funktioner, der findes i datapunkterne og skelner mønstre i dem, der gør de datapunkter, der findes i en given klasseklynge, mere lig hinanden, end de er til klynger, der indeholder de andre datapunkter. Dette opnås ved at placere mulige centre for klyngen, eller tyngdepunkter, i en graf over dataene og gentildele tyngdepunktets position, indtil der findes en position, der minimerer afstanden mellem tyngdepunktet og de punkter, der hører til det tyngdepunkts klasse. Forskeren kan angive det ønskede antal klynger.

Hovedkomponentanalyse er en teknik, der reducerer et stort antal funktioner/variabler ned til et mindre funktionsrum/færre funktioner. Datapunkternes "hovedkomponenter" er udvalgt til bevaring, mens de øvrige funktioner presses ned i en mindre repræsentation. Forholdet mellem de originale datapotions er bevaret, men da kompleksiteten af ​​datapunkterne er enklere, er dataene lettere at kvantificere og beskrive.

Autoencodere er versioner af neurale netværk, der kan anvendes til uovervågede læringsopgaver. Autoencodere er i stand til at tage umærkede data i frit format og omdanne dem til data, som et neuralt netværk er i stand til at bruge, og grundlæggende skabe deres egne mærkede træningsdata. Målet med en autoencoder er at konvertere inputdataene og genopbygge dem så nøjagtigt som muligt, så det er i netværkets incitament at bestemme, hvilke funktioner der er de vigtigste og udtrække dem.

Blogger og programmør med speciale i Maskinelæring , Deep Learning emner. Daniel håber at kunne hjælpe andre med at bruge AI's kraft til socialt gode.