Multiple Instance Learning
Scopri come la Multiple Instance Learning utilizza etichette a livello di borsa, aggregazione di istanze e supervisione debole per l'imaging medico, l'ispezione e la classificazione.
L'apprendimento a istanze multiple (MIL) è un approccio di machine learning in cui gli esempi di training sono organizzati in gruppi chiamati bag, mentre gli elementi all'interno di ciascun bag sono chiamati istanze. Il modello riceve un'etichetta per l'intero bag ma non per la singola istanza. Ad esempio, una diapositiva di patologia può essere etichettata come "cancro presente" senza identificare quali regioni dell'immagine contengano cellule tumorali. Il MIL è utile quando l'annotazione dettagliata è costosa, ambigua o non disponibile.
Come funziona l'apprendimento a istanze multiple#
Nel supervised learning convenzionale, ogni esempio di training ha la sua etichetta. Il MIL modifica l'unità di supervisione: l'etichetta appartiene a un insieme di esempi correlati.
Un bag potrebbe essere un video contenente molti fotogrammi, un documento contenente molti passaggi o una grande immagine divisa in patch. Ciascun fotogramma, passaggio o patch è un'istanza. Un tipico modello MIL ha tre componenti:
- Un instance encoder converte ciascuna istanza in una rappresentazione di feature numeriche.
- Una aggregation function combina le rappresentazioni delle istanze in un'unica rappresentazione di bag.
- Un bag classifier predice l'etichetta del bag a partire da tale rappresentazione combinata.
Per la classificazione binaria, la tradizionale assunzione del MIL afferma che un bag positivo contiene almeno un'istanza positiva, mentre ogni istanza in un bag negativo è negativa. Questa assunzione si adatta ad attività in cui una piccola regione può determinare il risultato complessivo. Altri problemi richiedono assunzioni collettive, come prevedere un'etichetta positiva solo quando diverse istanze mostrano prove a supporto.
Poiché il MIL apprende dalle etichette dei bag, è considerato una forma di debole supervisione. A differenza della normale image classification, non assume che l'immagine completa o ogni regione esprimano la classe assegnata. Ciò evita di copiare erroneamente l'etichetta di un bag su tutte le istanze.
Aggregazione e importanza delle istanze#
L'aggregazione deve gestire diverse dimensioni dei bag e dovrebbe di solito essere indipendente dall'ordine delle istanze. Le strategie comuni includono:
- Max pooling: Utilizza il segnale di istanza più forte. Corrisponde all'assunzione "almeno un'istanza positiva", ma può essere sensibile ai valori anomali.
- Mean pooling: Media le prove all'interno del bag. Funziona meglio quando molte istanze contribuiscono, ma può diluire prove positive rare.
- Attention pooling: Impara quanto fortemente ciascuna istanza debba influenzare il risultato. I pesi risultanti possono indicare regioni importanti, sebbene non siano garantiti come spiegazioni.
L'output aggregato viene convertito in un punteggio di bag, spesso utilizzando una funzione di probabilità come Softmax. Il training confronta questo punteggio con l'etichetta del bag e utilizza il backpropagation per aggiornare insieme l'encoder e l'aggregatore.
Il MIL ottimizza principalmente le predizioni a livello di bag. Anche quando un modello assegna un'alta importanza a particolari istanze, quei punteggi non sono automaticamente etichette di istanza affidabili o localizzazioni precise.
Applicazioni nel mondo reale#
-
Analisi delle immagini mediche: Una diapositiva di tessuto digitalizzata può contenere migliaia di patch, mentre la diagnosi disponibile si applica solo al paziente o alla diapositiva. Il MIL può elaborare le patch come istanze e prevedere se la diapositiva completa contenga evidenze di malattia. Questo è prezioso per l'medical image analysis perché tracciare confini dettagliati attorno a ogni regione anomala richiede tempo specialistico. Le NCI Genomic Data Commons AI resources descrivono immagini a diapositiva intera come input per la classificazione del cancro, il rilevamento delle feature e la previsione degli esiti. (gdc.cancer.gov)
-
Ispezione visiva industriale: Un componente fabbricato può essere fotografato da diverse angolazioni o registrato come una breve sequenza. Gli ispettori della qualità possono etichettare l'ispezione completa come "difettosa" senza identificare l'inquadratura esatta che contiene una crepa o una parte mancante. Il MIL può trattare le viste come un unico bag e apprendere quale evidenza visiva predice il guasto. Se in seguito diventano necessarie posizioni precise dei difetti, è possibile annotare istanze selezionate per l'object detection o l'instance segmentation.
Contesti di apprendimento correlati#
Il MIL differisce da diversi approcci strettamente correlati:
- La weak supervision è la categoria più ampia che copre etichette incomplete, rumorose o indirette. Il MIL utilizza specificamente etichette associate a bag di istanze.
- Il semi-supervised learning combina esempi etichettati e non etichettati. I bag del MIL sono etichettati, ma le loro singole istanze sono solitamente non etichettate.
- Il multi-label learning prevede diverse classi per un singolo esempio. Il MIL descrive come gli esempi sono raggruppati, quindi un sistema può essere sia multi-istanza che multi-etichetta.
- I Attention mechanisms determinano come le informazioni vengono pesate o combinate. Possono implementare l'aggregazione MIL ma non definiscono il MIL da soli.
- Object detection requires localized annotations such as bounding boxes. MIL can sometimes highlight likely regions, but bag-level training alone does not provide verified object locations.
Workflow pratico e valutazione#
Il seguente schema di inferenza utilizza un Ultralytics YOLO26 classification model per assegnare un punteggio a due istanze di immagine e applica l'aggregazione max. Dimostra il concetto di decisione del bag piuttosto che un modello MIL addestrato congiuntamente.
from ultralytics import YOLO
# Treat related images as instances within one bag
sources = [
"https://ultralytics.com/images/bus.jpg",
"https://ultralytics.com/images/zidane.jpg",
]
model = YOLO("yolo26n-cls.pt")
results = model(sources)
# Aggregate evidence for one target class across the bag
target_name = "minibus"
target_id = next(i for i, name in results[0].names.items() if name == target_name)
instance_scores = [float(result.probs.data[target_id]) for result in results]
bag_score = max(instance_scores)
print(f"{target_name} bag probability: {bag_score:.3f}")Un'implementazione MIL completa addestra un aggregatore consapevole del bag utilizzando le etichette dei bag. Ultralytics YOLO supporta i classification workflows standard, mentre è necessaria una logica MIL personalizzata per raggruppare le istanze e ottimizzare la loss a livello di bag.
I practitioner dovrebbero preservare i confini dei bag durante il batching, testare regole di aggregazione multiple e impedire che istanze correlate attraversino gli split del dataset. Strumenti come il GroupKFold cross-validation possono mantenere insieme patch dello stesso paziente, video o prodotto. Valuta precision and recall a livello di bag e aggiungi la valutazione a livello di istanza se la localizzazione è importante. L'Ultralytics Platform può supportare la gestione del dataset, l'annotazione, il training di modelli standard e il deployment quando una pipeline MIL viene combinata con componenti di detection, segmentation o classification.






