抄訳 ADASYN: Adaptive Synthetic Sampling Approach for Imbalanced Learning(2008)

September 11, 2022

ADASYNはオーバーサンプリングで不均衡データの予測性能を向上させる。 以前抄訳したSMOTEとおなじく、既存の学習データからサンプルを合成する。 SMOTEとの違いは、K近傍に多数クラスのサンプルの多い少数クラスのサンプルから、より多くのサンプルを合成する点にある。

サンプル数\(m_l\)件の多数クラスと\(m_s\)件の少数クラスからなる\(m\)件の\(n\)次元の学習データでアルゴリズムを説明する。 まず、ハイパーパラメタ\(\beta\in[0,1]\)で合成するサンプル数を制御する\(G\)を求める。 $$ G=(m_l - m_s)\times\beta $$

少数クラスの各サンプルについて、K近傍にある多数クラスのサンプル数を\(\Delta_i\), \(i=1, \dots , m_s\)として以下を求める。 $$ r_i=\frac{\Delta_i}{K} $$

次に、密度分布になるように正規化する。 $$ \hat{r}_i = \frac{r_i}{\sum^{m_s}_{i=1}r_i} $$ 正規化された値と\(G\)の積\(g_i\)だけサンプルから少数クラスを合成する。 $$ g_i=\hat{r}_i\times G $$ K近傍の少数クラスのサンプルをランダムに1つ\(\boldsymbol{x}_{zi}\)を選び、 \([0, 1]\)区間のランダムな値\(\lambda\)をもちいて、以下の式で\(n\)次元の各要素を計算し、サンプルを合成する。

$$ \boldsymbol{s}_i = \boldsymbol{x}_i + (\boldsymbol{z_{zi}}-\boldsymbol{x}_i)\times \lambda $$

論文のリンク

雑記

少数クラスと多数クラスの境界面に多くのサンプルが生成されるため、少数クラスが期待よりも予測されがちな場合は避けたほうがよさそう。