2.9.2 혼동 행렬

    혼동 행렬은 모델이 예측한 결과의 진음성(true negative), 위양성(false positive), 위음성(false negative), 진양성(true positive) 지표를 분석할 수 있는 유용한 시각화 방식이다. 모델 성능을 잘 이해하려면 단순히 정확도 지표만 고려하는 것보다 혼동 행렬을 살펴보는 게 좋다.

    진음성, 위양성, 위음성, 진양성의 정의는 다음과 같다.

    진음성: 실제 클래스가 음성(당뇨 비발병)이고 모델도 음성(당뇨 비발병)으로 예측한 경우

    위양성: 실제 클래스는 음성(당뇨 비발병)이지만 모델이 양성(당뇨 발병)으로 예측한 경우

    위음성: 실제 클래스는 양성(당뇨 발병)이지만 모델이 음성(당뇨 비발병)으로 예측한 경우

    진양성: 실제 클래스가 양성(당뇨 발병)이고 모델도 양성(당뇨 발병)으로 예측한 경우

     

    좋은 모델이란 결국 위양성과 위음성을 최소로 줄이고 진음성과 진양성을 최대로 늘리는 모델이다.

    파이썬에서는 사이킷런 패키지의 confusion_matrix 클래스로 혼동 행렬을 만들고 시본 패키지로 시각화할 수 있다.

    icon_warning Warning

    macOS에서 코드를 실행하면 다음과 같은 오류가 간혹 발생한다.

    Error #15: Initializing libiomp5.dylib, but found libiomp5.dylib already initialized

     

    이 오류는 케라스나 판다스를 여러 번 사용할 때 라이브러리를 중복 사용해 발생하는 것으로 보인다. 가장 간단한 해결책은 다음 코드를 먼저 실행해 중복을 허용하는 것이다.

    import os
    os.environ['KMP_DUPLICATE_LIB_OK']='True'
    신간 소식 구독하기
    뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.