Ultralytics YOLO27: Iscriviti alla lista d'attesa.
Licenza YOLO
Torna al glossario di Ultralytics

Split Learning

Lo split learning divide una rete neurale in corrispondenza di un layer di taglio, così i client conservano i dati grezzi e i layer iniziali, mentre un server addestra il resto usando le loro attivazioni.

Lo split learning è un metodo di addestramento distribuito collaborativo che divide una rete neurale in corrispondenza di un layer di taglio scelto, tra il proprietario dei dati, cioè il client, e un server. Il client esegue sui propri dati privati i layer precedenti al taglio e invia solo le attivazioni risultanti, talvolta chiamate dati frammentati; il server esegue i layer rimanenti, calcola la funzione di perdita e invia il gradiente nel punto di taglio affinché il client possa aggiornare i propri layer. I dati di addestramento grezzi non lasciano mai il client e nessuna delle due parti possiede il modello completo. Otkrist Gupta e Ramesh Raskar del MIT Media Lab lo hanno introdotto nell'ottobre 2018 nell'articolo Distributed Learning of Deep Neural Network over Multiple Agents; il successivo lavoro del gruppo, Split Learning for Health, pubblicato nel dicembre 2018, ha proposto configurazioni che consentono agli ospedali di addestrare insieme modelli usando tipi diversi di dati dei pazienti, come scansioni per l'analisi di immagini mediche, senza condividere i dati grezzi.

Come funziona lo split learning#

Ogni passaggio di addestramento attraversa due volte il punto di taglio: le attivazioni vanno dal client al server durante il passaggio in avanti e il gradiente della funzione di perdita rispetto a tali attivazioni torna indietro durante la retropropagazione. Poiché per proseguire basta un solo gradiente, grazie alla regola della catena gli aggiornamenti del client sono identici a quelli ottenuti addestrando il modello non suddiviso. Una simulazione a processo singolo in PyTorch mostra lo scambio:

import torch
from torch import nn

torch.manual_seed(0)
client = nn.Sequential(nn.Linear(784, 256), nn.ReLU())  # layer precedenti al taglio, accanto ai dati privati
server = nn.Sequential(nn.Linear(256, 10))  # layer successivi al taglio
images, labels = torch.randn(32, 784), torch.randint(0, 10, (32,))

# Client: passaggio in avanti fino al layer di taglio, poi invia solo le attivazioni
activations = client(images)
received = activations.detach().requires_grad_()

# Server: completa il passaggio in avanti e propaga all'indietro fino al punto di taglio, poi invia il gradiente al client
nn.functional.cross_entropy(server(received), labels).backward()

# Client: prosegue la retropropagazione a partire dal gradiente ricevuto
activations.backward(received.grad)
split_grad = client[0].weight.grad.clone()

# Lo stesso passaggio sul modello non suddiviso fornisce al client gradienti identici
client.zero_grad()
nn.functional.cross_entropy(server(client(images)), labels).backward()
print("Same client gradients as unsplit training:", torch.equal(split_grad, client[0].weight.grad))

Stampa Same client gradients as unsplit training: True. Poi ciascuna parte aggiorna il proprio ottimizzatore. Con più client, il protocollo originale li addestra a turno e ognuno riceve i pesi più recenti lato client dal client precedente.

La configurazione cambia in base a ciò che deve restare privato. Nella configurazione standard qui sopra, le etichette vengono inviate al server; una configurazione a U mantiene anche gli ultimi layer e le etichette sul client; una configurazione verticale è pensata per organizzazioni che possiedono caratteristiche diverse degli stessi record:

Split learning e federated learning#

Anche il federated learning mantiene i dati sulle macchine dei rispettivi proprietari, ma ogni client addestra una copia completa del modello e invia aggiornamenti dei pesi da mediare. Lo split learning invia invece attivazioni e gradienti, quindi i client hanno bisogno di molta meno potenza di calcolo e non possiedono mai il modello completo; la comunicazione cresce in base alla quantità di dati, anziché alle dimensioni del modello, e i client si addestrano uno dopo l'altro, non in parallelo. SplitFed learning, proposto da Chandra Thapa e colleghi nel 2020, combina i due approcci eseguendo in parallelo i layer lato client e mediandoli secondo il metodo federato.

