데이터: 해결 기법

ㅁ 해결 기법

1. Cost-sensitive Learning

ㅇ 정의:
– 분류 모델 학습 시 클래스별 오분류 비용을 다르게 설정하여, 소수 클래스의 오분류에 더 큰 패널티를 부여하는 기법.

ㅇ 특징:
– 데이터 분포를 변경하지 않고 모델의 손실 함수에 비용 가중치를 반영.
– 의사결정트리, 로지스틱 회귀, SVM 등 다양한 알고리즘에 적용 가능.

ㅇ 적합한 경우:
– 데이터 수집이 어렵거나 원본 데이터 분포를 유지해야 하는 경우.
– 소수 클래스의 탐지가 중요한 금융 사기 탐지, 의료 진단 등.

ㅇ 시험 함정:
– 단순히 클래스 가중치를 주면 항상 성능이 개선된다고 착각.
– 비용 설정이 잘못되면 오히려 다수 클래스 성능 저하.

ㅇ 시험 대비 “패턴 보기” 예시:
– O: “클래스별 오분류 비용을 다르게 설정하여 소수 클래스의 중요도를 반영한다.”
– X: “데이터를 복제하여 소수 클래스 샘플 수를 늘린다.”

================

2. Threshold Tuning

ㅇ 정의:
– 분류기의 예측 확률을 기반으로 클래스 결정 임계값을 조정하여, 소수 클래스의 재현율을 높이는 기법.

ㅇ 특징:
– 모델 학습 후 적용 가능.
– Precision-Recall 트레이드오프 조절 가능.

ㅇ 적합한 경우:
– 모델 재학습이 어려운 경우.
– 불균형 데이터에서 F1-score, Recall 개선이 필요할 때.

ㅇ 시험 함정:
– 임계값을 낮추면 무조건 성능이 좋아진다고 오해.
– Precision 저하 가능성 간과.

ㅇ 시험 대비 “패턴 보기” 예시:
– O: “분류 확률의 기준값을 조정하여 소수 클래스 검출률을 높인다.”
– X: “학습 데이터의 클래스 분포를 변경하여 모델을 학습한다.”

================

3. Random Oversampling

ㅇ 정의:
– 소수 클래스 데이터를 무작위로 복제하여 클래스 분포를 균형 있게 만드는 기법.

ㅇ 특징:
– 데이터 손실 없이 클래스 균형 가능.
– 과적합 위험 존재.

ㅇ 적합한 경우:
– 데이터 양이 적고, 소수 클래스의 정보 손실을 피해야 할 때.

ㅇ 시험 함정:
– 단순 복제로 인해 모델이 특정 샘플에 과도하게 적합.
– 데이터 다양성 증가 효과 없음.

ㅇ 시험 대비 “패턴 보기” 예시:
– O: “소수 클래스 샘플을 복제하여 데이터 비율을 맞춘다.”
– X: “소수 클래스 샘플을 제거하여 데이터 비율을 맞춘다.”

================

4. Random Undersampling

ㅇ 정의:
– 다수 클래스 데이터를 무작위로 제거하여 클래스 분포를 균형 있게 만드는 기법.

ㅇ 특징:
– 데이터 양 감소로 학습 속도 향상.
– 중요한 정보 손실 가능.

ㅇ 적합한 경우:
– 데이터가 매우 많고, 일부 손실이 성능에 큰 영향을 주지 않을 때.

ㅇ 시험 함정:
– 무작위 제거로 인해 중요한 패턴이 사라질 수 있음.
– 데이터 불균형이 심한 경우 성능 급락 가능.

ㅇ 시험 대비 “패턴 보기” 예시:
– O: “다수 클래스 샘플 일부를 제거하여 데이터 비율을 맞춘다.”
– X: “소수 클래스 샘플을 복제하여 데이터 비율을 맞춘다.”

================

5. Class Weighting

ㅇ 정의:
– 모델 학습 시 손실 함수에 클래스별 가중치를 부여하여, 소수 클래스의 오류에 더 큰 페널티를 주는 기법.

ㅇ 특징:
– Cost-sensitive Learning과 유사하나, 주로 알고리즘 내장 파라미터로 지원.
– 데이터 변경 없이 적용 가능.

ㅇ 적합한 경우:
– 알고리즘이 클래스 가중치 설정을 지원하는 경우.
– 데이터 원본을 유지해야 하는 경우.

ㅇ 시험 함정:
– 가중치 설정을 무작정 높이면 오히려 과적합 또는 다수 클래스 성능 저하.

ㅇ 시험 대비 “패턴 보기” 예시:
– O: “손실 함수에 클래스별 가중치를 적용하여 소수 클래스의 중요도를 반영한다.”
– X: “소수 클래스 샘플을 무작위로 제거하여 데이터 비율을 맞춘다.”

ㅁ 추가 학습 내용

추가 학습 정리

1. 오버샘플링 변형 기법
– SMOTE: 소수 클래스 샘플 사이의 선형 보간을 통해 새로운 샘플 생성.
– ADASYN: 소수 클래스 중 분류가 어려운 샘플에 더 많은 가중을 두어 새로운 샘플 생성.
– 차이점: ADASYN은 데이터 분포의 불균형 정도에 따라 생성 샘플 수를 조절, SMOTE는 균일하게 생성.

2. 불균형 데이터 성능 평가 방법
– ROC-AUC: TPR(민감도)와 FPR(1-특이도)의 관계를 곡선으로 나타내고 면적을 측정.
– Precision-Recall Curve: 정밀도와 재현율의 관계를 곡선으로 나타내며, 특히 양성 클래스가 희소할 때 유용.

3. 주요 평가 지표 정의와 계산법
– F1-score: 정밀도와 재현율의 조화평균. F1 = 2 × (Precision × Recall) / (Precision + Recall).
– G-mean: 민감도와 특이도의 기하평균. G-mean = √(Sensitivity × Specificity).
– Balanced Accuracy: (민감도 + 특이도) / 2.

4. 임계값 조정 관련 지표
– Youden’s J statistic: J = Sensitivity + Specificity – 1, 최적 임계값 선택에 활용.
– Cost curve: 다양한 임계값과 비용 조건에서의 분류 성능을 시각화하여 최적 지점 탐색.

5. Cost-sensitive Learning
– 비용 행렬 설계: 각 분류 오류 유형(거짓 양성, 거짓 음성)에 대해 서로 다른 비용을 부여하여 모델 학습 시 반영.

6. 데이터 불균형과 bias-variance tradeoff
– 불균형이 심할 경우 모델이 다수 클래스에 치우쳐 bias가 증가하거나, 소수 클래스 예측에서 variance가 커질 수 있음.

7. 앙상블 기법 활용
– Balanced Random Forest: 부트스트랩 샘플링 시 각 클래스가 균형을 이루도록 데이터 선택.
– EasyEnsemble: 여러 개의 균형 잡힌 부트스트랩 샘플로 약한 분류기를 학습하고 결과를 앙상블.

답글 남기기

Your email address will not be published. Required fields are marked *.

*
*