Maskinlæring

Du husker hva maskinlæring er? Vi starter med en liten påminner:
Maskinlæring fungerer ved å la datamaskiner lære fra data, uten å bli eksplisitt programmert. I stedet for å gi datamaskinen instruksjoner om hvordan den skal behandle dataene, gir man den et sett med data og la den finne mønstre og sammenhenger i dataene selv.
Maskinlæring er et nyttig verktøy for å analysere data fordi det kan finne mønstre og sammenhenger som kanskje ikke er åpenbare for mennesker. Det kan analysere store mengder data raskere og mer nøyaktig enn mennesker, og det kan tilpasse seg og forbedre ytelsen over tid basert på erfaring. Det kan brukes i ulike bransjer og applikasjoner, for eksempel i helsevesenet for å analysere pasientdata og identifisere risikofaktorer, i økonomi for å forutsi trender og gjøre investeringsbeslutninger, og i produksjon for å optimalisere produksjonsprosesser og redusere avfall.
Og forresten, de to avsnittene du nettopp leste? De er ikke skrevet av et menneske. Forklaringen er generert av den KI-drevne chatboten ChatGPT, etter at vi spurte den om å forklare hvordan maskinlæring fungerer, og hvorfor det er et nyttig verktøy for å analysere data. Det er altså en maskinlæringsmodell som har generert teksten.
ChatGPT en språkmodell trent på milliarder av eksisterende tekster, som den tar utgangspunkt i for å generere helt nytt innhold. Modellen er laget av OpenAI, og er et åpent tilgjengelig verktøy som du kan spørre om hva som helst – og få et overbevisende og utførlig svar på imponerende godt norsk (men ikke ta svarene for god fisk; det er en språkmodell som tar utgangspunkt i eksisterende tekster den har «lest» under trening opp til 2021, og ikke en kunnskapsmodell som gir deg oppdaterte, kvalitetssikrede fakta).
Grensene for hva som er mulig å få til med maskinlæring flytter seg for tiden i et heseblesende tempo. Maskinlæringsmodeller som kan lage originale fotorealistiske bilder, skrive overbevisende tekster og og generere videoer basert på enkle stikkord er bare noen få i en lang rekke gjennombrudd i senere tid, og en kan lese om nye fremskritt så å si fra uke til uke.
Og, ja, som ChatGPT forteller oss: Maskinlæring gjør det ikke minst lettere og mer nøyaktig å analysere store mengder data.

Innsikt

Mønstre i data

Kunstig intelligente systemer – og da mer spesifikt maskinlæring – er drivkraften bak den voldsomme akselerasjonen i bruk av data i samfunnet i dag, og som gjør at stadig mer rundt oss automatiseres og digitaliseres.
Det betyr likevel ikke at teknologien durer avgårde totalt uten menneskelig inngripen og assistanse. Som du husker er maskinlæring begrenset og problemspesifikt. Det er opp til oss mennesker å stille gode spørsmål og å definere oppgaver vi trenger hjelp med, og så ta i bruk maskinlæring som et av mange tilgjengelige hjelpemidler for å finne svar og løsninger.
Maskinlæring som begrep dukket opp allerede på 1950-tallet, men det er først på denne siden av årtusenskiftet – og fremfor alt nå de aller siste årene – at utviklingen og bruken har eksplodert. Det skyldes to faktorer. For det første: Tilgjengelig regnekraft har økt mer eller mindre i takt med Moores lov (som egentlig sier at antall transistorer i en integrert krets vil kunne dobles annethvert år, men som i praksis brukes om at det er regnekraften i datamaskiner som dobles). For det andre: Tilgangen på data har vokst i enda mye raskere tempo, av grunner du har lært om gjennom hele Datareisen.
Og maskinlæring handler i bunn og grunn om å bruke matematikk og typisk også statistikk til å finne mønstre i data.
Maskinlæring i seg selv er egentlig også – i likhet med kunstig intelligens – en slags paraplybetegnelse. Det finnes en rekke underkategorier og spesialiseringer innen maskinlæring, som språkbehandling, datasyn og nevrale nettverk.
Vi skal ikke gå helt inn på hvordan alt dette fungerer og henger sammen, for det ville nemlig blitt et helt annet kurs! Men la oss fremfor alt bli bedre kjent med hva maskinlæring har med statistikk å gjøre.

Klassifisering og lineær regresjon

To viktige teknikker som benyttes innen maskinlæring kommer fra statistikken og heter klassifisering og lineær regresjon.

Klassifisering

