Condividi tramite


Metriche di valutazione in modelli di Riconoscimento entità denominata personalizzata

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 assicurarsi 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 le entità definite dall'utente per i documenti nel set di test e li confronta con i tag di dati forniti (per stabilire una baseline di verità). I risultati vengono restituiti in modo da poter esaminare le prestazioni del modello. Per la valutazione, il Riconoscimento entità denominata 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 entità 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 gli elementi contrassegnati. La metrica di richiamo indica il numero di entità stimate che sono corrette.

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

  • Punteggio F1: il punteggio F1 è una funzione usata quando si cerca un equilibrio tra Precision e Recall.

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

Note

La precisione, il richiamo e il punteggio F1 vengono calcolati separatamente per ogni entità (valutazione a livello di entità ) e per il modello collettivamente (valutazione a livello di modello ).

Metriche di valutazione a livello di modello e a livello di entità

La precisione, il richiamo e il punteggio F1 vengono calcolati separatamente per ogni entità (valutazione a livello di entità) e collettivamente per il modello (valutazione a livello di modello).

Le definizioni di precisione, richiamo e valutazione sono le stesse per le valutazioni a livello di entità 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

La prima parte di questo contratto è John Smith, residente di 5678 Main Rd., Città di Frederick, stato di Nebraska. E la seconda parte è Forrest Ray, residente di 123-345 Integer Rd., Città di Corona, stato Nuovo Messico. C'è anche Fannie Thomas residente di 7890 River Road, città di Colorado Springs, Stato del Colorado.

Il modello che estrae entità da questo testo potrebbe avere le stime seguenti:

Entità Stimato come Tipo effettivo
Giorgio Cavaglieri Persona Persona
Frederick Persona city
Forrest city Persona
Fannie Thomas Persona Persona
Colorado Springs city city

Valutazione a livello di entità per l'entità persona

Il modello avrà la seguente valutazione a livello di entità seguente per l'entità persona:

Chiave Conteggio Spiegazione
Vero positivo 2 John Smith e Fannie Thomas sono stati definiti correttamente come persona.
Falso positivo 1 Frederick era erroneamente previsto come persona quando dovrebbe essere città.
Falso negativo 1 Forrest è stato predetto erroneamente come città quando dovrebbe essere persona.
  • Precisione: #True_Positive / (#True_Positive + #False_Positive) = 2 / (2 + 1) = 0.67
  • Richiamo: #True_Positive / (#True_Positive + #False_Negatives) = 2 / (2 + 1) = 0.67
  • Punteggio F1: 2 * Precision * Recall / (Precision + Recall) = (2 * 0.67 * 0.67) / (0.67 + 0.67) = 0.67

Valutazione a livello di entità per l'entità città

Il modello avrà la seguente valutazione a livello di entità seguente per l'entità città:

Chiave Conteggio Spiegazione
Vero positivo 1 Colorado Springs è stata definita correttamente come città.
Falso positivo 1 Forrest è stato predetto erroneamente come città quando dovrebbe essere persona.
Falso negativo 1 Frederick era erroneamente previsto come persona quando dovrebbe essere città.
  • 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

Il modello avrà la valutazione seguente per il modello nel suo complesso:

Chiave Conteggio Spiegazione
Vero positivo 3 John Smith e Fannie Thomas sono stati definiti correttamente come persona. Colorado Springs è stata definita correttamente come città. Questo numero è la somma dei veri positivi per tutte le entità.
Falso positivo 2 Forrest è stato predetto erroneamente come città quando dovrebbe essere persona. Frederick era erroneamente previsto come persona quando dovrebbe essere città. Questo numero è la somma di falsi positivi per tutte le entità.
Falso negativo 2 Forrest è stato predetto erroneamente come città quando dovrebbe essere persona. Frederick era erroneamente previsto come persona quando dovrebbe essere città. Questo numero è la somma di falsi negativi per tutte le entità.
  • Precisione = #True_Positive / (#True_Positive + #False_Positive) = 3 / (3 + 2) = 0.6
  • Richiamo = #True_Positive / (#True_Positive + #False_Negatives) = 3 / (3 + 2) = 0.6
  • Punteggio F1 = 2 * Precision * Recall / (Precision + Recall) = (2 * 0.6 * 0.6) / (0.6 + 0.6) = 0.6

