Vai al contenuto

Guida alla verifica dei modelli

Introduzione

Dopo aver addestrato e valutato il tuo modello, è il momento di testarlo. Il test del modello consiste nel valutare le sue prestazioni in scenari reali. I test prendono in considerazione fattori come l'accuratezza, l'affidabilità, la correttezza e la facilità di comprensione delle decisioni del modello. L'obiettivo è assicurarsi che il modello funzioni come previsto, fornisca i risultati attesi e si adatti all'obiettivo generale della tua applicazione o del tuo progetto.

Il test del modello è abbastanza simile alla valutazione del modello, ma si tratta di due fasi distinte in un progetto di computer vision. La valutazione del modello prevede metriche e grafici per valutarne l'accuratezza. D'altra parte, il test del modello verifica se il comportamento appreso dal modello corrisponde alle aspettative. In questa guida esploreremo le strategie per testare i tuoi modelli di computer vision.

Test del modello Vs. Valutazione del modello

Per prima cosa, cerchiamo di capire la differenza tra valutazione e test del modello con un esempio.

Supponiamo che tu abbia addestrato un modello di computer vision per riconoscere cani e gatti e che tu voglia distribuire questo modello in un negozio di animali per monitorare gli animali. Durante la fase di valutazione del modello, utilizzi un set di dati etichettati per calcolare parametri come accuratezza, precisione, richiamo e punteggio F1. Ad esempio, il modello potrebbe avere un'accuratezza del 98% nel distinguere tra cani e gatti in un determinato set di dati.

Dopo la valutazione, testa il modello utilizzando le immagini di un negozio di animali per verificare la sua capacità di identificare cani e gatti in condizioni più varie e realistiche. Verifichi se è in grado di etichettare correttamente cani e gatti in movimento, in condizioni di illuminazione diverse o parzialmente oscurati da oggetti come giocattoli o mobili. Il test del modello verifica che il modello si comporti come previsto al di fuori dell'ambiente di valutazione controllato.

Preparazione per il test del modello

I modelli di computer vision apprendono da insiemi di dati rilevando modelli, facendo previsioni e valutando le loro prestazioni. Questi set di dati vengono solitamente suddivisi in set di allenamento e set di test per simulare le condizioni del mondo reale. I dati di addestramento insegnano al modello, mentre quelli di test ne verificano l'accuratezza.

Ecco due punti da tenere a mente prima di testare il tuo modello:

  • Rappresentazione realistica: I dati di prova non visti in precedenza dovrebbero essere simili a quelli che il modello dovrà gestire una volta implementato. Questo aiuta a comprendere in modo realistico le capacità del modello.
  • Dimensioni sufficienti: La dimensione del dataset di test deve essere sufficientemente grande da fornire indicazioni affidabili sulle prestazioni del modello.

Prova il tuo modello di visione computerizzata

Ecco i passi fondamentali da compiere per testare il tuo modello di computer vision e comprenderne le prestazioni.

  • Esegui previsioni: Usa il modello per fare previsioni sul set di dati di prova.
  • Confronta le previsioni: Verifica la corrispondenza tra le previsioni del modello e le etichette reali (verità di base).
  • Calcolare le metriche delle prestazioni: Calcola metriche come l'accuratezza, la precisione, il richiamo e il punteggio F1 per capire i punti di forza e di debolezza del modello. I test si concentrano sul modo in cui queste metriche riflettono le prestazioni del mondo reale.
  • Visualizzare i risultati: Crea supporti visivi come matrici di confusione e curve ROC. Questi ti aiutano a individuare le aree specifiche in cui il modello potrebbe non funzionare bene nelle applicazioni pratiche.

Successivamente, è possibile analizzare i risultati dei test:

  • Immagini mal classificate: Identifica ed esamina le immagini che il modello ha classificato in modo errato per capire dove sbaglia.
  • Analisi degli errori: Esegui un'analisi approfondita degli errori per capire i tipi di errori (ad esempio, falsi positivi o falsi negativi) e le loro potenziali cause.
  • Bias e correttezza: Verifica che non ci siano pregiudizi nelle previsioni del modello. Assicurati che il modello abbia le stesse prestazioni in diversi sottoinsiemi di dati, soprattutto se include attributi sensibili come razza, sesso o età.

