主成分分析の「後方」:データの分散は、変数の与えられた線形結合によってどの程度説明されますか?


17

6つの変数、、、、、主成分分析を実行しました。正しく理解すれば、回転していないPC1はこれらの変数の線形結合がデータの最大の分散を説明/説明し、PC2はこれらの変数の線形結合がデータの次に大きな分散を説明するなどを教えてくれます。ABCDEF

私はちょうど興味があります-この「後方」を行う方法はありますか?これらの変数の線形結合を選択するとしましょう。たとえば、場合、これが記述するデータの分散を計算できますか?A+2B+5C


7
厳密には、PC2はPC1に直交する線形結合であり、データの次に大きい分散を表します。
ヘンリー

1
を推定しようとしていますか?Var(A+2B+5C)
vqv

すべての良い答え(3つの+1)。1つ以上の潜在変数を「変数の線形結合」とみなす場合、潜在変数アプローチ(SEM / LVM)を介して定式化された問題を解決できるかどうかについての人々の意見に興味があります。
アレクサンドルブレフ

1
@Aleksandr、私の答えは、実際には他の2つと直接対立しています。私は答えを編集して意見の不一致を明確にしました(さらに、数学を詳しく説明するためにさらに編集する予定です)。2つの標準化された同一の変数持つデータセットを想像してください。はどの程度の分散を表しますか?他の2つのソリューションはます。正解はです。X=YX50%100%
アメーバは、モニカを復活させる

1
@amoeba:素材を完全に理解するのにまだ苦労していますが、あなたの答えは異なることを理解しています。「すてきな答え」と言ったとき、私は答えの正確さではなく、それ自体の答えのレベルが好きだと暗示しました。統計と呼ばれる荒れた国で独学で探求している私のような人々にとって、それは教育的価値があることがわかりました:-)。それが理にかなっていることを願っています。
アレクサンドルブレフ

回答:


11

すべての変数が中心に置かれているという前提から始めた場合(PCAの標準的な手法)、データの合計分散は単なる平方和になります。

T=i(Ai2+Bi2+Ci2+Di2+Ei2+Fi2)

これは、変数の共分散行列のトレースに等しく、共分散行列の固有値の合計に等しくなります。これは、PCAが「データの説明」の観点から言っているのと同じ量です。つまり、PCに共分散行列の対角要素の最大の割合を説明してもらいたいのです。これを次のような予測値のセットの目的関数にすると、次のようになります。

S=i([AiA^i]2++[FiF^i]2)

次に、最初の主成分は、すべてのランク1近似値中で最小化します。したがって、後の適切な数量はように思われ ます。サンプルを使用するには、この方程式をランク1の予測に変換する必要があります。まず、重みを正規化して平方和1にする必要があります。そのため、(平方和)を。次に、正規化された重みに従って各観測値を「スコアリング」します。A、I... F、IP = 1 - SS(A^i,,F^i) A+2B+5C125000

P=1ST
A+2B+5C(1,2,5,0,0,0)130(130,230,530,0,0,0)

Zi=130Ai+230Bi+530Ci

次に、スコアに重みベクトルを掛けて、ランク1の予測を取得します。

(A^iB^iC^iD^iE^iF^i)=Zi×(130230530000)

次に、これらの推定値を計算プラグインします。これを行列ノルム表記に入れることもできます。これは、異なる一般化を示唆する場合があります。を変数の観測値の行列として設定した場合(あなたの場合は)、を予測の対応する行列として設定します。次のように説明される分散の割合を定義できます。P O N × q q = 6 ESPON×qq=6E

||O||22||OE||22||O||22

ここで、はフロベニウス行列ノルムです。したがって、これを他の種類の行列ノルムに「一般化」することができ、平方変化の合計でない限り「分散」ではありませんが、「変動の説明」の差の尺度が得られます。||.||2


これは合理的なアプローチですが、式は大幅に簡素化され、の平方和を総平方和でしたものに等しくなることが示されます。また、これは質問を解釈する最良の方法ではないと思います。私がより理にかなっていると主張する別のアプローチについての私の答えを参照してください(特に、そこの私の例の図を参照してください)。 TZiT
アメーバは、2015

