-
카테고리
-
세부 분야
딥러닝 · 머신러닝
-
해결 여부
미해결
ROC_AUC_Score 과정에서 오류
22.01.10 23:25 작성 조회수 1.57k
0
안녕하세요 강사님.
캐글 예제 진행 중 ROC-AUC 스코어 오류가 생겨서 질문드립니다.
우선 진행 과정에서 train.csv 파일을 split해 X, y_train과 X, y_valid로 나누었고
eval_set로 X, y_valid를 사용하였으며
test.csv 파일은 X_test, sample_submission.cvs 파일은 y_test 로 사용하여 진행했습니다.
(실제 컴피티션에서는 이렇게 진행하는 것인가 하여 이렇게 진행해봤는데 방법이 맞는지는 모르겠습니다. 이 부분도 맞는 지 답변해주시면 감사하겠습니다)
XGBoost.fit을 통해 학습 후 X_test에 predict 한 뒤 ROC-AUC 스코어를 구하는 과정에서
Only one class present in y_true. ROC AUC score is not defined in that case.
라는 에러가 계속 발생합니다ㅠㅠ
y_test 데이터를 value_counts로 확인하니 레이블값이 0으로만 차있던데 이것이 오류의 이유인가 싶습니다.
만약 이게 원인이라면 y_test가 하나의 값으로만 차있으면 ROC 스코어를 구할 수 없는 것인가요?
답변을 작성해보세요.
0
권 철민
지식공유자2022.01.11
안녕하십니까,
말씀하신대로 y_test가 모두 동일한 값으로 되어 있기 때문으로 생각됩니다. 해당 경우에는 위 에러가 발생합니다. y_test값을 다시 확인해 보시기 바랍니다.
감사합니다.
김남욱
질문자2022.01.11
답변 감사드립니다.
그렇다면 만약에 실제로 y_test이 동일한 레이블값으로만 구성되어 있으면 ROC스코어 사용이 불가능하고 다른 평가지표를 사용하는 것이 맞는 것인가요??
답변 1