Glossario

Apprendimento attivo

Scopri come l'apprendimento attivo ottimizza l'apprendimento automatico con un minor numero di etichette, riducendo i costi e aumentando l'accuratezza nelle applicazioni AI del mondo reale.

Addestra i modelli YOLO semplicemente
con Ultralytics HUB

Per saperne di più

L'apprendimento attivo è un approccio specializzato nell'ambito dell'apprendimento automatico in cui un algoritmo interroga interattivamente una fonte di dati per ottenere gli output desiderati per nuovi punti dati. Questo metodo è particolarmente utile quando si ha a che fare con grandi insiemi di dati non etichettati in cui l'etichettatura manuale è poco pratica o costosa. Selezionando strategicamente i punti dati da etichettare, l'apprendimento attivo mira a ottenere un'elevata precisione del modello con un numero inferiore di esempi etichettati rispetto ai tradizionali metodi di apprendimento supervisionato. Aiuta a ridurre i costi di etichettatura e migliora l'accuratezza concentrandosi sui punti chiave dei dati.

Concetti fondamentali e metodologia

Nell'apprendimento attivo, il modello inizia con un piccolo insieme di dati etichettati e seleziona iterativamente i punti di dati più informativi per l'etichettatura da parte di un oracolo (ad esempio, un annotatore umano). Il modello si riaddestra quindi sui dati appena etichettati, migliorando le sue prestazioni a ogni iterazione. Questo processo continua fino a quando non si raggiunge il livello di accuratezza desiderato o si esaurisce il budget per l'etichettatura.

La chiave per un apprendimento attivo efficace sta nella strategia utilizzata per selezionare i punti dati da etichettare. Le strategie più comuni includono:

  • Campionamento dell'incertezza: Il modello seleziona i punti di dati in cui è meno sicuro delle sue previsioni. Ad esempio, in un compito di classificazione, il modello potrebbe scegliere i punti di dati con probabilità vicine al limite decisionale.
  • Interrogazione per comitato: Un comitato di modelli diversi viene addestrato sui dati etichettati e i punti di dati sui quali i membri del comitato sono più in disaccordo vengono selezionati per l'etichettatura. Questo approccio mira a ridurre la varianza del modello concentrandosi sulle aree ad alta incertezza.
  • Variazione prevista del modello: Il modello seleziona i punti di dati che si prevede causeranno il maggior cambiamento nei parametri del modello se le loro etichette fossero note. Questa strategia mira a massimizzare il guadagno di informazioni da ogni esempio etichettato.
  • Riduzione dell'errore previsto: Il modello seleziona i punti dati che si prevede riducano maggiormente l'errore di previsione complessivo. Questo approccio mira direttamente a migliorare le prestazioni del modello su dati non visti.
  • Riduzione della varianza: Questo metodo si concentra sulla riduzione della varianza delle previsioni del modello selezionando punti dati rappresentativi della distribuzione dei dati sottostanti.

Apprendimento attivo vs. altri paradigmi di apprendimento

L'apprendimento attivo si differenzia in modo significativo da altri approcci all'apprendimento automatico come l'apprendimento supervisionato, l'apprendimento non supervisionato e l'apprendimento semi-supervisionato. Nell'apprendimento supervisionato, il modello viene addestrato su un insieme fisso di dati etichettati, mentre nell'apprendimento non supervisionato il modello impara da dati non etichettati. L'apprendimento semi-supervisionato utilizza una combinazione di dati etichettati e non etichettati ma, a differenza dell'apprendimento attivo, non richiede attivamente le etichette.

L'apprendimento attivo è particolarmente vantaggioso quando i dati etichettati sono scarsi o costosi da ottenere, in quanto consente al modello di raggiungere un'elevata precisione con un numero inferiore di esempi etichettati. Questo la rende una tecnica preziosa negli scenari in cui l'etichettatura dei dati è un collo di bottiglia.

Applicazioni del mondo reale

