最も重要な機能を推測する


7

インスタンスのセットが与えられます。インスタンスごとに、(数値)特徴(、、...、)、n >> mで構成される特徴ベクトルがあります。さらに、インスタンスごとに数値スコア(観測可能)があります。私はしたいと思います:メートルバツ1バツ2バツメートルy

  1. 特徴のどのサブセットまたはその線形結合がスコアを最もよく説明しているかを調べます。
  2. このための素晴らしい視覚化を作成します。

主成分分析(PCA)を指摘されました。PCAの問題は、特徴ベクトルのみが考慮されることです。PCAは、特徴を数値スコア関連付けません。y

実用的なアプリケーション:多数の問題インスタンス(巡回セールスマンの問題など)と、問題を解決するためのいくつかのアルゴリズムがある場合。インスタンスを解決するたびに、インスタンスの解決にかかった合計時間(=スコア)を測定できます。さらに、インスタンスごとに、インスタンスのサイズ、グラフの直径など、いくつかの機能を取得できます。これらの機能のどれが計算時間を最もよく説明しますか?


「インスタンス」とは、観測(つまり、通常はデータの「行」)を意味しますか?
StatsStudent 2018年

回帰モデリング設定を使用してから、何らかのモデル選択を実行できませんか?どのタイプのモデリングを使用するかは、各フィーチャと残りのフィーチャを制御するyとの関係の線形性または非線形性を仮定できるかどうかに依存すると思います。線形性については、線形回帰モデリングが行います。非線形性の場合、一般化された加法モデリングがオプションになる可能性があります。
Isabella Ghement 2018年

インスタンスよりも予測子が少ない(つまり、m <n)と仮定すると、BIC基準に基づいてモデル選択を実行できます。これは、説明的な設定に適しています。最終モデルの視覚化に関する限り、効果プロットは機能します。これにより、最終モデルに含まれる残りの機能を制御した後、各機能の効果をyに表示できます。socialsciences.mcmaster.ca/jfox/Papers/…を参照してください。
Isabella Ghement 2018年

スコアと入力特徴の間の関係のタイプを明確にできますか(たとえば、線形であるか)?(1)の表現から判断するのは困難です(たとえば、スコアを特徴の線形結合の非線形関数と見なしている場合があります)。また、「スコアを最もよく説明する」ための特定の指標を考えていますか?
user20160

機能選択アルゴリズムが必要だと思います:en.wikipedia.org/wiki/Feature_selection
Steve Prestwich

回答:


0

多くのオプションがあり、それはあなたが正確に何をしたいかによります。

機能の重要性または順列の重要性

どちらの方法でも、モデルにとって最も重要な機能がわかります。各機能の番号です。モデルが適合した後に計算されます。フィーチャのどの値がどのスコアを意味するかについては何もわかりません。

sklearnでは、ほとんどのmodelzが持っていmodel.feature_importances_ます。すべての機能の重要度の合計は1です。

順列重要度は、適合モデルに対して計算されます。特徴列をシャッフルすると、メトリックがどの程度悪化するかがわかります。

疑似コード:

    model.fit()
    base_score = model.score(x_dev, y_dev)
    for i in range(nr_features):
        x_dev_copy = copy(x_dev)
        x_dev_copy[:, i] = shuffle(x_dev_copy[:, i])
        perm_score = model.score(x_dev_copy, y_dev)
        perm_imp[i] = (perm_score - base_score) / base_score

順列の重要性について詳しくは、こちらをご覧ください

部分依存プロット

フィーチャのどの値が予測の値を増減するかを示します。次のようになります。

ここに画像の説明を入力してください

Kaggleの詳細:部分依存プロットまたはライブラリPDPbox GitHubに直接アクセスしてください

SHAP値

モデルが特定のインスタンスに対して特定の予測を与える理由を説明します。次のグラフをプロットします。これは、現在のインスタンスの平均値から現在の値に予測を移動した機能値を示すグラフです。

ここに画像の説明を入力してください

詳細については、SHAPライブラリを確認してください。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.