回答:
PCAを特徴選択のツールとして使用する場合の基本的な考え方は、係数(負荷)の大きさ(絶対値の最大から最小まで)に従って変数を選択することです。PCAは、(多かれ少なかれ相関のある)変数を、元の変数のk < pの無相関線形結合(射影)に置き換えようとしていることを思い出してください。手元の問題に最適なkを選択する方法を無視しましょう。これらのk主成分は、説明された分散を通じて重要度によってランク付けされ、各変数は各成分にさまざまな程度で寄与します。最大の分散基準を使用することは、特徴抽出に似ています 、元の変数の代わりに、主成分が新しい機能として使用されます。ただし、最初のコンポーネントのみを保持し、絶対係数が最も高い変数を選択することもできます。数jは、変数の数の割合(たとえば、p変数の上位10%のみを保持する)、または固定カットオフ(たとえば、正規化された係数のしきい値を考慮する)に基づく場合があります。このアプローチは、ペナルティ付き回帰(またはPLS回帰)におけるLasso演算子と似ています。ただし、jの値も保持するコンポーネントの数も明らかな選択肢ではありません。
PCAを使用する場合の問題は、(1)元の変数すべてからの測定値が低次元空間への投影に使用されること、(2)線形関係のみが考慮されること、および(3)PCAまたはSVDベースの方法も同様である単変量スクリーニング法(t検定、相関など)として、データ構造の潜在的な多変量の性質(変数間の高次相互作用など)を考慮しないでください。
ポイント1について、いくつかのより精巧なスクリーニング方法は、例えば、提案されている主な特徴分析「のため使用されるもののように、または段階的な方法で遺伝子シェービング遺伝子発現研究に」。また、スパースPCAを使用して、結果の変数ロードに基づいて次元削減と変数選択を実行する場合があります。ポイント2について、非線形の関係を低次元空間に埋め込む必要がある場合は、カーネル PCAを使用できます(カーネルトリックを使用)。決定木、またはより良いランダムフォレストアルゴリズムは、ポイント3をより適切に解決できる可能性があります。後者では、変数の重要性の Giniまたは順列ベースの尺度を導出できます。
最後のポイント:分類または回帰モデルを適用する前に特徴選択を実行する場合は、必ずプロセス全体を相互検証してください(統計学習の要素 §7.10.2 またはAmbroise and McLachlan、2002を参照)。
Rソリューションに興味があるように思えるので、分類コンテキストまたは回帰コンテキストでのデータの前処理と変数選択のための多くの便利な機能を含むキャレットパッケージをご覧になることをお勧めします。
N個のフィーチャのセットが与えられると、PCA分析は、(1)最大の分散を持つフィーチャの線形結合(最初のPCAコンポーネント)、(2)最初のPCAコンポーネントに直交する部分空間で最大の分散を持つ線形結合などを生成します(組み合わせの係数が単位ノルムを持つベクトルを形成するという制約の下で)最大分散を持つ線形組み合わせが「良い」機能であるかどうかは、実際に予測しようとしているものに依存します。このため、PCAコンポーネントであることと「良い」機能であることは、(一般に)2つの無関係な概念であると言えます。
PCAで使用される分散は基本的に多次元エンティティであるため、分散に従ってフィーチャを並べ替えることはできません。フィーチャの順序は、選択した特定の方向(通常は最初の主要な要素)に分散を投影することによってのみ順序付けできます。つまり、フィーチャに分散があるかどうかは、投影方向の選択方法によって異なります。