Sotilaallisen tekoälyn koulutuksen keskeinen paradoksi on, että data, joka parhaiten parantaisi mallin operatiivista suorituskykyä, on juuri sitä dataa, jota ei voi siirtää. Luokitellut sensorilokit, ISR-kuvasto aktiivisista teattereista, elektroniset järjestäytymistiedot ja liittolaiskumppanien tietojoukot ovat osastorajojen takana, mikä tekee perinteisestä keskitetystä koulutuksesta mahdottoman. Hajautettu oppiminen ratkaisee tämän paradoksin kääntämällä koulutusparadigman: datan siirtämisen sijaan malli menee datan luo. Jokainen osallistuva organisaatio kouluttaa paikallisesti omalla luokitellulla aineistollaan ja jakaa vain gradienttipäivityksiä — matemaattisia derivaattoja, jotka parantavat globaalia mallia paljastamatta taustalla olevia koulutusnäytteitä. Tämä artikkeli tarkastelee koko insinööripinoa hajautetun oppimisen käyttöönottoon puolustusympäristöissä, federoinnin topologian valinnasta differentiaalisen yksityisyyden kalibrointiin, turvalliseen aggregointiin, asynkroniseen taktiseen toimintaan ja bysanttilaiskestävään uhkien lieventämiseen.

Miksi hajautettu oppiminen puolustukselle — datasuvereniteetti komentojen välillä, luokittelu-este ja reunamallien tuoreus

Sotilaallisen tekoälyn koulutusdata on hajautettu organisatorisiin siloihin suunnitelmasta, ei sattumasta. Luokittelupolitiikka, lailliset valtuudet ja operatiiviset turvallisuusvaatimukset luovat kovia rajoja dataa omistavien organisaatioiden välille. Erikoisoperaatioiden komennon ISR-kuvastoa ei voi lähettää perinteisen sotilasvoiman koulutusinfrastruktuuriin ilman osastopääsynhallinnan läpikäymistä, mikä voi kestää kuukausia ratkaista — jos ratkaisu on lainkaan mahdollinen. Liittolaiskumppanivaltio, joka osallistuu sensoritietoihin liittomalliin, ei voi laillisesti siirtää näitä tietoja suvereenisen infrastruktuurinsa ulkopuolelle kansallisen turvallisuuslain nojalla, riippumatta siitä, mitä sopimuspuitteita valtioiden välillä on.

Luokittelu-este on terävin ongelma. Keskitetty koulutus moniluokkaisella datalla vaatii koulutusinfrastruktuurin korottamista korkeimmalle herkkyystasolle, jolla on mukana olevia tietojoukkoja. Top Secret/SCI-datalle valtuutettu koulutusklusteri maksaa järjestyksessä enemmän rakentaa, henkilöidä ja akkreditoida kuin Secret-tason tila, ja rajoittaa insinöörien ja datatieteilijöiden määrää, jotka voivat tehdä työtä sen kanssa, osaksi työvoimaa. Käytännössä useimmat puolustuksen tekoälyohjelmat valitsevat kouluttaa saatavilla olevilla vähiten herkillä tiedoilla akkreditoidun korkeamman tason tilan sijaan — mikä tarkoittaa, että mallilta evätään operatiivisesti relevantteimmat koulutusesimerkit. Hajautettu oppiminen poistaa tämän kompromissin sallimalla jokaisen silon osallistua globaaliin malliin omalla luokittelutasollaan. Gradienttipäivitykset, jotka lähtevät jokaisesta silosta, eivät kanna lähdetietojensa luokittelumerkintää — ne ovat koulutusprosessin matemaattisia artefakteja, eivät datatietueita.

Reunamallin tuoreus on kolmas motiivi. Yksi edge AI inference military systems -haaste on, että kuukausia sitten taktiseen alustaan käyttönotettu malli on koulutettu maailman tilannekuvasta, joka ei välttämättä enää vastaa nykyistä operatiivista ympäristöä. Kohdeajoneuvotyypit kehittyvät, uusia tutkawaveformeja otetaan käyttöön, ja vastustajan naamioitumistekniikat mukautuvat tunnettujen havaitsemismallien voittamiseksi. Hajautettu oppiminen mahdollistaa jatkuvan mallin parantamisen käyttöönotetuilta alustoilta ja etutukikohdista kerätyistä tiedoista, syöttäen parannukset takaisin globaaliin malliin ilman, että alustojen on lähetettävä raakaa operatiivista dataa ketjun yläpuolelle — kaista- ja turvallisuusrajoite, joka tekee taktisten alustojen raakadatan vientimisestä epäkäytännöllistä. Malli parantuu kentältä, kun taas data pysyy kentällä.

