見出し画像

目的変数への説明変数の影響を評価する~ニューラルワークスPredictによる感度分析

先日ですが、ニューラルワークス製品の導入を検討されているお客様より

製品特性データの予測で良い評価を得たのですが、上司に話したところ、「NNだとどの因子が効いているかわからないから、ダメだろ!」
と言われてしまいました

とのことでした。ニューラルネットワーク分析は歴史が長い分、例えば構造がブラックボックスという言われ方のイメージから、事実とは異なる先入観や誤解も根強く残っているようです。

ニューラルワークス Predictの多くの機能の一つに、個々の入力変数が、モデルで使用される他の入力変数に対して、モデルの出力に与える貢献度を比較できる機能があります。

この感度分析機能の詳細はPredictユーザーガイドに記述されていますが、理解が容易な例を見てみることは非常に役に立ちます。

以下に続くテーブルは「土壌蒸発」の例題に対して、感度分析を実行した結果です。これは、ニューラルワークス Predictのクイックスタートガイドで紹介されている例と同じです。

上記の集計結果では、元のすべての変数に対して数値が示されており、3行で次の情報が書かれています。

平均:この行は、感度の正と負の傾向を示します。負の値は一般的に、フィールドの増加によって、予測出力を減少させることを意味します;すなわち、そのフィールドと出力には負の相関があります。

正の値は一般的に、フィールドの増加によって、予測出力を同様に増加させることを意味します。

平方平均:この行は、感度の強度を最もよく(平均よりもよい)あらわします。ここでは、傾き情報は決定することはできませんが、もしあるフィールドが別のフィールドに対して4倍の値であるならば、最初のフィールドは2番目のフィールドに比較して4倍の影響を出力に与えることを意味します。

分散:これは、単に個々のフィールド列の感度の分散に他なりません。

ここで、3つの全集計行(平均、平方平均、分散)は、それぞれのレコードの感度分析を実行したあとの単純な統計集計であるということに注意してください。

もし、20フィールドの100レコードがあれば、まず内部的には感度値の100行10列のマトリックスが作成されます。

分散値は、どの程度、平方平均値と平均値を信頼してよいかの程度を与えます。

この特別な例題では、全ての入力フィールドが使用されています;Predictは変数選択の実行中では入力フィールドを削除しなかったことになります。

多くのアプリケーションでは、強力な遺伝的アルゴリズムによって、削除される入力フィールドがあります。

そのようなフィールドは、感度分析においては、モデルの出力に対して、影響度が0と示されます。

上の棒グラフは平方平均値を示します。それらの結果は、土壌蒸発データを使ったモデルからの結果です。

棒グラフは、入力の重要度を顕著に示します。縦軸のスケールは重要ではありません;個々の棒の相対的な高さだけが重要です。

弊社では、データ分析プロジェクトにまつわる様々なご相談に、過去20年以上に渡るプロジェクト経験に基づき、ご支援しています。

社内セミナーの企画等、お気軽にご相談いただければ幸いです。

この記事が気に入ったらサポートをしてみませんか?