Alla har väl någon gång undrat varför Facebook föreslog att du skulle gå med i den där underliga gruppen, eller varför Netflix plötsligt bara föreslår romantiska komedier för att du såg ”Notting Hill” en enda gång?

Båda är exempel på den sorts maskininlärning som vi stöter på varje dag, men de har en mycket viktigare funktion än att påminna oss om vår egna dåliga smak.

Mycket av det som förr skulle ta oerhört lång tid för människor att programmera datorer till att göra, det kan datorer numera lära sig själva. Konceptet har funnits sedan 1980-talet, men det är inte förrän ganska nyligen vi haft tillräckligt med datorkraft för att kunna se den verkliga potentialen för maskininlärning i praktiken.

Tre typer av inlärning

De olika typer av problem som en dator kan ställas inför påverkar hur den lär sig, och i dag brukar man tala om tre typer av maskininlärning.

Kontrollerad inlärning fungerar bäst när alla variabler i problemet är kända, till exempel om en bankkund ska få lån eller inte beroende på kundens ekonomi.

Om man i stället vill att datorn själv ska kunna kategorisera och sortera en stor mängd data, då använder man okontrollerad inlärning. Datorn tittar efter mönster och likheter bland objekt och avgör själv vilka objekt som är mest lika varandra och därför bör tillhöra samma kategori.

Forskare har även testat att låta datorer spela gamla retrospel för att lära sig bli bättre än till och med de största mänskliga entusiasterna. Det här kallas förstärkt lärande och bygger på att datorn får veta vad som är rätt och fel i spelet, och sedan åläggs ett antal delmål för att klara av ett större mål. Till exempel kan ett delmål vara att förflytta sin spelfigur framåt och hoppa för att ta kål på en fiendefigur, men för att inte dö så måste datorn lära sig att göra det i rätt ögonblick.

Djupinlärning är något annat

Deep learning, eller djupinlärning, är ett relativt nytt område inom maskininlärning. Djupinlärning ligger närmare artificiell intelligens, och bygger på att flera lager samverkar för att skapa sammanhang i bilder, ljud eller text.
Niklas Lavesson
Niklas Lavesson är docent i datavetenskap på Blekinge Tekniska Högskola med inriktning på maskininlärning, och försöker reda ut begreppen med ett exempel vi alla kan relatera till:

– Vi tänker oss att vi har en samling bilder, och vill kunna avgöra om bilderna innehåller en katt eller inte. Det finns ju oändliga variationer av sådana bilder och är svårt för traditionell maskininlärning att lära sig konceptet ”katt i bild” även om man har många exempel. Det man vill ha är konkreta regler som stämmer för alla bilder där en katt finns med, men som exkluderar alla bilder utan katter, säger Niklas Lavesson.

katt
Katt! säger du, men för datorn är det inte lika lätt. Den vill gärna ha bilden serverad i små, små bitar som den kan analysera för att dra sina slutsatser.

– Man skapar då ett program som får gå igenom bilderna i flera lager. Ett lager tittar på individuella pixlar, nästa lager kollar om pixlarna bildar speciella former. Sedan fortsätter programmet att abstrahera, ungefär som en människa skulle göra, för att associera form och fyllnad till djur eller människor. Det sista lagret svarar på frågan ”Finns det en katt i bilden?”.

Men det finns många fler, potentiellt livsviktiga tillämpningar för djupinlärning på bilder. Att i stället lära ett program att känna igen cancerceller på röntgenbilder är inte nödvändigtvis svårare för datorn än att känna igen en katt, men det kan vara mycket svårare för en läkare.

Att diagnostik är ett dataproblem är datavetaren Jeremy Howards ledord. Förra året startade han företaget Enlitic utan en enda högskolepoäng i medicin för att kunna göra säkrare diagnoser från blod, celler eller bilder. Än så länge är företaget ganska hemlighetsfullt, allt de berättar är att de samarbetar med andra företag för att analysera anonymiserad data och lära sina datorer att dra slutsatser av prover. Hur det än går för Howards företag kan vi nog vara säkra på att vi inte hört det sista av inlärningsdriven diagnostik.

hjärna
Det är ännu länge kvar innan någon dator kan bete sig som våra hjärnor, om det nu ens är önskvärt.

Snart kan alla förstå dina skämt

Skypes nya översättning ska låta dig prata med andra människor världen runt, i realtid, och utan språkbarriärer. Givetvis med förbrödring och världsfred som följd. Eller? Man kan vara skeptisk med hänvisning till katastrofala resultat i Google Translate, men Niklas Lavesson övertygar.

– Man ska komma ihåg att svenska är ett litet språk, man får ofta mycket bättre översättningar från engelska till kinesiska eller spanska, och det har ju att göra med maskininlärningens akilleshäl: man måste ha tillräckligt med bra data för att kunna skapa bra modeller automatiskt.

På samma sätt som med bilder kan man bryta ned ljud till läten, stavelser, ord och meningar. Det är lättare för datorn att lära sig med små, avgränsade beståndsdelar. Sedan bygger man ihop dem till mer komplexa problem i flera nivåer. På väldigt höga abstraktionsnivåer kan datorn till och med urskilja ironi, om man har tillräckligt många exempel.

I december förra året släppte Skype en testversion av programmet som översätter i ”nästan realtid”. Det klarar i dagsläget översättningar från engelska till spanska, italienska och mandarin. Ett test av programmet gjort av MIT Technology Review (tinytw. se/mitskype) avslöjar att sådant som rytm och finare nyanser i språken går förlorad i översättningen, men om programmet lär sig av alla de konversationer som den översätter, är det alltså inte omöjligt att personen på andra sidan jorden snart uppfattar din kvicka humor.

Konstapel Terabyte till er tjänst

Niklas Lavesson var även med och startade ett projekt i samarbete med polisen, med ambitionen att få bukt med inbrott. Polisen vet att många heminbrott begås av samma personer eller ligor, men rapporterna efteråt skrivs av poliser som har hämtat in många olika uppgifter, och som sammanställer de data de fått på sitt eget sätt. Om man i stället gjorde rapporterna konsekventa, och la ihop dem med information som polisen har om gärningsmännen, kan en dator dra slutsatser om vem som ligger bakom inbrottet.

– Det riktigt smarta hade varit att ställa samma frågor till alla som råkat ut för ett inbrott, då får man en strukturerad databas med frågor som är beskrivna på samma sätt. Med hjälp av svaren kan man låta datorn klassificera brott som sammanlänkade eller inte, säger Niklas Lavesson.

– När jag kontaktade polisen och frågade om det fanns något intressant vi kunde jobba med fick vi veta att bostadsinbrotten var en brinnande fråga, bara 4–5 procent av inbrotten klarades upp. Men nu när vi blivit väldigt duktiga på det här kan man börja titta på andra typer av brott också. De typerna av brott där samma personer eller ligor begår en serie av samma typ, till exempel rån, skulle man kunna undersöka.

Utveckling i rasande tempo

Maskininlärningen är inte framtiden, den är redan här och den verkar rakt framför näsan på oss alla. Men dess potential och tillämpningar sträcker sig ända fram till teknikens yttersta horisonter. Ny forskning och nya företag som ska lösa problem som människan kämpat med i århundraden ser nu en gryning, och vi kommer inte behöva vänta länge.