Kunstig intelligens, vanligvis forkortet AI, er en samlebetegnelse for datasystemer som utfører oppgaver vi forbinder med intelligent atferd. Et slikt system kan for eksempel gjenkjenne et ansikt, oppdage svindel, oversette tekst, foreslå en kjørerute eller formulere et svar.
Mye av dagens AI bygger på maskinlæring. Systemet finner mønstre i data, mens tradisjonell programvare følger regler som en programmerer har skrevet på forhånd. Begge deler er beregninger. Et resultat kan ligne menneskelig språk eller vurdering. Det betyr ikke at maskinen tenker eller opplever verden slik vi gjør.
Modellen er bare én del av en AI-tjeneste. Den er avhengig av data, maskinvare og programvare. Menneskene som bestemmer hvordan resultatet skal brukes, hører også med i bildet.
Begrepskart
-
AI
Hele fagfeltet
En samlebetegnelse for systemer som arbeider med blant annet språk, bilder, planlegging og mønstergjenkjenning.
-
Maskinlæring
Lærer mønstre fra data
En sentral metode i dagens AI. Modellen trenes på eksempler i stedet for å få alle reglene skrevet inn.
-
Dyp læring
Bruker nevrale nettverk med mange lag
Brukes i mye av den moderne behandlingen av bilder, lyd og språk.
-
Generativ AI
Lager nytt innhold
Kan produsere tekst, bilder, lyd, video eller kode ved hjelp av mønstrene modellen har lært.
To måter å gi en maskin en oppgave
All programvare følger instrukser. Det som skiller metodene, er hvordan reglene for oppgaven blir til. Med inndata mener vi det som sendes inn i programmet: for eksempel en tekst, et bilde eller noen tall.
Vanlig programvare
Reglene skrives
- Programmereren beskriver fremgangsmåten i kode.
- Programmet bruker de samme reglene hver gang.
- Nye regler krever endringer i koden.
Inndata+Regler→Resultat
Maskinlæring
Mønsteret læres
- En treningsprosess leter etter mønstre i eksempler.
- Det lærte mønsteret lagres i en modell.
- Bytter man data eller treningsopplegg, kan modellen bli en annen.
Inndata+Modell→Vurdering
Et enkelt spamfilter kan følge en klar regel: Inneholder emnefeltet et bestemt ord, skal meldingen flyttes til spam. Et maskinlært filter får i stedet mange meldinger som allerede er merket som spam eller ikke spam. Under treningen oppdager modellen hvilke kombinasjoner av ord, avsendere og andre kjennetegn som ofte skiller de to gruppene.
Det er fortsatt mennesker som definerer oppgaven. De velger treningsdata og avgjør hvordan svaret skal brukes. Modellen finner mønstre innenfor rammene de har satt.
Maskinlæring er en gruppe metoder der en datamodell lærer å løse en avgrenset oppgave ved å finne mønstre i data.
Trening gjør eksempler om til en modell
Før modellen kan tas i bruk, må den trenes. Den får data og beregner et foreløpig svar. Treningsopplegget måler så avstanden mellom svaret og det som regnes som riktig eller ønsket. Modellen justeres litt før den prøver på nytt. Dette gjentas mange ganger.
- 01Eksempel
Modellen får data den skal lære av.
- 02Forsøk
Modellen beregner et foreløpig resultat.
- 03Feil måles
Resultatet sammenlignes med treningsmålet.
- 04Justering
Parameterne endres litt før neste runde.
Prosessen gjentas →
Etter treningen sitter man igjen med en modell: en struktur av lærte verdier som kan brukes på nye inndata.
En parameter er et tall i modellen som bestemmer hvor mye et bestemt signal skal telle. Se for deg et stort kontrollpanel med svært mange brytere. Under treningen flyttes de litt etter litt, med mål om at modellen skal gjøre færre feil på treningsoppgaven.
Parameterne utgjør ikke en liste med regler som mennesker enkelt kan lese. Et bestemt faktum kan vanligvis heller ikke knyttes til én bestemt parameter. Det modellen har lært, er fordelt over mange parametere som virker sammen.
Å trene en modell er ikke det samme som å fylle et oppslagsverk. Modellen lærer statistiske sammenhenger i materialet og bruker kjente mønstre på nye tilfeller. Den kan også få med seg feil, skjevheter og tilfeldige sammenhenger fra treningsdataene.
Nevrale nettverk uten matematikk
Et kunstig nevralt nettverk består av flere lag med beregninger. Informasjonen kommer inn i det første laget og bearbeides på nytt i hvert lag frem til modellen gir et resultat.
- Inndata
Et bilde, en lyd eller en tekst gjøres om til tall maskinen kan behandle.
- Tidlige lag
Enkle trekk og forbindelser får ulik vekt.
- Senere lag
Trekkene kombineres til mer sammensatte mønstre.
- Resultat
Modellen beregner en kategori, verdi eller fortsettelse.
I et system som analyserer bilder, kan de første lagene reagere på kanter og kontraster. Lenger ute i nettverket kan slike signaler settes sammen til former og deler av objekter. Til slutt beregner modellen hvilken kategori bildet ligner mest på.
Modellen behandler bildet uten nødvendigvis å se eller forstå det slik et menneske gjør.
Ordet «nevral» stammer fra en historisk sammenligning med forbindelsene mellom nerveceller. I denne sammenhengen er et kunstig nevron en matematisk beregning, og nettverket er ingen digital kopi av hjernen.
En språkmodell bygger tekst ett stykke av gangen
En stor språkmodell er et nevralt nettverk som er trent på tekst. Under grunntreningen øver modellen på å beregne hvilket tekststykke som sannsynligvis kommer etter teksten den allerede har fått.
Modellen behandler ikke nødvendigvis teksten som hele ord. Først deles den i tokens. Ett token kan være et ord, en del av et ord, et tegn eller et skilletegn. Inndelingen varierer fra modell til modell.
Teksten brukeren sender til modellen, kalles gjerne en prompt. Den kan bestå av et spørsmål, en instruksjon eller annet materiale modellen skal arbeide med.
- 01Prompt
Brukerens tekst sendes til tjenesten.
- 02Tokens
Teksten deles i mindre tekststykker.
- 03Beregning
Modellen beregner sannsynligheten for hvert mulig neste token.
- 04Valg
Ett token velges og legges til teksten.
- 05Gjenta
Den nye teksten blir grunnlaget for neste beregning.
Hvis teksten begynner med «Oslo er hovedstaden i», får mulige fortsettelser ulik sannsynlighet. Modellen velger ett token og beregner deretter på nytt hva som kan komme etter det. Slik blir svaret bygget, token for token.
Mange moderne språkmodeller bygger på en arkitektur som kalles en transformer. Den bruker blant annet en oppmerksomhetsmekanisme, ofte omtalt med det engelske ordet attention. Mekanismen beregner hvilke deler av den tilgjengelige teksten som bør få mest vekt når neste token skal velges.
Å velge neste token kan minne om autofullføring. Forskjellen er hva modellen må lære for å klare oppgaven på tvers av mange typer tekst. Den fanger opp språklige mønstre og forbindelser mellom begreper og opplysninger. Derfor kan den løse langt mer sammensatte oppgaver. Mekanismen kontrollerer likevel ikke om svaret er sant.
Chatboten er mer enn modellen
Når du skriver til en chatbot, bruker du et ferdig produkt. Språkmodellen gjør selve tekstberegningen, men flere andre deler av tjenesten påvirker svaret.
Tar imot meldingen din og viser svaret.
Angir hvilken rolle modellen skal ha og hvilke rammer som gjelder.
Kan inneholde samtalehistorikk eller dokumenter som følger med forespørselen.
Beregner svaret ved hjelp av inndataene og de lærte parameterne.
Kan søke, regne eller hente informasjon som ikke ligger i selve modellen.
Filtre, logging og menneskelig oppfølging påvirker hva tjenesten bruker og viser.
En tjeneste kan lagre samtalen, hente dokumenter, søke på nettet eller bruke andre verktøy. Disse funksjonene ligger rundt modellen. De må ikke forveksles med det som ble lagret i parameterne under treningen.
Først trenes modellen. Deretter brukes den.
Treningen bygger modellen. Når den ferdigtrente modellen senere brukes på nye data, kalles det inferens.
Trening
Modellen bygges
- Treningsdata sendes gjennom modellen.
- Parameterne justeres underveis.
- Modellen arbeider med oppgaven som er definert i treningsopplegget.
- Utviklerne trenger treningsdata, datakraft og et opplegg for å måle feil.
Inferens
Modellen brukes
- Den ferdigtrente modellen får nye inndata.
- Parameterne brukes normalt slik de allerede er.
- Resultatet kan være en vurdering, en prediksjon eller et svar.
- Hver ny bruk krever en ny beregning.
En melding til en chatbot utløser normalt inferens. Samtalen blir ikke automatisk til ny trening av modellen. Om dataene lagres eller senere brukes til trening, avgjøres av tjenestens vilkår og innstillinger, ikke av inferensen i seg selv.
Et flytende svar kan fortsatt være feil
- Modellen sjekker ikke sannheten.En språkmodell beregner en sannsynlig fortsettelse. Den kan derfor presentere feil som om de var fakta. Slike svar omtales ofte som hallusinasjoner.
- Treningsdataene setter spor.Feil, skjevheter og mangler i materialet kan dukke opp igjen i resultatene.
- Formuleringen påvirker svaret.Selv små endringer i spørsmålet, konteksten eller instruksjonene kan gi et annet resultat.
- Samme spørsmål kan gi flere svar.Resultatet avhenger blant annet av hvilken modell og hvilke innstillinger tjenesten bruker.
- Opplysningene kan være gamle eller ufullstendige.Søk og tilgang til egne dokumenter er egne funksjoner som må bygges inn i tjenesten.
- Et selvsikkert svar kan fortsatt være feil.Modellen kan skrive klart og overbevisende uten å ha et pålitelig grunnlag.
- Bruken avgjør risikoen.Datakilder, produktdesign, menneskelig kontroll, kontrakter og bruksområde avgjør hvilke følger et svar kan få.
- Ord som «vet» og «forstår» kan villede.Når en modell bruker slike ord om seg selv, er det ikke dokumentasjon på menneskelig erfaring eller forståelse.
En modell bør derfor prøves på den konkrete oppgaven og under forholdene den faktisk skal brukes. At den imponerer i en demonstrasjon, sier ikke i seg selv at den vil levere stabilt i en virksomhetsprosess.
Fra maskinell intelligens til språkmodeller
Kan en maskin vise intelligent atferd?
Alan Turing beskrev «imitasjonsspillet», en praktisk prøve av maskinell intelligens. I stedet for å fastslå hva tenkning er, undersøkte han hva en maskin kan gjøre i en samtale.
Feltet får navnet kunstig intelligens
John McCarthy, Marvin Minsky, Nathaniel Rochester og Claude Shannon brukte uttrykket «artificial intelligence» i forslaget til et sommerprosjekt ved Dartmouth. Samlingen ble holdt i 1956 og har siden fått en sentral plass i fagfeltets historie.
Flerlagsnettverk lærer gjennom feilretting
David Rumelhart, Geoffrey Hinton og Ronald Williams beskrev en metode der feilen sendes bakover gjennom nettverket. På den måten kunne vektene mellom forbindelsene justeres.
Data, dype nettverk og grafikkprosessorer møtes
Alex Krizhevsky, Ilya Sutskever og Geoffrey Hinton trente et dypt nevralt nettverk på en stor bildesamling. Resultatene viste hvor godt bildegjenkjenning kunne fungere når omfattende treningsdata ble kombinert med dypere modeller og grafikkprosessorer.
Transformeren introduseres
I «Attention Is All You Need» presenterte forskerne transformerarkitekturen. Den kunne beregne forbindelser mellom ulike deler av en sekvens og lot mer av treningen kjøre parallelt.
Chatboten blir inngangen
OpenAI lanserte ChatGPT som en åpent tilgjengelig testversjon med samtalegrensesnitt. For mange var dette første gang de selv brukte en stor språkmodell.
Tidslinjen viser noen utvalgte vendepunkter. AI-historien rommer også andre forskningstradisjoner, blant dem symbolsk problemløsning og statistiske metoder. Flere ganger har store forventninger endt i skuffelse og kutt i finansieringen. Disse nedgangstidene kalles gjerne AI-vintre.
Chatboten står ytterst i en lang kjede
Når modellen svarer, har flere ledd allerede gjort jobben sin. Datasenteret bruker kraft. Chipene utfører beregningene, og modellen behandler inndataene. Virksomheten bak tjenesten har bestemt hvordan produktet skal virke, hvilke kontrakter som gjelder og hvilke kontroller som er på plass. Resultatet kan få følger for menneskene og institusjonene som berøres.
Chatboten alene gir derfor et ufullstendig bilde av AI.
Kildegrunnlag for historien
- Alan Turing: «Computing Machinery and Intelligence», Mind, 1950
- McCarthy, Minsky, Rochester og Shannon: Dartmouth-forslaget, 1955
- Rumelhart, Hinton og Williams: «Learning representations by back-propagating errors», Nature, 1986
- Krizhevsky, Sutskever og Hinton: «ImageNet Classification with Deep Convolutional Neural Networks», NeurIPS, 2012
- Vaswani med flere: «Attention Is All You Need», NeurIPS, 2017
- OpenAI: «Introducing ChatGPT», 30. november 2022
- Stanford AI100: «A Short History of AI»