FL-arkkitehtuurit puolustukselle: siilorajat ylittävä vs. laiterajat ylittävä — komento- ja alustatason federointi

Hajautettu oppiminen puolustuksen käyttöönotoissa jakautuu kahteen perustavanlaatuisesti erilaiseen arkkitehtuurikuviokseen, joista kumpikin sopii sotilasorganisaation hierarkian eri tasolle. Eron ymmärtäminen on edellytys oikean kehyksen, aggregointistrategian ja turvallisuusarkkitehtuurin valinnalle.

Siilorajat ylittävä federointi yhdistää pienen määrän suuria, institutionaalisesti vakaita osallistujia — tyypillisesti 5–50 — joilla kussakin on merkittäviä luokiteltuja tietojoukkoja. Puolustusyhteydessä siilorajat ylittäviä osallistujia ovat sotilaskomennot, tiedusteluvirastot, kumppanivaltiot tai alustojen ohjelmistotoimistot. Jokaisella silolla on erityinen laskentainfrastruktuuri, joka pystyy ajamaan täyden mallikoulutussilmukan, pysyvä verkkoyhteys aggregointipalvelimeen (suunnitelluilla ylläpitoikkunoilla katkoksille) ja institutionaalinen valta tietoihinsa. Siilorajat ylittävä federointi sietää korkeampia kierroskohtaisia viestintäkustannuksia, koska osallistujilla on hyvät resurssit, ja se hyötyy jokaisen osallistujan suuren paikallistietojoukon tilastollisesta rikkaudesta. Keskeisiä insinöörihaasteita ovat organisaatioiden heterogeeniset datajakaumat, osallistumista säätelevät lailliset ja poliittiset puitteet sekä todennus- ja valtuutusinfrastruktuuri, joka tarvitaan sen varmistamiseksi, että vain valtuutetut silot voivat osallistua globaaliin malliin.

Laiterajat ylittävä federointi yhdistää suuren määrän resurssirajoittuneita, episodisesti saatavilla olevia osallistujia — mahdollisesti tuhansia yksittäisiä sotilaiden käyttölaitteita, sensorisolmuja, UAV-maasemantteja tai ajoneuvojen laskentamoduleja. Jokaisella laitteella on vain pieni määrä paikallisesti tuotettuja tietoja, epäsäännöllinen verkkoliitettävyys, ja se voi liittyä federointiin ja poistua siitä ennalta-arvaamattomasti. Laiterajat ylittävä FL vaatii asynkronisen aggregoinnin, aggressiivisen gradienttien pakkauksen viestintäkaistan minimoimiseksi ja tilastollisia menetelmiä, jotka voivat erottaa hyödyllisen signaalin erittäin pienistä, erittäin ei-IID (non-independent-and-identically-distributed) paikallistietojoukoista. Se on sopiva arkkitehtuuri taktiselle verkko-AI:lle, jossa tavoitteena on jaetun mallin päivittäminen hajautetun sensoriverkon yhteisestä kokemuksesta ilman, että yksikään yksittäinen solmu kerää koskaan tarpeeksi dataa kouluttaakseen merkittävästi omallaan.

Useimmat institutionaaliset puolustuksen tekoälyohjelmat — ne, jotka toimivat komento-, toimialue- tai rekisteritasolla — käyttävät siilorajat ylittävää arkkitehtuuria 10–30 hyvin tunnetulla osallistujalla. Laiterajat ylittävä arkkitehtuuri pätee ensisijaisesti kokeellisiin taktisiin tekoälyohjelmiin, joissa yksittäiset alustat ovat koulutusosallistujia. Nämä voidaan yhdistää hierarkkisesti: laiterajat ylittävä federointi taktisen verkon tasolla aggregoituu siilorajat ylittäväksi osallistujaksi operatiivisen komennon tasolla, joka puolestaan osallistuu strategiseen siilorajat ylittävään federointiin. Tämä hierarkkinen rakenne sallii yksittäisten taktisten sensorien tietojen vaikuttaa lopulta globaaliin malliin ilman, että raaka sensoridata ylittäisi enempää kuin yhden verkkohypyn.

Ominaisuus Siilorajat ylittävä Laiterajat ylittävä
Osallistujat 5–50 komentoa / virastoa 100–10 000+ sensoria / alustaa
Dataa osallistujaa kohti GB:sta TB:hin (suuri) MB:sta matalaan GB:han (pieni)
Liitettävyys Luotettava (suunnitellut ikkunat) Epäsäännöllinen, korkea poissaoloaste
Aggregointitapa Synkroninen (kierrokset) Asynkroninen
Datajakauma Ei-IID organisaatioiden välillä Erittäin ei-IID, pieni N
Ensisijainen käyttötapaus Monikomennon mallikoulutus Taktiset verkko-AI-päivitykset

