Selvom Artificial Intelligence (AI) bruges i flæng og nærmest er blevet allestedsnærværende på få år, er der tale om et fænomen med en lang historie og med stor variation i hvilke opgaver teknologien kan bruges til at løse, og hvor sofistikeret teknologien er.
Med henvisning til Europa-Kommissionens High-Level Expert Group on Artifcial Intelligence (AI HLEG) definerer Sheikh el al. AI som ”systemer, der udviser intelligent adfærd ved at analysere deres omgivelser og foretage handlinger - med en vis grad af autonomi - for at nå specifikke mål" (2023: 19, min oversættelse). Forfatterne forklarer at Artificial Intelligence henviser til teknologier der imiterer menneskelig intelligens, men bemærker at selvom AI-teknologi er blevet mere sofistikeret, så er der på nuværende tidspunkt tale om teknologier der løser specifikke opgaver og altså ikke er sammenlignelige med menneskelig intelligens på trods af at det kan opleves sådan og at termen AI kunne implicere det. Faktisk er der tale om teknologier der laver forudsigelser, men som hverken har en personlighed, en bevidsthed eller følelser.
En kombination af øget computerkraft, adgang til større datamængder (der især genereres når vi bruger internettet) og videnskabelige gennembrud kan forklare accelerationen af AI-teknologier der er gjort tilgængelige for almindelige brugere de senere år (Sheikh el al. 2023: 39).
AI bygger på maskinlæring. Den grundlæggende ide i maskinlæring er at man bruger tilgængelig information i form af data der processeres af computerteknologi. Disse data bruges til at forbedre præstationsevnen af noget eller til at komme med præcise forudsigelser (Mohri et al. 2018: 1). De data man generaliserer og altså lærer på baggrund af, kaldes træningsdata (Jo 2021: 3). Da det er de tilgængelige data man lærer af, er både størrelsen, kvaliteten og kompleksiteten afgørende.
Der er forskellige måder man kan lære af tilgængelige data. Man skelner imellem superviseret læring og ikke-superviseret læring. Ved superviseret læring er hvert dataelement markeret som en type på forhånd (Jo 2021: 3). Det kan bruges til en type maskinlæring der hedder klassificering. Klassificering går ud på at man ved at have adgang til en mængde dataelementer der hver har både nogle træk og er kategoriseret som en type, kan lave en model som kan klassificere nye og lignende dataelementer som mangler at blive klassificeret. Eksempler kunne være træningsdata der indeholder tekster klassificeret efter emne eller billeder klassificeret efter hvad der er repræsenteret på dem. På baggrund af maskinlæring hvor algoritmer bruges til at identificere kendetegn ved elementer i hver kategori, kan nye tekster eller nye billeder klassificeres (Mohri 2018: 3).
Ikke-superviseret læring involverer dataelementer der hver har en række træk, men ikke nogen klassificering. Typisk bruger man til ikke-klassificerede træningsdata en type maskinlæring der kaldes ’clustering’ eller klyngedannelse. I dette tilfælde går maskinlæringen ud på at gruppere dataelementer i et træningsdatasæt sammen i klynger ud fra fællestræk. På baggrund af at klyngedannelsesprocessen er lavet ved at identificere fællestræk, kan nye dataelementer tilføjes allerede eksisterende klynger ved at bruge en algoritme, dvs. en matematisk udregning, til at identificere hvilken klynge de er mest lig. Virksomheder bruger fx clustering-algoritmer til at klynge forbrugere sammen i segmenter ud fra købevaner eller swiping-adfærd på nettet (Griva et al. (2018); Tabianan et al. 2022).
For både superviseret og ikke-superviseret læring findes der en lang række metoder til at klargøre de tilgængelige data, til at lave udregninger på dem som fører til læring, og til at evaluere udregningerne der bruges til enten at klassificere eller klynge dataelementer, som ikke uddybes her.
Helt overordnet er det vigtigt at forstå at data i maskinlæring ofte er eller omformes til rækker af datapunkter i en tabel med tilhørende værdier for udvalgte træk (eller ’features’) som er angivet i tabellens kolonner. Der er ofte tale om talværdier for hvert træk for hvert datapunkt, og det gør at man kan klassificere eller lave klyngedannelse ud fra hvor tæt værdierne er på hinanden når man sammenligner dataelementer.
Som illustration på nogle grundlæggende maskinlæringstyper og deres anvendelser kan vi tage et eksempel: Spiraltegninger. Jeg har hentet et lille datasæt med 40 menneskers spiraltegninger, 25 mennesker der er diagnosticeret med Parkinsons og 15 der ikke er. Data ligger tilgængeligt på Kaggle.
Eksempel på to tegninger fra datasættet.
Hvis man kan bruge maskinlæring til at diagnosticere mennesker med Parkinsons ud fra hvordan de tegner en spiral, kunne man potentielt minimere omkostninger og tid der bruges på diagnosticering, fx med hjernescanninger mv. og muligvis identificere sygdommen tidligere.
Jeg vil bruge data for hver person om hvor hurtigt de tegner, og hvor på papiret de tegner spiralen. Ud fra de oplysninger har jeg regnet ud hvor mange ændringer i acceleration af bevægelser hver person har haft mens de tegnede.
Det tal vil jeg først bruge til at lave to klynger, altså clustering. Ved hjælp af en clustering-algoritme (K-Means) der laver det antal klynger man er interesseret i, med mindst mulige afstande imellem datapunkterne, kan vi først se om de to klynger maskinlæringsalgoritmen foreslår, svarer til at vi får en klynge med data fra mennesker med Parkinsons og en klynge med mennesker der ikke har Parkinsons.
Nedenstående graf viser at det stort set er lykkedes. Maskinlæringsalgoritmen har opdelt dataelementerne i en blå (C1) og en rød (C2) klynge ud fra hvor mange ændringer i accelleration der er beregnet for hver person ud fra de tilgængelige data. Antallet er det tal man kan aflæse på grafens x-akse, og det viser, måske lidt overraskende, at ud fra den beregningsmetode jeg har brugt, så kendetegner det kontrolgruppen at de har mange flere ændringer i acceleration når de tegner end Parkinsonspatienter har.
Graf over klyngedannelse (C1 og C2) sammenlignet med de faktiske kategorier (1 for Parkinsons og 0 for kontrolgruppen)
Grafen visualiserer en sammenligning med de faktiske klasser som er vist på y-aksen (1 for Parkinsons patienter, 0 for deltagere uden en Parkinsons diagnose), og vi kan se at det kun er to af deltagernes tegninger der er endt i en anden klynge end resten af personerne de på forhånd var klassificeret med. Det kunne altså pege på at maskinlæring på baggrund af spiraltegninger kan være en ret god indikator for om en person har Parkinsons. Bemærk at klassificeringen blot bruges her for at tjekke hvordan det gik med klyngedannelsen, altså som en måde at evaluere på algoritmen der er anvendt her til at gruppere datapunkterne i to klynger.
Som nævnt involverer klassificering at man udnytter at hvert dataelement er klassificeret på forhånd. Man opdeler sit materiale i et træningssæt og et testsæt. Her har jeg taget et træningssæt på 32 dataelementer fra samme Parkinsons datasæt som brugt ovenfor til klassificering og brugt en klassificeringsalgoritme (k-nearest neighbors (KNN)) der også bruger afstand til at klassificere og evt. sidenhen forudsige en klassificering til nye datapunkter.
Her kan man se en sammenligning mellem hvad algoritmen forudsiger af klassificering for de enkelte datapunkter sammenlignet med den faktiske klassificering. Samme fejlmargen som ved klyngedannelsesalgoritmen er tilfældet her med to forkert klassificere dataelementer sammenlignet med hvordan datapunkterne var klassificeret på forhånd.
Sammenligning mellem forudsagt klassificering og faktisk klassificering.
De to typer af maskinlæring kan se ret ens ud, men for klyngedannelse handler det om at gruppere datapunkter i en række klynger uden at være interesseret i eller have adgang til kategorier, hvor man ved klassificering netop har adgang til datapunkternes klassificering på forhånd, og bruger den viden til at træne en algoritme der så kan forudsige kategoriseringer af nye data.
I forskningslitteraturen er klassificeringsalgoritmer brugt på data for spiraltegninger, se fx Kamble et al. (2021) som i stil med hvad jeg har vist her, finder at Parkinsons patienter kan klassificeres korrekt med over 90 % nøjagtighed.
Griva, A., Bardaki, C., Pramatari, K., & Papakiriakopoulos, D. (2018). Retail business analytics: Customer visit segmentation using market basket data. Expert Systems with Applications, 100, 1-16.
Jo, T. (2021). Machine learning foundations. Machine Learning Foundations. Springer Nature Switzerland AG. https://doi. org/10.1007/978-3-030-65900-4
Kamble, M., Shrivastava, P., & Jain, M. (2021). Digitized spiral drawing classification for Parkinson's disease diagnosis. Measurement: Sensors, 16, 100047. https://doi.org/10.1016/j.measen.2021.100047
Mohri, M., Rostamizadeh, A., & Talwalkar, A. (2018). Foundations of machine learning. MIT press.
Sheikh, H., Prins, C., & Schrijvers, E. (2023). Artificial intelligence: definition and background. In Mission AI: The new system technology (pp. 15-41). Cham: Springer International Publishing.
Tabianan, K., Velu, S., & Ravi, V. (2022). K-means clustering approach for intelligent customer segmentation using customer purchase behavior data. Sustainability, 14(12), 7243.
Læs om hvordan AI processerer sprog