1) 정확도 - Accuracy
2) 오차행렬 - Confusion Matrix
3) 정밀도 - Precision
4) 재현율(Recall)
5) F1 스코어
6) ROC AUC
1) 정확도: 실제 데이터에서 예측 데이터가 얼마나 같은지를 판단하는 지표.
데이터 분포도가 균일하지 않은 경우 높은 수치가 나타날 수 있다. 즉, 정확도 평가 지표의 맹점이 나타날 수 있다.
2) 오차행렬: 이진 분류에서 성능 지표로 잘 활용되는 오차행렬은 학습된 분류 모델이 예측을 수행하면서 얼마나 헷갈리고(confused) 있는지도 함께 보여주는 지표. 즉, 이진 분류의 예측 오류가 얼마인지와 더불어 어떠한 유형의 예측 오류가 발생하고 있는지를 함께 나타내는 지표.
3) 정밀도와 재현율 - Positive데이터 세트의 예측 성능에 좀 더 초점을 맞춘 평가 지표
정밀도 : TP/(FP+TP) : 양성예측도, 예측값기준
재현율 : TP/(FN+TP) : 민감도, 실제값기준
ex) 재현율이 중요 지표인 경우, 암 판단 모델은 실제 Positive인 암 환자를 Positive양성 데이터를 Negative로 잘못 판단하게 되면 업무상 큰 영향이 발생 할 수 있다(- 기준이 실제 값이 더 중요하다고 생각하면 편한다. 나는).
보통은 재현율이 정밀도보다 상대적으로 중요한 업무가 많지만, 정밀도가 중요한 지표인 경우는, 스팸메일이 될 수 있다.
포인트:
1) 가장 좋은 성능 평가는 재현율과 정밀도 모두 높은 수치를 얻는것. 반면에 둘 중 어느 한 평가 지표만 매우 높고, 다른 수치는 매우 낮은 결과를 나타내는 경우는 바람직하지 않다.
2) 분류하려는 업무의 특성상 정밀도 또는 재현율이 특별히 강조돼야 할 경우 분류의 결정 임곗값(Threshold)을 조정해 정밀도 또는 재현율의 수치를 높일 수 있다. 하지만 정밀도와 재현율은 상호 보완적인 지표이기 때문에 어느 한쪽을 강제로 높이면 다른 하나의 수치는 떨어지기 쉽다. 이를 정밀도/재현율의 트레이드오프(Trade-off)라고 부른다.
4) F1스코어 : 정밀도와 재현율을 결합한 지표
5) ROC 곡선과 AUC : ROC 곡선과 이에 기반한 AUC 스코어는 이진 분류의 예측 성능 측정에서 중요하게 사용되는 지표.
ROC(Receiver Operation Characteristic Curve, 수신자 판단 곡선, ROC곡선은 FPR(False Positive Rate)이 변할 떄 TPR(True Positive Rate)이 어떻게 변하는지를 나타내는 곡선. FPR을 X축으로, TPR을 Y축으로 잡으면 FPR의 변화에 따른 TPR의 변화가 곡선 형태로 나타낸다. TPR True Positive Rate의 약자이며, 재현율을 나타낸다. TNR은 True Negative이라고 불리고 특이성이라고 한다.
토큰화 > 노이즈/불용어 제거 > 통일화 > 품사 태깅 > 벡터화
1) 토큰화
텍스트를 작은 단위로 나누는 과정입니다. 보통 단어나 구절을 토큰으로 분리합니다. 예를 들어, "Hello, how are you?"라는 문장은 ["Hello", ",", "how", "are", "you", "?"]와 같은 토큰으로 분리됩니다.
2) 노이즈/불용어 제거
분석에 도움이 되지 않는 ‘노이즈/불용어’들을 제거하는 작업이다
3) 통일화
어간 추출(Stemming)과 표제어 추출(Lemmatization): 단어의 기본 형태를 추출하는 과정입니다. 어간 추출은 단어의 접미사나 어미를 제거하여 기본 형태를 찾는 것이며, 표제어 추출은 단어를 그 의미를 고려하여 변환하는 과정입니다.
4) 품사 태깅
앞서 토큰화한 단어에 품사를 붙이는 작업이다
5) 벡터화
벡터화(Vectorization): 모델에 입력으로 사용하기 위해 텍스트를 숫자로 변환하는 과정입니다. 텍스트를 단어 또는 문장을 나타내는 숫자 벡터로 변환하여 모델에 입력할 수 있게 합니다. 일반적으로 원-핫 인코딩, TF-IDF 등의 방법을 사용합니다.
one-hot encoding :
컴퓨터 또는 기계는 문자보다는 숫자를 더 잘 처리 할 수 있습니다. 이를 위해 자연어 처리에서는 문자를 숫자로 바꾸는 여러가지 기법들이 있습니다. 원-핫 인코딩(One-Hot Encoding)은 그 많은 기법 중에서 단어를 표현하는 가장 기본적인 표현 방법이며, 머신 러닝, 딥 러닝을 하기 위해서는 반드시 배워야 하는 표현 방법입니다.
원-핫 인코딩은 단어 집합의 크기를 벡터의 차원으로 하고, 표현하고 싶은 단어의 인덱스에 1의 값을 부여하고, 다른 인덱스에는 0을 부여하는 단어의 벡터 표현 방식입니다. 이렇게 표현된 벡터를 원-핫 벡터(One-Hot vector)라고 합니다.
출처
https://wikidocs.net/22647
파이썬 머신러닝 완벽 가이드
공감하며 읽었습니다. 좋은 글 감사드립니다.