자료를 공개한 저자 오렐리앙 제롱과 강의자료를 지원한 한빛아카데미에게 진심어린 감사를 전합니다.
y_train_5
훈련: fit()
메서드 호출
from sklearn.linear_model import SGDClassifier
sgd_clf = SGDClassifier(max_iter=1000, tol=1e-3, random_state=42)
sgd_clf.fit(X_train, y_train_5)
예제: 숫자 5를 표현하는 이미지를 정확하게 예측한 비율.
cross_val_score
모델의 scoring="accuracy"
키워드 인자 지정
from sklearn.model_selection import cross_val_score
cross_val_score(sgd_clf, X_train, y_train_5, cv=3, scoring="accuracy")
(2, 2)
모양의 2차원 (넘파이) 어레이로 생성됨.책 134쪽의 오차 행렬
array([[53057, 1522],
[ 1325, 4096]])
여기서는 숫자 5라고 예측된 값들 중에서 진짜로 5인 숫자들의 비율
$$\text{precision} = \frac{TP}{TP+FP} = \frac{4096}{4096 + 1522} = 0.729$$
재현율을 민감도(sensitivity) 또는 참 양성 비율(true positive rate)로도 부름
$$\text{recall} = \frac{TP}{TP+FN} = \frac{4096}{4096 + 1325} = 0.756$$
임곗값, 재현율, 정밀도
재현율 대 정밀도
거짓 양성 비율: 원래 음성인 샘플 중에서 양성이라고 잘못 분류된 샘플들의 비율. 예를 들어, 5가 아닌 숫자중에서 5로 잘못 예측된 숫자의 비율
$$\text{FPR} = \frac{FP}{FP+TN}$$
TPR 대 FPR
SGD와 랜덤 포레스트의 AUC 비교