Dealing with Data Imbalance in Text_Classification

Dealing_with_Data_Imbalance_in_Text_Classification.pdf

Text Classification - Class Imbalance

특정 클래스 들의 데이터 수가 상대적으로 적은 Imbalance(불균형) 문제

Text Representation

<aside> 💡 텍스트를 벡터 형태로 바꾼 representation을 생성해내는 것

</aside>

Class Imbalance로 인해 발생하는 문제점 및 해결 방법

Resampling Methods

<aside> 💡 데이터 셋을 수정해서 클래스의 사이즈 간 차이를 줄이는 방법

</aside>

Resampling 방식

  1. Undersampling - majority class(data 수가 많은 class)의 데이터를 삭제하는 방식

    → 기존 실험들에서 좋지 않은 결과를 내는 것으로 밝혀짐. → ❌

  2. Oversampling - minority class(data 수가 적은 class)의 데이터를 만들어내는 방식

Oversampling

  1. Random Oversampling

    <aside> 💡 minority class 에서 샘플을 랜덤으로 뽑아서 복사하는 방법

    </aside>

  2. SMOTE(= Synthetic Minority Over-sampling Technique)

    <aside> 💡 minority class 의 샘플을 가져와 이들을 잇는 선에서 중간값을 택하여 만들어내는 방식

    </aside>

    https://blog.kakaocdn.net/dn/Fl7bu/btq3EJht1Ia/r6JxEIUl2r6qzB2KJsu4Bk/img.gif

  3. SMOTE-SVM

    <aside> 💡 SVM Classfier에 의해 만들어진 Suppoort Vectors(경계선과 가까운 vertor들)에 속하는 인스턴스 들에만 SMOTE algorithm 을 적용한 방법

    </aside>