onsdag den 27. marts 2019

Skitser til en dataetik 1: fordele og fejl

(Advarsel: *nørdet*. Dette indlæg er, selv efter denne blogs standard, ret abstrakt og teknisk.)

Dataetik har været et hedt emne de seneste par år, med bl.a. Gladsaxe-sagen, Cambridge Analytica skandalen, og nedsættelsen af en dataetisk ekspertgruppe, som anbefaler oprettelsen af et dataetisk råd. Men som det ofte er tilfældet med den type fænomener, så er der en del tvivl og forvirring ikke bare om hvilke svar dataetikken giver, men om hvilke spørgsmål den stiller, det vil sige hvad dataetik mere præcist er.

En af mine nye opgaver på IMR er at arbejde med dataetik, og i den forbindelse er jeg i gang med både at læse mig ind på emnet, og at tænke over hvad jeg egentlig mener om det (tænke mere over det, burde jeg måske skrive - jeg har tidligere tænkt og skrevet om brugen af algoritmer i politiet, såkaldt "predictive policing"). Selvom der er masser af usikkerheder, så er der en del pointer, som jeg allerede er relativt sikker på. I dette første afsnit handler det om dataetik som anvendt etik, samt om de fordele brugen af algoritmer har, og de fejltyper de kan involvere.

Dataetik er anvendt etik
For det første: dataetikken er en gren af anvendt etik, det vil sige, at den er den etiske analyse af et konkret område. I dette tilfælde groft sagt indsamlingen af store mængder data, især gennem internettet og samkøring af registre, analyse af disse data, og handlinger på baggrund af disse analyser. Indsamling, analyse og handling på baggrund af data er naturligvis ikke nyt. Det har analytikere, forskere og embedsmænd gjort i årtier.

Det, som gør dataetik til noget særligt, er at alle tre komponenter i stadigt større omfang udføres af algoritmer med begrænset menneskelig deltagelse. Det er disse tre typer handlinger (især når de optræder i kombination), og det særlige forhold at det fortrinsvis er algoritmer som udfører en eller flere af dem, som er dataetikkens genstandsfelt.

Den første komponent, indsamlingen af data, rejser en lang række udfordringer om privatlivsbeskyttelse. Mange af disse er imidlertid relativt velkendte fra tidligere diskussioner af overvågning og dataindsamling. Det samme gør sig ikke gældende for de etiske udfordringer som knytter sig algoritmers analyse og handlinger (eller handlinger på baggrund af en analyse eller anbefaling fra en algoritme), som i meget begrænset omfang er blevet studeret og diskuteret. Kald disse funktioner for "algoritmiske agenter".

Spørgsmålet er så hvilke særlige etiske forhold, som knytter sig til algoritmiske agenter. En detaljeret analyse bliver hurtigt kompleks, men jeg tror man relativt enkelt kan tegne følgende overordnede billede: Der er tre særlige fordele, som begrunder indsamling, analyse og handling på baggrund af data, nemlig effektivisering, minimering af menneskelige fejl, og ensartethed. Der er på den anden side også en hel række potentielle udfordringer. De handler overordnet om fejltyper, forskelsbehandling og fordelingseffekter, datakvalitet, transparens, reaktionseffekter, og værdier. En samlet dataetik foretager en grundig vurdering af hvordan algoritmiske agenter er stillet med hensyn til hver af disse faktorer. I dette, og de følgende indlæg, vil jeg lidt mere beskedent nøjes med at skitsere faktorerne.

Effektivisering
Den altoverskyggende fordel ved brugen af algoritmiske agenter er, at det (typisk) er langt billigere, at få en algoritmisk agent til at udføre en opgave, end det ville være at få et menneske til at udføre opgaven. En algoritme kan typisk udføre den samme rutine tusindvis af gange hurtigere end et menneske, og selvom der ofte er store opstartsomkostninger, så er der typisk forholdsvis beskedne udgifter til strøm, sikkerhed og vedligeholdelse, når først algoritmen er udviklet og hardwaren til at køre den er installeret.