そのように考えてください。2つの標準化された同一の変数持つデータセットを想像してください。はどの程度の分散を表しますか?あなたの計算はます。正解はです。X 50 100 X=YX50%100%
アメーバは、モニカを復活させる

@amoeba-場合、最初のPCは -これにより、ランクスコアが得られます。(仮定)。これは、ランク予測を提供し、同様に予測を提供します。したがって、およびます。したがって、あなたの直感が示唆するように、あなたは100%を得ます。1X=Y1zi=xi+yi(12,12)1 xがiが=YI1、X I=XI、Y I=YIO-E=0、S=0zi=xi+yi2=xi2xi=yi1x^i=xiy^i=yiOE=0S=0
確率論的

ええ、はい、確かに、最初のPCは100%の分散を説明していますが、それは私が意図したものではありません。私が意味したのはですが、問題は、つまりベクトルによってどの程度の分散が記述されているかということです。あなたの式はそれで何と言いますか?X 1 0 X=YX(1,0)
アメーバは、モニカを復活させる

@amoeba-これは50%を意味しますが、ベクトルはの最高ランク予測子がおよびとして与えられることに注意してください(選択したベクトルの下でであることに注意してください)。これは最適な予測ではないため、100%が得られません。このセットアップでは、と両方を予測する必要があります。1 X IY IX I = X I 、Y I = 0 、Z I = X I X Y(1,0)1(xi,yi)x^i=xiy^i=0zi=xiXY
確率論的

8

これらの変数の線形結合を選択するとしましょう。たとえば、場合、これが記述するデータの分散を計算できますか?A+2B+5C

この質問は2つの異なる方法で理解でき、2つの異なる答えにつながります。

線形結合はベクトルに対応します。これは、例ではです。このベクトルは、元の変数の6D空間の軸を定義します。あなたが求めているのは、この軸への投影がどれだけ「説明」するかということです。答えは、この投影からの元のデータの「再構成」という概念を介して与えられ、再構成エラーを測定します(説明されていない分散率に関するウィキペディアを参照)。結局のところ、この再構築は2つの異なる方法で合理的に実行でき、2つの異なる答えが得られます。[1,2,5,0,0,0]


アプローチ#1

ましょうであります中央のデータセット(行がサンプルに対応し、列が変数に対応します)、をその共分散行列、を単位ベクトルとします データセットの合計分散は、すべての分散の合計、つまり共分散行列のトレースです:。問題は、のどの割合が行うかです。 n dXndΣwRddT=tr(Σ)Tw説明する?@todddelucaと@probabilityislogicによって与えられる2つの答えは両方とも次と同等です:投影を計算し、その分散を計算してで除算します:XwT

Rfirst2=Var(Xw)T=wΣwtr(Σ).

これは、たとえば@probabilityislogicが再構成を考慮してからを計算することを提案しているため、すぐには明らかではないかもしれませんただし、代数が少ない場合、これは同等の式であることが示されます。Xww

X2XXww2X2,

アプローチ#2

はい。次の例を考えてみましょう。は、共分散行列と持つデータセットです。は単なるベクトルです。Xd=2

Σ=(10.990.991)
w=(10)x

分散の説明

合計分散はです。への投影の分散(赤い点で表示)は等しくなります。したがって、上記のロジックによれば、説明された分散は等しくなります。ある意味では、赤い点(「再構成」)は対応する青い点から遠く離れているため、分散の多くは「失われています」。T=2w11/2

一方、2つの変数は相関関係があるため、ほとんど同じです。そのうちの1つが合計分散ののみを記述すると言うのは奇妙です。なぜなら、それぞれには2番目の「ほぼすべての情報」が含まれているからです。次のように我々はそれを形式化することができます:投影与え可能な限り最高の復興見つける、と必ずしも同じ、そしてその後、再構成誤差を計算しに差し込み説明された分散の割合の式:ここでは次のように選択されます。0.9950%XwXwvvw

Rsecond2=X2XXwv2X2,
vXXwv2は最小です(つまり、は最大です)。これは、次元投影から元のデータセット予測する多変量回帰のを計算することとまったく同じです。R2R2X1Xw

