scikit-learn으로 배우는 지도 학습
George Boorman
Core Curriculum Manager, DataCamp
정확도로 모델 성능 측정:
올바르게 분류된 샘플의 비율
항상 유용한 지표는 아님
사기성 은행 거래 예측을 위한 분류
모든 거래에 대해 사기 아님(NONE)으로 예측하는 분류기를 만들 수 있습니다
99%의 정확도
하지만 실제로는 사기 거래를 예측하는 데 매우 서툶
원래 목적을 달성하지 못함
클래스 불균형: 불균등한 클래스 빈도
성능을 평가할 다른 방법 필요
혼동 행렬














from sklearn.metrics import classification_report, confusion_matrixknn = KNeighborsClassifier(n_neighbors=7)X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.4, random_state=42)knn.fit(X_train, y_train)y_pred = knn.predict(X_test)
print(confusion_matrix(y_test, y_pred))
[[1106 11]
[ 183 34]]
print(classification_report(y_test, y_pred))
precision recall f1-score support
0 0.86 0.99 0.92 1117
1 0.76 0.16 0.26 217
accuracy 0.85 1334
macro avg 0.81 0.57 0.59 1334
weighted avg 0.84 0.85 0.81 1334
scikit-learn으로 배우는 지도 학습