Klassifisering dreier seg, som navnet antyder, om å bestemme hvilken klasse et objekt tilhører.
Har du noensinne lurt på hvordan spamfilteret i mailboksen din fungerer? Her er svaret! I hvert fall delvis. Når svindlere og andre ubudne gjester maser i mailboksen, sørger maskinlæringsmodeller for at disse mailene klassifiseres som søppelpost, mens jobbmailer og legitime nyhetsbrev klassifiseres som ønsket informasjon.
Klassifisering er mye brukt med veiledet læring der klassene er definert på forhånd. Modellen skal altså lære å gjenkjenne trekk ved objekter og sortere dem i forhåndsdefinerte kategorier. Faktorer som ukjent avsender (ikke utvekslet e-post før), når og hvor e-posten er sendt (midt på natten, fra en IP-adresse i utlandet) og stikkord som «dollar» kan få modellen til å vurdere det som mer sannsynlig at det er spam. Men klassen «spam» er allerede definert; modellen slipper å måtte finne ut selv at søppelpost overhodet eksisterer eller at dette er et problem.
Dette kommer altså fra statistikken, og trenger ikke å involvere kunstig intelligens. Fordelen med å bruke maskinlæring til dette, er imidlertid at resultatene kan bli bedre og mer finkornede desto mer og bedre modellen lærer.
Med søppelpost vil svindlere og banditter alltid finne nye metoder og bli stadig med troverdige, og det kan gjøre det vanskelig å fange opp med forhåndsdefinerte regler. Men jo mer spam et maskinlærende spamfilter får se og lære av, dess bedre blir det på å identifisere søppelpost.
Klassifisering kan også brukes til å gi deg anbefalinger til filmer og serier i en strømmetjeneste, som vi var inne på i kapittel 2. Og her er det kanskje lettere å se hvorfor dette egentlig er statistikk:
Filmer som The Terminator, Blade Runner, Alien og The Matrix vil dele mange trekk i beskrivelsene sine, som skiller dem fra Mamma Mia og My Big Fat Greek Wedding. Når strømmetjenesten skal anbefale noe nytt til deg, vil den se etter egenskaper og fellestrekk ved det du ser på, og finne nye forslag med nærmest mulig slektskap til disse.
Husk, for maskinlæringsmodellene er alt dette bare tall: Begynn å sortere og vekte X antall «fremtidsdystopi» mot Y antall «kyss og klem» – pluss mange, mange andre variabler og regler – så vil det etter hvert tegne seg et bilde av hva du liker. Eller en statistisk sammenheng, om du vil.

Lineær regresjon

Husker du trenden med tegnebøker for voksne, der det bare er masse små punkter på hver side som en skal trekke linjer mellom, og så dukker det etter hvert opp et bilde?
For en skikkelig voksenutgave av å trekke linjer mellom punkter kan du heller prøve deg på regresjonsanalyse!
Lineær regresjon (som er én av flere former for slik analyse) handler om nettopp å tegne en linje (en kurve eller graf) som best mulig beskriver de aktuelle dataene vi jobber med. Se for deg et diagram med en X- og Y-akse, der vi plotter inn data som punkter som fordeler seg rundt omkring. Kanskje legger de seg nokså perfekt på en linje, eller langs en kurve i et forutsigbart mønster. Eller kanskje de er «all over the place», som vi sier på nynorsk. Vi ønsker å finne den linjen som passer best mulig med datapunktene.
Hvis A, B, C, D og E fordeler seg etter et bestemt mønster langs de to aksene, vil en godt tilpasset modell laget med lineær regresjon gi oss en temmelig god idé om hvor F vil dukke opp også. Vi har da etablert en sammenheng mellom variablene – for eksempel en kurve som viser sammenhengen mellom befolkning og karbonutslipp i ulike land.
Der klassifisering handler om å plassere et objekt i en bestemt klasse, går regresjon ut på å sette en verdi eller et tall på ulike utfall, og så finne mønstre og sammenhenger mellom disse. Vi kan si at klassifisering brukes til å løse kategoriske problemer, og regresjon brukes til å løse kontinuerlige problemer.
Som med klassifisering er dette noe vi fint kan holde på med helt uten maskinlæring, men som får superkrefter når vi bruker det med stordata og maskinlæringsmodeller. Det kan hjelpe oss med intet mindre enn å se inn i fremtiden!
Både klassifisering og lineær regresjon er teknikker som også brukes i data mining, som vi skal se på i neste emne. Men først, hvis du vil, kan du se i boksen nedenfor for å lære litt om en spennende del av maskinlæring vi ikke har snakket om så langt, nemlig nevrale nettverk.

Nevrale nettverk og «black box»-systemer

Fortsatt har den kunstige intelligensen et godt stykke igjen før den kan hamle opp med den menneskelige intelligensen. For hjernen er såpass intrikat, og praktisk talt nesten umulig å emulere.
Det er likevel en form for maskinlæring som er inspirert av hvordan menneskehjernen. Det kalles nevrale nettverk.