Binary Classification Scoring Methods(1)

2 minute read

사람은 머신러닝(Machine Learning, ML) 알고리즘을 통해 학습시킨 모델이 어떠한 문제에 대한 예측 결과를 얻고자 사용하는 경우가 잦다.

이러한 예측 문제는 크게 분류(Classification) 문제인 경우와 회귀(Regression)인 경우로 나뉜다.

(물론 아래와 같이 다양한 문제를 해결할 수 있다)


그림1. MS Azure의 Machine Learning Algorithm Cheat Sheet - 예측 결과에 따른 ML 알고리즘 선택지


이 둘을 구분짓는 것은 정답의 형태라고 할 수 있다.

분류 문제는 정답이 맞는지 아닌지 계산할 수 있도록 선택지가 주어지는 이진분류, 혹은 복수의 선택지에서 나타나는 정답이 주어지는 경우 다중분류에 해당된다.

쉽게말해 누군가 인터넷에서 어느 특정 인물의 데이터를 가지고 이 사람의 성별이 남자냐 여자냐 예측 결과를 내놓는 문제가 있다고 생각해보자.

거기에 성별은 남녀 밖에 없다고 가정할 때, 이것이 바로 분류 문제이며 정답이 로 나뉘는 이진분류 문제라고 할 수 있다.


반면 회귀 문제는 임의의 숫자로 그 결과값을 얻을 수 있다.

내가 다음 룰렛 게임에 참여했을 때 얻게될 돈의 액수를 계산하는 문제가 있다고 하면, 그 결과값이 (내가 건 돈, 게임의 확률에 따라 달라지겠지만 예를들면) 52,321.32원 이 나올 수 있을 것이다.

이렇게 정답이 딱 떨어지는 결과가 아닌, 연속적인 숫자(Float)를 내놓을 때 이러한 유형의 문제를 회귀 문제라고 할 수 있다.


자 그러면 분류이건 회귀이건 머신러닝 모델이 어떤 예측 결과값을 내놓게 만들어놓았다고 생각해보자.

과연 이 머신러닝 모델이 제대로 문제를 풀 수 있도록 체크하기 위해서는 무엇이 필요한가?

비로 얼마나 문제를 잘 맞추었느냐에 대한 점수일 것이다.


정확도(Accuracy)

머신러닝 모델의 정확도는 관련 학문을 배우지 않았어도, 사람들이 쉽게 떠올릴 수 있는 평가점수이다.

단순하게 정답을 맞춘 개수 / 모든 개수 를 통해 그 수치를 구할 수 있기 때문이다.

하지만 단순히 정답을 맞춘 개수만 알면, 모든게 끝난 것일까?

앞서 성별에 따른 이진분류 사례를 들어보았다.

만약 성별을 맞추도록 학습한 머신러닝 모델의 정확도가 100%라고 생각해보자.

그런데 알고보니 이 모델을 학습시킨 데이터가 전부 ‘남자’ 인 데이터였다는 사실을 알게된다.

더욱 충격적이게도 모델을 평가한 데이터 또한 ‘남자’밖에 없었다고 한다면?

그렇다면 이 머신러닝 모델이 ‘여자’인 데이터를 만났을 때, 정확하게 동작할 수 있을까?


혼동행렬(Confusion Matrix)

위의 상황에서 단순히 정확도를 나타낸다면, 해당 데이터가 가진 편향성에 대해 판단할 수 없다는 문제가 있다.

이러한 문제를 해결하기 위해서는 보다 디테일하게 내용을 확인할 필요가 있다.

성별을 판별하는 머신러닝 모델이, 정답을 맞춘 경우는 어떤 경우가 있을까?

성별을 판별하는 머신러닝 모델에서 정답인 경우는?

  • ‘남자’인 것을 맞춘 경우
  • ‘여자’인 것을 맞춘 경우

위에서 ‘남자’만을 가지고 학습시킨 머신러닝 모델에게 ‘남자’인 데이터만을 투입하여 평가하였을 때, 정답을 맞출 확률은 100%였다.

그리고 그 모든 경우의 수는 ‘남자’인 것을 맞출 확률이었다.

그러면 질문을 바꿔서, ‘여자’인 것을 맞출 확률은 어떻게 될까?

‘여자’인 데이터가 없었기 때문에, 맞춘 경우가 없었을 것이고, 그 확률은 0%이다.

이렇게 살짝만 경우의 수를 확인해보아도 정확도 평가점수의 헛점을 파고들 수 있다.

다양한 경우의 수에 따른 정확도의 헛점을 보완하기 위해, 사람들은 오래전부터 경우의 수를 편리하게 확인할 수 있는 테이블을 고안해냈다.

그것이 바로 혼동행렬(또는 오차행렬)이다.


그림2. 혼동행렬(오차행렬, Confusion Matrix)


그림을 통해 알 수 있듯이, 이 행렬을 통해 이진분류 문제에 대한 정답인 경우의 수를 확실하게 캐치해낼 수 있다.

그러면 다음시간에는 이 혼돈행렬을 이용한 더 디테일한 점수들에 대해서 알아보도록 하자.



참고.1) 알고리즘 중심의 머신러닝 가이드 (Machine Learning: An Algorithmic Perspective, Second Edition)

참고.2) Basic of Evaluation - 머신러닝, 지표부터 차근차근

Categories:

Updated:

Comments