Kontaktperson
Edvin Listo Zec
Junior Forskare
Kontakta EdvinEdvin Listo Zec, forskare maskininlärning
Vår tid präglas av stora mängder mobila enheter som hela tiden skapar och samlar in data. Enheterna vi använder blir alltmer kraftfulla, med bättre beräkningskraft och starkare sensorer, vilket i sin tur möjliggör för bättre datainsamling. Genom att samla in och använda denna data till att träna AI-modeller finns det möjlighet att skapa förbättrade upplevelser inom olika tillämpningsområden och därmed bidra till större samhällsnytta.
Traditionellt tränas maskininlärningsmodeller på data insamlad på en plats, en central datamängd. Det finns dock hinder med det här tillvägagångssättet. Ett hinder är att datainsamling är kostsamt eftersom de datacenter, som behövs för datahanteringen, är förknippade med höga kostnader på grund av energiåtgång och stora mängder nödvändigt lagringsutrymme. Ett annat hinder att ta i beaktande är integritetsaspekten. Moderna lagar om datainsamling (till exempel GDPR) samt konsumenters ökade krav på personlig integritet ställer höga krav på hur datainsamling från företag och industri ska genomföras.
En lösning kan vara distribuerad maskininlärning – en möjlighet för användare att kollaborativt träna en gemensam AI-modell samtidigt som deras respektive datamängder förblir privata. Metoden eliminerar även behovet av att lagra all data på en central server i molnet. Det mest populära ramverket för distribuerad maskininlärning idag kallas för federated learning (federerad inlärning) och utvecklades av Google 2016.
Du laddar ner en global AI-modell från en central server vilken sedan tränas på den lokala data som finns din enhet, exempelvis bilder eller textmeddelanden. Därefter skickas den uppdaterade modellen tillbaka till servern (med säker kommunikation) där den slås ihop med andra användares modeller. Din data lämnar alltså aldrig din enhet, och ingen information om dig sparas i molnet. Efter aggregeringen har en ny global modell skapats som sedan skickas tillbaka till alla användare. Således kan miljontals användare få en gemensam AI-modell, samtidigt som integritetskrav uppfylls.
Exempel på AI-modeller kan vara bildigenkänning på din telefon eller förutsägelse av nästa ord när du skriver. Men det kan även handla om sjukhus som tränar AI-modeller att identifiera cancertumörer från mycket känsliga patientdata. Istället för att dela denna känsliga data kan sjukhusen dela modeller och träna dem distribuerat.
Distribuerad inlärning har stor potential att underlätta för företag och konsumenter genom att skapa kraftfulla AI-modeller från distribuerade data.
Distribuerad inlärning har stor potential att underlätta för företag och konsumenter genom att skapa kraftfulla AI-modeller från distribuerade data. Det finns emellertid en del frågetecken kring träningen av dessa modeller. Frågetecknen är centrala i pågående forskning och kan grovt kategoriseras i fyra huvudgrenar:
Kommunikationseffektivitet. Att kommunicera modeller till en central server är kostsamt och det är inte alltid som nödvändig bandbredd finns tillgänglig. Det är därför viktigt att ta fram metoder som kan träna bra AI-modeller med så få kommunikationsrundor som möjligt.
Integritetsbevarande. Det har visat sig möjligt att rekonstruera data från användare i fall där inte specifika integritetsbevarande metoder används. Det är därför viktigt att studera informationsläckage av AI-modeller och säker kommunikation. Ett exempel på en integritetsbevarande metod är att lägga till brus på modellerna innan de kommuniceras för att göra det svårare att återskapa träningsdata. Detta forskningsområde kallas för differential privacy.
Systemheterogenitet. Användare kommunicerar olika ofta med den globala modellen och deras hårdvara kan dessutom variera kraftigt. Det här kan ge bias till den globala modellen så att den blir skev mot en specifik grupp av användare, till exempel de som kommunicerar ofta och har bäst hårdvara, och därmed inte bra för alla.
Dataheterogenitet. Forskning har visat att många AI-modeller fungerar bra när datamängder på olika enheter är relativt lika varandra, men när de skiljer sig för mycket åt fungerar aggregeringen inte lika bra. Det beror på att vi skriver på olika sätt, till exempel med olika språk eller ordval, vilket leder till att våra modeller lär sig olika saker. Det här gör det svårt att slå ihop dem till en gemensam modell. I värsta fall produceras en godtyckligt dålig modell som inte gör det den ska. Detta kallas för dataheterogenitet och är mycket vanligt i praktiska tillämpningar i verkliga världen.
I en nyligen publicerad artikel beskrivs en metod som utvecklats för att hantera dataheterogenitet i ett helt decentraliserat nätverk där användare kommunicerar sinsemellan (peer-to-peer) istället för med en central server. Metoden innebär att användare som liknar varandra matchas för att samarbeta. De kan därmed undvika de användare som inte liknar dem. Metoden bygger på att användarna delade modeller med varandra och därmed kunde evaluera hur bra den egna modellen var på någon annans data. Om två användares olika modeller passade varandras data började de att samarbeta oftare. Det här ledde till att användare med liknande data kunde hitta varandra och kollaborera för en gemensam modell. På så vis kunde bättre modeller tas fram än om alla hade samarbetat med alla.
Läs mer om distribuerad maskininlärning här (texten är på engelska).