Differentiaalinen yksityisyys sotilasoulutukselle — DP-SGD-kohinan kalibrointi, epsilonin valinta puolustuskäyttötapauksiin, hyödyllisyys vs. yksityisyys -kompromissi

Gradienttipäivitykset, vaikka eivät raakadataa, eivät ole täysin läpikuultamattomia. Tutkimus on osoittanut, että gradientti-inversiohyökkäykset voivat rekonstruoida yksittäisiä koulutusnäytteitä gradienttipäivityksistä yllättävällä tarkkuudella, erityisesti pienillä paikallisilla eräkoilla ja matalilla malliarkkitehtuureilla. Puolustusyhteydessä jopa osittainen koulutustietojen rekonstruointi siepatusta gradientista voi vaarantaa tiedustelulähteitä, paljastaa sensorien keruumalleja tai paljastaa alustojen kyvykkyyksiä. Differentiaalinen yksityisyys (DP) tarjoaa matemaattisen tiukan mekanismin tämän vuodon rajaamiseksi.

DP-SGD (Differentially Private Stochastic Gradient Descent) soveltaa kahta toimintoa jokaiseen gradienttiin ennen kuin se poistuu koulutussilosta. Ensinnäkin näytekohtainen gradientin rajaus rajoittaa koulutussignaalin herkkyyden: jokaisen yksittäisen näytteen gradientin L2-normi rajoitetaan maksimiarvoon C, varmistaen, ettei yksittäinen koulutusesimerkki voi hallita gradienttipäivitystä. Toiseksi kalibroitu Gaussin kohina, jonka keskihajonta on suhteellinen C / sigma:han, lisätään rajattuun gradienttisummaan. Suhde C / sigma on kohinakerroin; suuremmat sigma-arvot lisäävät enemmän kohinaa tarjoten vahvempaa yksityisyyttä heikentyneemmän gradienttisignaalin kustannuksella.

Muodollinen yksityisyystakuu ilmaistaan epsilonina (yksityisyysbudjetti) ja deltana (merkityksetön epäonnistumistodennäköisyys). R koulutuskierroksen jälkeen, joilla kussakin on paikallinen eräkoko B, joka on poimittu N:stä kokonaiskoulutusnäytteestä, kertynyt epsilon kasvaa suunnilleen muodossa epsilon ≈ (q * sigma_inv * sqrt(2 * R * log(1/delta))) missä q = B/N on otannan nopeus. Käytännössä seuranta tapahtuu moments accountantilla tai Renyi-differentiaalisen yksityisyyden kirjanpidolla, joka antaa tiukemmat rajat kuin peruskompositiolauseke.

# DP-SGD with Opacus (PyTorch) — defense FL configuration
import torch
from opacus import PrivacyEngine
from opacus.accountants import RDPAccountant

model = MyDetectionModel()
optimizer = torch.optim.SGD(model.parameters(), lr=0.01)

privacy_engine = PrivacyEngine(accountant="rdp")

model, optimizer, train_loader = privacy_engine.make_private_with_epsilon(
    module=model,
    optimizer=optimizer,
    data_loader=train_loader,
    epochs=local_epochs,
    target_epsilon=3.0,       # authorized privacy budget for SECRET data
    target_delta=1e-5,        # negligible failure probability
    max_grad_norm=1.0,        # clipping norm C (set to median gradient norm)
)

# Train local epochs
for epoch in range(local_epochs):
    for batch in train_loader:
        optimizer.zero_grad()
        loss = criterion(model(batch["inputs"]), batch["labels"])
        loss.backward()
        optimizer.step()  # gradient clipping + noise injection happens here

# Check remaining budget before transmission
epsilon_consumed = privacy_engine.get_epsilon(delta=1e-5)
assert epsilon_consumed <= AUTHORIZED_EPSILON_CEILING, "Privacy budget exceeded"

