PCA'nın nesnel işlevi nedir?


42

Temel bileşen analizi matris ayrıştırmasını kullanabilir , ancak bu oraya ulaşmak için yalnızca bir araçtır.

Temel bileşenleri matris cebiri kullanmadan nasıl bulabilirsin?

Amaç işlevi (hedef) nedir ve kısıtlamalar nelerdir?


1
Belki bir şeyleri özlüyorum, bu yüzden lütfen hatalıysam düzeltin, ancak (en azından ilke olarak) PCA'da yapılanları matrisleri (karmaşık) doğrusal programlama problemi olarak kullanarak yapmak mümkün olmalı, ancak yapmam. Gereken tüm kısıtlamaları nasıl ifade edeceğinizi bilirsiniz. Ayrıca bunun sadece PCA kullanmaya kıyasla çok kolay olacağından emin değilim. Neden matrislerden uzak durmaya çalışıyorsun?
Chris Simokat

@Chris Doğrusal bir programlama problemine nasıl ulaşabileceğimi anlamıyorum. Anladığım kadarıyla hesaplamada matrislerden kaçınılması gerektiği de değildi . Soru PCA tarafından ne tür bir problemin çözüldüğü idi, ve nasıl yapıldığı değil (örneğin SVD'yi hesaplayarak). Kardinal çözümü, art arda dikgen maksimum varyans yönlerini bulduğunuzu söylüyor . Sunulan çözüm, asgari yeniden yapılanma hatası ile hiperplanları bulduğunuzu söylüyor.
NRH

@chris PCA'yı, matriks cebri olmadan görebilmemi sağlamak için başka bir yol bulmayı umuyorum.
Neil McGuigan

1
@Chris, İkinci dereceden bir nesnel işleviniz ve bir norm eşitliği kısıtınız var. Alternatif olarak, @ NRH'nin cevabındaki formülasyon altında, bir matris sıra sınırlamanız vardır. Bu kendini doğrusal bir programlama problemine düşürmez. @NRH, bazı iyi sezgiler verir ve gerçekte, PCA’ya verilen iki perspektif arasında çok yakın bir bağlantı vardır. Belki de @NRH ile işbirliği yaparak, cevapların tamamını daha eksiksiz hale getirmek için görevine bunu ekleyebiliriz. 2
kardinal

1
@NRH, Aslında gibi ESL çok, ama kitapta konuların birçoğu için olduğu gibi bu konunun tedavi orada, oldukça yüzeysel olduğunu düşünüyorum. Özellikle, verdiğiniz optimizasyon problemi için çözümün önemli bölümünü ispatlamazlar (veya bir egzersiz olarak bile atamazlar).
kardinal,

Yanıtlar:


41

Bir optimizasyon açısından, PCA üzerinde tam astar vermeye çalışıyor olmadan, birincil amaç fonksiyonu olan Rayleigh bölüm . matris (bazılarıdan birkaçı) örnek kovaryans matrisi burada her bir , özelliklerinin bir vektörüdür ve , sıranın olacağı şekilde bir matristir .xisxix T ı

S=1ni=1nxixiT=XTX/n
xipXixiT

PCA, bir dizi optimizasyon problemini çözmeye çalışıyor . Sıradaki ilk sınırlanmamış sorun

maximizeuTSuuTu,uRp.

beri, yukarıdaki kısıtlanmamış sorun, kısıtlı soruna eşdeğerdir uTu=u22=uu

maximizeuTSusubject touTu=1.

Matris cebirinin girdiği yer burasıdır. , simetrik bir pozitif yarı-yarı matris olduğundan (inşaat ile!), biçiminde özdeğer bir ayrışmaya sahiptir burada bir ortogonal matris (böylece ) ve bir köşegen matris ile negatif olmayan girişleri olan şekilde .S

S=QΛQT,
QQQT=IΛλiλ1λ2λp0

Dolayısıyla, . Yana birinin bir norm olması sorunu kısıtlanır, o zaman bir yana , ortogonal olduğundan.uTSu=uTQΛQTu=wTΛw=i=1pλiwi2uww2=QTu2=u2=1Q

Ancak, sınırlamaları altında en üst düzeye çıkarmak istiyorsak , yapabileceğimiz en iyi şey grubu , olduğu ve için .i=1pλiwi2i=1pwi2=1w=e1w1=1wi=0i>1

Şimdi, karşılık gelen , ilk etapta aradığımız şeydi, geri dönersek, elde ederiz, burada ilk sütunu , yani en büyük özdeğerine karşılık gelen özvektörünü belirtir . Amaç işlevinin değeri de kolayca görülebilir .u

u=Qe1=q1
q1QSλ1

Kalan ana bileşen vektörleri daha sonra optimizasyon problemlerinin sırasını ( indeksli ) çözerek bulunur Dolayısıyla, sorun aynıdır, ancak çözümün dizideki önceki çözümlerin hepsine dik olması gereken ek kısıtı eklememiz dışında . Çözüm olduğunu göstermek için indüktif olarak yukarıda argüman uzatmak için zor değildir gerçekten inci sorun, , inci özvektörün .i

maximizeuiTSuisubject touiTui=1uiTuj=01j<i.
iqiiS

PCA çözeltisi ayrıca çoğu zaman cinsinden ifade edilir tekil değer ayrışımı arasında . Nedenini görmek için, . Sonra ve böylece (kesinlikle konuşursak, işarete basar) ve .XX=UDVTnS=XTX=VD2VTV=QΛ=D2/n

Ana bileşenler , ana bileşen vektörleri üzerine yansıtılarak bulunur. Az önce verilen SVD formülasyonundan, olduğunu görmek kolaydır. X

XQ=XV=UDVTV=UD.

Hem ana bileşen vektörlerinin hem de ana bileşenlerin kendilerini, özellikler matrisinin SVD'si olarak temsil etmesinin basitliği, SVD'nin PCA'nın bazı işlemlerinde belirgin şekilde öne çıkmasının bir nedenidir.


Yalnızca ilk birkaç tekil değere / vektöre ihtiyaç duyulursa, Nash ve Shlien, baskın özdeğerleri hesaplamak için olağan güç yöntemini hatırlatan bir algoritma verir . Bu OP için ilgi çekici olabilir.
JM, istatistikçi değil

@NRH, Yazılarımı görmeyi başarmadan önce yazım hatalarımı (ve düzeltmeleri için) teşekkürler!
kardinal

1
Merhaba @cardinal, cevabınız için teşekkür ederim. Ancak, sıralı optimizasyonun neden küresel bir optimum hale geldiğini kanıtlama adımını atmadığınız görülüyor. Lütfen bunu biraz açıklayabilir misiniz? Teşekkürler!
Lifu Huang

21

Kardinal tarafından sunulan çözüm , örnek kovaryans matrisine odaklanır. Başka bir başlangıç ​​noktası, verinin bir q boyutlu hiper düzlem tarafından yeniden yapılanma hatasıdır . Eğer p boyutlu veri noktaları amacı çözmek içinx1,,xn

minμ,λ1,,λn,Vqi=1n||xiμVqλi||2

Bir için matris dik sütunları ile . Bu , öklid normuyla ölçüldüğü şekliyle en iyi q- rekonstrüksiyonunu verir ve çözümünün sütunları ilk q ana bileşen vektörleridir.p×qVqλiRqVq

Sabit için ve (bu regresyondur) için çözüm Vqμλi

μ=x¯=1ni=1nxiλi=VqT(xix¯)

Gösterim kolaylığı için , aşağıdaki hesaplamalarda ortalandığını varsayalım . Sonra en aza indirmeliyiz xi

i=1n||xiVqVqTxi||2

üzerinde dik sütunlu. Not, olan çıkıntı üzerine q boyutlu sütun alanı. Bu nedenle, sorun değerinin minimize edilmesine eşdeğerdir. seviye üzerinde q çıkıntılar . Biz gerekir olan en üst düzeye çıkarmak rütbe q projeksiyonları , burada örnek kovaryans matrisidir. şimdiVqP=VqVqT

i=1n||xiPxi||2=i=1n||xi||2i=1n||Pxi||2
P
i=1n||Pxi||2=i=1nxiTPxi=tr(Pi=1nxixiT)=ntr(PS)
PS
tr(PS)=tr(VqTSVq)=i=1quiTSui
burada olan içinde (ortonormal) sütun maksimum alarak elde edilir kardinal cevabı göstermek @ sunulan ve bağımsız değişkenler ' s olması özvektörleri ileu1,,uqqVquiqSq büyük özdeğerler.

Yeniden yapılanma hatası, örneğin seyrek ana bileşenler veya hiper düzlemler yerine düşük boyutlu manifoldlarla yapılan yeniden yapılandırmalar gibi bir takım faydalı genelleştirmeler önermektedir. Ayrıntılar için, bkz . İstatistiksel Öğrenmenin Elemanları, Bölüm 14.5 .


(+1) İyi puanlar. Bazı öneriler: tanımlamak iyi olur ve sonucun kısa bir kanıtını vermek gerçekten iyi olurdu . Veya, alternatif olarak, Rayleight bölümlerini içeren optimizasyon problemine bağlanabilir. Bence bu, bu sorunun cevaplarını çok daha iyi yapar! λi
kardinal

@ cardinal, imar formülasyonundan çözdüğünüz soruna kadar eksik adımları attığımı düşünüyorum.
NRH

İyi iş. Kalan boşluğun son ifadenizde olduğuna inanıyorum. Toplamı optimize etmenin cevabımdaki optimizasyon sırasını gerçekleştirmekle aynı olduğu hemen belli değil. Aslında, genel olarak doğrudan takip ettiğini sanmıyorum. Ancak, burada da ele alınması gerekmez.
kardinal

@ cardinal, indüksiyonla takip eder. İndüksiyon başlangıcını ve indüksiyon adımında toplamı maksimize eden ve ortogonal bir birim vektörü olacak şekilde düzenleyen vektörler seçin . Sonra, sonuçlarına göre ve indüksiyon varsayımına göre . Tabii ki, temel boyutlu uzay için benzersiz bir temel değildir . Doğrudan bir kanıt vermek için kullandığınız "dışbükey birleşim argümanı" özelliğini de genelleştirebilirsiniz. w1,,wqwqu1,,uq1wqTSwquqTSuqi=1q1wiTSwii=1q1uiTSuiq
NRH

1
@ cardinal, sadece bir boyut değerlendirmesi kullanarak iç içe geçmeye zorlamıyorum. Bir boyutlu alt , o alanda her zaman boyutlu bir alt alana dikey olacak şekilde seçebilirsiniz . Sonra basis'i istediğiniz şekilde doldurursunuz . qwq(q1)w
NRH

4

Açıkça bir matris ayrıştırması kullanmayan bir algoritma için bkz. NIPALS ( wiki ). Galiba matrix cebirinden kaçınmak istediğinizi söylerken bunu kastediyorsunuz.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.