더북(TheBook)

Note ≡


역주 사이킷런 0.22 버전에서 추가된 plot_confusion_matrix() 함수를 사용하면 오차 행렬을 쉽게 그릴 수 있습니다. 첫 번째 매개변수로 훈련된 모델을 전달하고 그다음 테스트 데이터셋의 특성과 타깃 데이터를 전달하면 됩니다.

>>> from sklearn.metrics import plot_confusion_matrix
>>> plot_confusion_matrix(pipe_svc, X_test, y_test)
>>> plt.show()

▲ 그림 6-11 plot_confusion_matrix( ) 함수로 그린 오차 행렬

confusion_matrix() 함수와 plot_confusion_matrix() 함수는 normalize 매개변수를 사용하여 오차 행렬의 값을 정규화할 수 있습니다. 'true', 'pred'는 각각 행과 열 방향으로 정규화합니다. 'all'로 지정하면 전체 출력 값을 정규화합니다.

>>> plot_confusion_matrix(pipe_svc, X_test, y_test,
...                       normalize='all')
>>> plt.show()

▲ 그림 6-12 정규화된 오차 행렬

이 예에서 클래스 1(악성 종양)이 양성 클래스입니다. 모델은 71개의 샘플을 정확하게 클래스 0 (TN)으로 분류했습니다. 40개의 샘플은 클래스 1(TP)로 올바르게 분류했습니다. 클래스 1에 해당하는 두 개의 샘플을 클래스 0(FN)으로 잘못 분류했고 양성 종양인 하나의 샘플을 악성 종양(FP)으로 잘못 분류했습니다.15 다음 절에서 이 정보를 이용하여 여러 가지 오차 지표를 계산해 보겠습니다.

 

 


15 역주 악성 종양이 관심 대상인 양성(positive) 클래스입니다. 음성 클래스인 양성(benign) 종양과 단어가 같기 때문에 혼동하기 쉬우니 주의하세요.

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.