Epsilonin valinta puolustuskäyttötapauksiin riippuu koulutustietojen luokittelutasosta ja vastustajamallista. Hyödyllinen heuristiikka puolustusohjelmille on porrastaa epsilon luokittelun mukaan: Luokittelematon koulutusdata voi sietää epsilonia 8–12, jossa tarkkuusvaikutus on minimaalinen; Secret-tiedot ansaitsevat epsilonin 2–5, jossa on merkittävä tarkkuushinta mutta matemaattinen takuu on vahva; Top Secret tai jaetut tiedot voivat vaatia epsilonia lähellä arvoa 1, jossa tarkkuuden heikkeneminen on merkittävä ja se on punnittava yksityisyysvaatimukseen nähden. Vahvan DP:n tarkkuushinta on todellinen — epsilon = 1:llä koulutettu havaitsemismalli voi menettää 3–6 mAP-arvoa suhteessa ei-yksityiseen perustarpeeseen — ja ohjelmistotoimistojen on muodollisesti hyväksyttävä tämä kompromissi sen sijaan, että insinöörin ohjelmistovalinnat tekisivät sen epäsuorasti.

Mallien aggregointistrategiat — FedAvg, FedProx heterogeenisille datajakaumille, painotettu aggregointi datan laadun ja määrän mukaan

FedAvg (Federated Averaging), kanoninen FL-aggregointialgoritmi, laskee globaalin mallipäivityksen yksinkertaisena keskiarvona osallistujien gradienttipäivityksistä yhden kierroksen aikana. Se on yksinkertainen, viestintätehokas ja hyvin ymmärretty. Se on myös herkkä, kun osallistujien datajakaumat ovat erittäin heterogeenisia — tilanne, joka on sääntö eikä poikkeus sotilaiden siilorajat ylittävissä käyttöönotoissa, joissa kunkin organisatorisen silon koulutusdata heijastaa sen erityistä operatiivista kontekstia, sensorialustaa ja maantieteellistä toiminta-aluetta.

Heterogeenisuusongelma ilmenee asiakkaan harhautumisena: jokaisen osallistujan paikallisesti optimoitu malli harhautuu suuntaan, jonka määrittää sen paikallinen datajakauma, ja useiden harhautuneiden mallien keskiarvo voi olla huonompi kuin minkään yksittäisen osallistujan paikallinen malli. Komento, joka toimii yksinomaan arktisella teatterilla, kouluttaa paikallisen mallinsa tunnistamaan lumipeitteisiä ajoneuvoja; autiomaateatterin komento erikoistuu hiekanvärisiin kohdemerkkeihin. Molempien keskiarvottaminen tuottaa mallin, joka suoriutuu huonommin kuin kumpikin. FedProx käsittelee asiakkaan harhautumista lisäämällä proksimaalisen sääntötermin jokaisen osallistujan paikalliseen tavoitefunktioon:

# FedProx local objective — adds proximal term to standard loss
# w_global = global model weights from last aggregation round
# w_local  = local model weights being updated
# mu       = proximal regularization strength (0.01 – 0.1)

def fedprox_loss(predictions, targets, w_local, w_global, mu=0.05):
    task_loss = criterion(predictions, targets)
    proximal_term = (mu / 2) * sum(
        torch.norm(w_l - w_g) ** 2
        for w_l, w_g in zip(w_local.parameters(), w_global.parameters())
    )
    return task_loss + proximal_term

Proksimaalitermi rankaisee paikallisen mallin harhautumista globaalista lähtökohdasta estäen minkään yksittäisen osallistujan vetämistä aggregoitua päivitystä liian kauas sen paallisen datajakauman suuntaan. Mu-hyperparametri hallitsee kompromissia: mu = 0 palauttaa vakiollisen FedAvg:n (ei sääntöä); mu = 1,0 estää paallisen optimoinnin parantumisen globaalista mallista (liikaa sääntöä). Arvot alueella 0,01–0,1 ovat tyypillisiä puolustuksen siilorajat ylittäville käyttöönotoille. Mu:n säätäminen vaatii globaalin mallin tarkkuuden seuraamista pidätetyllä keskisellä arviointidatalla koulutuskierrosten yli — jos tarkkuus heiluu tai ei konvergoidu, lisää mu:a; jos konvergenssi on liian hidas, vähennä sitä.

Painotettu aggregointi datan määrän mukaan korvaa yhtäsuurilla painoilla olevan keskiarvon näytemääräsuhteellisella aggregoinnilla. Komennolla, jolla on 500 000 merkittyä esimerkkiä, tulisi olla enemmän osuutta globaalista päivityksestä kuin etutukikohdalla, jolla on 800 esimerkkiä. Näytemääräpainotus on suoraviivaista: jokainen osallistuja ilmoittaa paikallisen näytemääränsä (tämä määrämetadata ei paljasta dataa), ja palvelin laskee jokaisen osallistujan painoksi sen määrän jaettuna kaikkien kierroksen osallistuvien silojen kokonaismäärällä.

