Vad är algoritmer och varför gör de människor obekväma?

By rik

Ordet ”algoritm” används flitigt i dagens samhälle. Men när vi diskuterar algoritmer relaterade till YouTube eller Facebook, vad menar vi egentligen? Vad är algoritmer, och varför är de så ofta föremål för kritik?

Algoritmer som Problemlösningsinstruktioner

Vi lever i en värld där datorer, trots att de är en integrerad del av vår vardag, ofta förstås ytligt. Det finns dock ett område inom datavetenskap där grunderna är lätta att greppa: programmering.

Programmering är inte ett glamoröst yrke, men det utgör grunden för all datorprogramvara, från kontorsprogram till automatiserade telefonsäljare. Även om din kunskap om programmering begränsas till gamla filmer och märkliga nyhetsinslag, vet du förmodligen vad en programmerare sysslar med. En programmerare skriver kod som datorn sedan tolkar och följer för att utföra uppgifter eller lösa problem.

Inom datavetenskap är en algoritm egentligen bara ett annat ord för kod. Varje instruktionsuppsättning som beskriver hur en dator ska lösa ett problem är en algoritm, även om uppgiften är enkel. När du startar din dator följer den en instruktionsuppsättning för ”hur man startar”. Det är en fungerande algoritm. När en dator hos NASA använder rådata från radiovågor för att skapa en bild av rymden, är även det en algoritm i arbete.

Termen ”algoritm” kan användas för att beskriva alla typer av instruktioner, även utanför datorvärlden. Till exempel är ditt sätt att organisera bestick i en låda en algoritm, liksom din metod för att tvätta händerna efter toalettbesöket.

Men nuförtiden är ordet ”algoritm” ofta reserverat för specifika tekniska sammanhang. Vi brukar inte höra folk prata om algoritmer för ”grundläggande matematik” eller ”ritverktyget i MS Paint”. Istället hör vi Instagram-användare klaga på algoritmer som föreslår vänner, eller intresseorganisationer som kritiserar Facebooks algoritmer för datainsamling.

Om ”algoritm” är ett samlingsbegrepp för datorinstruktioner, varför använder vi det då främst för att beskriva de mer komplexa och ibland kontroversiella aspekterna av den digitala världen?

Förväxling av Algoritmer och Maskininlärning

Tidigare kallade programmerare och populärkulturen de flesta beräkningsinstruktioner för ”kod”. Det är fortfarande vanligt, men området maskininlärning har blivit ett undantag där vi oftare använder ordet ”algoritm” istället för ”kod”. Detta har förståeligt nog ökat förvirringen och oron kring ordet ”algoritm”.

Maskininlärning har funnits länge, men har vuxit kraftigt de senaste 15 åren. Trots att det kan låta komplicerat är det relativt enkelt att förstå. Programmerare kan inte skriva och testa specifik kod för varje tänkbar situation. Därför skriver de istället kod som kan lära sig och anpassa sig själv.

Tänk på det som en praktisk form av artificiell intelligens. Om du markerar tillräckligt många e-postmeddelanden från din chef som skräppost, kommer din e-postklient med tiden att automatiskt filtrera alla meddelanden från din chef till skräppostmappen. På liknande sätt använder Google maskininlärning för att säkerställa att sökresultaten på YouTube är relevanta och Amazon använder det för att ge köprekommendationer.

Maskininlärning är dock inte utan problem. Bara namnet kan kännas oroande för vissa och vissa användningsområden är etiskt tveksamma. Algoritmerna som Facebook använder för att samla in och analysera användardata är ett bra exempel på maskininlärning som väcker frågor.

I nyheterna hör vi ofta om ”Googles algoritm” för att rangordna sökresultat, ”YouTubes algoritm” för att rekommendera videor och ”Facebooks algoritm” för att välja vilka inlägg som syns i ditt flöde. Dessa algoritmer är ofta föremål för diskussion och debatt.

Varför Algoritmer Skapar Kontroverser

En klassisk algoritm för division är den algoritm som används vid division med uppställning. Elever använder den i skolan medan datorer använder andra mer avancerade algoritmer, men slutresultatet blir detsamma.

Tal-till-text-funktionen bygger vanligtvis på maskininlärning, men vi pratar sällan om en specifik ”tal-till-text-algoritm” eftersom det finns ett objektivt korrekt svar som alla människor omedelbart kan identifiera. Ingen bryr sig om ”hur” datorn förstår vad som sägs, om det är maskininlärning eller inte. Det viktiga är att maskinen tolkar det korrekt.

Men andra tillämpningar av maskininlärning saknar fördelen av ett enkelt ”rätt” svar. Det är därför algoritmer har blivit ett vanligt samtalsämne i media.

En algoritm för att sortera en lista alfabetiskt är ett definierat sätt att utföra en specifik uppgift. Men en algoritm som Googles för att ”ranka de bästa webbplatserna för en sökning” eller YouTubes för att ”rekommendera den bästa videon” är betydligt mer subjektiv. Det kan uppstå oenighet om algoritmen ger de önskade resultaten. Alla kan däremot enas om att en lista som sorteras alfabetiskt, faktiskt är alfabetiskt sorterad. Där finns ingen kontrovers.

Hur Ska Vi Använda Ordet ”Algoritm”?

Algoritmer är grunden för all mjukvara. Utan algoritmer skulle vi inte ha telefoner eller datorer, och du skulle förmodligen behöva läsa den här texten på papper (eller snarare, du skulle inte läsa den alls).

Allmänheten använder inte ordet ”algoritm” som ett samlingsbegrepp för all datorkod. De flesta tror att det är en skillnad mellan datorkod och algoritmer – vilket det inte är. Genom kopplingen till maskininlärning har betydelsen av ordet ”algoritm” blivit vag men användningen mer specifik.

Ska vi börja använda ordet ”algoritm” för att beskriva även de mest triviala typerna av datorkod? Förmodligen inte, eftersom det inte är säkert att alla förstår vad du menar. Språket förändras ständigt, och ofta av goda skäl. Människor behöver ett ord för att beskriva den komplexa, opaka och ibland problematiska världen av maskininlärning. ”Algoritm” är ett ord som håller på att ta den rollen just nu.

Det är bra att komma ihåg att en algoritm (och maskininlärning) i grunden är en samling kod som skrivits för att lösa uppgifter. Det finns ingen magi inblandad, bara en mer komplex version av den programvara vi redan känner till.

Källor: Slate, Wikipedia, GeeksforGeeks