De besparelser man kan opnå på denne måde er i første omgang økonomiske, men de bliver etisk relevante, for så vidt som de ressourcer, som effektiviseringen frigiver, kan bruges på etisk relevante måder. Det kan for eksempel være ved at tilføre dem til etisk betragtet gode opgaver, som har for få ressourcer, og hvor der ikke er samme mulighed for at bruge algoritmer. I en nøddeskal: brug algoritmer til at frigive ressourcer i forvaltningen, og ansæt flere pædagoger i vuggestuerne.

Maskine > menneske

Én ting er, at algoritmer, som ovenfor anført, kan løse nogle opgaver hurtigere og billigere end mennesker kan. En anden, og nok så væsentlige fordel er, at algoritmer i nogle sammenhænge kan løse opgaver bedre end mennesker ville kunne. Med et berømt eksempel, så er verdens uden sammenligning stærkeste skakspiller DeepMinds AlphaZero, hvilket blot er en anden måde at sige, at denne (ekstremt komplekse og meget hardware-krævende) algoritme løser opgaven - at vinde i skak - bedre end noget menneske kan.

Der er overordnet to grunde til, at algoritmer i nogle situationer kan løse opgaver bedre end mennesker: råstyrke og objektivitet. Råstyrke handler om det forhold, at sofistikerede algoritmer kan håndtere langt større mængder data end mennesker kan (indenfor det snævre udsnit af virkeligheden, som algoritmen er udviklet til). En algoritme kan således give korrekt vægt til mange flere faktorer i en vurdering, end mennesker normalt er i stand til.

Objektivitet handler om, at mennesker er udstyret med en lang række kognitive bias, og ofte også sociale eller kulturelle bias, som algoritmer kan undgå. I de situationer, hvor det er en god ting, at løse en opgave så godt som muligt, er det derfor en fordel ved algoritmer, når de kan løse den bedre, end mennesker kan.

Ensartethed
En sidste potentiel fordel, som følger umiddelbart af den foregående, men nok er noget svagere, er at algoritmiske agenter kan sikre ensartethed i behandlingen. Mange vil intuitivt mene, at det er en god ting, hvis lige sager behandles lige, for eksempel sådan at der ikke er dramatisk større chance for at blive tilkendt førtidspension, hvis man bor i en kommune, end hvis man bor i en anden.

Man kan diskutere hvorfor en sådan ensartethed er ønskelig - jeg læner mig imod at den primært er god, når den skaber gavnlige responseffekter, f.eks. tillid til systemet, og når den er udtryk for at sager behandles korrekt (hvis to ens sager behandles forskelligt, vil det normalt følge logisk, at mindst én af dem behandles forkert). Men for så vidt at den er en fordel, vil algoritmiske agenter i mange tilfælde kunne øge den, ganske enkelt fordi kompetencer og indflydelsen fra kognitive og socio-kulturelle bias varierer mellem mennesker.

Store, små, mange og få fejl
Det er imidlertid ikke så enkelt, som det måske kunne se ud, at vurdere hvor god en algoritmisk agent er til at løse en opgave. En central komplikation er, at det for en given type opgave vil være muligt at løse opgaven bedre eller dårligere, både ved at svare rigtigt eller forkert flere eller færre gange, men også ved at størrelsen af de fejl agenten laver er forskellige.

En algoritme som analyserer patient-scanninger for kræft kan således være god eller dårlig til at vurdere, om patienten har kræft, men den kan også lave større eller mindre alvorlige fejl, hvis den programmeres til at anbefale en bestemt type behandling. Nogle typer fejlbehandling kan være relativt uproblematiske, mens andre kan være livsfarlige, og det gør en forskel om de fejl algoritmen eventuelt laver er af den første eller den sidste karakter.

Når vi vurderer algoritmiske agenter skal vi således kigge både på antallet af fejl de laver, og på størrelsen af disse fejl, og finde en måde at afveje disse to forhold: er for eksempel en algoritme som laver flere men gennemsnitligt mindre fejl end et menneske bedre eller dårligere til at løse opgaven?