式全体が単純化されることを見つけるために回帰解を使用するのは簡単な代数の問題です上記の例では、これはに等しく、妥当と思われます。v

Rsecond2=Σw2wΣwtr(Σ).
0.9901

がの固有ベクトルの1つである場合 、つまり固有値を持つ主軸の1つである場合(したがって )、を計算する両方のアプローチに注意してください。一致し、おなじみのPCA式wΣλΣw=λwR2

RPCA2=Rfirst2=Rsecond2=λ/tr(Σ)=λ/λi.

PS。が基底ベクトルの1つであるという特殊なケースへの派生式の適用については、私の回答を参照してください:単一の変数によって説明されるデータの分散w


付録。の式の導出Rsecond2

再構成を最小化するを見つけるは回帰問題です(は単変量予測子、は多変量応答)。その解はvXXwv2XwX

v=((Xw)(Xw))1(Xw)X=(wΣw)1wΣ.

次に、式はピタゴラスの定理により、回帰のハット行列は正射影(ただし、直接表示するのも簡単です)。R2

R2=X2XXwv2X2=Xwv2X2

ここでの方程式を差し込むと、分子について次のようになります。v

Xwv2=tr(Xwv(Xwv))=tr(XwwΣΣwwX)/(wΣw)2=tr(wΣΣw)/(wΣw)=Σw2/(wΣw).

分母はと等しくなり、上記の式が得られます。X2=tr(Σ)


これは別の質問に対する答えだと思います。たとえば、 wrtを最適化すると、最初のPCが一意の答えとして返されるわけではありません(一意である場合)。事実とときに100%を与えるの両方証拠は十分です。提案された方法は、PCAの「正規化された」目的関数が常に説明された分散を過小評価することを前提としているようです(PCAで最適化される量で正規化されるため、正規化されたPCA目的関数ではありません)。R2w(1,0)12(1,1)X=Y
確率論的

私たちの答えはさまざまな質問に対するものであることに同意しますが、どのOPを念頭に置いていたかは明確ではありません。また、私の解釈は非常に奇妙なものではないことに注意してください。これは標準的な回帰アプローチですがそのように分散を説明すると言うとき、再構成誤差を計算します だけでなく、最適な。ここに別の引数があります:変数がすべて標準化されている場合、アプローチではそれぞれがの分散量を説明します。これはあまり有益ではありません。一部の変数は他の変数よりもはるかに予測可能です!私のアプローチはそれを反映しています。xyyxbbyxn1/n
アメーバは、モニカを復活させると言います

@amoeba(+1)すばらしい答えです。本当に役に立ちます!この問題に取り組む参考資料をご存知ですか?ありがとう!
-PierreE

@PierreEありがとう。いいえ、私はそのための参照を持っているとは思わない。
アメーバは、モニカーを復活させる

4

ベクトルのデータセットの合計分散を、データセットのベクトルとデータセットの平均ベクトル間の二乗誤差(SSE)の合計とする ここで、はデータセットの平均ベクトル、はデータセットのi番目のベクトル、は2つのベクトルのドット積です。 。別の言い方をすれば、設定した場合、合計分散は各とその予測値間のSSE です。 T

T=i(xix¯)(xix¯)
x¯xixif(xi)f(xi)=x¯

今の予測せ、ベクトルの投影である、単位ベクトル上に。xif(xi)xic

fc(xi)=(cxi)c

次いで所与のためにあるSSEc

SSEc=i(xifc(xi))(xifc(xi))

を最小化するためにを選択した場合、が最初の主成分であると思います。cSSEcc

代わりにをベクトルの正規化バージョン場合、は予測子としてを使用して記述されたデータの分散です。c(1,2,5,...)TSSEcc


これは合理的なアプローチですが、これは質問を解釈する最良の方法ではないと思います。私がより理にかなっていると主張する代替アプローチについての私の答えを参照してください(特に、そこに私の例の図を参照してください)。
アメーバは、モニカを復活させる

そのように考えてください。2つの標準化された同一の変数持つデータセットを想像してください。はどの程度の分散を表しますか?あなたの計算はます。正解はです。X=YX50%100%
アメーバは、モニカを復活させる
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.