Lo split learning verticale è usato anche in ambito finanziario, dove una banca e un partner con caratteristiche diverse degli stessi clienti addestrano un unico modello, come nel tutorial di SecretFlow sul marketing bancario, senza scambiare dati privati. Il parallelismo di pipeline divide una rete per profondità allo stesso modo, ma tra GPU di un unico cluster affidabile, per poter caricare in memoria un modello grande.

Rischi per la privacy#

Attivazioni e gradienti contengono comunque informazioni sui dati. Le attivazioni dei primi layer possono essere invertite per ricostruire immagini riconoscibili e, quando le etichette sono sul server, i gradienti restituiti dal server possono rivelarle al client. Al convegno ACM CCS 2021, Dario Pasquini, Giuseppe Ateniese e Massimo Bernaschi hanno dimostrato che un server malevolo può dirottare l'addestramento tramite i gradienti che restituisce, indirizzando i layer del client verso una configurazione che consente al server di ricostruire gli input privati. Le difese aggiungono rumore con la privacy differenziale, penalizzano la quantità di informazioni sull'input rivelate dalle attivazioni o rilevano gradienti insoliti, ciascuna con un certo costo in termini di accuratezza. Le distribuzioni affiancano allo split learning controlli di sicurezza dei dati, come l'autenticazione e il trasporto cifrato, poiché il protocollo disciplina solo ciò che attraversa il punto di taglio.

Scelta del layer di taglio#

Il taglio determina il compromesso tra calcolo lato client, traffico ed esposizione: un taglio iniziale richiede meno calcolo al client, ma invia attivazioni grandi che somigliano ancora all'input; un taglio più avanzato invia mappe delle caratteristiche più astratte, ma richiede hardware client più potente, aspetto importante per i dispositivi di IA edge. Le connessioni skip complicano la scelta, perché occorre inviare ogni tensore che attraversa il taglio. Se si divide Ultralytics YOLO26 dopo il suo backbone, è necessario inviare tre mappe delle caratteristiche, perché la configurazione del modello fornisce al neck le uscite dei layer 4, 6 e 10: per YOLO26n, in imgsz=640, contengono 1.126.400 valori, quasi quanto i 1.228.800 dell'immagine di input.

Explore solutions

La visione artificiale nello sport

La visione artificiale nello sport

Scopri come Ultralytics YOLO alimenta la computer vision nello sport con il tracciamento di giocatori e palloni, l'analisi delle prestazioni, gli approfondimenti per gli allenatori e la riabilitazione degli atleti.
Scopri di più
Computer vision per immagini aeree

Computer vision per immagini aeree

Trasforma immagini da droni e riprese aeree in informazioni utili in tempo reale per l'agricoltura, l'acquacoltura, il monitoraggio ambientale, la conservazione e l'analisi geospaziale con Ultralytics YOLO.
Scopri di più
Computer vision nel settore aerospaziale

Computer vision nel settore aerospaziale

Porta la vision AI nel monitoraggio aereo con i modelli Ultralytics YOLO. Potenzia droni, flussi di lavoro aerospaziali, conservazione ambientale e settori geospaziali con soluzioni di computer vision.
Scopri di più
Visione artificiale nella sicurezza

Visione artificiale nella sicurezza

Proteggi ogni sito con i modelli Ultralytics YOLO. L'IA visiva alimenta il monitoraggio perimetrale, il rilevamento delle minacce, il riconoscimento delle targhe e la sicurezza sul lavoro.
Scopri di più
Visione artificiale nella robotica

Visione artificiale nella robotica

Dai più potenza alle macchine intelligenti con i modelli Ultralytics YOLO. Nell'ambito della robotica, l'IA visiva alimenta la navigazione autonoma, la percezione, il tracciamento degli oggetti e il controllo in tempo reale.
Scopri di più
Visione artificiale nella logistica

Visione artificiale nella logistica

Semplifica la logistica con i modelli Ultralytics YOLO. L'IA per la visione consente l'ispezione dei pacchi, la selezione, il tracciamento dei veicoli e il monitoraggio della sicurezza nei magazzini in tempo reale.
Scopri di più
Visione artificiale nel commercio al dettaglio

Visione artificiale nel commercio al dettaglio

