ValueError: 분류 메트릭은 다중 클래스 및 연속 다중 출력 대상의 혼합을 처리할 수 없습니다.

Rohan Timalsina 2023년6월21일
  1. 1d-array를 사용하여 Python에서 ValueError: 분류 메트릭이 다중 클래스 및 연속 다중 출력 대상의 혼합을 처리할 수 없음을 수정합니다.
  2. Python에서 ValueError: 분류 메트릭이 다중 클래스 및 연속 다중 출력 대상 혼합을 처리할 수 없음 오류 수정
ValueError: 분류 메트릭은 다중 클래스 및 연속 다중 출력 대상의 혼합을 처리할 수 없습니다.

함수에 유효한 인수를 제공했지만 잘못된 값인 경우 Python에서 ValueError가 발생합니다. 예를 들어 math 모듈의 sqrt() 함수에 음수를 입력하면 ValueError가 발생합니다.

sklearn.metrics.accuracy_score() 함수에 잘못된 배열을 제공하면 ValueError: 분류 메트릭이 다중 클래스 및 연속 다중 출력 대상 혼합을 처리할 수 없습니다 오류가 발생합니다. 정확도 점수는 분류 메트릭이므로 회귀 문제와 함께 사용할 때 ValueError도 발생할 수 있습니다.

이 튜토리얼은 Python에서 이 오류를 해결하는 방법을 알려줍니다.

1d-array를 사용하여 Python에서 ValueError: 분류 메트릭이 다중 클래스 및 연속 다중 출력 대상의 혼합을 처리할 수 없음을 수정합니다.

먼저 Python에서 이 오류를 재현합니다.

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)

출력:

ValueError: Classification metrics can't handle a mix of multiclass and continuous-multioutput targets

accuracy_score() 함수는 다중 클래스 다중 출력 형식을 지원하지 않습니다. 함수에 주어진 입력이 1d-array가 아닌 경우 분류 모델 평가에서 위의 오류를 표시합니다.

accuracy_score() 함수에서 1d-array를 사용하여 해결할 수 있습니다.

Python에서 ValueError: 분류 메트릭이 다중 클래스 및 연속 다중 출력 대상 혼합을 처리할 수 없음 오류 수정

오류의 또 다른 가능한 원인은 회귀 문제에 accuracy_score() 함수를 사용하고 있기 때문일 수 있습니다. 정확도 점수는 회귀 모델의 척도가 아닙니다. 분류 모델 전용입니다.

회귀 메트릭은 회귀 모델의 성능을 평가하는 데 사용할 수 있는 R2 Score, MSE(Mean Squared Error) 및 RMSE(Root Mean Squared Error)입니다.

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))

출력:

0.9412391668996365

이제 Python에서 ValueError: 분류 메트릭이 다중 클래스 및 연속 다중 출력 대상 혼합을 처리할 수 없습니다를 처리하는 방법을 알았습니다. 이 답변이 도움이 되었기를 바랍니다.

Rohan Timalsina avatar Rohan Timalsina avatar

Rohan is a learner, problem solver, and web developer. He loves to write and share his understanding.

LinkedIn Website

관련 문장 - Python ValueError

관련 문장 - Python Error