Type et og type to fejl
En faktor som medvirker til, at fejl kan være større eller mindre er, at agenter i almindelighed kan begå to forskellige typer fejl. De kan fejlagtigt kategorisere en ting som medlem af en gruppe, den ikke er medlem af (type 1, eller false positive-fejl), eller de kan fejlagtigt kategorisere en ting som ikke-medlem af en gruppe, som den faktisk er medlem af (type 2 eller false negative-fejl). Ofte vil det både være sådan, at vi er tvunget til at vælge mellem, om vi vil lave flest af den ene type fejl eller af den anden type fejl, og at de to typer fejl ikke er lige vigtige.

Et velkendt eksempel er det forhold, at en domstol kan begå fejl både ved at frikende en forbryder, og ved at straffe en uskyldig. Man kan forsøge at undgå den ene, den anden eller begge typer fejl på mange måder, men grundlæggende er man tvunget til at vælge mellem hvilken af de to man vil prioritere, fordi det helt afgørende forhold er hvor man sætter tærsklen for, at det betragtes som bevist, at en person er skyldig. Hvis det for eksempel kun skal være 85% sandsynligt, at en sigtet faktisk er skyldig, for at vedkommende kan dømmes, så vil forholdsvis få forbrydere gå fri, men en hel del uskyldige vil blive straffet. Hvis man omvendt sætter tærsklen ved 99.9%, så vil meget få uskyldige blive straffet, men en hel del forbrydere vil gå fri.

Som eksemplet også illustrerer, så vil det ofte være sådan, at vi intuitivt mener, at den ene type fejl er værre end den anden. I strafferetslig sammenhæng mener de fleste for eksempel, at det er langt vigtigere at sikre, at uskyldige ikke bliver straffet, end at sikre at forbrydere bliver det. Det er derfor helt afgørende, når vi skal vurdere kvaliteten af algoritmiske agenter, at se på hvor mange af henholdsvis den ene og den anden type fejl de laver, og at vurdere hvor meget vægt vi skal tillægge det, at undgå henholdsvis den ene og den anden type fejl.

Baseline: bedre end status quo versus bedre end alternativer
I den foreløbige diskussion af fordele og fejltyper har jeg konsekvent talt om, at algoritmer kan være værre eller bedre i forskellige henseender, for eksempel ved at begå flere eller færre af en bestemt type fejl. Et oplagt men ofte overset spørgsmål i den henseende er hvad vi skal sammenligne med, når vi vurderer dette spørgsmål. Det vil sige, hvad er det helt præcist, som algoritmen er værre eller bedre end?

Det nok mest indlysende svar er at sammenligne med menneskelige agenter. Algoritmen har fordele i de henseender hvor den løser opgaven bedre end mennesker, og ulemper i de henseender hvor den løser opgaven dårligere end mennesker. Det rejser dog umiddelbart et nyt spørgsmål, nemlig om hvilke personer vi skal sammenligne med? 

Det er, for at tage et enkelt eksempel, i dag ikke imponerende at konstruere et skak-program som spiller bedre end den gennemsnitlige skakspiller. Det store flertal af skakspillere er middelmådige, i den forstand at der er meget langt fra deres niveau til det absolut højeste niveau, som de bedste menneskelige spillere kan præstere. Et mere relevant sammenligningsgrundlag når vi vurderer skakprogrammers præstation er deres evne til at spille bedre end de allerbedste menneskelige skakspillere (omend det i stigende grad er mest relevant at sammenligne med de stærkeste skakprogrammer, idet disse for længst har overhalet mennesker).

Grundlæggende er der derfor to intuitivt relevante grupper mennesker, som en algoritmisk agent kan sammenlignes med: 1) den gruppe af mennesker, som indtil nu har udført algoritmens funktion, eller som ville udføre algoritmens funktion hvis mennesker skulle løse samme opgave; eller 2) den (muligvis hypotetiske) gruppe af mennesker, som med de begrænsninger menneskelige agenter er udstyret med, løser eller ville løse opgaven bedst muligt. Det er ikke givet at der findes en kontekstuafhængig grund til definitivt at foretrække den ene af disse grupper fremfor for den anden som sammenligningsgrundlag.