Painotettu aggregointi datan laadun mukaan on monimutkaisempaa. Laatuproxymit, jotka ovat laskettavissa ilman raakatietoihin pääsyä, sisältävät paikallisen mallin validointitarkkuuden (jos paikallinen validointijoukko on saatavilla), gradienttinormin (erittäin suuret tai pienet gradienttinormit voivat merkitä dataongelmia) ja mallin sopivuuden (osoittaako paikallinen päivitys saman suunnan kuin muiden osallistujien aggregaatti). Puolustusohjelmat, joissa on heterogeenistä sensorilaatua — korkearesoluutioisia elektro-optisia kuvia strategisista ISR-varoista sekoitettuna matalaresoluutioisiin maajoneuvojen kameroihin — tulisi toteuttaa laatupainotettu aggregointi estämään huonolaatuisten datalähteiden heikentämästä globaalin mallin suorituskykyä korkean panoksen havaitsemistehtävissä, jotka nojaavat laadukkaampiin tietoihin.

Turvalliset aggregointiprotokollat — kryptografinen aggregointi (SecAgg), luotettu suoritusympäristö aggregointipalvelimelle, gradienttien salaus

Aggregointipalvelin on ainoa piste FL-arkkitehtuurissa, jonka on käsiteltävä gradienttipäivityksiä kaikilta osallistujilta. Vaikka yksittäiset osallistujat eivät pääse käsiksi muiden osallistujien gradientteihin, aggregointipalvelimen ylläpitäjä — ja mikä tahansa vastustaja, joka kompromisoi palvelimen — voi havainnoida kaikkia yksittäisiä gradienttilähetyksiä. Puolustuksen FL-käyttöönotossa, jossa osallistujat ovat eri organisaatioita tai valtioita, tämä keskitetty näkyvyys luo tiedusteluriskin: kehittynyt vastustaja, joka hallitsee tai on tunkeutunut aggregointipalvelimeen, voi yrittää gradientin rekonstruointihyökkäyksiä yksittäisten osallistujien koulutustietoja vastaan.

Turvallinen aggregointi (SecAgg) poistaa tämän altistumisen sallimalla palvelimen laskea osallistujien gradienttien aggregaatin näkemättä koskaan yhdenkään osallistujan gradienttia selkomuodossa. Protokolla käyttää parikkoista avaintenjakoa osallistujien välillä:

  • Asetusvaiheessa jokainen osallistujapari perustaa jaetun avaimen Diffie-Hellman-avainvaihdolla todennetun kanavan yli. Aggregointipalvelin helpottaa avainten jakoa mutta ei opi parikkaisia avaimia.
  • Ennen gradienttinsa lähettämistä jokainen osallistuja luo pseudosatunnaisen peitysvektorin jokaiselle kumppanilleen (johdettu parikkoisesta avaimesta) ja lisää kaikki nämä peitteet gradienttiinsa. Peite osallistujaparille (i, j) lisätään positiivisella etumerkillä osallistujan i toimesta ja negatiivisella etumerkillä osallistujan j toimesta.
  • Kun kaikki peitetyt gradientit summataan palvelimella, peitteet kumoutuvat pareittain ja vain todellinen peittämättömien gradienttien summa jää jäljelle. Palvelin on laskenut aggregaatin oikein näkemättä koskaan yhdenkään osallistujan selkokielistä gradienttia.
  • Osallistujien poissaolot käsitellään peitysavainten jakoperiaatteella: jos osallistuja poistuu ennen lähettämistä, kynnys muiden osallistujien joukosta voi rekonstruoida kyseisen osallistujan peitteen ja poistaa sen aggregaatista.

Aggregointipalvelimen luotettu suoritusympäristö (TEE) tarjoaa täydentävän suojakerroksen. TEE — toteutettu Intel TDX:llä, AMD SEV-SNP:llä tai ARM TrustZonella — luo laitteistoeristetyn suorituskontekstin, jossa koodi ja data on salattu ja suojattu jopa infrastruktuurin käyttöjärjestelmältä ja hypervisorilta. Kun aggregointipalvelin ajetaan TEE:n sisällä, palvelimen ylläpitäjä ei voi tarkastella aggregoitua gradienttia selkomuodossa rikkomatta TEE:n todistustakuita. Etätodennus sallii osallistujien kryptografisesti vahvistaa, että aggregointipalvelin ajaa valtuutettua aggregointikoodia aidossa TEE:ssä ennen gradienttipäivitysten lähettämistä. Tämä käsittelee sisäuhan infrastruktuurin ylläpitäjätasolla — pilvihallintaja tai valtion IT-urakoitsija, joka ylläpitää aggregointipalvelimen infrastruktuuria, ei voi käyttää etuoikeutettua pääsyä gradienttiliikenteen sieppaamiseen.

