Vedere Metriche di valutazione per i modelli del flusso di lavoro di orchestrazione

Il set di dati è suddiviso in due parti: un set per il training e un set per i test. Il set di training viene usato per eseguire il training del modello, mentre il set di test viene usato come test per il modello dopo il training per calcolare le prestazioni e la valutazione del modello. Il set di test non viene introdotto nel modello tramite il processo di training per verificare che il modello venga testato sui nuovi dati.

La valutazione del modello viene attivata automaticamente dopo che è stato eseguito il training correttamente. Il processo di valutazione inizia usando il modello sottoposto a training per stimare gli intenti definiti dall'utente per le espressioni nel set di test e li confronta con i tag forniti (per stabilire una baseline di verità). I risultati vengono restituiti per consentire l’esame delle prestazioni del modello. Per la valutazione, il flusso di lavoro di orchestrazione usa le metriche seguenti:

  • Precisione: misura la precisione o l'accuratezza del modello. È il rapporto tra i positivi identificati correttamente (veri positivi) e tutti i positivi identificati. La metrica Precision rivela quante delle classi stimate sono etichettate correttamente.

    Precision = #True_Positive / (#True_Positive + #False_Positive)

  • Richiamo: misura la capacità del modello di stimare le classi positive effettive. È il rapporto tra i veri positivi stimati e ciò che è stato effettivamente contrassegnato. La metrica di richiamo rivela il numero di classi stimate corrette.

    Recall = #True_Positive / (#True_Positive + #False_Negatives)

  • Punteggio F1: il punteggio F1 è una funzione della precisione e del richiamo. È necessario quando si cerca un equilibrio tra precisione e richiamo.

    F1 Score = 2 * Precision * Recall / (Precision + Recall)

La precisione, il richiamo e il punteggio F1 vengono calcolati per:

  • Ogni intento separatamente (valutazione a livello di intento)
  • Per il modello collettivamente (valutazione a livello di modello).

Le definizioni di precisione, richiamo e valutazione sono le stesse per le valutazioni a livello di intento e a livello di modello. Tuttavia, i conteggi per Veri positivi, Falsi positivi e Falsi negativi possono variare. Si consideri ad esempio il testo seguente.

Esempio

  • Dare una risposta con grazie molte
  • Chiama il mio amico
  • Buongiorno
  • Buongiorno

Questi sono gli intenti usati: CLUEmail e Saluti

Il modello potrebbe eseguire le stime seguenti:

Espressione Intento stimato Intento effettivo
Dare una risposta con grazie molte CLUEmail CLUEmail
Chiama il mio amico Greeting CLUEmail
Buongiorno CLUEmail Greeting
Buongiorno Greeting Greeting

Valutazione a livello di intento per intento CLUEmail

Chiave Conteggio Spiegazione
Veri positivi 1 L'espressione 1 è stata stimata correttamente come CLUEmail.
Falsi positivi 1 L'espressione 3 è stata stimata erroneamente come CLUEmail.
Falsi negativi 1 L'espressione 2 è stata stimata erroneamente come Saluti.

Precisione = #True_Positive / (#True_Positive + #False_Positive) = 1 / (1 + 1) = 0.5

Richiamo = #True_Positive / (#True_Positive + #False_Negatives) = 1 / (1 + 1) = 0.5

Punteggio F1 = 2 * Precision * Recall / (Precision + Recall) = (2 * 0.5 * 0.5) / (0.5 + 0.5) = 0.5

Valutazione a livello di intento per intento Saluti

Chiave Conteggio Spiegazione
Veri positivi 1 L'espressione 4 è stata stimata correttamente come Saluti.
Falsi positivi 1 L'espressione 2 è stata stimata erroneamente come Saluti.
Falsi negativi 1 L'espressione 3 è stata stimata erroneamente come CLUEmail.

Precisione = #True_Positive / (#True_Positive + #False_Positive) = 1 / (1 + 1) = 0.5

Richiamo = #True_Positive / (#True_Positive + #False_Negatives) = 1 / (1 + 1) = 0.5

Punteggio F1 = 2 * Precision * Recall / (Precision + Recall) = (2 * 0.5 * 0.5) / (0.5 + 0.5) = 0.5

Valutazione a livello di modello per il modello collettivo

Chiave Conteggio Spiegazione
Veri positivi 2 Somma di Veri positivi per tutti gli intenti
Falsi positivi 2 Somma di Falsi positivi per tutti gli intenti
Falsi negativi 2 Somma di Falsi negativi per tutti gli intenti

Precisione = #True_Positive / (#True_Positive + #False_Positive) = 2 / (2 + 2) = 0.5

Richiamo = #True_Positive / (#True_Positive + #False_Negatives) = 2 / (2 + 2) = 0.5

Punteggio F1 = 2 * Precision * Recall / (Precision + Recall) = (2 * 0.5 * 0.5) / (0.5 + 0.5) = 0.5

Matrice di confusione

Una matrice di confusione è una matrice N x N usata per la valutazione delle prestazioni del modello, dove N è il numero di finalità. La matrice confronta i tag effettivi con i tag stimati dal modello. Ciò offre una visione olistica delle prestazioni del modello e dei tipi di errori che sta facendo.

È possibile usare la matrice di confusione per identificare gli intenti troppi vicini tra loro che vengono spesso erroneamente classificati (ambiguità). In questo caso, prendere in considerazione l'unione di questi intenti. Se non è possibile, valutare l’assegnazione di etichette di entrambi gli intenti per facilitare la loro differenziazione nel modello.

È possibile usare la matrice di confusione per calcolare le metriche di valutazione a livello di modello:

  • Il vero positivo del modello è la somma dei veri positivi di tutti gli intenti.
  • Il falso positivo del modello è la somma di falsi positivi di tutti gli intenti.
  • Il falso negativo del modello è la somma di falsi negativi di tutti gli intenti.

Passaggi successivi

Eseguire il training di un modello in Language Studio