해결 기법: Random Undersampling
ㅁ 해결 기법
ㅇ 정의:
클래스 불균형 문제를 해결하기 위해 다수 클래스의 데이터를 무작위로 제거하여 데이터 균형을 맞추는 기법.
ㅇ 특징:
– 데이터의 크기를 줄여 모델 학습 속도를 높일 수 있음.
– 중요한 정보를 잃을 가능성이 있음.
– 간단하고 빠르게 구현 가능.
ㅇ 적합한 경우:
– 데이터 크기가 매우 큰 경우.
– 다수 클래스 데이터 중 일부 손실이 결과에 큰 영향을 미치지 않는 경우.
ㅇ 시험 함정:
– ‘모든 데이터를 제거한다’는 표현은 틀림.
– ‘모든 클래스의 데이터를 균등하게 만든다’는 표현은 오해의 소지가 있음.
ㅇ 시험 대비 “패턴 보기” 예시:
– O: Random Undersampling은 다수 클래스 데이터를 무작위로 제거하여 데이터 균형을 맞춘다.
– X: Random Undersampling은 소수 클래스 데이터를 추가로 생성한다.
ㅁ 추가 학습 내용
Random Undersampling의 단점은 데이터의 일부를 제거하는 과정에서 중요한 정보가 손실될 가능성이 있다는 것입니다. 이는 특히 데이터 세트가 작거나 중요한 샘플이 소수 클래스에 포함되어 있는 경우, 모델의 성능 저하로 이어질 수 있습니다. 이러한 단점을 보완하기 위해 Tomek Links와 Edited Nearest Neighbors(ENN)와 같은 기법이 자주 사용됩니다.
1. Tomek Links: Tomek Links는 두 개의 샘플이 서로 다른 클래스에 속하고, 두 샘플 사이의 거리가 가장 가까운 경우를 찾아 제거하는 방법입니다. 이를 통해 클래스 간 경계를 더 명확히 하고, 데이터의 불균형을 줄이는 동시에 중요한 정보를 보존할 수 있습니다.
2. Edited Nearest Neighbors (ENN): ENN은 각 샘플의 k-최근접 이웃(k-nearest neighbors)을 확인하여, 샘플의 클래스가 이웃의 다수 클래스와 다른 경우 해당 샘플을 제거하는 방법입니다. 이를 통해 데이터 세트에서 노이즈를 줄이고, 모델의 성능을 향상시킬 수 있습니다.
이 두 기법은 Random Undersampling의 단점을 보완하며, 데이터의 품질을 유지하면서도 클래스 불균형 문제를 해결하는 데 도움을 줍니다.