PCAでのローディングと固有ベクトル:いつ使用するか?


67

主成分分析(PCA)では、固有ベクトル(単位ベクトル)と固有値を取得します。今、私たちのように負荷を定義してみましょう

Loadings=EigenvectorsEigenvalues.

固有ベクトルは単なる方向であり、負荷(上記で定義)にはこれらの方向に沿った分散も含まれることがわかっています。しかし、理解を深めるために、固有ベクトルの代わりにロードを使用する場所を知りたいのですが?例は完璧でしょう!

一般に、固有ベクトルを使用している人しか見ていませんが、時々(上記で定義したように)負荷を使用するため、その違いを本当に理解していないと感じています。

回答:


66

PCAでは、共分散(または相関)行列をスケール部分(固有値)と方向部分(固有ベクトル)に分割します。その後、固有ベクトルにscale:loadingsを付与できます。したがって、負荷は、変数間で観測された共分散/相関と大きさで比較可能になります-変​​数の共変動から引き出されたものが、変数と主成分間の共変動の形で戻るようになりました。実際、負荷元の変数と単位スケーリングされたコンポーネント間の共分散/相関ですこの回答は、PCAまたは因子分析において、荷重とコンポーネントと変数を関連付ける係数とを幾何学的に示しています。

ローディング

  1. 主成分または要因の解釈を支援します。なぜならそれらは線形スケールの重み(係数)であり、それによって単位スケールのコンポーネントまたは因子が変数を定義または「ロード」するからです

    (固有ベクトルは、直交変換または投影の単なる係数です。その値内に「負荷」はありません。「負荷」は、(量の情報)分散、大きさです。変数の分散を説明するためにPCが抽出されます。我々はeivenvalue分散の量によって我々 「負荷」裸係数のsq.rootにより固有ベクトルを乗算する。パソコン(=によって説明)。そのおかげで、我々は係数の尺度であるとするの分散関連、コ変動性)

  2. 読み込みは、解釈を容易にするために、後で「回転」(たとえば、バリマックス)れる場合があります(を参照)。

  3. 元の共分散/相関行列を「復元」するのは負荷です(その点でPCAとFAのニュアンスについて説明しているこのスレッドも参照してください)。

  4. PCAでは、固有ベクトルと負荷の両方からコンポーネントの値を計算できますが、因子分析では、負荷から因子スコアを計算します。

  5. そして、何よりも、ローディング行列は有益です。その垂直二乗和は固有値、コンポーネントの分散であり、水平二乗和はコンポーネントによって説明される変数の分散の一部です。

  6. 再スケーリングまたは標準化されたローディングは、変数のstで割ったローディングです。偏差; それは相関関係です。(PCAが相関ベースのPCAである場合、相関ベースのPCAは標準化された変数のPCAであるため、負荷は再スケーリングされたものと等しくなります。)再スケーリングされた負荷の2乗はpr 変数へのコンポーネント。値が高い(1に近い)場合、変数はそのコンポーネントだけで適切に定義されます。

PCAとFAで行われる計算の例をご覧ください

固有ベクトルは単位スケールの負荷です。そしてそれらは、変数を主成分に、または逆に直交変換(回転)する係数(余弦)です。したがって、コンポーネントの値(標準化されていない)を計算するのは簡単です。それに加えて、その使用は制限されています。固有ベクトル値の2乗は、変数のprへの寄与を意味します。成分; 高い(1に近い)場合、コンポーネントはその変数のみで適切に定義されます。

固有ベクトル負荷が簡単には、2つの異なる方法があり、同じ点の座標を正規のデータの列(変数)を表すバイプロットを、二つの用語を混合することは良い考えではありません。この答えは理由を説明しました。も参照してください


3
eigenvalues

1
サイドノート:ケモメトリックスでは、多くの予測モデルが前処理にPCAローテーション(!)を使用するため、元のデータからスコアを計算することは非常に重要です。そのため、PCAの主な用途は負荷の限られた使用です。
-cbeleites

