stub Vad är maskininlärning? - Unite.AI
Anslut dig till vårt nätverk!

AI 101

Vad är maskininlärning?

mm
Uppdaterad on

Maskininlärning är ett av de snabbast växande tekniska områdena, men trots hur ofta orden "maskininlärning" slängs runt kan det vara svårt att förstå vad maskininlärning är, exakt.

Maskininlärning syftar inte på bara en sak, det är en paraplyterm som kan appliceras på många olika koncept och tekniker. Att förstå maskininlärning innebär att vara bekant med olika former av modellanalys, variabler och algoritmer. Låt oss ta en närmare titt på maskininlärning för att bättre förstå vad den omfattar.

Vad är maskininlärning?

Medan termen maskininlärning kan appliceras på många olika saker, hänvisar termen i allmänhet till att göra det möjligt för en dator att utföra uppgifter utan att få explicita instruktioner rad för rad för att göra det. En maskininlärningsspecialist behöver inte skriva ut alla steg som krävs för att lösa problemet eftersom datorn kan "lära sig" genom att analysera mönster i data och generalisera dessa mönster till ny data.

Maskininlärningssystem har tre grundläggande delar:

  • ingångar
  • Algoritmer
  • Utgångarna

Ingångarna är de data som matas in i maskininlärningssystemet, och indata kan delas in i etiketter och funktioner. Funktioner är de relevanta variablerna, de variabler som kommer att analyseras för att lära sig mönster och dra slutsatser. Under tiden är etiketterna klasser/beskrivningar som ges till de enskilda instanserna av data.

Funktioner och etiketter kan användas i två olika typer av maskininlärningsproblem: övervakad inlärning och oövervakad inlärning.

Oövervakat vs. Övervakat lärande

In övervakad inlärning, åtföljs indata av en grundsanning. Övervakade inlärningsproblem har rätt utdatavärden som en del av datasetet, så de förväntade klasserna är kända i förväg. Detta gör det möjligt för dataforskaren att kontrollera algoritmens prestanda genom att testa data på en testdatauppsättning och se hur stor andel av objekten som klassificerats korrekt.

I kontrast, oövervakat lärande problem har inga marksanningsetiketter fästa vid dem. En maskininlärningsalgoritm som är utbildad för att utföra oövervakade inlärningsuppgifter måste själv kunna sluta sig till de relevanta mönstren i datan.

Övervakade inlärningsalgoritmer används vanligtvis för klassificeringsproblem, där man har ett stort dataset fyllt med instanser som måste sorteras i en av många olika klasser. En annan typ av övervakat lärande är en regressionsuppgift, där värdet som matas ut av algoritmen är kontinuerligt till sin natur istället för kategoriskt.

Samtidigt används oövervakade inlärningsalgoritmer för uppgifter som densitetsuppskattning, klustring och representationsinlärning. Dessa tre uppgifter behöver maskininlärningsmodellen för att sluta sig till strukturen för data, det finns inga fördefinierade klasser som ges till modellen.

Låt oss ta en kort titt på några av de vanligaste algoritmerna som används i både oövervakat lärande och övervakat lärande.

Typer av övervakat lärande

Vanliga övervakade inlärningsalgoritmer inkluderar:

  • Naiva Bayes
  • Stöd vektor maskiner
  • Logistisk återgång
  • Slumpmässiga skogar
  • Artificiellt nervsystem

Stöd vektor maskiner är algoritmer som delar upp en datauppsättning i olika klasser. Datapunkter grupperas i kluster genom att rita linjer som skiljer klasserna från varandra. Punkter som hittas på ena sidan av linjen kommer att tillhöra en klass, medan punkterna på andra sidan av linjen är en annan klass. Support Vector Machines syftar till att maximera avståndet mellan linjen och punkterna som finns på vardera sidan av linjen, och ju större avstånd desto mer säker är klassificeraren på att punkten tillhör en klass och inte en annan klass.

