棒グラフからバランスノードを生成し不均衡データを補正する
1.想定される利用目的
・予測対象が極端に不均衡な場合に起こる無意味なモデルの回避(全て0か1に予測を集中)
*不正や故障は非常に頻度が少ないため全てのケースを「不正なし」や「故障なし」と予測すると見せかけの精度が向上する。例えば1%しか不正がない場合「不正なし」と全件予測すれば、業務上価値はないが予測精度は99%になる。
2.サンプルストリームのダウンロード
3.サンプルストリームの説明
a.入力するデータは次の通りです。
判定の不均衡を補正しないで予測する
b.[データ型]ノードを編集します。[判定]を予測対象に選択します。
c.[データ区分]ノードを編集します。初期設定のまま5割を学習、5割を検証にしてランダムシードを固定します。
d.[CHAID]ノードを[実行]します。
e.[CHAID]ナゲットが生成されます。
f.[精度分析]ノードを編集します。全てOKと予測して98%の精度(Accuracy)を確保しましたが、赤枠の検証の通りNG判定をひとつも検知できていません。
[棒グラフ]ノードから不均衡(アンバランス)を補正するバランスノードを生成する
g.[棒グラフ]ノードを実行します。
(生成)メニューから[バランスノード(減少)]を選択します。[バランス]ノードが自動生成されます。
h.[バランス]ノードを編集します。NGとOKがほぼ等しい数になるようにOKを自動サンプリングします。
i.[棒グラフ]ノードを実行します。
生成された[バランス]ノードを利用してモデルを作り直す
j.cを複製しています。
k.hを複製しています。
l.dを複製しています。
m.lを[実行]して生成させます。
n.[精度分析]ノードを[実行]します。正誤行列が作られましたので適合率や再現率が計算・表示です。
注意事項
NGの個数が少ない場合にはバランスノードを増加させる方法を検討します。
4.参考情報
棒グラフのノードリファレンス
SPSS Modeler ノードリファレンス目次
SPSS Modeler 逆引きストリーム集(データ加工)