ValueError: Klassifizierungsmetriken können eine Mischung aus Multiclass- und Continuous-Multioutput-Zielen nicht verarbeiten
-
Verwenden Sie
1d-array
, umValueError: Classification metrics can't handle a mix of multiclass and continuous-multioutput targets
in Python zu beheben -
Beheben Sie den Fehler
ValueError: Classification metrics can't handle a mix of multiclass and continuous-multioutput targets
in Python
Der ValueError
wird in Python ausgelöst, wenn Sie einer Funktion ein gültiges Argument übergeben, es sich aber um einen ungültigen Wert handelt. Beispielsweise erhalten Sie den ValueError
, wenn Sie eine negative Zahl in die sqrt()
-Funktion eines math
-Moduls eingeben.
Der Fehler ValueError: Classification metrics can't handle a mix of multiclass and continuous-multioutput targets
tritt auf, wenn Sie in der Funktion sklearn.metrics.accuracy_score()
ein ungültiges Array angeben. Da der Genauigkeitswert eine Klassifizierungsmetrik ist, kann der ValueError
auch geworfen werden, wenn Sie ihn mit Regressionsproblemen verwenden.
In diesem Tutorial lernen Sie, diesen Fehler in Python zu beheben.
Verwenden Sie 1d-array
, um ValueError: Classification metrics can't handle a mix of multiclass and continuous-multioutput targets
in Python zu beheben
Zuerst werden wir diesen Fehler in Python reproduzieren.
from sklearn.metrics import accuracy_score
y_pred = [[0.5, 1], [-1, 1], [7, -6]]
y_true = [[0, 2], [-1, 2], [8, -5]]
accuracy_score(y_true, y_pred)
Ausgang:
ValueError: Classification metrics can't handle a mix of multiclass and continuous-multioutput targets
Die Funktion accuracy_score()
unterstützt das Multiclass-Multioutput-Format nicht. Wenn die Eingabe in der Funktion nicht 1d-array
ist, zeigt sie den obigen Fehler in der Auswertung des Klassifizierungsmodells an.
Sie können es mit dem 1d-array
in der Funktion accuracy_score()
lösen.
Beheben Sie den Fehler ValueError: Classification metrics can't handle a mix of multiclass and continuous-multioutput targets
in Python
Eine weitere mögliche Fehlerursache könnte sein, dass Sie die Funktion accuracy_score()
für die Regressionsprobleme verwenden. Der Genauigkeitswert ist kein Maß für Regressionsmodelle; es ist nur für Klassifikationsmodelle.
Die Regressionsmetriken sind R2-Score, MSE (Mean Squared Error) und RMSE (Root Mean Squared Error), die verwendet werden können, um die Leistung eines Regressionsmodells zu bewerten.
from sklearn.metrics import r2_score
y_pred = [[0.5, 1], [-1, 1], [7, -6]]
y_true = [[0, 2], [-1, 2], [8, -5]]
print(r2_score(y_true, y_pred))
Ausgang:
0.9412391668996365
Jetzt wissen Sie, wie Sie mit ValueError: Classification metrics can't handle a mix of multiclass and continuous-multioutput targets
in Python umgehen. Wir hoffen, dass Sie diese Antworten hilfreich finden.
Verwandter Artikel - Python ValueError
Verwandter Artikel - Python Error
- Adresse wird bereits verwendet Fehler in Python
- AttributeError: __Exit__ in Python
- AttributeError: 'Dict'-Objekt hat kein Attribut 'Append' in Python
- AttributeError: 'NoneType'-Objekt hat kein Attribut 'Text' in Python
- AttributeError: Int-Objekt hat kein Attribut
- AttributeError: Modul Urllib hat keine Attributanforderung