티스토리 뷰

728x90
반응형

분류(Classification)는 입력된 데이터의 클래스(특정한 그룹을 의미하는 이산적인 값)를 예측하는 것이다. 분류는 회귀와 같이 지도학습에 속하며 학습 데이터로 입력과 클래스 값을 함께 제공하여 클래스에 대한 입력 데이터의 함수 형태의 모델을 학습시켜야 한다. 회귀 분석과 비슷하나 예측하고자 하는 값이 연속적인 값이 아닌 이산적인 값(클래스)에 해당한다. 학습된 모델의 분류 기준을 그래프 상에 나타낸 것을 결정 경계(decision boundary)라고 한다. 결정 경계(decision boundary)는 입력 데이터를 클래스에 따라 분류했을 때 그룹 간에 생기는 경계를 의미한다.


분류 모델의 성능 평가

분류 모델의 성능을 평가할 때 여러 가지 척도를 사용한다. 그 척도에는 정확도(Accuracy), 정밀도(precision), 재현율(Recall), F1-score 등이 있다. 또한, 이러한 척도들을 편리하게 계산하기 위해 Confusion matrix라는 표를 사용한다. 이진 분류의 경우, Confusion matrix행과 열을 Actual classPredicted class로 구분하여 주어진 입력 데이터의 속성과 모델의 예측 결과의 조합(TP, FP, FN, TN)을 나타낸다. T는 원래 속성을 모델이 예측하는 데 성공했음을 의미하며, F는 모델이 예측하는 데 실패했음을 의미한다. PN은 모델이 예측한 데이터의 속성이다. , TP는 원래 데이터의 속성이 positive임과 동시에 모델 또한 데이터를 positive로 예측하였다는 뜻이다. NP는 원래 데이터의 속성이 negative이지만 모델이 데이터를 positive로 예측하여 예측을 실패하였음을 나타내는 것이다. FNTN에 대해서도 동일한 원리가 적용된다.

정확도(Accuracy)전체 데이터의 개수에 대한 올바르게 예측한 데이터의 개수의 비율이다. 매우 합리적인 평가 기준으로 보이지만 사실 그렇지만은 않다. 예측해야 하는 입력 데이터의 실제 클래스가 처음부터 불균등하다면 데이터에 대한 정확도의 의존성이 심각해져 좋은 모델이 아님에도 높은 정확도를 보이는 이상한 경우도 생기기 때문이다.

정밀도(Precision)모델이 데이터의 클래스에 대한 예측을 시도했을 때 특정한 클래스라고 예측한 데이터에 대한 예측 성공률을 의미한다. 예를 들어 설명하면 어떠한 데이터들에 대해 모델이 positive라고 예측한 경우 중 실제로 positive에 해당하는 경우의 비율이 정밀도에 해당한다.

재현율(Recall)특정 클래스의 데이터들에 대해 예측을 성공한 비율이다. 예로 들어 positive 클래스의 데이터에 대해 positive로 예측하는 데 성공한 비율을 의미한다.

정밀도와 재현율의 경우 어떤 클래스를 positive로 놓느냐에 따라 값이 달라지기도 한다. 대개 집중하고 싶은 클래스를 positive로 한다.

위의 여러 평가 척도들을 선택하기 힘들다면 여러 평가 척도들의 조합으로 구성된 F1-score를 사용하면 된다.

F1-score정밀도와 재현율의 합에 대한 정밀도와 재현율의 곱의 비율의 2배에 해당한다. 이는 두 평가척도의 조화평균(harmonic mean)에 해당하며 둘 중 어느 하나에 의해 값이 왜곡되지 않는 특징이 있다.(cut off 값을 조정하여 정밀도를 증가시키면 재현율이 감소하는 문제가 발생하는 데 두 평가 척도 모두 적절하게 유지하고 싶을 때 조화평균인 F1-score를 사용하여 딜레마를 해결할 수 있다.) 두 값 중 하나가 0이라면 정석적으로 해당 공식으로는 F1-score를 계산할 수 없다(NaN). 이때 아주 작은 값을 가졌다고 생각하면 F1-score0으로 볼 수도 있다.


Cut-off value데이터를 분류하는 기준(어느 수준부터 positive로 평가할 것인가?)을 결정하는 요소로 Confusion matrix의 값을 결정하는 중요한 요소이다. 당연한 이치로 모델의 성능 또한 cut-off value에 영향을 받는다.

Cut-off value에 의해 TP, FP, TN, FN 경우의 수가 바뀌는 데 이때 모델의 평가 척도로 True positive rates(TPR)False positive rates(FPR)를 사용한다. TPR은 전체 positive 데이터 중 positive로 예측한 경우의 비율이며, FPR은 전체 네거티브 데이터 중 positive로 예측한 경우의 비율이다. cut-off value에 따라 positive 예측 경우의 수가 바뀌므로 TPRFPR은 함께 움직인다.


특정 모델에 대해 Cut-off value를 조정하면 TPRFPR 값이 바뀌는 데 Cut-off value를 매개변수로 삼아 TPRFPR에 대한 그래프를 그릴 수 있다. 이때 그려지는 곡선을 ROC(Receive Operating Characteristic) curve라고 한다. 좋은 모델일수록 TPR1에 가까워지고 FPR0에 가까워진다. 따라서 TPR을 세로축, FPR을 가로축으로 설정했을 때 곡선이 좌측 상단으로 편향할수록 좋은 모델이라고 할 수 있다. 또한 AUROC(Area Under the ROC curve)가 클수록 좋은 모델이라고 할 수 있다. ROC curve의 아래 부분의 면적이 클수록 좌측 상단을 향해 볼록한 곡선이기 때문이다. 이상적인 경우는 면적은 1, 랜덤한 경우는 0.5이기 때문에 모델이 학습되었다면 AUROC 값은 0.51사이에 존재하게 된다.


위에 설명했듯이 선형 분류식은 선형 회귀식과 매우 유사한 형태를 가지고 있다. 최소 제곱법으로 학습시킬 때는 목표 변수가 one hot vector로 치환되며 예측 값이 각 클래스의 개수만큼의 성분을 가진 벡터로 클래스에 속할 확률을 표시한다. 이 확률 중 가장 큰 값의 클래스로 데이터를 분류한다. 최소 제곱법으로 분류모델을 학습시킬 경우 이상치에 대해서도 똑같이 반응하여 이상한 분류선이 그려질 수 있다. 이러한 문제를 해결하기 위해 선형 판별 분석(Linear Discriminant Analysis : LDA)를 사용할 수 있다. 베이즈 공식을 기반으로 분류선을 계산하는 방식이다. 학습 데이터를 통해 각 클래스의 가우시안 분포의 평균 및 분포를 추정하고 이를 활용해 더욱 정교하게 분류선을 긋는 방식이다. 공분산을 같게 놓으면 분류선은 직선의 형태를 가진다. LDA는 같은 집단 내의 성분끼리는 거리를 최소화하고 다른 집단의 성분끼리는 최대화하도록 분류하는 알고리즘으로 생각할 수 있다. 회귀 방식을 분류로 확장한 로지스틱 회귀 모형 또한 있다. 이 알고리즘은 최소제곱법과 비슷하게 목표 변수를 치환하고 예측 값으로 총합이 1인 클래스별 확률 벡터를 도출한다. 선형 회귀를 할 때와 마찬가지로 과적합을 방지하기 위해 계수 페널티항을 포함시켜 정규화를 할 수도 있다.

 

728x90
반응형
반응형
250x250
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/05   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
글 보관함