Niille computer vision defense systems -järjestelmille, jotka osallistuvat siilorajat ylittävään FL-ohjelmaan, koko datapolku — paikallisesta koulutustuloksesta peityksen kautta salatun siirron läpi TEE-pohjaiseen aggregointiin ja takaisin osallistujalle päivitettynä globaalina mallina — on dokumentoitava ja akkreditoitava osaksi ohjelman turvallisuusvaltuutuspakettia. Jokainen ketjun lenkki vaatii oman turvallisuuden hallintakeinojen arvionsa.

FL katkenneissa ja epäsäännöllisissä taktisissa ympäristöissä — asynkroninen FL viivästyneillä gradienteilla, satelliittiyhteyksien ajoitus, mallin versiointi vanhentuneille gradienteille

Ihanteellinen FL-protokolla olettaa, että kaikki osallistujat ovat saavutettavissa samanaikaisesti jokaisen koulutuskierroksen alussa ja pysyvät saavutettavissa kierroksen ajan. Taktiset sotilasympäristöt rikkovat tämän oletuksen systemaattisesti. Satelliittiyhteydessä olevilla etutukikohdilla voi olla vain 20 minuutin liitettävyysikkunat 12 tunnin välein. Erikoisjoukot, jotka toimivat viestintään pääsyä rajoitetulla maastolla, voivat olla offline-tilassa päiviä. Ajoneuvoasennetut osallistujat voivat olla epäsäännöllisesti yhteydessä maaston peiton, vastustajan häirinnän aiheuttaman radiohäiriön tai lähetysvalvontamenettelyjen (EMCON) vuoksi, jotka kieltävät lähettämisen.

Asynkroninen hajautettu oppiminen irrottaa osallistujien saatavuuden aggregointiajoituksesta. Sen sijaan että kaikki osallistujien gradientit kerättäisiin ennen kierroksen laskemista, aggregointipalvelin ylläpitää puskuria ja soveltaa päivityksiä niiden saapuessa. Globaali malli etenee jatkuvasti sisällyttäen jokaisen osallistujan osuuden sen saapumishetkellä. Insinöörihaaste on gradienttien vanheneminen: osallistuja, joka koulutti paikallisen mallinsa globaalin mallin versioon T ja lähettää gradienttinsa hetkellä T+5, osallistuu gradienttiin, joka on laskettu suhteessa malliin, joka on nyt vanhentunut viidellä globaalilla askelella. Vanhentuneiden gradienttien naiivi aggregointi voi hidastaa konvergenssia tai ääritapauksissa epävakauttaa sen.

# Staleness-weighted asynchronous aggregation (server side)
# Each gradient submission includes the round number it was computed from

def async_aggregate(gradient_buffer, current_round, max_staleness=10):
    """
    Aggregate gradient updates from the buffer, applying staleness weighting.
    Discard updates older than max_staleness rounds.
    """
    valid_updates = [
        (g, w, r) for g, w, r in gradient_buffer
        if (current_round - r) <= max_staleness
    ]

    total_weighted_grad = None
    total_weight = 0.0

    for grad, sample_weight, submission_round in valid_updates:
        staleness = current_round - submission_round
        # Exponential staleness decay: weight halves every 3 rounds
        staleness_factor = 0.5 ** (staleness / 3.0)
        effective_weight = sample_weight * staleness_factor

        scaled_grad = {k: v * effective_weight for k, v in grad.items()}
        if total_weighted_grad is None:
            total_weighted_grad = scaled_grad
        else:
            for k in total_weighted_grad:
                total_weighted_grad[k] += scaled_grad[k]
        total_weight += effective_weight

    # Normalize by total weight
    return {k: v / total_weight for k, v in total_weighted_grad.items()}

Satelliittiyhteyksien FL-ajoitus sovittaa koulutuskierrosten valmistumisen ennakoituihin liitettävyysikkunoihin. Jos osallistujan satelliittiyhteys on käytettävissä 02:00–02:20 UTC joka päivä, osallistujan koulutusasiakkaan olisi konfiguroitava valmistamaan paikallinen koulutuksensa ja pitämä gradientti valmiina lähetykseen ennen klo 02:00. Palvelin ajastaa aggregointikierrokset määräajalla, joka vastaa viimeisen osallistujan liitettävyysikkunaa. Osallistujilla, joilla on useita päivittäisiä ohituksia, koulutusasiakas voi käyttää viimeisintä gradienttia, jos koulutusajo on valmistunut viimeisestä lähetyksestä, välttäen gradienttien kertymisen monimutkaisuuden ohitusten välillä.