2
@ cbeleites、PCA / FAの用語の慣習が異なる分野(または異なるソフトウェアや書籍)で異なる可能性があるだけでなく、私はそれらが異なると述べています。心理学と人間の行動では、「負荷」は通常、名前でラベル付けされたものです(潜在能力の解釈は保留中ですが、スコアは縮小、標準化され、誰も気にしない可能性があるため、これらの分野では負荷が非常に重要です)。一方、Rこのサイトの多くのユーザーは、PCAの固有ベクトルを「関数の読み込み」と呼んでいます。これはおそらく関数のドキュメントに由来している可能性があります。
ttnphns

(続き)最悪なのは、「ローディング」という言葉がPCAとまったく同じ意味ではなく、他の手法(LDA、正準相関など)で使用されていることです。そのため、言葉自体が危険にさらされています。@amoebaに同意します。彼はそれを完全に削除し、「相関」や「係数」などの統計的に正確な用語に置き換えると考えています。一方、「固有ベクトル」はsvd / eigen分解といくつかの薄暗い方法に限定されているようです。削減は、それらをまったく実行したり、従来の形式で実行したりしません。
ttnphns

1
混同している必要があります。ロードの助けを借りてPCスコアを適切に計算すると、単純に標準化されたコンポーネントになります。固有ベクトルの場合と同じ式でこれらのスコアを計算することはありません。むしろ、私の#4のリンクに記載されている式を使用する必要があります。
ttnphns

3

負荷、係数、固有ベクトルについてはかなりの混乱があるようです。ローディングという言葉は因子分析に由来し、因子へのデータ行列の回帰の係数を指します。それらは因子を定義する係数ではありません。たとえば、Mardia、Bibby、Kent、または他の多変量統計の教科書を参照してください。

近年、PCの係数を示すために「負荷」という単語が使用されています。ここでは、行列の固有値のsqrtで乗算された係数を示すために使用されたようです。これらは、PCAで一般的に使用される数量ではありません。主成分は、単位ノルム係数で重み付けされた変数の合計として定義されます。このようにして、PCは対応する固有値に等しいノルムを持ち、固有値はコンポーネントによって説明される分散に等しくなります。

因子に単位ノルムが必要なのは、因子分析です。しかし、FAとPCAは完全に異なります。PCの係数の回転は、コンポーネントの最適性を破壊するため、非常にまれにしか実行されません。

FAでは、因子は一意に定義されておらず、さまざまな方法で推定できます。重要な量は、共分散行列の構造を研究するために使用される負荷(真の量)と共同性です。PCAまたはPLSを使用してコンポーネントを推定する必要があります。


2
この回答は、特定の側面(+1)で正しいものであり、FAとPCAの両方を見ることができ、ファクター/コンポーネント(後者は単位スケール)による顕在変数の予測として比較可能である(ただし明確ではない)ことを見落としています。負荷はその予測の係数です。したがって、負荷は使用され、FAとPCAフィールドの両方で同じことを意味する有効な用語です。
ttnphns

3
また、一部のソース(特にRのドキュメント)が不注意に固有ベクトル係数を「ロード」と呼ぶのは残念です。それらにはロードが含まれていません。
ttnphns

FAとPCAが異なるモデルを推定しているだけです。FAでは、PCAではエラーは直交しますが、そうではありません。モデルの釣りをしているのでない限り、結果を比較してもあまり意味がありません。負荷は、行列の列であるLように、共分散行列を記述するために使用されるS = LL' + C場合C、対角行列です。PCの係数とは関係ありません。
マルコスタマザ

they have nothing to do with the PCs' coefficientsFAで行うように、PCAで負荷を計算します。モデルは異なりますが、負荷の意味は両方の方法で似ています。
ttnphns

0
In Factor Analysis (using PCA for extraction), we get orthonormal eigen vectors (unit vectors) and corresponding eigenvalues. Now, loadings are defined as 

Loadings = Orthonormal Eigenvectors values(絶対固有値)の平方根ここで、正規直交固有ベクトル(つまりOrthonormal Eigenvectorsの用語)は方向を提供し、(Absolute Eigen値)の平方根は値を提供します。

