scikit-learn - 14(분류 평가)

안동균·2024년 11월 8일

혼동 행렬


평가 방식

Accuracy(정확도) : 실제값과 예측값의 일치 비율

precision(정밀도) : 암이라고 예측한 값중 실제 암일 확률

recall(재현율) : 실제 암인 값중 예측도 암인 확률

F1 : 정밀도와 재현율 조화 평균

ROC : 참 양성 비율에 대한 거짓 양성 비율 곡선

AUC : ROC 곡선 면적 아래(전부 분류할 시 AUC 1)

Accuracy

from sklearn.metrics import accuracy_score

accuracy_score(y_test, pred)

Precision

from sklearn.metrics import precision_score

precision_score(y_test, pred)

Recall

from sklearn.metrics import recall_score

recall_score(y_test, pred)

F1

from sklearn.metrics import f1_score

f1_score(y_test, pred)

ROC / AUC

from sklearn.metrics import roc_auc_score

model = XGBClassifier(random_state = 0, use_label_encoder = False, eval_metric = 'logloss')
model.fit(x_train, y_train)
pred = model.predict_proba(x_test)
pred

roc_auc_score(y_test, pred[:, 1])
  • ROC의 경우 predict의 결과 값인 0, 1이 아니라
    proba를 이용해 확률을 사용함
  • pred = model.predict_proba(x_test)

0개의 댓글