해결된 질문
작성
·
413
0
ROC 나 AUC를 구하려면 preict_proba 값이 꼭 있어야 하나요 ? 예를 들어 SVM 같은경우는 hard classification으로 알고 있는데 이런 경우는 AUC 값을 구할 수 없는지 궁금합니다.
답변 1
1
안녕하십니까,
ROC AUC 의 경우 예측 확률의 변화를 기반으로 하는 수치이기 때문에 predict_proba()를 통해 결정값의 예측 확률을 알아야 합니다. 말씀하신 대로 SVM의 특징으로 인해 predict_proba() 수행 시 제약이 있습니다.
svm을 사이킷런으로 구할 시 kernel이 rbf일 경우에는 predict_proba()를 수행할 수 있습니다. 다만 생성자에 probability=True를 같이 넣어 줘야 합니다.
SVC(kernel='rbf', probability=True)
아쉽게도 LinearSVC같은 경우는 predict_proba()를 수행할 수 없습니다.