Udvikling af sprogteknologi forklaret på 4 minutter

Lisa Lorentzen
DaNLP
Published in
4 min readOct 31, 2019

Du støder tit på sprogteknologi i din hverdag, fx når du skriver en sms, og din mobil foreslår det næste ord, du skal til at skrive. Men forstår du, hvordan en computer kan forstå vores sprog? Brug 4 minutter på at læse med her og få et konkret eksempel på, hvordan vi udvikler sprogteknologi i praksis.

Lad os sige, at du er en kæmpe Brøndby-fan. Her mener vi fodboldklubben, og det vil de fleste forstå ud fra konteksten. Man plejer nemlig ikke at bruge udtrykket ’kæmpe fan’, når man taler om en by. Vi ved, det kan være svært for FCK-fans at forestille sig at være Brøndby-fans. Men prøv alligevel, for eksemplets skyld.

Som kæmpe Brøndby-fan har du besluttet dig for at skrive lidt om fodboldklubbens historie. Du er heldigvis ven med en historiker, og han har samlet en masse tekster om Brøndby til dig i et langt dokument. Problemet er bare, at det er tekster om byen Brøndby, men med enkelte passager indimellem om fodboldklubben Brøndby.

For at være sikker på at få det hele med, søger du på ”Brøndby” i det omfattende dokument. Men det giver et hav af hits, og det kommer til at tage dig en evighed at tjekke alle de hits ud, og ikke mindst at sortere dem fra som ikke handler om fodboldklubben.

For computeren ved jo ikke, at du taler om fodboldklubben Brøndby. For den er ”Brøndby” bare syv bogstaver, der er sat sammen på en bestemt måde. Medmindre du vælger at benytte dig af sprogteknologi…

Sprogteknologi handler nemlig om at få en computer til at forstå naturligt sprog. Og i et konkret eksempel har vi arbejdet på at få en computer til at genkende navne, foreninger og steder med større nøjagtighed. For når vi tilpas mange gange har fortalt en computer, hvordan en forening typisk optræder sprogligt i en sætning, så vil den kunne finde fodboldklubben Brøndby, selvom du kun søger på ”Brøndby”, hvis du også angiver, at det skal være ’foreningen’.

Men det er ikke noget, der bare sker ved, at man tænder en kontakt. Computeren skal rent faktisk have det fortalt af mennesker, som kender forskel på konteksterne.

I vores konkrete eksempel, hvor computeren skal lære at kende forskel på personer, foreninger og steder, foregår det derfor rent praktisk ved, at vi i et program får præsenteret én sætning ad gangen. Sætningerne kommer fra et datasæt af tekst, i dette tilfælde på 5.000 sætninger, vi har fodret programmet med. I sætningen kan man ’tagge’ personer, foreningen og steder. Og her kan vi så fortælle computeren, at der er forskel på fodboldklubben Brøndby og byen Brøndby.

Når vi har givet computeren tilpas mange eksempler på, hvordan forskellige foreninger opfører sig sprogligt i sætningerne, så vil den også kunne kende forskel på fodboldklubben Esbjerg og byen Esbjerg — selvom den aldrig er stødt på hverken Esbjerg som fodboldklub eller by i vores program, men simpelthen fordi den genkender, hvordan der normalt skrives om foreninger versus byer.

Med en sprogteknologi, der kan kende forskel på personer, foreninger og steder vil man også kunne finde personer med større nøjagtighed — hvis man f.eks. har tekster, hvor personnavne skal sløres af hensyn til GDPR, og en af personerne hedder Hans. Der kan det kan tage lang tid, med en normal søgefunktion, at undgå alle de steder, hvor der står noget med ’hans’ som stedord — altså f.eks. hans søster.

Vi har udviklet modellen, der kan genkende personer, foreninger og steder, men tilbage står arbejdet med at evaluere den. Vi bruger lang tid på at teste vores modeller og tjekke, at computeren faktisk har forstået konkteksten korrekt.

Vi har lagt de første modeller frem, og hvis du har lyst til at prøve dem af eller bare gerne vil læse mere, så gå ind på danlp.alexandra.dk, eller besøg vores GitHub.

Du er altid velkommen til at tage fat i os, med feedback, spørgsmål, ris eller ros.

--

--