公開日: 04/01/2021

欠測値をカテゴリとして扱う例

この例では、顧客の信用リスクを予想するためのディシジョンツリーを構築します。データには欠測値が含まれているため、[欠測値をカテゴリとして扱う]オプションが役立つかどうかも見てみます。

「パーティション」プラットフォームの起動

1. [ヘルプ]>[サンプルデータライブラリ]を選択し、「Equity.jmp」を開きます。

2. [分析]>[予測モデル]>[パーティション]を選択します。

3. 「BAD」を選択し、[Y, 目的変数]をクリックします。

4. 「LOAN」から「DEBTINC」までを選択し、[X, 説明変数]をクリックします。

5. [OK]をクリックします。

[欠測値をカテゴリとして扱う]を使ったディシジョンツリーとROC曲線の作成

1. Shiftキーを押しながら[分岐]をクリックします。

2. 「分岐数を入力」に「5」と入力し、[OK]をクリックします。

3. 「BADのパーティション」の赤い三角ボタンをクリックし、[ROC曲線]をクリックします。

4. 「BADのパーティション」の赤い三角ボタンをクリックし、[列の保存]>[予測式の保存]を選択します。

「確率(BAD==Good Risk)」列と「確率(BAD==Bad Risk)」列には、「欠測値をカテゴリとして扱う」オプションに基づいた予測式によって、ローン申込者の信用リスクを分類する計算式が含まれています。この予測式を、[欠測値をカテゴリとして扱う]を使わなかった場合の予測式と比較してみましょう。

[欠測値をカテゴリとして扱う]を使わないディシジョンツリーとROC曲線の作成

1. 「BADのパーティション」の赤い三角ボタンをクリックし、[やり直し]>[分析の再起動]を選択します。

2. [欠測値をカテゴリとして扱う]の選択を解除します。

3. [OK]をクリックし、[欠測値をカテゴリとして扱う]を使ったディシジョンツリーとROC曲線の作成の手順を繰り返します。

「確率(BAD==Good Risk) 2」列と「確率(BAD==Bad Risk) 2」列には、[欠測値をカテゴリとして扱う]を使わない計算式が含まれています。

ROC曲線の比較

2つのモデルのROC曲線を比較してみてください。左側は[欠測値をカテゴリとして扱う]を使ったモデルで、右側は[欠測値をカテゴリとして扱う]を使わなかったモデルです。

図4.23 [欠測値をカテゴリとして扱う]を使ったモデル(左)と[欠測値をカテゴリとして扱う]を使わなかったモデルのROC曲線 

[欠測値をカテゴリとして扱う]を使ったモデルの曲線の下の面積(AUC; Area Under Curve)(0.8695)は、[欠測値をカテゴリとして扱う]を使わなかったモデルのAUC(0.7283)より大きくなっています。この例の応答変数は2水準なので、一方の水準のROC曲線は他方の水準のROC曲線と対角線で対称となっています。また、それら両者のAUCは等しいです。

注: [欠測値をカテゴリとして扱う]を使わなかった場合、得られるAUCは分析ごとに変化します。[欠測値をカテゴリとして扱う]を使わなかった場合、欠測値を含む行は、分岐のいずれかに無作為に割り当てられます。そのため、分析を再実行すると、結果がわずかに異なります。

「モデルの比較」プラットフォームの使用

次に、「モデルの比較」プラットフォームを用いてこれらのモデルを比較してみましょう。先ほどの手順で作成した2つの予測式の違いを見てみましょう。

1. [分析]>[予測モデル]>[モデルの比較]を選択します。

2. 「確率(BAD==Good Risk)」「確率(BAD==Bad Risk)」「確率(BAD==Good Risk) 2」、および「確率(BAD==Bad Risk) 2」を選択し、[Y, 予測子]をクリックします。

最初の計算式列ペアには[欠測値をカテゴリとして扱う]を使ったモデルの計算式が含まれています。2つ目の計算式列ペアには[欠測値をカテゴリとして扱う]を使わなかったモデルの計算式が含まれています。

3. [OK]をクリックします。

図4.24 「モデルの比較」で得られた適合度指標 

「適合度指標」レポートを見ると、[欠測値をカテゴリとして扱う]を使った最初のモデルの方が、[欠測値をカテゴリとして扱う]を使わなかった2つ目のモデルより予測精度が良いことがわかります。最初のモデルの方が、R2乗値が大きく、RMSE値と誤分類率が小さくなっています。これらの傾向はROC曲線を比較しても分かります。

注: 前述したとおり、[欠測値をカテゴリとして扱う]を使わなかったときの結果は、乱数に依存しているために異なります。

より詳細な情報が必要な場合や、質問があるときは、JMPユーザーコミュニティで答えを見つけましょう (community.jmp.com).