次の方法で共有


順列の特徴量の重要度

重要

Machine Learning Studio (クラシック) のサポートは、2024 年 8 月 31 日に終了します。 その日までに、Azure Machine Learning に切り替えすることをお勧めします。

2021 年 12 月 1 日以降、新しい Machine Learning Studio (クラシック) リソースは作成できません。 2024 年 8 月 31 日まで、既存の Machine Learning Studio (クラシック) リソースを引き続き使用できます。

ML Studio (クラシック) のドキュメントは廃止予定であり、今後更新されない可能性があります。

与えられたトレーニング済みモデルとテスト データセットに対して特徴変数の順列特徴の重要度スコアを計算します。

カテゴリ: 機能選択モジュール

注意

適用対象: Machine Learning Studio (クラシック) のみ

類似のドラッグ アンド ドロップ モジュールは Azure Machine Learning デザイナーで使用できます。

モジュールの概要

この記事では、Machine Learning Studio (クラシック) の Permutation Feature Importance モジュールを使用して、データセットの特徴の重要度スコアのセットを計算する方法について説明します。 これらのスコアは、モデルで使用する最適な特徴を決定するために使用します。

このモジュールでは、特徴の値は一度に 1 列ずつランダムにシャッフルされ、その前後のモデルのパフォーマンスが測定されます。 提供される標準メトリックの 1 つを選択してパフォーマンスを測定できます。

モジュールから返されるスコアは、順列の後のトレーニング済みモデルのパフォーマンスの変化を表しています。 重要な特徴は、通常、シャッフル プロセスの影響を受けやすいため、重要度スコアは高くなります。

この記事では、順順の特徴の重要度、その理論上の基礎、および機械学習におけるその適用の一般的な概要を示します。順数特徴の 重要度

順列の特徴量の重要度の使用方法

特徴スコアのセットを生成するには、テスト データセットだけでなくトレーニング済みのモデルが必要です。

  1. Permutation Feature Importance モジュールを実験に追加します。 このモジュールは、 [Feature Selection]/(特徴選択/) カテゴリにあります。

  2. トレーニング済みのモデルを左側の入力に接続します。 モデルは回帰モデルまたは分類モデルである必要があります。

  3. 右側の入力で、データセットを接続します。可能であれば、モデルのトレーニングに使用されたデータセットとは異なるものを使用します。 このデータセットは、トレーニング済みのモデルに基づくスコアリングと、特徴の値が変更された後のモデルの評価に使用されます。

  4. [Random seed]\(ランダム シード\) には、ランダム化のシードとして使用する値を入力します。 0 (既定値) を指定すると、システム クロックに基づいて数値が生成されます。

    シード値は省略可能ですが、同じ実験の実行全体で再現性が必要な場合は、値を指定する必要があります。

  5. [Metric for measuring performance]/(パフォーマンスを測定するためのメトリック/) については、順列後にモデルの品質を計算するときに使用する 1 つのメトリックを選択します。

    Machine Learning Studio (クラシック) では、分類モデルと回帰モデルのどちらの評価を行う場合でも、次のメトリックがサポートされます。

    • 分類

      精度、正確度、リコール、平均ログ損失

    • Regression (回帰)

      精度、リコール、平均絶対誤差、平均二乗誤差、相対絶対誤差、相対二乗誤差、決定係数

    これらの評価メトリックとそれらの計算方法の詳細については、「評価」を参照 してください

  6. 実験を実行します。

  7. このモジュールは、特徴列とそれらに関連付けられているスコアの一覧を、スコアの順序に従って降順に出力します。

次のサンプル実験については 、次のAzure AI Gallery。

  • 順順順の特徴の重要度: このモジュールを使用して、順順の重要度スコアの順にデータセットの特徴変数をランク付けする方法を示します。

  • Permutation Feature Importance モジュールの使用: Web サービスでのこのモジュールの使用方法を示します。

テクニカル ノート

このセクションには、実装の詳細、ヒント、よく寄せられる質問への回答が提供されています。

これは他の特徴選択方式とどのように比較されるのでしょうか。

順列の特徴量の重要度は、各特徴列の値を一度に 1 列ずつランダムに変更し、モデルを評価することによって機能します。

順列の特徴量の重要度によって提供される順位付けは、モデルの作成前にスコアを計算するフィルターに基づく特徴選択から得られるものとは異なることがよくあります。

これは、順列の特徴量の重要度では、特徴量と目標値の間の関連付けが測定されず、モデルからの予測に対して各機能がどの程度の影響を与えるかをキャプチャするためです。

想定される入力

名前 説明
トレーニングされたモデル ILearner インターフェイス トレーニング済みの分類または回帰モデル
テスト データ データ テーブル 特徴値の順列後のモデルのスコア付けと評価のためのテスト データセット

モジュールのパラメーター

名前 種類 Range 省略可能 Default 説明
Random seed (ランダム シード) Integer >=0 必須 0 乱数ジェネレーター シード値
パフォーマンスを測定するためのメトリック EvaluationMetricType 一覧から選択する 必須 分類 - 精度 変化後のモデルの変動性を評価するときに使用するメトリックを選択する

出力

名前 説明
特徴の重要度 データ テーブル 選択したメトリックに基づいて特徴の重要度結果を含むデータセット

例外

例外 説明
エラー 0062 学習器の種類が異なる 2 つのモデルを比較しようとすると、例外が発生します。
エラー 0024 データセットにラベル列が含まれていない場合、例外が発生します。
エラー 0105 モジュール定義ファイルによりサポートされないパラメーター タイプが定義されるときにスローされます
エラー 0021 モジュールに渡された一部のデータセットの行の数が少なすぎる場合、例外が発生します。

こちらもご覧ください

特徴選択
フィルターに基づく特徴選択
主成分分析を参照してください