通常、人々は積荷の兆候は重要ではないと言いますが、その大きさは重要です。ただし、1つの固有ベクトルの方向を逆にすると(他の固有ベクトルの符号をそのまま保持する場合)、因子スコアは変更されます。したがって、今後の分析には大きな影響があります。

これまでのところ、このあいまいさに対する満足のいく解決策を得ることができませんでした。


0

この問題に関して多少の混乱があるように見えるので、いくつかの所見と、優れた答えが文献で見つかる場所へのポインタを提供します。

まず、PCAと因子分析(FA)関連しています。一般に、主成分は定義上直交していますが、因子(FAの類似エンティティ)はそうではありません。簡単に言えば、主成分は任意の方法で因子空間に広がりますが、データの純粋な固有分析から導き出されるため、必ずしも有用ではありません。一方、要因は、偶然の一致によってのみ直交(つまり、無相関または独立)である実世界のエンティティを表します。

l個の被験者のそれぞれからs個の観測値を取得するとします。これらは、データ行列に配置することができるDを有する複数の行とL個の列。Dは、D = SLとなるように、スコア行列Sローディング行列Lに分解できます。Sにはs行、Lにはl列があり、それぞれの2番目の次元は因子の数nです。因子分析の目的は、Dを分解することです基礎となるスコアと要因を明らかにするような方法で。Lの負荷は、Dの観測値を構成する各スコアの割合を示しています。

PCAでは、Lの列としてDの相関行列または共分散行列の固有ベクトルがあります。これらは通常、対応する固有値の降順に並べられます。nの値-すなわち、分析で保持する重要な主成分の数、したがってLの行数-は、通常、固有値のスクリープロットまたは他の多くの方法の1つを使用して決定されます。文学。PCA のSの列は、n個の抽象主成分自体を形成します。nの値は、データセットの基礎となる次元です。

因子分析の目的は、D = STT -1 Lのような変換行列Tを使用して、抽象コンポーネントを意味のある因子に変換することです。(ST)は変換されたスコア行列であり、(T -1 L)は変換された負荷行列です。

上記の説明は、エドモンド・R・マリノフスキーの化学における優れた因子分析からの表記にほぼ従っています。冒頭の章を主題の紹介として強くお勧めします。


この答えにはいくつかの問題があるようです。最初に、数式を確認してください、それらは正しくありません。第二に、FAとPCAの違いについて議論しようとしています。そのためにCVには別の長いスレッドがありますが、現在のスレッドは負荷と固有ベクトルに関するものなので、答えは間違っています。第三に、特に「FAの目的はDを分解すること」または「FAの目的は抽象的なコンポーネントを意味のある要素に変換すること」などのフレーズでは、FAの画像が歪んでいます。
ttnphns

私が投稿した資料はこのスレッドでの議論に関連すると考えており、負荷と固有ベクトルの関係についての説明を提供しています。
マットウェナム

:テーマに関する私の研究は、この論文にまとめたonlinelibrary.wiley.com/doi/10.1002/sia.740231303/full
マット・ウェンハム

OK、おそらくあなたのアカウントはまだ有効な特別なものです-あなたが提供するソースを読んでいないとは言えません。それでも、PCAの負荷と固有ベクトルの「関係」はすべて、問題に置かれた式にあることに注意してください。そのため、「説明」するものはほとんどありません(説明はそれらの異なるユーティリティである必要があります)。注目すべきもう1つのことは、QはFAではなくPCAに関するものです。そして、最終的に、すべてのFAメソッドが固有ベクトルを処理するわけではありませんが、必ずしも負荷を処理します。
ttnphns

申し訳ありませんが、2週間の試用版でDeepdyve.comからアクセスすることはできますが、公開されているバージョンの論文はないと思います。Malinowskiの本の最初の章は、上記のリンクから入手できます。これは、固有解析に言及せずに基本をカバーしています。私が使用したバリアント-ターゲット因子分析-が行うように、因子分析が固有分析なしで実行できることを知らなかったことを認めなければなりません。
マットウェナム

-1

私はそれらの名前に少し混乱しているので、「大気科学の統計的方法」という本を検索しました。PCAのさまざまな用語の概要がわかりました。

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

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

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