Mallin versiointi osallistujatasolla on välttämätöntä sitkeydelle. Paikallisen mallivaraston olisi säilytettävä vähintään kolme tarkistuspistettä: käyttöönotettu inferenssimalli, viimeisin vastaanotettu globaali malli (käytetään lähtökohtana paikalliselle koulutukselle) ja meneillään oleva koulutettu paikallinen malli (ennen gradientin irrottamista). Jos liitettävyys katkeaa paikallisen koulutusajon jälkeen mutta ennen gradientin lähettämistä, gradientti voidaan pitää ja lähettää seuraavassa liitettävyysikkunassa toistamatta koulutuslaskentaa. Jos osallistuja vastaanottaa globaalin mallipäivityksen käynnissä olevan paikallisen koulutusajon aikana, sen on päätettävä, valmistuuko se nykyinen ajo (ja lähettääkö mahdollisesti vanhentuneen gradientin) vai käynnistyykö se uudelleen uudesta globaalista mallista (hukkaa laskennallisen investoinnin). Niillä power-constrained edge inference -alustoilla, joissa laskenta on kallista, nykyisen ajon valmistuminen ja vanhenemisen hyväksyminen on yleensä parempi politiikka.

Uhkamalli hajautetulle sotilaalliselle tekoälylle — bysanttilaiskestävä aggregointi (Krum, Trimmed Mean), mallin myrkytyksen tunnistus, gradientti-inversiohyökkäysten lieventäminen

Hajautettu oppiminen puolustusohjelmissa toimii monimutkaisemman uhkamallin alla kuin siviili-FL-sovellukset. Vastustajalla on sekä motiivi että mahdollisesti tekninen kyky kompromisoida FL-osallistujia, siepata gradienttilähetyksiä tai soluttautua aggregointiinfrastruktuuriin. Sotilas-FL:ään liittyvät uhkakategoriat ovat gradienttien myrkytys (kompromisoitu osallistuja lähettää haitallisia gradientteja), mallin myrkytys (vastustaja injektoi koulutustietoja, jotka on suunniteltu tuottamaan takaportillinen malli), gradientti-inversio (salakuuntelija rekonstruoi koulutustiedot siepatuista gradienttipäivityksistä) ja aggregointipalvelimen kompromissi (vastustaja saa pääsyn keskeiseen aggregointipisteeseen).

Bysanttilaiskestävä aggregointi puolustautuu gradienttien myrkytystä vastaan tekemällä globaalista päivityksestä herkän rajoitetulle määrälle vastustajan osallistujaosuuksia. Vakio FedAvg ei ole bysanttilaiskestävä — yksittäinen osallistuja, joka lähettää gradientin päinvastaiseen suuntaan kuin todellinen gradientti, voi merkittävästi heikentää konvergenssia. Bysanttilaiskestävät algoritmit joko valitsevat joukon gradientteja tai laskevat kestävän tilastollisen arvon, joka rajoittaa vastustajan vaikutusta:

Multi-Krum valitsee m gradienttia, jotka ovat samanlaisimpia k:n lähimmän naapurinsa kanssa kaikkien lähetettyjen gradienttien joukossa. Bysanttilaiset gradientit, jotka on suunniteltu vääristämään globaalia päivitystä, ovat tyypillisesti poikkeamia gradienttijakaumassa — kaukana rehellisten gradienttien klusterista. Krumin valintakriteeri hylkää nämä poikkeamat. Algoritmi vaatii bysanttilaisten osallistujien määrän ylärajan f; varmuuden vuoksi aseta Krum-parametri muotoon n - f - 2, missä n on osallistujien kokonaismäärä.

Coordinate-wise Trimmed Mean hylkää ylimmän ja alimman p-osuuden gradienttiarvoista kussakin dimensiossa itsenäisesti ennen keskiarvon laskemista. Tämä on laskennallisesti edullisempaa kuin Krum ja tehokasta, kun bysanttilaiset gradientit ovat äärimmäisiä yksittäisissä dimensioissa — yleinen rakenne yksinkertaisille gradienttihyökkäysstrategioille. Rajausosuus p olisi asetettava vähintään oletettuun bysanttilaiseen osuuteen plus 5–10 %:n turvamarginaaliin.

# Coordinate-wise Trimmed Mean aggregation
import numpy as np

