「Boston Housing.jmp」サンプルデータには、住宅価格の中央値に影響を及ぼしていると考えられる13の因子に関するデータが記録されています。ここでは、ニューラルネットワークを使用してモデルをあてはめてみます。ニューラルネットワークの場合、通常の回帰分析で行われているような仮説検定によっては、各因子の重要度を評価できません。そこで、ここでは[変数重要度の評価]オプションを使用してみます。
処理の一部で乱数を用いているため、実際の結果は、以下と違ったものになりますが、おおむね同じになるはずです。この例では、乱数を用いている処理が2個所あります。第1に、ニューラルネットワークをあてはめる際に、k分割交差検証を用います。この時、学習データと検証データに無作為に元のデータが分割されます。第2に、因子重要度の計算で、無作為に抽出した標本を使います。
1. [ヘルプ]>[サンプルデータライブラリ]を選択し、「Boston Housing.jmp」を開きます。
2. [分析]>[予測モデル]>[ニューラル]を選択します。
3. 「列の選択」リストで「持ち家の価格」を選択し、[Y, 目的変数]をクリックします。
4. 「列の選択」リストで他のすべての列を選択し、[X, 説明変数]をクリックします。
5. [OK]をクリックします。
6. 「ニューラル」の「モデルの設定」パネルで、「検証法」の下のリストから[K分割]を選択します。
[K分割]を選択すると、「分割数」が表示され、デフォルト値の5に設定されます。
7. (オプション)「乱数シード値」に「123」と入力します。
メモ: ニューラルネットワークモデルでは、検証セットが無作為に抽出されるため、結果がいつも同じではありません。上記のものと同じ乱数シード値を入力すると、以下の結果を再現できます。
8. [実行]をクリックします。
9. 「モデル NTanH(3)」の赤い三角ボタンをクリックし、[プロファイル]を選択します。
レポートの末尾に「予測プロファイル」が表示されます。後で比較できるよう、因子の並び順を覚えておいてください。
因子間に相関関係があるため、その点を考慮して、重要度計算時の標本抽出法として[従属する標本再抽出の入力]を選択します。
10. 「予測プロファイル」の赤い三角ボタンをクリックし、[変数重要度の評価]>[従属する標本再抽出の入力]を選択します。
「変数重要度:従属する標本再抽出の入力」レポートが表示されます。「予測プロファイル」のセルの並び順が、レポートの「全効果」の値の大きい順に変化している点を確認してください。図3.26の「全効果」の値から、「部屋数」と「低所得者」が応答の予測値に大きい影響力を持つ因子だと判断できます。
図3.26 「従属する標本再抽出の入力」レポート
因子間に相関があると仮定して求めた重要度と、因子が相互に独立であると仮定して求めた重要度を比較してみてもよいでしょう。
11. 「予測プロファイル」の赤い三角ボタンをクリックし、[変数重要度の評価]>[独立な標本再抽出の入力]を選択します。
因子間の相関がなく、分布が一様分布でない場合には、この[独立な標本再抽出の入力]オプションを用いるのが良いでしょう。「変数重要度:独立な標本再抽出の入力」レポートが図3.27に表示されます。ここでは、予測値に対する寄与率の高い因子として「高速道路」と「低所得者」の2因子を確認できます。
図3.27 「独立な標本再抽出の入力」レポート