Verifica il tuo modello YOLOv8

Per testare il tuo modello YOLOv8 , puoi utilizzare la modalità di convalida. È un modo semplice per capire i punti di forza del modello e le aree da migliorare. Inoltre, dovrai formattare correttamente il tuo set di dati di prova per YOLOv8. Per maggiori dettagli su come utilizzare la modalità di convalida, consulta la pagina dei documenti sulla convalida del modello.

Utilizzo di YOLOv8 per predire su immagini di prova multiple

Se vuoi testare il tuo modello addestrato di YOLOv8 su più immagini archiviate in una cartella, puoi farlo facilmente in un'unica soluzione. Invece di usare la modalità di convalida, che di solito viene utilizzata per valutare le prestazioni del modello su un set di convalida e fornire metriche dettagliate, potresti voler vedere le previsioni su tutte le immagini del tuo set di test. Per questo puoi utilizzare la modalità di previsione.

Differenza tra le modalità di convalida e di previsione

  • Modalità di convalida: Viene utilizzata per valutare le prestazioni del modello confrontando le previsioni con le etichette conosciute (verità di base). Fornisce metriche dettagliate come accuratezza, precisione, richiamo e punteggio F1.
  • Modalità Predizione: Si usa per eseguire il modello su dati nuovi e non visti per generare previsioni. Non fornisce parametri dettagliati sulle prestazioni, ma ti permette di vedere come si comporta il modello su immagini reali.

Eseguire le previsioni di YOLOv8 senza allenamento personalizzato

Se sei interessato a testare il modello di base di YOLOv8 per capire se può essere utilizzato per la tua applicazione senza un addestramento personalizzato, puoi utilizzare la modalità di previsione. Sebbene il modello sia pre-addestrato su set di dati come COCO, l'esecuzione di previsioni su un tuo set di dati può darti una rapida idea di quanto potrebbe funzionare nel tuo contesto specifico.

Overfitting e Underfitting nell'apprendimento automatico

Quando si testa un modello di apprendimento automatico, soprattutto nella computer vision, è importante fare attenzione all'overfitting e all'underfitting. Questi problemi possono influenzare in modo significativo il funzionamento del modello con i nuovi dati.

Overfitting

L'overfitting si verifica quando il modello apprende troppo bene i dati di addestramento, compresi il rumore e i dettagli che non si generalizzano ai nuovi dati. Nella visione computerizzata, questo significa che il tuo modello potrebbe andare benissimo con le immagini di addestramento ma faticare con quelle nuove.

Segni di overfitting

  • Alta precisione di addestramento, bassa precisione di convalida: se il tuo modello ottiene ottimi risultati sui dati di addestramento ma scarsi sui dati di convalida o di test, è probabile che si tratti di overfitting.
  • Ispezione visiva: A volte si può notare un overfitting se il modello è troppo sensibile a piccole modifiche o a dettagli irrilevanti nelle immagini.

Underfitting

L'underfitting si verifica quando il modello non riesce a catturare i modelli sottostanti nei dati. Nella visione computerizzata, un modello poco adatto potrebbe anche non riconoscere correttamente gli oggetti nelle immagini di addestramento.

Segni di sottoadattamento

  • Bassa precisione di addestramento: se il tuo modello non riesce a raggiungere un'elevata precisione sul set di addestramento, potrebbe essere in underfitting.
  • Misclassificazione visiva: L'incapacità costante di riconoscere caratteristiche o oggetti evidenti suggerisce un adattamento insufficiente.

Bilanciare l'overfitting e l'underfitting

Il segreto è trovare un equilibrio tra overfitting e underfitting. Idealmente, un modello dovrebbe ottenere buoni risultati sia sui set di dati di formazione che su quelli di convalida. Il monitoraggio regolare delle prestazioni del modello attraverso metriche e ispezioni visive, insieme all'applicazione delle giuste strategie, può aiutarti a ottenere i migliori risultati.

