Et paradigmeskifte i AI og maskinlæring

Federated representerer et avbrekk fra den tradisjonelle måten å samle inn data på og trene maskinlæringsmodeller.

Med forent læring drar utvikling av maskinlæring fordeler av billigere opplæring som respekterer personvernet. Denne artikkelen veileder hva forent læring er, hvordan det fungerer, applikasjoner og rammeverk.

Hva er Federated Learning?

Kilde: Wikipedia

Federated Learning er et skifte i hvordan maskinlæringsmodeller trenes. I de fleste maskinlæringsmodeller samles data inn i et sentralt depot fra flere klienter. Fra dette sentrale depotet trenes maskinlæringsmodeller og brukes deretter til å lage spådommer. Federated Learning gjør det motsatte. I stedet for å sende data til et sentralt depot, trener klienter modeller på dataene sine. Dette hjelper dem med å holde sine private data private.

Les også: Topp maskinlæringsmodeller forklart

Hvordan fungerer forent læring?

Læring i føderert læring består av en serie atomtrinn som produserer en modell. Disse trinnene kalles læringsrunder. Et typisk læringsoppsett går gjennom disse rundene, og forbedrer modellen ved hvert trinn. Hver læringsrunde innebærer følgende trinn.

  5 beste rimelige Mesh Wi-Fi-systemer for 2022

En typisk læringsrunde

Først velger serveren modellen som skal trenes og hyperparametere som antall runder, klientnoder som skal brukes og andelen av noder som brukes ved hver node. På dette tidspunktet initialiseres modellen også med de første parameterne for å danne basismodellen.

Deretter får kundene kopier av en basismodell for å trene. Disse klientene kan være mobile enheter, personlige datamaskiner eller servere. De trener modellen på sine lokale data, og unngår dermed å dele sensitive data med serverne.

Når klienter har trent modellen på sine lokale data, sender de den tilbake til serveren som en oppdatering. Når den mottas av serveren, beregnes gjennomsnittet av oppdateringen sammen med oppdateringer fra andre klienter for å lage en ny basismodell. Siden klienter kan være upålitelige, kan det hende at enkelte klienter ikke sender inn oppdateringene sine på dette tidspunktet. På dette tidspunktet vil serveren håndtere alle feil.

Før basismodellen kan omplasseres, må den testes. Serveren lagrer imidlertid ikke data. Derfor, for å teste modellen, sendes den tilbake til klientene, hvor den testes mot deres lokale data. Hvis den er bedre enn den forrige basismodellen, tas den i bruk og brukes i stedet.

  Hvordan logge ut av Roblox på alle enheter

Her er en nyttig guide om hvordan forent læring fungerer fra Federated Learning-teamet hos Google AI.

Sentralisert vs. Forbundet vs. Heterogen

I dette oppsettet er det en sentral server som er ansvarlig for å kontrollere læringen. Denne typen oppsett er kjent som sentralisert føderert læring.

Det motsatte av sentralisert læring ville være desentralisert føderert læring, der klienter koordinerer seg peer-to-peer.

Det andre oppsettet heter Heterogen læring. I dette oppsettet har ikke klienter nødvendigvis den samme globale modellarkitekturen.

Fordeler med Federated Learning

  • Den største fordelen med å bruke forent læring er at det bidrar til å holde private data private. Klienter deler resultatene av treningen, ikke dataene som brukes i treningen. Protokoller kan også settes på plass for å samle resultater slik at de ikke kan knyttes til en bestemt klient.
  • Det reduserer også nettverksbåndbredden ettersom ingen data deles mellom klienten og serveren. I stedet utveksles modeller mellom klienten og serveren.
  • Det reduserer også kostnadene for treningsmodeller, siden det ikke er nødvendig å kjøpe dyr treningsmaskinvare. I stedet bruker utviklere klientens maskinvare for å trene modeller. På grunn av lite data som er involvert, belaster det ikke klientens enhet.

Ulemper med Federated Learning

  • Denne modellen avhenger av deltakelsen av mange forskjellige noder. Noen av dem er ikke kontrollert av utvikleren. Derfor er tilgjengeligheten deres ikke garantert. Dette gjør treningsmaskinvaren upålitelig.
  • Klientene som modellene trenes på er ikke akkurat kraftige GPUer. I stedet er de normale enheter som telefoner. Disse enhetene, selv samlet sett, er kanskje ikke kraftige nok sammenlignet med GPU-klynger.
  • Federert læring forutsetter også at alle klientnodene er pålitelige og arbeider for felles beste. Noen kan imidlertid ikke, og de kan utstede dårlige oppdateringer for å forårsake modelldrift.
  9 innstillinger som enhver Nintendo Switch-eier bør bruke

Anvendelser av Federated Learning

Federated Learning muliggjør læring samtidig som personvernet bevares. Dette er nyttig i mange situasjoner, for eksempel:

  • Neste ords spådommer på smarttelefontastaturer.
  • IoT-enheter som kan trene modeller lokalt på de spesifikke kravene i situasjonen de er i.
  • Farmasøytisk og helsevesen.
  • Forsvarsindustri vil også dra nytte av treningsmodeller uten å dele sensitive data.

Rammer for føderert læring

Det er mange rammer for implementering av Federated Learning-mønstre. Noen av de beste inkluderer NVFlare, FATE, Flower og PySft. Les denne veiledningen for en detaljert sammenligning av de forskjellige rammeverkene du kan bruke.

Konklusjon

Denne artikkelen var en introduksjon til Federated Learning, hvordan det fungerer, samt fordeler og ulemper ved å implementere det. I tillegg dekket jeg også de populære applikasjonene og rammeverkene som brukes til å implementere Federated Learning i produksjon.

Les deretter en artikkel om de beste MLOps-plattformene for å trene dine maskinlæringsmodeller.