Metrische evaluatiegegevens voor indelingswerkstroommodellen
Uw gegevensset is onderverdeeld in twee delen: een set voor training en een set voor testen. De trainingsset wordt gebruikt om het model te trainen, terwijl de testset wordt gebruikt als test voor het model na de training om de prestaties en evaluatie van het model te berekenen. De testset wordt niet via het trainingsproces geïntroduceerd in het model om ervoor te zorgen dat het model wordt getest op nieuwe gegevens.
Modelevaluatie wordt automatisch geactiveerd nadat de training is voltooid. Het evaluatieproces begint met het getrainde model om door de gebruiker gedefinieerde intenties voor uitingen in de testset te voorspellen en vergelijkt deze met de opgegeven tags (waarmee een basislijn van waarheid wordt vastgesteld). De resultaten worden geretourneerd, zodat u de prestaties van het model kunt bekijken. Voor evaluatie gebruikt de indelingswerkstroom de volgende metrische gegevens:
Precisie: meet hoe nauwkeurig/nauwkeurig uw model is. Dit is de verhouding tussen de correct geïdentificeerde positieven (terecht-positieven) en alle geïdentificeerde positieven. De precisiemetrie geeft aan hoeveel van de voorspelde klassen correct zijn gelabeld.
Precision = #True_Positive / (#True_Positive + #False_Positive)
Relevante overeenkomsten: meet het vermogen van het model om werkelijke positieve klassen te voorspellen. Het is de verhouding tussen de voorspelde terecht-positieven en wat daadwerkelijk is getagd. De relevante metrische gegevens geven aan hoeveel van de voorspelde klassen juist zijn.
Recall = #True_Positive / (#True_Positive + #False_Negatives)
F1-score: De F1-score is een functie van Precisie en Relevante overeenkomsten. Dit is nodig wanneer u een balans zoekt tussen Precisie en Relevante overeenkomsten.
F1 Score = 2 * Precision * Recall / (Precision + Recall)
Precisie, relevante overeenkomsten en F1-score worden berekend voor:
- Elke intentie afzonderlijk (evaluatie op intentieniveau)
- Voor het model gezamenlijk (evaluatie op modelniveau).
De definities van precisie, relevante overeenkomsten en evaluatie zijn hetzelfde voor evaluaties op intentieniveau en modelniveau. De aantallen voor terecht-positieven, fout-positieven en fout-negatieven kunnen echter verschillen. Denk bijvoorbeeld aan de volgende tekst.
Opmerking
- Maak een antwoord met hartelijk dank
- Bel mijn vriend
- Hello (Hallo)
- Goedemorgen
Dit zijn de intenties die worden gebruikt: CLUEmail en Greeting
Het model kan de volgende voorspellingen doen:
Uiting | Voorspelde intentie | Werkelijke intentie |
---|---|---|
Maak een antwoord met hartelijk dank | CLUEmail | CLUEmail |
Bel mijn vriend | Begroeting | CLUEmail |
Hello (Hallo) | CLUEmail | Begroeting |
Goedemorning | Begroeting | Begroeting |
Evaluatie op intentieniveau voor CLUEmail-intentie
Sleutel | Tellen | Uitleg |
---|---|---|
Terecht positief | 1 | Utterance 1 werd correct voorspeld als CLUEmail. |
Fout-positief | 1 | Utterance 3 werd per ongeluk voorspeld als CLUEmail. |
Fout-negatief | 1 | Utterance 2 werd per ongeluk voorspeld als Begroeting. |
Precisie = #True_Positive / (#True_Positive + #False_Positive) = 1 / (1 + 1) = 0.5
Herinneren = #True_Positive / (#True_Positive + #False_Negatives) = 1 / (1 + 1) = 0.5
F1-score = 2 * Precision * Recall / (Precision + Recall) = (2 * 0.5 * 0.5) / (0.5 + 0.5) = 0.5
Evaluatie op intentieniveau voor begroetingsintentie
Sleutel | Tellen | Uitleg |
---|---|---|
Terecht positief | 1 | Utterance 4 werd correct voorspeld als Begroeting. |
Fout-positief | 1 | Utterance 2 werd per ongeluk voorspeld als Begroeting. |
Fout-negatief | 1 | Utterance 3 werd per ongeluk voorspeld als CLUEmail. |
Precisie = #True_Positive / (#True_Positive + #False_Positive) = 1 / (1 + 1) = 0.5
Herinneren = #True_Positive / (#True_Positive + #False_Negatives) = 1 / (1 + 1) = 0.5
F1-score = 2 * Precision * Recall / (Precision + Recall) = (2 * 0.5 * 0.5) / (0.5 + 0.5) = 0.5
Evaluatie op modelniveau voor het collectieve model
Sleutel | Tellen | Uitleg |
---|---|---|
Terecht positief | 2 | Som van TP voor alle intenties |
Fout-positief | 2 | Som van FP voor alle intenties |
Fout-negatief | 2 | Som van FN voor alle intenties |
Precisie = #True_Positive / (#True_Positive + #False_Positive) = 2 / (2 + 2) = 0.5
Herinneren = #True_Positive / (#True_Positive + #False_Negatives) = 2 / (2 + 2) = 0.5
F1-score = 2 * Precision * Recall / (Precision + Recall) = (2 * 0.5 * 0.5) / (0.5 + 0.5) = 0.5
Verwarringsmatrix
Een verwarringsmatrix is een N x N-matrix die wordt gebruikt voor de evaluatie van modelprestaties, waarbij N het aantal intenties is. De matrix vergelijkt de werkelijke tags met de tags die door het model worden voorspeld. Dit geeft een holistische weergave van hoe goed het model presteert en welke soorten fouten het maakt.
U kunt de verwarringsmatrix gebruiken om intenties te identificeren die zich te dicht bij elkaar bevinden en vaak verkeerd worden weergegeven (dubbelzinnigheid). In dit geval kunt u overwegen deze intenties samen te voegen. Als dat niet mogelijk is, kunt u overwegen om meer getagde voorbeelden van beide intenties toe te voegen om het model te helpen onderscheid te maken tussen deze intenties.
U kunt de metrische gegevens op modelniveau berekenen op basis van de verwarringsmatrix:
- Het ware positieve van het model is de som van terechte positieven voor alle intenties.
- Het fout-positieve van het model is de som van fout-positieven voor alle intenties.
- Het fout-negatieve van het model is de som van fout-negatieven voor alle intenties.