Panoramica sull'overfitting e sull'underfitting

Perdita di dati nella visione artificiale e come evitarla

Durante il test del modello, è importante tenere presente la perdita di dati. La perdita di dati si verifica quando informazioni esterne al dataset di addestramento vengono accidentalmente utilizzate per addestrare il modello. Il modello può sembrare molto accurato durante l'addestramento, ma non funzionerà bene su dati nuovi e non visti quando si verifica la perdita di dati.

Perché si verificano le perdite di dati

La perdita di dati può essere difficile da individuare e spesso deriva da pregiudizi nascosti nei dati di addestramento. Ecco alcuni modi comuni in cui possono verificarsi nella computer vision:

  • Sbilanciamento della telecamera: angolazioni diverse, illuminazione, ombre e movimenti della telecamera possono introdurre modelli indesiderati.
  • Sovrapposizione: loghi, timestamp o altre sovrapposizioni nelle immagini possono fuorviare il modello.
  • Bias dei font e degli oggetti: font specifici o oggetti che compaiono frequentemente in determinate classi possono influenzare l'apprendimento del modello.
  • Bias spaziale: gli squilibri tra primo piano e sfondo, le distribuzioni dei rettangoli di selezione e le posizioni degli oggetti possono influenzare la formazione.
  • Bias di etichetta e di dominio: etichette errate o spostamenti dei tipi di dati possono portare a perdite.

Rilevare le fughe di dati

Per individuare le perdite di dati, puoi:

  • Controlla le prestazioni: Se i risultati del modello sono sorprendentemente buoni, potrebbe avere delle perdite.
  • Guarda l'importanza delle funzioni: Se una caratteristica è molto più importante di altre, potrebbe indicare una perdita.
  • Ispezione visiva: Verifica che le decisioni del modello abbiano un senso intuitivo.
  • Verifica la separazione dei dati: Assicurati che i dati siano stati divisi correttamente prima di qualsiasi elaborazione.

Evitare la fuga di dati

Per evitare la perdita di dati, utilizza un set di dati diversificato con immagini o video provenienti da telecamere e ambienti diversi. Esamina attentamente i tuoi dati e verifica che non ci siano pregiudizi nascosti, come ad esempio che tutti i campioni positivi siano stati presi in un determinato momento della giornata. Evitare la perdita di dati ti aiuterà a rendere i tuoi modelli di computer vision più affidabili ed efficaci nelle situazioni reali.

Cosa succede dopo il test del modello

Dopo aver testato il tuo modello, i passi successivi dipendono dai risultati. Se il tuo modello funziona bene, puoi implementarlo in un ambiente reale. Se i risultati non sono soddisfacenti, dovrai apportare dei miglioramenti. Ciò potrebbe comportare l'analisi degli errori, la raccolta di altri dati, il miglioramento della qualità dei dati, la regolazione degli iperparametri e la riqualificazione del modello.

Partecipa alla conversazione sull'intelligenza artificiale

Entrare a far parte di una comunità di appassionati di computer vision può aiutare a risolvere i problemi e a imparare in modo più efficiente. Ecco alcuni modi per entrare in contatto, cercare aiuto e condividere i tuoi pensieri.

Risorse comunitarie

Documentazione ufficiale

Queste risorse ti aiuteranno a superare le sfide e a rimanere aggiornato sulle ultime tendenze e pratiche della comunità della computer vision.

In sintesi

La costruzione di modelli di computer vision affidabili si basa su test rigorosi del modello. Testando il modello con dati inediti, possiamo analizzarlo e individuare punti deboli come l'overfitting e la perdita di dati. Risolvere questi problemi prima della distribuzione aiuta il modello a funzionare bene nelle applicazioni reali. È importante ricordare che il test del modello è fondamentale quanto la sua valutazione per garantirne il successo e l'efficacia a lungo termine.

