Hva er maskinlæring (ML)?
Maskinlæring (ML) er en underkategori av kunstig intelligens (AI) som bygger algoritmiske modeller for å identifisere mønstre og sammenhenger i data. I denne sammenhengen er ordet maskin et synonym for dataprogram, og ordet læring beskriver hvordan ML-algoritmer blir mer nøyaktige etter hvert som de mottar mer data.
Konseptet med maskinlæring er ikke nytt, men den praktiske anvendelsen i næringslivet var ikke økonomisk gjennomførbar før internett og de siste fremskrittene innen stordataanalyse og cloud computing. Årsaken er at opplæring av en ML-algoritme for å finne mønstre i data krever mye databehandling og tilgang til store datamengder.
Maskinlæring vs kunstig intelligens
Begrepene kunstig intelligens og maskinlæring brukes av og til som synonymer fordi de fleste AI-initiativer inntil nylig har vært smale, og de fleste ML-modeller ble utviklet for å utføre én enkelt oppgave, brukte veiledet læring og krevde store, merkede datasett for opplæring. I dag kan robotisert prosessautomatisering (RPA) brukes til å automatisere prosessen med forbehandling av data og gjøre opplæringen av en maskinlæringsalgoritme mye raskere. Slik kan vi se et større skille i spørsmålet om ulikheter, altså machine learning vs. AI. Skjønt da maskinlæring og kunstig intelligens hører sammen.
Techopedia forklarer maskinlæring (ML)
Maskinlæringsmodeller av høy kvalitet krever treningsdata av høy kvalitet og tilgang til store datasett for å kunne trekke ut de egenskapene som er mest relevante for bestemte forretningsmål og avdekke meningsfulle sammenhenger. ML Machine Learning er slik enkelt å forstå, men krever ressurser per nå for å oppnå det fulle potensialet.
Machine learning algorithm – ulike modeller for maskinlæring
En maskinlæringsmodell er ganske enkelt resultatet av en ML-algoritme som har blitt kjørt på data. Følgende trinn inngår i oppbyggingen av en maskinlæringsmodell:
- Samle inn opplæringsdata.
- Klargjøre data for opplæring.
- Bestem hvilken læringsalgoritme som skal brukes.
- Tren opp læringsalgoritmen.
- Evaluer læringsalgoritmens resultater.
- Juster om nødvendig variablene(hyperparametrene) som styrer treningsprosessen for å forbedre resultatet.
I en typisk ML-setting krever overvåkede maskinlæringsalgoritmer et datasett bestående av eksempler der hvert eksempel består av en input og en output.
I en slik setting er et typisk mål med opplæringen av en ML-algoritme å oppdatere parametrene i en prediktiv modell for å sikre at modellens beslutningstrær konsekvent gir de ønskede resultatene. Det er her entropi kommer inn i bildet.
Entropi er en matematisk formel som brukes til å kvantifisere uorden og tilfeldigheter i et lukket system. I maskinlæringsprosjekter er det et viktig mål å sørge for at entropien er så lav som mulig, fordi dette målet avgjør hvordan modellens beslutningstrær velger å dele opp data.
Opplæring i maskinlæring
Det finnes tre hovedtyper algoritmer som brukes til å trene opp maskinlæringsmodeller: veiledet læring, ikke-veiledet læring og forsterkningslæring.
- Veiledet læring – algoritmen får merkede treningsdata (input) og blir vist det riktige svaret (output). Denne typen læringsalgoritme bruker resultater fra historiske datasett til å forutsi utdataverdier for nye, innkommende data. Ofte benyttes det engelske begrepet “supervised machine learning” for veiledet maskinlæring.
- Ikke-veiledet læring, på engelsk “unsupervised learning” – her får algoritmen treningsdata som ikke er merket. I stedet for å bli bedt om å forutsi riktig resultat, bruker denne typen læringsalgoritme opplæringsdataene til å oppdage mønstre som deretter kan brukes på andre datagrupper som viser lignende atferd. I noen situasjoner kan det være nødvendig å bruke en liten mengde merkede data sammen med en større mengde umerkede data under opplæringen. Denne typen opplæring kalles ofte semi-veiledet maskinlæring.
- Forsterkningslæring – i stedet for å få treningsdata, får algoritmen et belønningssignal og leter etter mønstre i dataene som gir belønning. Denne typen læringsalgoritmer får ofte input fra læringsalgoritmens interaksjon med et fysisk eller digitalt miljø. På engelsk “reinforcement learning”.
Hva forårsaker Bias – skjevheter i maskinlæring?
Det er et økende ønske fra allmennheten om at kunstig intelligens – og spesielt maskinlæring algoritmer – skal være transparente og kunne forklares, men algoritmisk transparens for maskinlæring kan være mer komplisert enn bare å dele hvilken algoritme som ble brukt til å lage en bestemt prediksjon.
Mange som er nye innen ML Machine Learning, blir overrasket over å oppdage at det ikke er de matematiske algoritmene som er hemmelige; faktisk er de fleste av de populære ML-algoritmene som brukes i dag, fritt tilgjengelige. Det er snarere treningsdataene som har en proprietær verdi, ikke algoritmen som brukes.
Fordi dataene som brukes til å trene opp en læringsalgoritme, velges ut av et menneske, kan de dessverre utilsiktet føre til skjevheter i ML-modellen som bygges – dette er kjent som bias. Læringsalgoritmenes natur kan også gjøre det vanskelig for ML-ingeniører å gå tilbake og spore logikken bak en bestemt prediksjon.
Når det er mulig for en data scientist eller ML-ingeniør å forklare hvordan en spesifikk prediksjon ble gjort, kan en ML-modell omtales som forklarbar AI. Mens når det ikke er mulig å avsløre hvordan en spesifikk prediksjon ble gjort – enten fordi matematikken blir for komplisert eller fordi treningsdataene er proprietære – kan ML-modellen omtales som black box AI.
MLops
Maskinlæringsprosjekter ledes vanligvis av dataforskere og maskinlæringsingeniører. Dataforskerens jobb består vanligvis i å lage en hypotese og skrive kode som forhåpentligvis vil bevise at hypotesen er sann. En ML-ingeniørs jobb fokuserer på maskinlæringsoperasjoner (MLOps).
Maskinlæringsoperasjoner er en tilnærming til å håndtere hele livssyklusen til en maskinlæringsmodell – inkludert opplæring, innstilling, daglig bruk i et produksjonsmiljø og eventuell pensjonering. Dette er grunnen til at ML-ingeniører må ha god kunnskap om datamodellering, feature engineering og programmering – i tillegg til en solid bakgrunn i matematikk og statistikk.
Ideelt sett bør dataforskere og ML-ingeniører i samme organisasjon samarbeide om å bestemme hvilken type læringsalgoritme som vil fungere best for å løse et bestemt forretningsproblem, men i noen bransjer er ML-ingeniørens jobb begrenset til å bestemme hvilke data som skal brukes til opplæring og hvordan resultatene av maskinlæringsmodellene skal valideres.