Ripensa il commercio al dettaglio con i modelli Ultralytics YOLO. L'IA per la visione consente di tracciare le scorte, monitorare gli scaffali, gestire le code e ottenere informazioni più approfondite sui clienti.
Scopri di più
Visione artificiale in ambito sanitario

Visione artificiale in ambito sanitario

Crea soluzioni sanitarie con i modelli Ultralytics YOLO. In ambito sanitario, l'IA per la visione consente di elaborare più rapidamente le immagini mediche, migliorare la diagnostica e monitorare i pazienti.
Scopri di più
Computer vision nella produzione

Computer vision nella produzione

Ottimizza la produzione con i modelli Ultralytics YOLO. La visione basata sull'IA migliora il controllo qualità, il rilevamento dei difetti, la conformità ai requisiti sui DPI e l'automazione delle linee di assemblaggio.
Scopri di più
Computer vision nel settore automobilistico

Computer vision nel settore automobilistico

Applica la computer vision al settore automobilistico con i modelli Ultralytics YOLO. La visione basata sull'IA migliora la sicurezza stradale, i sistemi di assistenza alla guida e l'automazione dei veicoli, per strade più intelligenti.
Scopri di più
Visione artificiale in agricoltura

Visione artificiale in agricoltura

Porta l'IA visiva nell'agricoltura intelligente con i modelli Ultralytics YOLO. Gestisci il monitoraggio delle colture, il tracciamento del bestiame e l'agricoltura di precisione per ottenere raccolti più abbondanti e intelligenti.
Scopri di più
La visione artificiale nello sport

La visione artificiale nello sport

Scopri come Ultralytics YOLO alimenta la computer vision nello sport con il tracciamento di giocatori e palloni, l'analisi delle prestazioni, gli approfondimenti per gli allenatori e la riabilitazione degli atleti.
Scopri di più
Computer vision per immagini aeree

Computer vision per immagini aeree

Trasforma immagini da droni e riprese aeree in informazioni utili in tempo reale per l'agricoltura, l'acquacoltura, il monitoraggio ambientale, la conservazione e l'analisi geospaziale con Ultralytics YOLO.
Scopri di più
Computer vision nel settore aerospaziale

Computer vision nel settore aerospaziale

Porta la vision AI nel monitoraggio aereo con i modelli Ultralytics YOLO. Potenzia droni, flussi di lavoro aerospaziali, conservazione ambientale e settori geospaziali con soluzioni di computer vision.
Scopri di più
Visione artificiale nella sicurezza

Visione artificiale nella sicurezza

Proteggi ogni sito con i modelli Ultralytics YOLO. L'IA visiva alimenta il monitoraggio perimetrale, il rilevamento delle minacce, il riconoscimento delle targhe e la sicurezza sul lavoro.
Scopri di più
Visione artificiale nella robotica

Visione artificiale nella robotica

Dai più potenza alle macchine intelligenti con i modelli Ultralytics YOLO. Nell'ambito della robotica, l'IA visiva alimenta la navigazione autonoma, la percezione, il tracciamento degli oggetti e il controllo in tempo reale.
Scopri di più
Visione artificiale nella logistica

Visione artificiale nella logistica

Semplifica la logistica con i modelli Ultralytics YOLO. L'IA per la visione consente l'ispezione dei pacchi, la selezione, il tracciamento dei veicoli e il monitoraggio della sicurezza nei magazzini in tempo reale.
Scopri di più
Visione artificiale nel commercio al dettaglio

Visione artificiale nel commercio al dettaglio

Ripensa il commercio al dettaglio con i modelli Ultralytics YOLO. L'IA per la visione consente di tracciare le scorte, monitorare gli scaffali, gestire le code e ottenere informazioni più approfondite sui clienti.
Scopri di più
Visione artificiale in ambito sanitario

Visione artificiale in ambito sanitario

Crea soluzioni sanitarie con i modelli Ultralytics YOLO. In ambito sanitario, l'IA per la visione consente di elaborare più rapidamente le immagini mediche, migliorare la diagnostica e monitorare i pazienti.
Scopri di più
Computer vision nella produzione

Computer vision nella produzione

Ottimizza la produzione con i modelli Ultralytics YOLO. La visione basata sull'IA migliora il controllo qualità, il rilevamento dei difetti, la conformità ai requisiti sui DPI e l'automazione delle linee di assemblaggio.
Scopri di più
Computer vision nel settore automobilistico

