Hvem ligner du mest?
Formål
Evnen til at skelne mellem forskellige kategorier er helt central for os som mennesker. Vi kan langt oftest kende forskel på et æble og en pære, på en cykel og en knallert eller på om en person er en kvinde eller en mand. Men hvordan får man en computer til at gøre det samme?
Formålet med dette forløb er at lære lidt om nogle af de metoder, som ligger bag, når en computer skal lære at kende forskel på forskellige ting.
Introduktion
Vi har apps på vores telefoner eller computere, som ud fra et billede kan genkende personer eller fra nogle få strofer kan genkende en sang. Der er scannere i lufthavne og andre steder, som kan genkende farlige ting, og biler har autopiloter, der selv holder afstanden til forankørende. Vi har også apps, som går den anden vej, og forvrænger et billede af en person, så personen bliver svær at genkende, men ofte alligevel kan genkendes, selvom ansigtet er fordrejet.
Så alle steder og hele tiden foregår der bevist eller ubevist en skelnen mellem forskellige kategorier, men hvordan foregår denne skelnen i grunden? Hvis vi skulle svare fyldestgørende på dette spørgsmål, om overhovedet muligt, ville det nok betyde et langt studie på universitetet og sikkert mere end dette, men lad os starte med et meget simpelt eksempel, og tage den derfra.
Vi får brug for din viden om afstande mellem punkter, men kommer også til senere at se på andre former for afstande. Det er en fordel af lave opgaverne i grupper, da der kan blive en del af diskutere.
VIDEO: Hvem ligner du mest?
I denne video gives en kort introduktion til forløbet.
Case 1 – Afstand mellem to punkter
Farve | 1 | 2 | 3 | 4 |
---|---|---|---|---|
Blå | \((13,8 ; 19,9)\) | \((8,2 ; 14,9)\) | \((16,4 ; 14,1)\) | \((15,5 ; 13,1)\) |
Rød | \((10,6 ; 16,0)\) | \((16,3 ; 15,2)\) | \((15,6 ; 11,3)\) | |
Grøn | \((11,1 ; 18,6)\) | \((16,4 ; 17,5)\) | \((21,7 ; 13,4)\) |
Afslutning på case 1
Det bliver nok klart, at der er brug for en metode til at beslutte, hvor stor radius skal være for at få det bedste resultat. Kort og lidt simpelt forklaret, involverer det noget, som man kalder træningsdata og testdata. Man har f.eks. 1000 punkter, som man kender farven på. Man lader så som om, at man ikke kender farven på f.eks. 200 af punkterne (som man så kalder testdata). Så bruger man de øvrige 800 punkter (træningsdata) til at forudsige farven af hver af de 200 punkter i testdata. Dette gør man for forskellige værdier af radius, hvorefter man vælger den radius, der forudsiger flest af de 200 punkters farve korrekt. Hvis f.eks. radius 5 forudsiger 121 punkters farve korrekt, radius 10 furudsiger 135 punkters farve korrekt, og radius 20 kun forudsiger 87 punkters farve korrekt, så har radius 10 jo klaret sig bedst.
Case 2 – Manhattan afstand
I nogle situationer giver den almindelige afstand mellem punkter ikke så god mening. F.eks. er de fleste veje på Manhattan i New York enten nord-syd eller øst-vest, så man kan ikke bare gå eller køre “på skrå”, men kun lodret eller vandret.
Hvis vi ser på punkterne \(P(2,3)\) og \(Q(5,7)\), så er den almindelige afstand \(5\) vha. Pythagoras, mens Manhattan afstanden er \(3+4=7\). Dette er illustreret på figur 3.
Case 3 – Hvor ens er to tekster?
I forbindelse med at undersøge om en tekst, f.eks. en dansk stil, er plagiat, bliver det relevant at sammenligne, hvor ens to tekster er. Helt så avanceret bliver det dog ikke her.
Vi vil kun se meget simpelt på ord med \(5\) bogstaver, og hvordan man f.eks. kan måle afstande mellem forskellige ord. Vi vil se på alle kombinationer af \(5\) bogstaver, også f.eks. xtmsp, selvom de ikke er normale ord.
Case 4 – DNA-strenge og alignment
Uden i øvrigt at komme ind på biologien repræsenteres DNA som meget lange tekststrenge. Når mennesker og chimpanser er meget ens, kommer det til udtryk ved, at DNA-strengen for et menneske ligner den for en chimpanse meget, der er altså en kort afstand mellem DNA for et menneske og DNA for en chimpanse. Indenfor biologien kaldes dette for alignment. I stedet for at sammenligne på DNA niveau, sammenlignes også nogle gange på aminosyre niveau, hvilket vi vil bruge her,
Følgende eksempel, der viser et meget lille udsnit af sådanne koder fra mus, rotter, mennesker og gær er taget fra Tema12-Link5.pdf (nucleus.dk), der kan anbefales, hvis man ønsker at arbejde mere med alignment.
Dyr | Kode |
---|---|
Mus | S W A W A E G W T R Y G P |
Rotte | K W V W A E G W T R Y G P |
Menneske | A W A W A E G W T R Y G P |
Gær | E W L R K P G W V K Y V P |
Hvis afstanden her regnes som antal bogstaver, der er forskellige, ses det at afstanden mellem mus og rotte er på \(2\), som vist nedenfor.
Dyr | Kode |
---|---|
Mus | S W A W A E G W T R Y G P |
Rotte | K W V W A E G W T R Y G P |
Når resultatet sikkert virker overraskende, skyldes det, at vi kun har set på et meget lille udsnit af DNA for de fire. I figur 5 har man set på hele det protein, som udsnittet stammer fra, og her bliver resultatet mere som forventet.
Case 5 – Hvilken politiker er du mest enig med?
Op til både folketingsvalg og kommunal- og regionalvalg kan man svare på en række spørgsmål, hvorefter ens svar bliver sammenlignet med politikernes svar på de samme spørgsmål. Herefter kan man så se, hvem man er mest enig med.
Her er et eksempel fra kommunal- og regionalvalget i 2021.
Tag kandidattesten Kommunalvalg 2021 - Altinget - Alt om politik: altinget.dk
Men hvordan virker det mon? Hvordan vurderes, hvilken kandidat du er mest enig med, og hvordan udregnes, hvor mange procent enige I er?
Til hvert spørgsmål kan der svares “helt uenig”, “uenig”, “enig” eller “helt enig”, men desuden er der en skjult “neutral” mulighed i midten, som man ikke kan vælge.
Helt uenig | Uenig | Neutral | Enig | Helt enig |
Afstanden mellem to svar regnes som antal “felter” i tabellen, så afstanden mellem Uenig og Enig er \(2\), mens afstanden mellem Enig og Helt enig er \(1\), og den største afstand er \(4\).
I figur 6 ses en persons svar og et partis svar på \(23\) spørgsmål til kommunalvalget i 2021. Ved et partis svar forstås det svar, som flest af kandidaterne fra partiet har givet (ved lighed afgjort ud af, hvilken kandidat, der står først på listen). Så det er typetallet (typesvaret), der er anvendt for partierne, ikke gennemsnittet af svarene fra partiets kandidater. Figuren er fra testen på Altinget. Bemærk, at antallet af spørgsmål kan variere fra kommune til kommune, så du har måske færre eller flere spørgsmål.
Afstanden i det første spørgsmål er \(1\), afstanden i det andet spørgsmål også \(1\) og afstanden i det tredje spørgsmål er \(2\) pga. den skjulte “neutral” mulighed i midten.