Der er imidlertid også en anden baseline, som kan være relevant, enten i stedet for eller som supplement til sammenligningen med menneskelige agenter, nemlig alternative algoritmiske agenter. Det er for eksempel indlysende, at en algoritme som begår en lang række alvorlige fejl, som let kunne rettes ved at justere algoritmen, ikke løser opgaven tilfredsstillende, selv hvis det alligevel skulle være tilfældet, at den samlet set klarer sig bedre end mennesker.

Den overordnede pointe er, at det er centralt i alle vurderinger af algoritmiske agenter, at man holder sig for øje hvilket sammenligningsgrundlag man anvender i sin vurdering. Blander man forskellige grundlag sammen, eller anlægger man et grundlag som ikke er relevant for den aktuelle vurdering, så risikerer man at fejlvurdere algoritmens styrker og svagheder.

Forslag eller beslutninger?
En sidste pointe knytter an til det mere overordnede forhold mellem algoritmiske og menneskelige agenters fejl. En ofte fremført påstand i litteraturen om algoritmiske agenter er, at der altid bør være en menneskelig agent som sidste led i beslutningskæden. Det vil sige, at algoritmer nok kan analysere og indstille en beslutning, men at der som minimum skal være et menneske, som vurderer og godkender beslutningen før den effektueres.

Ét argument for dette er, at mennesker kan tage højde for forhold, som algoritmen ikke kan tage i betragtning. Det vil sige, at man kan undgå visse fejl, som algoritmen ellers ville have lavet. Det andet væsentlige argument er, at der derved ikke kan opstå forvirring om, hvis ansvar beslutningen er. I den situation hvor en algoritme begår fejl er det ikke umiddelbart indlysende hvem, om nogen, som kan holdes ansvarlig for fejlen. Hvis det er en menneskelig agent, som er den endelige beslutningstager, så er det ukontroversielt denne person, som er ansvarlig.

En første indvending mod kravet om menneskelig kontrol peger på, at man derved underminerer de to fordele, som algoritmiske agenter har. Ved at indsætte en menneskelig agent reducerer man effektivitetsgevinsten ved at bruge algoritmiske agenter, og man giver disse menneskelige agenter mulighed for at lade deres varierende bias påvirke beslutningen.

En lignende indvending vil pege på, at det ikke i sig selv er en fordel, at have en agent, som kan gøres ansvarlig for en beslutning. Dette er fortrinsvis en fordel, når det for eksempel skaber et incitament til at træffe bedre beslutninger (fordi agenten kan gøres ansvarlig for eventuelle fejl), eller giver mulighed for at udbetale kompensation til de, som er blevet fejlagtigt ramt af en beslutning. I det lys er udfordringen blot at sikre, at de muligheder, som det giver at have en ansvarlig agent, indarbejdes i et system med en algoritmisk agent.

Samtidig så er der en del, som tyder på, at mennesker i denne situation let kommer til at være dårlige kontrollører, ganske enkelt fordi det er så fristende, at forlade sig på algoritmen, og køre på automatpilot. Med et lidt primitivt eksempel, så er flere af de ulykker, som selvkørende biler har været involveret i blandt andet forårsaget af, at chaufføren i modstrid med retningslinjerne, har overladt det fuldstændig til algoritmen at køre bilen, og rettet sin opmærksomhed mod noget andet (for eksempel at se en "Harry Potter"-film). I bedste fald betyder det blot at den menneskelige agents deltagelse er spild af ressourcer. Men det kan også føre til at der for eksempel ikke føres ordentligt opsyn med eller stilles tilstrækkelige krav til den algoritmiske agent, ud fra en ubegrundet forventning om, at den menneskelige agent vil fange de fejl, som algoritmen måtte slippe igennem.

I lyset af disse argumenter for og imod bør det nok bero på en vurdering fra situation til situation, om det samlet er en fordel eller en ulempe at have en menneskelig agent i sidste led af beslutningsprocessen.

Samme algoritme-tid, samme algoritme-kanal...
Som dette indlæg har skitseret, så er der to gode argumenter - effektivitet og objektivitet - for at bruge algoritmiske agenter, og en række potentielle fejltyper, som bør vurderes når vi skal evaluere deres anvendelse.

Der er imidlertid også andre udfordringer. I næste afsnit handler det om de problemer som knytter sig til, at algoritmiske agenter kan forskelsbehandle personer.