Computer vision nel settore automobilistico

Applica la computer vision al settore automobilistico con i modelli Ultralytics YOLO. La visione basata sull'IA migliora la sicurezza stradale, i sistemi di assistenza alla guida e l'automazione dei veicoli, per strade più intelligenti.
Scopri di più
Visione artificiale in agricoltura

Visione artificiale in agricoltura

Porta l'IA visiva nell'agricoltura intelligente con i modelli Ultralytics YOLO. Gestisci il monitoraggio delle colture, il tracciamento del bestiame e l'agricoltura di precisione per ottenere raccolti più abbondanti e intelligenti.
Scopri di più
La visione artificiale nello sport

La visione artificiale nello sport

Scopri come Ultralytics YOLO alimenta la computer vision nello sport con il tracciamento di giocatori e palloni, l'analisi delle prestazioni, gli approfondimenti per gli allenatori e la riabilitazione degli atleti.
Scopri di più
Computer vision per immagini aeree

Computer vision per immagini aeree

Trasforma immagini da droni e riprese aeree in informazioni utili in tempo reale per l'agricoltura, l'acquacoltura, il monitoraggio ambientale, la conservazione e l'analisi geospaziale con Ultralytics YOLO.
Scopri di più
Computer vision nel settore aerospaziale

Computer vision nel settore aerospaziale

Porta la vision AI nel monitoraggio aereo con i modelli Ultralytics YOLO. Potenzia droni, flussi di lavoro aerospaziali, conservazione ambientale e settori geospaziali con soluzioni di computer vision.
Scopri di più
Visione artificiale nella sicurezza

Visione artificiale nella sicurezza

Proteggi ogni sito con i modelli Ultralytics YOLO. L'IA visiva alimenta il monitoraggio perimetrale, il rilevamento delle minacce, il riconoscimento delle targhe e la sicurezza sul lavoro.
Scopri di più
Visione artificiale nella robotica

Visione artificiale nella robotica

Dai più potenza alle macchine intelligenti con i modelli Ultralytics YOLO. Nell'ambito della robotica, l'IA visiva alimenta la navigazione autonoma, la percezione, il tracciamento degli oggetti e il controllo in tempo reale.
Scopri di più
Visione artificiale nella logistica

Visione artificiale nella logistica

Semplifica la logistica con i modelli Ultralytics YOLO. L'IA per la visione consente l'ispezione dei pacchi, la selezione, il tracciamento dei veicoli e il monitoraggio della sicurezza nei magazzini in tempo reale.
Scopri di più
Visione artificiale nel commercio al dettaglio

Visione artificiale nel commercio al dettaglio

Ripensa il commercio al dettaglio con i modelli Ultralytics YOLO. L'IA per la visione consente di tracciare le scorte, monitorare gli scaffali, gestire le code e ottenere informazioni più approfondite sui clienti.
Scopri di più
Visione artificiale in ambito sanitario

Visione artificiale in ambito sanitario

Crea soluzioni sanitarie con i modelli Ultralytics YOLO. In ambito sanitario, l'IA per la visione consente di elaborare più rapidamente le immagini mediche, migliorare la diagnostica e monitorare i pazienti.
Scopri di più
Computer vision nella produzione

Computer vision nella produzione

Ottimizza la produzione con i modelli Ultralytics YOLO. La visione basata sull'IA migliora il controllo qualità, il rilevamento dei difetti, la conformità ai requisiti sui DPI e l'automazione delle linee di assemblaggio.
Scopri di più
Computer vision nel settore automobilistico

Computer vision nel settore automobilistico

Applica la computer vision al settore automobilistico con i modelli Ultralytics YOLO. La visione basata sull'IA migliora la sicurezza stradale, i sistemi di assistenza alla guida e l'automazione dei veicoli, per strade più intelligenti.
Scopri di più
Visione artificiale in agricoltura

Visione artificiale in agricoltura

Porta l'IA visiva nell'agricoltura intelligente con i modelli Ultralytics YOLO. Gestisci il monitoraggio delle colture, il tracciamento del bestiame e l'agricoltura di precisione per ottenere raccolti più abbondanti e intelligenti.
Scopri di più

Costruiamo insieme il futuro dell'IA!

Inizia il tuo percorso verso il futuro del machine learning