DOMANDE FREQUENTI

Quali sono le differenze principali tra la valutazione e il test dei modelli nella computer vision?

La valutazione e il test del modello sono fasi distinte di un progetto di computer vision. La valutazione del modello prevede l'utilizzo di un set di dati etichettati per calcolare metriche come l'accuratezza, la precisione, il richiamo e il punteggio F1, fornendo informazioni sulle prestazioni del modello con un set di dati controllato. Il test del modello, invece, valuta le prestazioni del modello in scenari reali applicandolo a nuovi dati non visti, assicurando che il comportamento appreso dal modello sia in linea con le aspettative al di fuori dell'ambiente di valutazione. Per una guida dettagliata, consulta le fasi di un progetto di computer vision.

Come posso testare il mio modello Ultralytics YOLOv8 su più immagini?

Per testare il tuo modello Ultralytics YOLOv8 su più immagini, puoi utilizzare la modalità di previsione. Questa modalità ti permette di eseguire il modello su dati nuovi e non visti per generare previsioni senza fornire metriche dettagliate. Questa modalità è ideale per testare le prestazioni nel mondo reale su set di immagini più grandi archiviati in una cartella. Per valutare le metriche delle prestazioni, usa invece la modalità di convalida.

Cosa devo fare se il mio modello di computer vision mostra segni di overfitting o underfitting?

Per risolvere il problema dell 'overfitting:

  • Tecniche di regolarizzazione come il dropout.
  • Aumenta la dimensione del dataset di allenamento.
  • Semplificare l'architettura del modello.

Per risolvere il problema dell'underfitting:

  • Usa un modello più complesso.
  • Fornisci funzioni più rilevanti.
  • Aumenta le iterazioni di allenamento o le epoche.

Rivedere le immagini mal classificate, eseguire un'analisi approfondita degli errori e monitorare regolarmente le metriche delle prestazioni per mantenere un equilibrio. Per maggiori informazioni su questi concetti, esplora la nostra sezione su Overfitting e Underfitting.

Come posso rilevare ed evitare la perdita di dati nella computer vision?

Per rilevare la fuga di dati:

  • Verifica che le prestazioni del test non siano insolitamente elevate.
  • Controlla l'importanza delle caratteristiche per ottenere informazioni inaspettate.
  • Rivedere in modo intuitivo le decisioni del modello.
  • Assicurati che la divisione dei dati sia corretta prima dell'elaborazione.

Per evitare la perdita di dati:

  • Utilizza diversi set di dati con vari ambienti.
  • Esamina attentamente i dati per individuare eventuali pregiudizi nascosti.
  • Assicurati che non ci siano sovrapposizioni di informazioni tra gli insiemi di formazione e di test.

Per strategie dettagliate sulla prevenzione della perdita di dati, consulta la nostra sezione sulla perdita di dati nella Computer Vision.

Quali sono i passi da compiere dopo aver testato il mio modello di computer vision?

Dopo il test, se le prestazioni del modello soddisfano gli obiettivi del progetto, procedi con la distribuzione. Se i risultati non sono soddisfacenti, prendi in considerazione:

  • Analisi degli errori.
  • Raccogliere dati più diversificati e di alta qualità.
  • Regolazione dell'iperparametro.
  • Riaddestramento del modello.

Ottieni informazioni dalla sezione Test del modello vs. Valutazione del modello. La sezione Valutazione del modello consente di perfezionare e migliorare l'efficacia del modello nelle applicazioni reali.

Come posso eseguire le previsioni di YOLOv8 senza una formazione personalizzata?

Puoi eseguire delle previsioni utilizzando il modello preaddestrato di YOLOv8 sul tuo set di dati per verificare se è adatto alle esigenze della tua applicazione. Utilizza la modalità di previsione per avere un'idea rapida dei risultati delle prestazioni senza immergerti nella formazione personalizzata.



Creato 2024-07-04, Aggiornato 2024-07-05
Autori: glenn-jocher (2), abirami-vina (1)

Commenti