Fehlerbehebung bei „UndefinedMetricWarning“ bei der F-Score-Berechnung
Sklearns F-Score-Metrik kann manchmal eine „UndefinedMetricWarning“ auslösen, wenn Beschriftungen vorhanden sind die Ground-Truth-Daten (y_test), die nicht vorhergesagt wurden (y_pred). Dies liegt daran, dass der F-Score für Etiketten ohne vorhergesagte Stichproben undefiniert ist. In solchen Fällen wird der Score auf 0,0 gesetzt.
In Ihrem Fall ist Ihnen vielleicht aufgefallen, dass der Fehler nur bei der ersten Ausführung auftritt und nicht danach. Dies liegt daran, dass Warnungen standardmäßig nur einmal angezeigt werden. Sie können dieses Verhalten ändern, indem Sie die Funktion warnings.filterwarnings() auf „immer“ setzen, um jedes Mal Warnungen anzuzeigen.
Um die Warnung zu vermeiden, haben Sie zwei Möglichkeiten:
import numpy as np metrics.f1_score(y_test, y_pred, average='weighted', labels=np.unique(y_pred))
Was die nachfolgende Fehlermeldung „precision“, „predicted“, Average, warn_for) betrifft, handelt es sich um einen Fehler in scikit-learn 0.18.1, der in späteren Versionen behoben wurde. Die Fehlermeldung sollte sich nicht auf Ihre Ergebnisse auswirken.
Das obige ist der detaillierte Inhalt vonWarum erhalte ich bei der Berechnung des F-Scores in Scikit-learn eine „UndefinedMetricWarning'?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!