Interpretazione delle metriche di valutazione a livello di entità

Quindi cosa significa effettivamente avere una precisione elevata o un richiamo elevato per una determinata entità?

Richiamo Precision Interpretazione
Alto Alto Il modello ha identificato l'entità.
Basso Alto Il modello non è sempre in grado di estrarre questa entità, ma quando lo fa è con elevata attendibilità.
Alto Basso Il modello estrae bene questa entità, ma dispone di bassa attendibilità poiché a volte viene estratta come un altro tipo.
Basso Basso Il modello non identifica questo tipo di entità perché normalmente non viene estratto. Quando lo è, non lo è con grande sicurezza.

Materiale sussidiario

Dopo aver eseguito il training del modello, vengono visualizzate alcune indicazioni e consigli su come migliorare il modello. È consigliabile un modello che copre tutti i punti della sezione indicazioni.

  • Il set di training contiene dati sufficienti: quando un tipo di entità ha meno di 15 esempi etichettati nei dati di training, l'accuratezza del modello diminuisce. Questo risultato si verifica perché manca un'esposizione sufficiente a tali casi. In questo caso, prendere in considerazione l'aggiunta di altri dati etichettati nel set di training. Per materiale sussidiario, vedere la scheda distribuzione dei dati.

  • Tutti i tipi di entità sono presenti nel set di test: quando i dati di test non dispongono di istanze etichettate per un tipo di entità, le prestazioni di test del modello possono diventare meno complete a causa di scenari non verificati. Per materiale sussidiario, vedere la scheda distribuzione dei dati del set di dati.

  • I tipi di entità sono bilanciati all'interno di set di training e test: quando la distorsione del campionamento causa una rappresentazione imprecisa della frequenza di un tipo di entità, può causare una minore accuratezza a causa del modello che prevede che il tipo di entità si verifichi troppo spesso o troppo poco. Per materiale sussidiario, vedere la scheda distribuzione dei dati.

  • I tipi di entità vengono distribuiti uniformemente tra set di training e di test: quando la combinazione di tipi di entità non corrisponde tra set di training e set di test, può causare una minore accuratezza dei test a causa del training del modello in modo diverso rispetto al modo in cui viene testato. Per materiale sussidiario, vedere la scheda distribuzione dei dati.

  • I tipi di entità nel set di training non sono chiaramente distinti: quando i dati di training sono simili per più tipi di entità, l’accuratezza può essere minore perché i tipi di entità possono essere spesso erroneamente classificati tra loro. Esaminare i tipi di entità seguenti e valutare la possibilità di unirli se sono simili. In caso contrario, aggiungere altri esempi per distinguerli meglio l'uno dall'altro. Per materiale sussidiario, è possibile controllare la matrice di confusione.

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 entità. La matrice confronta le etichette previste con quelle stimate dal modello. Questa matrice offre una visione olistica delle prestazioni del modello e dei tipi di errori che sta facendo.

È possibile usare la matrice di confusione per identificare le entità troppo vicine tra loro che vengono spesso erroneamente classificate (ambiguità). In questo caso, prendere in considerazione l'unione di questi tipi di entità. Se non è possibile, valutare l’assegnazione di etichette di entrambe le entità a più documenti per facilitare la loro differenziazione nel modello.

La diagonale evidenziata nell'immagine seguente è l'entità stimata correttamente, in cui il tag stimato corrisponde al tag effettivo.

Screenshot che mostra un esempio di matrice di confusione.

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

  • I valori in diagonale sono i valori veri positivi di ogni entità.
  • La somma dei valori nelle righe dell’entità (esclusa la diagonale) è il falso positivo del modello.
  • La somma dei valori nelle colonne dell’entità (esclusa la diagonale) è il falso negativo del modello.

Allo stesso modo:

  • Il vero positivo del modello è la somma dei veri positivi di tutte le entità.
  • Il falso positivo del modello è la somma di falsi positivi di tutte le entità.
  • Il falso negativo del modello è la somma di falsi negativi di tutte le entità.

Passaggi successivi

Eseguire il training di un modello