def trimmed_mean_aggregate(gradients, trim_fraction=0.2):
    """
    Byzantine-robust aggregation: trim top and bottom trim_fraction
    of gradient values per dimension, then average.

    gradients: list of flat numpy arrays, one per participant
    trim_fraction: fraction to trim from each tail (e.g., 0.2 = 20%)
    """
    grad_matrix = np.stack(gradients, axis=0)  # shape: (n_participants, n_params)
    n = grad_matrix.shape[0]
    k = int(np.floor(trim_fraction * n))        # number to remove from each tail

    # Sort along participant axis, trim k from top and bottom
    sorted_grads = np.sort(grad_matrix, axis=0)
    trimmed = sorted_grads[k : n - k, :]       # remove k from each end

    return np.mean(trimmed, axis=0)

Mallin myrkytyksen tunnistus vaatii globaalin mallin käyttäytymisen seuraamista puhtaalla keskisellä arviointidatalla jokaisen aggregointikierroksen jälkeen. Äkillinen tarkkuuden lasku, virheellisesti negatiivisten osuuden kasvu tietyllä kohdeluokalla tai odottamattomien luokittelukäyttäytymistapojen ilmestyminen (kuten korkean luottamustason virheellinen luokittelu tietylle ajoneuvotyypille, jota ei ollut arviointijoukossa ennen kierrosta) ovat merkkejä onnistuneesta myrkytyksestä. Puolustuksen FL-ohjelmien olisi ylläpidettävä pidätettyä arviointijoukkoa, jonka on kokoanut tiimi, joka on riippumaton kenestäkään FL-osallistujasta, jotta yksikään osallistuja ei voi kouluttaa suoriutumaan hyvin arviointijoukossa samalla kun se myrkyttää mallin operatiivista käyttäytymistä. Poikkeamien tunnistus osittain osallistujakohtaisista gradienttitilastoista — gradienttinormi, kosinussamanlaisuus kierroksen aggregaattiin ja varianssi koulutuskierrosten yli — tarjoaa varhaisvaroitusmerkin siitä, että osallistujan gradienttikäyttäytyminen on muuttunut, mikä voi merkitä kompromissia.

Gradientti-inversiön lieventäminen toimii kolmen toisiaan täydentävän mekanismin kautta. Ensinnäkin DP-SGD-kohina sumeuttaa gradienttiarvot kohinarajan alapuolelle estäen korkeatarkkuisen rekonstroinnin. Toiseksi SecAgg varmistaa, että vain aggregoidut gradientit ovat näkyvissä aggregointipalvelimella, rajoittaen hyökkäyspinnan viestintäkanavaan jokaisen osallistujan ja palvelimen välillä. Kolmanneksi paikallisen eräkoon nostaminen yksinumerotason 64 tai suurempaan näyteaskelta kohti lisää dramaattisesti inversiön vaikeutta, koska gradientti on keskiarvo monista näytteistä eikä yksittäisen tietueen sormenjälki. Kaikkein herkimmälle koulutusdatalle paikalliset eräkoot 128 tai enemmän estävät tehokkaasti nykyisten gradientti-inversiotekniikoiden palauttamisen yksittäisiä koulutustietueita.

Keskeinen oivallus: Bysanttilaiskestävyys ja differentiaalinen yksityisyys ovat täydentäviä, eivät päällekkäisiä. DP-SGD suojelee yksittäisiä koulutustietueita gradienttitason rekonstroinnilta; bysanttilaiskestävä aggregointi suojelee globaalia mallia vastustajilta, jotka yrittävät heikentää tai tehdä siitä takaportillisen. Hyvin suunniteltu puolustuksen FL-järjestelmä vaatii molemmat: DP:n kunkin silon koulutusputkessa ja bysanttilaiskestävän aggregoinnin palvelimella. Vain toisen toteuttaminen jättää merkittävän hyökkäyspinnan auki — vastustaja, joka kompromisoi osallistujasolmun, voi lähettää haitallisia gradientteja vaikka rehellisten osallistujien gradientit olisivat differentiaalisesti yksityisiä.

Käytä turvallista hajautettua oppimista puolustuksen tekoälyohjelmassasi

Corvus Intelligence suunnittelee ja toteuttaa hajautetun oppimisen järjestelmiä puolustusohjelmille, jotka toimivat luokittelurajojen, liittoympäristöjen ja katkonneiden taktisten verkkojen yli.

Explore Corvus SENSE → Book a Technical Briefing

Tämän analyysin ovat valmistelleet Corvus Intelligencen insinöörit, jotka suunnittelevat ja käyttöönottavat hajautettuja tekoälyjärjestelmiä puolustukselle ja hallitukselle, jotka toimivat luokittelurajoitteissa ja haastavissa ympäristöissä. Tutustu tiimiimme →