L'apprendimento attivo ha trovato applicazione in diversi ambiti, tra cui:

  • Classificazione di immagini e video: L'apprendimento attivo può essere utilizzato per addestrare in modo efficiente i modelli per la classificazione di immagini e video. Ad esempio, in uno scenario di imaging medico, un sistema di apprendimento attivo può selezionare le immagini mediche più informative da etichettare per un radiologo, riducendo l'onere di etichettatura e migliorando l'accuratezza diagnostica. Per saperne di più sulla Vision AI nel settore sanitario, visita il sito web Ultralytics .
  • Elaborazione del linguaggio naturale: L'apprendimento attivo può essere applicato a compiti come la classificazione di testi, il riconoscimento di entità denominate e l'analisi del sentimento. Etichettando selettivamente i campioni di testo più informativi, l'apprendimento attivo può migliorare le prestazioni dei modelli NLP con meno dati etichettati. Per ulteriori dettagli, esplora l'elaborazione del linguaggio naturale (NLP).
  • Riconoscimento del parlato: L'apprendimento attivo può essere utilizzato per addestrare i modelli di riconoscimento vocale selezionando i campioni audio più difficili da trascrivere. Questo approccio può migliorare la resistenza del modello alle variazioni di accento, rumore e stile di voce.

Casi d'uso esemplificativi

  1. Guida autonoma: Nello sviluppo delle auto a guida autonoma, l'apprendimento attivo può essere utilizzato per addestrare modelli di rilevamento degli oggetti che identificano pedoni, veicoli e altri oggetti in flussi video in tempo reale. Il sistema di apprendimento attivo può selezionare i fotogrammi più ambigui o difficili da annotare manualmente, assicurando che il modello funzioni bene in situazioni diverse e critiche per la sicurezza.
  2. Controllo della qualità della produzione: L'apprendimento attivo può essere impiegato per addestrare modelli in grado di rilevare i difetti dei prodotti fabbricati. Etichettando selettivamente le immagini dei prodotti con potenziali difetti, il sistema di apprendimento attivo può aiutare a costruire un modello di rilevamento dei difetti altamente accurato con un minimo sforzo di etichettatura, riducendo i costi di ispezione e migliorando la qualità dei prodotti. Per saperne di più sull'IA nel settore manifatturiero.

Strumenti e strutture

Sono disponibili diversi strumenti e strutture per implementare l'apprendimento attivo, tra cui:

  • modAL: un framework di apprendimento attivo per Python3, progettato per essere modulare ed estensibile. Supporta diverse strategie di apprendimento attivo e può essere facilmente integrato con i modelli di scikit-learn.
  • libact: Una libreria Python per l'apprendimento attivo che supporta scenari di apprendimento attivo basati su pool. Fornisce diverse strategie di interrogazione e permette agli utenti di definire anche strategie personalizzate.
  • ALiPy: Un toolbox Python per l'apprendimento attivo che offre un'ampia gamma di strategie e supporta l'apprendimento attivo basato su pool e flussi.

Conclusione

L'apprendimento attivo è una tecnica potente per addestrare modelli di apprendimento automatico con dati etichettati limitati. Selezionando strategicamente i punti dati più informativi per l'etichettatura, l'apprendimento attivo può raggiungere un'elevata precisione riducendo i costi e gli sforzi associati all'etichettatura dei dati. Questo approccio ha trovato applicazione in diversi ambiti, tra cui la computer vision (CV), l'elaborazione del linguaggio naturale e il riconoscimento vocale. Con la continua crescita del volume di dati non etichettati, l'apprendimento attivo avrà un ruolo sempre più importante nel consentire un apprendimento automatico efficiente ed efficace. Esplora il blog di Ultralytics per ulteriori approfondimenti sulle soluzioni di AI all'avanguardia. Puoi iniziare ad addestrare modelli utilizzando il Ultralytics HUB, una piattaforma senza codice per l'addestramento di modelli Ultralytics YOLO personalizzati.

Leggi tutto