데이터 불균형이란 어느 분류(a)에 속하는 데이터 수가 다른 분류(b)에 비해 적은 상태를 의미합니다.
데이터가 충분하다고 하면 데이터를 억지로 늘리지 않아도 되지만, 데이터 수가 부족하다면 불균형 데이터를 조정해야 합니다.
머신러닝에서 학습 데이터가 부족하다면, 예측 정확도가 떨어질 확률이 높습니다.
불균형 데이터를 해결하기 위한 방법은 3가지 입니다.
오버샘플링
오버샘플링이란 머신러닝 모델을 만들 때, 가중치를 부여하는 방법입니다.
원본 데이터를 변경하지 않고 적은 데이터에 중요도를 부여하여 불균형한 데이터로 학습할 수 있습니다.
하지만, 모든 머신러닝 모델에 적용할 수는 없습니다.
2. 언더샘플링
언더샘플링이란 데이터를 변경하여 불균형한 상태를 해결하는 방법입니다.
데이터를 줄이는 방법이기 때문에 데이터를 선택하는 방법을 고려해야 합니다.
데이터 선택은 데이터의 편향이 없는 랜덤 샘플링과 중복선택을 허용하지 않게 구현해야 합니다.
언더샘플링은 메모리나 계산량을 줄이기 위해 사용할수는 있지만 정보량을 적게 만드는 방법으로 잘 사용하는 방법은 아닙니다.
3. 오버샘플링 + 언더샘플링
오버샘플링으로 데이터에 영향이 미치지 않는 정도까지만 데이터 적은 쪽 데이터를 늘리고(오버샘플링), 데이터가 불균형이 해소될 정도까지만 데이터가 많으 쪽 데이터를 줄여서(언더샘플링) 정보의 불균형을 해소합니다.
Save $250 on SAS Innovate and get a free advance copy of the new SAS For Dummies book! Use the code "SASforDummies" to register. Don't miss out, May 6-9, in Orlando, Florida.