Logistisk återgång är en algoritm som används i binära klassificeringsuppgifter när datapunkter måste klassificeras som tillhörande en av två klasser. Logistisk regression fungerar genom att märka datapunkten antingen en 1 eller en 0. Om det upplevda värdet av datapunkten är 0.49 eller lägre klassificeras den som 0, medan om den är 0.5 eller högre klassificeras den som 1.

Beslutsträdsalgoritmer fungerar genom att dela upp datauppsättningar i mindre och mindre fragment. De exakta kriterierna som används för att dela upp data är upp till maskininlärningsingenjören, men målet är att i slutändan dela upp data i enskilda datapunkter, som sedan klassificeras med hjälp av en nyckel.

En Random Forest-algoritm är i huvudsak många enskilda beslutsträdsklassificerare länkade samman till en mer kraftfull klassificerare.

Smakämnen Naiv Bayes klassificerare beräknar sannolikheten för att en given datapunkt har inträffat baserat på sannolikheten för att en tidigare händelse inträffar. Den är baserad på Bayes Theorem och den placerar datapunkterna i klasser baserat på deras beräknade sannolikhet. När man implementerar en naiv Bayes-klassificerare antas det att alla prediktorer har samma inflytande på klassresultatet.

An Artificiellt neuralt nätverk, eller flerskiktsperceptron, är maskininlärningsalgoritmer inspirerade av den mänskliga hjärnans struktur och funktion. Artificiella neurala nätverk får sitt namn från det faktum att de är gjorda av många noder/neuroner kopplade till varandra. Varje neuron manipulerar data med en matematisk funktion. I artificiella neurala nätverk finns ingångslager, dolda lager och utdatalager.

Det dolda lagret av det neurala nätverket är där data faktiskt tolkas och analyseras för mönster. Det är med andra ord där algoritmen lär sig. Fler neuroner sammanfogade gör mer komplexa nätverk som kan lära sig mer komplexa mönster.

Typer av oövervakat lärande

Algoritmer för oövervakad inlärning inkluderar:

  • K-betyder kluster
  • Autokodare
  • Huvudkomponentanalys

K-betyder kluster är en oövervakad klassificeringsteknik, och den fungerar genom att separera datapunkter i kluster eller grupper baserat på deras egenskaper. K-means klustring analyserar funktionerna som finns i datapunkterna och särskiljer mönster i dem som gör att datapunkterna som finns i ett givet klasskluster mer lika varandra än de är kluster som innehåller de andra datapunkterna. Detta åstadkommes genom att placera möjliga centra för klustret, eller tyngdpunkten, i en graf över data och omtilldela tyngdpunktens position tills en position hittas som minimerar avståndet mellan tyngdpunkten och punkterna som tillhör den tyngdpunktens klass. Forskaren kan ange önskat antal kluster.

Huvudkomponentanalys är en teknik som reducerar ett stort antal funktioner/variabler ner till ett mindre funktionsutrymme/färre funktioner. Datapunkternas "huvudkomponenter" väljs ut för bevarande, medan de andra funktionerna pressas ner till en mindre representation. Relationen mellan de ursprungliga datadryckerna bevaras, men eftersom datapunkternas komplexitet är enklare är data lättare att kvantifiera och beskriva.

Autokodare är versioner av neurala nätverk som kan användas för oövervakade inlärningsuppgifter. Autokodare kan ta omärkta data i fritt format och omvandla dem till data som ett neuralt nätverk kan använda, i princip skapa sin egen märkta träningsdata. Målet med en autoencoder är att konvertera indata och bygga om den så exakt som möjligt, så det ligger i nätverkets incitament att avgöra vilka funktioner som är de viktigaste och extrahera dem.

Bloggare och programmerare med specialiteter inom Maskininlärning och Deep Learning ämnen. Daniel hoppas kunna hjälpa andra att använda kraften i AI för socialt bästa.