
240
■
5
章 分類
print('percentage of loans predicted to default: ',
100 * np.mean(full_model.predict(X) == 'default'))
ローンの
0.39 %
しか返済不能と予測されず、期待される個数の
1/47
以下だ
*
1
。モ デ ル
が、全データを等価に使って訓練されたものだから、ローン完済がローン返済不能より
圧倒的に多い。直感的に考えれば、返済不能でないローンがこんなに多数あり、予測
データの不可避的な変動と相まって、ローン返済不能に関してすら、モデルが偶然に
同様の間違ったものを見つけてしまうことが多いのだ。均衡サンプルを使うと、ローン
の約
50 %
が返済不能と予測される。
5.5.2
オーバーサンプリングと重み追加
/
削減
アンダーサンプリング法に対する批判の
1
つは、データを捨ててしまって、使える情
報すべてを活用していないというものだ。比較的小さなデータセットで、より稀なクラ
スに数百または数千レコードしかなかったら、優勢なクラスのアンダーサンプリングに
は、有用な情報を捨てるリスクがある。その場合、優勢な事例をダウンサンプリングし
ないで、稀なクラスで復元抽出(ブートストラップ)により行を追加するオーバーサンプ
リング(アップサンプリング)を行うべきだ。
データの重み付けでも同様の効果が得られる。分類アルゴリズムの多くで、データ
の重みを追加
/
削減できる重み引数を使うことができる。例えば、
R
の
glm
では
weight ...