不均衡データ(Imbalanced Data)とは?:AI・機械学習の用語辞典
用語「不均衡データ」について説明。分類問題におけるラベル(目的変数)の各クラス数の比率が大きく偏っているデータを指す。不均衡データでは評価値に注意し、場合によっては不均衡を是正するための工夫を行う必要がある。
用語解説
統計学/機械学習における不均衡データ(Imbalanced Data)とは、分類問題におけるラベル(目的変数)の各クラス数の比率が大きく偏っているデータを指す。比率が大きいクラスは多数派クラス(majority classes)、比率が小さいクラスは少数派クラス(minority classes)などと呼ばれる。
不均衡データかどうかは、ラベル(目的変数)の各クラスで棒グラフを作成すると、目視で確認しやすい。多クラス分類ではなく二値分類では、混同行列を作成することによっても容易に確認できる(図1)。
例えば何らかの機械学習を行う場合、二値分類であれば陽性(正例:positive)が50%、陰性(負例:negative)が50%と、できるだけ均等であることが好ましい。そのような均衡なデータセットで機械学習を行えば、陽性と陰性の両方を同じ数だけ訓練できるからだ。
しかしもし、陽性が1%、陰性が99%のようなデータの場合はどうだろうか? 陽性は1%しか訓練できない。そのため、陽性を予測できない、常に陰性と予測するような、問題のある機械学習モデルに仕上がったとしても、評価値となる正解率(accuracy)は99%と高くなってしまう。よって1つの評価値を見るだけで「高性能のモデルができた」とぬか喜びしてはいけない。分類問題では、不均衡データのせいで不当に高い評価値になっていないかを必ず確認する必要がある。
一般化された明確な基準はないが、二値分類であれば少数派クラスが、
- 1%未満=重度の不均衡データ
- 1%以上〜20%未満=中度の不均衡データ
- 21%以上〜40%未満=軽度の不均衡データ
ぐらいで考えると良さそうである。
不均衡データの場合に機械学習モデルを適切に評価するには、正解率だけでなく、適合率(Precision)、再現率(Recall)/感度(Sensitivity)、特異度(Specificity)、F値(F-measure、F-score)/F1スコア(F1-score)など複数の評価値を確認すべきである。
また、不均衡データを是正するためのテクニックとして、
- アンダーサンプリング(Undersampling): 多数派クラスを少数派クラスの数と同じくらいまで(もしくは不均衡が弱まるまで)減らすこと。ダウンサンプリング(Downsampling)とも呼ぶ
- オーバーサンプリング(Oversampling): 少数派クラスを多数派クラスの数と同じくらいまで(もしくは不均衡が弱まるまで)増やすこと。アップサンプリング(Upsampling)とも呼ぶ
などがある。データに余裕があればアンダーサンプリングするのが適切であるが、特にディープラーニングなどでデータを減らすと訓練時に問題がある場合にはオーバーサンプリングでデータを水増しなければならないケースも多い。
この他のテクニックとしては、少数派クラスに重み(重要性)を付加する方法などがある。
ここを更新しました(2024年7月24日)
正解率、適合率、再現率/感度、特異度、F値/F1スコアへのリンクを追加しました。
Copyright© Digital Advantage Corp. All Rights Reserved.