ホームページ > 記事 > テクノロジー周辺機器 > 機械学習アルゴリズムにおける特徴スクリーニングの問題
機械学習アルゴリズムにおける特徴スクリーニング問題
機械学習の分野では、特徴スクリーニングは非常に重要な問題です。その目標は、多数のアルゴリズムから特徴を選択することです。特徴: 予測タスクに最も役立つ特徴を選択します。特徴スクリーニングにより、次元が削減され、計算の複雑さが軽減され、モデルの精度と解釈可能性が向上します。
特徴スクリーニングには多くの方法がありますが、以下では一般的に使用される 3 つの特徴スクリーニング方法と、対応するコード例を紹介します。
分散スクリーニング法は、特徴の分散を計算することでターゲット変数に対する特徴の影響を評価する、シンプルで直感的な特徴選択方法です。 。 重要性。分散が小さいほど、ターゲット変数に対する特徴の影響が小さくなり、削除の対象となります。
from sklearn.feature_selection import VarianceThreshold # 创建特征矩阵 X = [[0, 2, 0, 3], [0, 1, 4, 3], [0, 1, 1, 3], [1, 2, 3, 5]] # 创建方差筛选器 selector = VarianceThreshold(threshold=0.8) # 应用筛选器 X_new = selector.fit_transform(X) print(X_new)
上記のコード例では、最初に 4x4 特徴行列 X を作成し、次に分散フィルターを作成しました。しきい値パラメーターを 0.8 に設定することで、分散が 0.8 より大きい特徴のみを保持します。最後に、フィルターを適用し、フィルターされた特徴行列 X_new を出力します。
相関係数スクリーニング法は、特徴とターゲット変数の間の相関に基づく特徴選択方法です。ピアソン相関係数を使用して、特徴とターゲット変数の間の線形相関を測定します。相関係数の絶対値が大きいほど、特徴量と対象変数との相関が強いことになり、保持の対象とみなすことができます。
import pandas as pd from sklearn.feature_selection import SelectKBest from sklearn.feature_selection import f_regression # 创建特征矩阵和目标变量 X = pd.DataFrame([[1, -1, 2], [2, 0, 0], [0, 1, -1], [0, 2, 3]]) y = pd.Series([1, 2, 3, 4]) # 创建相关系数筛选器 selector = SelectKBest(score_func=f_regression, k=2) # 应用筛选器 X_new = selector.fit_transform(X, y) print(X_new)
上記のコード例では、最初に 3x3 特徴行列 X と 4 つの値を含むターゲット変数 y を作成しました。次に、相関係数フィルターを作成しました。score_func パラメーターを f_regression に設定すると、f_regression 関数を使用して特徴量とターゲット変数の間の相関係数を計算することになります。最後に、フィルターを適用し、フィルターされた特徴行列 X_new を出力します。
モデルベースのスクリーニング手法では、教師あり学習モデルをトレーニングすることで特徴の重要性を評価し、最も役立つ特徴を選択します。ターゲット変数。一般的に使用されるモデルには、デシジョン ツリー、ランダム フォレスト、サポート ベクター マシンが含まれます。
from sklearn.ensemble import RandomForestClassifier from sklearn.feature_selection import SelectFromModel # 创建特征矩阵和目标变量 X = [[0.87, -0.15, 0.67, 1.52], [0.50, -0.12, -0.23, 0.31], [0.14, 1.03, -2.08, -0.06], [-0.68, -0.64, 1.62, -0.36]] y = [0, 1, 0, 1] # 创建随机森林分类器 clf = RandomForestClassifier() # 创建基于模型的筛选器 selector = SelectFromModel(clf) # 应用筛选器 X_new = selector.fit_transform(X, y) print(X_new)
上記のコード例では、最初に 4x4 特徴行列 X と 4 つの分類ラベルを含むターゲット変数 y を作成しました。次に、ランダム フォレスト分類器が作成され、モデルベースのフィルターが作成されました。最後に、フィルターを適用し、フィルターされた特徴行列 X_new を出力します。
特徴スクリーニングは機械学習アルゴリズムにおける重要な問題であり、特徴を合理的に選択してスクリーニングすることで、モデルの精度と解釈可能性を向上させることができます。上記のコード例では、一般的に使用される 3 つの特徴スクリーニング方法 (分散スクリーニング方法、相関係数スクリーニング方法、およびモデルベースのスクリーニング方法) のコード例を示しており、読者が特徴スクリーニングを理解して適用する際の参考になれば幸いです。
以上が機械学習アルゴリズムにおける特徴スクリーニングの問題の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。