Grunnleggende AI
Hva er Fordelt LÃĶring?
Hva er Fordelt LÃĶring?
Den tradisjonelle metoden for ÃĨ trene AI-modeller innebÃĶrer ÃĨ sette opp servere der modellene trenes pÃĨ data, ofte gjennom bruk av en sky-basert dataplattform. Imidlertid har det over de siste ÃĨrene oppstÃĨtt en alternativ form for modellutvikling, kalt fordelt lÃĶring. Fordelt lÃĶring bringer maskinlÃĶringsmodeller til datakilden, i stedet for ÃĨ bringe data til modellen. Fordelt lÃĶring kobler sammen flere beregningsenheter i et desentralisert system som tillater at de enkelte enhetene som samler inn data kan bidra til ÃĨ trene modellen.
I et fordelt lÃĶringssystem har de forskjellige enhetene som er en del av lÃĶrenettverket hver sin kopi av modellen pÃĨ enheten. De forskjellige enhetene/klientene trenes pÃĨ klientens lokale data, og deretter sendes parameterne/vektene fra de enkelte modellene til en hovedenhet, eller server, som samler parameterne og oppdaterer den globale modellen. Denne treningsprosessen kan deretter gjentas til en Ãļnsket nivÃĨ av nÃļyaktighet er oppnÃĨdd. Kort sagt, ideen bak fordelt lÃĶring er at ingen av treningsdataene noen gang overfÃļres mellom enheter eller mellom parter, bare oppdateringene relatert til modellen.
Fordelt lÃĶring kan deles inn i tre forskjellige trinn eller faser. Fordelt lÃĶring starter vanligvis med en generisk modell som fungerer som en basis og trenes pÃĨ en sentral server. I det fÃļrste trinnet sendes denne generiske modellen ut til klientene. Disse lokale kopiene trenes deretter pÃĨ data generert av klientsystemene, og lÃĶrer og forbedrer sin ytelse.
I det andre trinnet sender klientene alle sine lÃĶrt modellparametre til den sentrale serveren. Dette skjer periodisk, pÃĨ en fastlagt tid.
I det tredje trinnet samler serveren de lÃĶrt parameterne nÃĨr den mottar dem. Etter at parameterne er samlet, oppdateres den sentrale modellen og deles igjen med klientene. Hele prosessen gjentas deretter.
Fordelen med ÃĨ ha en kopi av modellen pÃĨ de forskjellige enhetene er at nettverksforsinkelser reduseres eller elimineres. Kostnadene forbundet med ÃĨ dele data med serveren elimineres ogsÃĨ. Andre fordeler med fordelt lÃĶring inkluderer at fordelt lÃĶringmodeller er privatbevarte, og modellsvar er tilpasset for brukeren av enheten.
Eksempler pÃĨ fordelt lÃĶringmodeller inkluderer anbefalingsmotorer, svindelmodeller og medisinske modeller. Medieanbefalingsmotorer, av typen brukt av Netflix (NFLX ) eller Amazon (AMZN ), kan trenes pÃĨ data samlet fra tusenvis av brukere. Klientenhetene ville trenes pÃĨ sine egne separate modeller, og den sentrale modellen ville lÃĶre ÃĨ gjÃļre bedre prediksjoner, selv om de enkelte datapunktene ville vÃĶre unike for de forskjellige brukerne. Liksom svindelmodeller brukt av banker kan trenes pÃĨ mÃļnster av aktivitet fra mange forskjellige enheter, og et par forskjellige banker kunne samarbeide om ÃĨ trene en felles modell. I forhold til en medisinsk fordelt lÃĶringmodell kunne flere sykehus samarbeide om ÃĨ trene en felles modell som kunne gjenkjenne potensielle svulster gjennom medisinske skanninger.
Typer av Fordelt LÃĶring
Fordelt lÃĶringsskjemaer faller vanligvis inn i en av to forskjellige klasser: flerpartssystemer og enkeltpartssystemer. Enkeltpartsfordelt lÃĶringssystemer kalles âenkeltpartâ fordi bare en enkelt enhet er ansvarlig for ÃĨ overvÃĨke innhenting og flyt av data over alle klientenhetene i lÃĶrenettverket. Modellene som finnes pÃĨ klientenhetene trenes pÃĨ data med samme struktur, selv om datapunktene vanligvis er unike for de forskjellige brukerne og enhetene.
I motsetning til enkeltpartssystemer er flerpartssystemer styrt av to eller flere enheter. Disse enhetene samarbeider om ÃĨ trene en felles modell ved ÃĨ bruke de forskjellige enhetene og datasettene de har tilgang til. Parameterne og datastrukturene er vanligvis like over enhetene tilhÃļrende de forskjellige enhetene, men de mÃĨ ikke nÃļdvendigvis vÃĶre helt like. I stedet gjÃļres forbehandling for ÃĨ standardisere inngangene til modellen. En nÃļytral enhet kan vÃĶre ansvarlig for ÃĨ samle vektene etablert av enhetene som er unike for de forskjellige enhetene.
Rammeverk for Fordelt LÃĶring
PopulÃĶre rammeverk brukt for fordelt lÃĶring inkluderer Tensorflow Federated, Federated AI Technology Enabler (FATE) og PySyft. PySyft er en ÃĨpen kildekode-rammeverk for fordelt lÃĶring basert pÃĨ dyplÃĶringbiblioteket PyTorch. PySyft er ment ÃĨ sikre privat, sikker dyplÃĶring over servere og agenter ved hjelp av kryptert beregning. Mens Tensorflow Federated er et annet ÃĨpen kildekode-rammeverk bygget pÃĨ Googleâs Tensorflow-plattform. I tillegg til ÃĨ aktivere brukerne til ÃĨ lage sine egne algoritmer, tillater Tensorflow Federated brukerne ÃĨ simulere en rekke inkluderte fordelt lÃĶringalgoritmer pÃĨ sine egne modeller og data. Til slutt er FATE ogsÃĨ et ÃĨpen kildekode-rammeverk designet av Webank AI, og det er ment ÃĨ gi Federated AI-Ãļkosystemet et sikkerhetsrammeverk.
Ufordringer i Fordelt LÃĶring
Siden fordelt lÃĶring fortsatt er ganske ny, en rekke ufordringer mÃĨ fortsatt overvindes for at det skal nÃĨ sitt fulle potensiale. Treningsevnen til kantenhetene, dataetikettering og standardisering, og modellkonvergens er potensielle hindringer for fordelt lÃĶringstiltak.
Treningsevnen til kantenhetene, nÃĨr det gjelder lokal trening, mÃĨ vÃĶre aktuelle nÃĨr man designer fordelt lÃĶringstiltak. Mens de fleste smarttelefoner, nettbrett og andre IoT-kompatible enheter er i stand til ÃĨ trene maskinlÃĶringsmodeller, hindrer dette vanligvis enhetens ytelse. Kompromisser mÃĨ gjÃļres mellom modellnÃļyaktighet og enhetens ytelse.
Etikettering og standardisering av data er en annen utfordring som fordelt lÃĶringssystemer mÃĨ overvinne. OvervÃĨket lÃĶring krever treningdata som er tydelig og konsistent etikettert, noe som kan vÃĶre vanskelig ÃĨ gjÃļre over de mange klientenhetene som er en del av systemet. Derfor er det viktig ÃĨ utvikle modelldata-rÃļrledninger som automatisk tillegger etiketter pÃĨ en standardisert mÃĨte basert pÃĨ hendelser og brukerhandlinger.
Modellkonvergenstid er en annen utfordring for fordelt lÃĶring, da fordelt lÃĶringmodeller vanligvis tar lengre tid ÃĨ konvergere enn lokalt trenede modeller. Antallet enheter involvert i treningen legger til en element av usikkerhet til modelltreningen, da forbindelsesproblemer, uregelmessige oppdateringer og sogar forskjellige applikasjonsbrukstider kan bidra til Ãļkt konvergenstid og redusert pÃĨlitelighet. Derfor er fordelt lÃĶringssystemer vanligvis mest nyttige nÃĨr de tilbyr meningsfulle fordeler over sentral trening av en modell, som for eksempel nÃĨr datasett er ekstremt store og distribuerte.

Foto: Jeromemetronome via Wikimedia Commons, CC By S.A. 4.0 (https://en.wikipedia.org/wiki/File:Federated_learning_process_central_case.png)












