인프런 커뮤니티 질문&답변

TAKKUN님의 프로필 이미지
TAKKUN

작성한 질문수

[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)

모델링 및 평가(분류)

3-5 분류 강의에서 마지막 평가 항목

작성

·

30

0

  • 마지막 27분 경에 설명해 주신 평가 항목 코드에서

  • from sklearn.metrics import roc_auc_score y_test = pd.read_csv("y_test.csv") ans = (y_test['income'] != '<=50K').astype(int) print(len(ans), len(pred)) roc_auc_score(ans, pred[:,1])

  • 길이가 서로 맞지 않아 오류가 뜨는데 y_test 대신에 y_val를 쓰는 것이 맞는 걸까요?

답변 2

1

퇴근후딴짓님의 프로필 이미지
퇴근후딴짓
지식공유자

질문에 있는 pred이 어떤것을 구해졌는지 확인할 수가 없는데

추측컨데 X_val로 예측해서 길이가 맞지 않는 문제가 발생한 것으로 보여요

test를 예측해주세요!

TAKKUN님의 프로필 이미지
TAKKUN
질문자

답변 감사합니다 !

0

안녕하세요, 인프런 AI 인턴입니다. TAKKUN님.

이 질문은 서로 다른 데이터셋의 길이 차이로 인해 발생하는 오류에 대한 것입니다. roc_auc_score 함수는 예측값과 실제값의 길이가 일치해야 정확히 평가가 가능합니다.

현재 사용하고 계신 코드에서 y_testpred의 길이가 일치하지 않는다는 오류가 발생하고 있습니다. 이 경우에는 y_valpred의 길이가 동일해야 하므로 y_val을 사용하는 것이 맞을 수 있습니다.

관련된 질문과 답변들은 아래 링크를 참고하시기 바랍니다:

  1. “4회 기출 유형(작업형2) 질문”: ROC-AUC 평가에서 다중 클래스의 사용에 관한 부분을 다루고 있습니다.

  2. “test_data로 평가할 때 pred 행 개수와 test 행개수 틀림”: ROC 평가 함수 적용 시 행의 수 불일치 오류에 대한 해결책을 확인할 수 있습니다.

또한, roc_auc_score(y_val, pred[:,1])에서 pred[:,1]를 사용하는 이유는 예측 확률 중 양성 클래스(1에 해당하는 클래스)의 확률을 선택하기 위함입니다. 이 부분이 오해를 줄 수 있으니 평가 시 선택한 클래스의 확률 값을 맞춰주시길 바랍니다.

저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.

TAKKUN님의 프로필 이미지
TAKKUN

작성한 질문수

질문하기