나는조이 2022. 1. 17. 13:33

 

SMOTE(Synthetic Minority Oversampling Technique)란 데이터가 부족할 때, 특히 분류 문제에서 클래스 간 불균형을 해결하기 위해 사용하는 대표적인 오버 샘플링 기법입니다.

아래 그림처럼 '+' 클래스의 데이터를 SMOTE 해보겠습니다.
빨간 원으로 표시한 데이터로부터 k개의 NN(Nearest Neighbors) 중 랜덤 샘플 하나(작은 빨간 원으로 표시)를 선택합니다.
② 선택한 샘플 `\hat{x_i}`와 기존 샘플 `x_i`을 연결한 직선 위의 새로운 랜덤 샘플(파란색)을 생성합니다.

https://rikunert.com/smote_explained


위 내용을 새로 생성한 샘플에 대한 수식으로 표현하면 다음과 같습니다.
$$Synthetic(New)\: Sample = x_i + u\: \cdot \: (\hat{x_i} - x_i)$$

이때 `u`는 연속 균등 분포(Continuous Uniform Distribution)를 의미하며, 기호로 나타내면 `U(0, 1)`로 0부터 1 사이 값을 랜덤으로 뽑아 곱해준다고 할 수 있습니다.
일반적인 연속 균등 분포는 기호로 `U(a, b)`로 나타낼 수 있고, 해당 확률 밀도 함수를 표현하면 다음과 같습니다.

https://ko.wikipedia.org/wiki/%EC%97%B0%EC%86%8D%EA%B7%A0%EB%93%B1%EB%B6%84%ED%8F%AC

 


아래 글을 참고했습니다.

반응형