PCA optimizasyonu dışbükey midir?


13

Temel Bileşen Analizi (PCA) objektif fonksiyonu L2 norm yöntemi hatasını minimize edilir (bölüm 2.12 bakınız burada başka görüş projeksiyonda varyansı maksimize etmeye çalışıyor Biz de burada mükemmel bir yazı var.:. PCA nesnel işlevi nedir ? ).

Benim sorum şu ki PCA optimizasyonu dışbükey mi? ( Burada bazı tartışmalar buldum , ancak birinin burada CV ile ilgili güzel bir kanıt sunabilmesini diliyorum)


3
Hayır. Dışbükey bir işlevi en üst düzeye çıkarıyorsunuz (kısıtlamalar altında).
user603

5
Bence "PCA optimizasyonu" ile ne demek istediğiniz konusunda spesifik olmanız gerekiyor. Standart formülasyonlardan biri x x = 1'e tabi değerinin maksimize edilmesidir . Sorun şu ki, dışbükeylik mantıklı değil: x x = 1 alanı bir Öklid alanı değil, bir küredir. xAxxx=1xx=1
whuber

1
@whuber Yorumunuz için teşekkürler, sınırlı bilgi nedeniyle soruyu netleştiremeyebiliriz. Bazı cevapları soruyu aynı anda açıklamama yardımcı olabilir.
Haitao Du

3
Sizi tanıdığınız herhangi bir "dışbükey" tanımına yönlendiririm. Hepsi, diğer noktalar arasında "yatan" bir fonksiyonun alanında bir nokta kavramını içermiyor mu? Hatırlamakta fayda var, çünkü size bir işlevin etki alanının geometrisini ve işlev değerlerinin herhangi bir cebirsel veya analitik özelliğini göz önünde bulundurmanızı hatırlatır. Bunun ışığında, bu varyans-maksimize formülasyon, hafif alan konveks hale getirmek için modifiye edilebilir bana oluşur: sadece ihtiyaç yerine x ' x = 1 . Çözüm aynı - ve cevap oldukça netleşiyor. xx1xx=1
whuber

Yanıtlar:


18

Hayır, PCA'nın genel formülasyonları dışbükey problem değildir . Ancak dışbükey bir optimizasyon problemine dönüştürülebilirler.

Bunun içgörü ve eğlencesi, sadece cevabı almaktan ziyade dönüşümlerin sırasını takip ediyor ve görselleştiriyor: hedefte değil, yolculukta yatıyor. Bu yolculuktaki başlıca adımlar

  1. Objektif fonksiyon için basit bir ifade elde edin.

  2. Konveks olmayan alan adını olan alan adına genişletin.

  3. Dışbükey olmayan hedefi, optimal değerlerine ulaştığı noktaları açıkça değiştirmeyecek şekilde değiştirin.

Yakından izlemeye devam ederseniz, SVD ve Lagrange çarpanlarının gizlendiğini görebilirsiniz - ancak bunlar sadece doğal bir ilgi için bir taraf gösterisi, ve daha fazla yorum yapmayacağım.


PCA'nın standart varyans maksimize edici formülasyonu (veya en azından önemli adımı)

(*)Maximize f(x)= xAx  subject to  xx=1

buradaki matrisi A , verilerden oluşturulan simetrik, pozitif-semidefinit bir matristir (genellikle kareler ve ürün matrisi toplamı, kovaryans matrisi veya korelasyon matrisi).n×nA

(Eşdeğer olarak, kısıtsız nesneyi en üst düzeye çıkarmaya çalışabiliriz . Bu sadece daha nazik bir ifade değil, artık ikinci dereceden bir işlev değil - özel durumların grafiğinin hızlı bir şekilde dışbükey bir işlev olmadığını gösterecektir. Genellikle bu işlev, x λ x yeniden ölçeklendirmeler altında değişmez olduğunu gözlemler ve daha sonra kısıtlanmış formülasyona ( ) indirir .)xAx/xxxλx()

Herhangi bir optimizasyon problemi soyut olarak şu şekilde formüle edilebilir:

F : XR işlevini olabildiğince büyük yapan en az bir bulun .xXf:XR,

Bir optimizasyon sorununun iki ayrı özelliğe sahip olması durumunda dışbükey olduğunu hatırlayın :

  1. Alan dışbükeydir. XR,n Bu birçok şekilde formüle edilebilir. Birincisi, ve y X ve 0 λ 1 , λ x + ( 1 - λ ) y X olduğunda . Geometrik olarak: Bir çizgi parçasının iki uç noktası X'te olduğunda, tüm parça X'de bulunur .xXyX0λ1λx+(1-λ)yXXX

  2. Fonksiyon dışbükeydir. f Bu aynı zamanda birçok şekilde formüle edilebilir. Birincisi, ve y X ve 0 λ 1 olduğunda , f ( λ x + ( 1 - λ ) y ) λ f ( x ) + ( 1 - λ ) f ( y ) . ( X'e ihtiyacımız vardıxXyX0λ1

    f(λx+(1-λ)y)λf(x)+(1-λ)f(y).
    Xherhangi bir anlam için bu durum için sırayla konveks olmak üzere) Geometrik. zaman herhangi bir çizgi parçası olan X , bir grafik f bu segment ile sınırlı olarak () yukarıdaki bağlantı ya da bölümünün üzerinde yer alır ( x , f ( x ) ) ve ( y , f ( y ) ) içinde R , n + 1 .xy¯Xf(x,f(x))(y,f(y))R,n+1

    Dışbükey fonksiyon prototip zaman lokal olarak pozitif olmayan gelen katsayısı ile her paraboliktir: herhangi bir hat kesimi üzerinde bu şekilde eksprese edilebilir ile bir 0.ybiry2+by+cbir0.

ile ilgili bir zorluk , X'in S n - 1R n birim küresi olmasıdır , ki bu kesinlikle dışbükey değildir. (*)XSn-1R,n Ancak, daha küçük vektörler ekleyerek bu sorunu değiştirebiliriz. Ölçeklendirip zaman olmasıdır bir faktör tarafından  , f ile çarpılır  2 . Zaman 0 < x ' x < 1 , biz ölçeklendirilebilir x kadar birim uzunluğuna ile çarparak λ = 1 / xλfλ20<x'x<1x, böylecefartarancak birim topu içerisinde kalırDn={x R nxx1}. Öyleyse kendimizi yeniden formüle edelim(*)olarakλ=1/x'x>1f Dn={xR,n|x'x1}(*)

(**)Üst Düzeye f(x)= x'birx  tabi  x'x1

Etki alanı ve açıkça dışbükey, bu yüzden oradayız. F grafiğinin dışbükeyliğini dikkate almaya devam etmektedir .X=Dnf

Problemi düşünmek için iyi bir yol - karşılık gelen hesaplamaları yapmak istemiyorsanız bile - Spektral Teorem açısındandır. (**) Bu, bir dikgen dönüştürme vasıtasıyla söylüyor , aşağıdakilerden en az bir adet temel bulabilirsiniz R n ki burada A , yani: diyagonaldirPR,nbir

bir=P'ΣP

nerede tüm çapraz kapatma girişlerini sıfırdır. Böyle bir P seçimi, A hakkında hiçbir şeyi değiştirmeyecek , ancak onu nasıl tanımladığınızı değiştirecek şekilde düşünülebilir : bakış açınızı döndürdüğünüzde, x x A x ( fonksiyon hiper yüzeylerinin eksenleri her zaman elipsoiddiler) koordinat eksenleriyle hizalandı.ΣPbirxx'birx

Yana pozitif yarı kesin olduğu, bütün diyagonal girişleri Σ olmayan negatif olmalıdır. Eksenlere (sadece başka bir dikey dönüşümdür ve bu nedenle P'ye emilebilir ) σ 1σ 2σ n0 olmasını sağlamak için izin verebiliriz .birΣP

σ1σ2σn0.

Biz izin ise yeni koordinatlar olarak X (gerektiren Y = P x , fonksiyon) f olduğux=P'yxy=Pxf

f(y)=y'biry=x'P'birPx=x'Σx=σ1x12+σ2x22++σnxn2.

Bu işlev kesinlikle dışbükey değildir ! Grafiği hiperparaboloidin bir parçası gibi görünüyor: iç kısmındaki her noktada , tüm σ i'nin negatif olmaması, onu aşağıdan ziyade yukarı doğru kıvırmasını sağlar . Xσben

Ancak, biz açabilirsiniz bir çok yararlı tekniği ile bir dışbükey sorun haline. (**) Burada en oluşacak bilerek , en sabit çıkarma izin σ 1 den f , en azından bir sınır noktaları için X . Bu, f'nin optimize edildiği sınırdaki herhangi bir noktanın konumunu değiştirmeyecektir , çünkü sınırdaki f'nin tüm değerlerini aynı σ 1 değerine düşürür . Bu, işlevin incelenmesini önerirx'x=1σ1fXffσ1

g(y)=f(y)-σ1y'y.

Bu gerçekten sabit çıkarır den f sınır noktalarında, ve iç noktalarda çıkarır küçük değerler. Bu, g'nin f'ye kıyasla X'in iç kısmında yeni bir küresel maksimaya sahip olmamasını sağlayacaktır .σ1fgfX

ile - σ 1 y y yerine bu el çabukluğu ile neler olduğunu inceleyelim . Çünkü P dik olan, Y ' , Y = x ' x . (Bu pratik olarak dikey bir dönüşümün tanımıdır.) Bu nedenle, x koordinatları açısından g yazılabilir-σ1-σ1y'yPy'y=x'xxg

g(y)=σ1x12++σnxn2-σ1(x12++xn2)=(σ2-σ1)x22++(σn-σ1)xn2.

Çünkü tüm i ,katsayılarının her bir sıfır ya da negatiftir. Sonuç olarak, (a) g dışbükeydir ve x 2 = x 3 = = x n = 0 olduğunda(b) g optimize edilir. ( x x = 1 daha sonra x 1 = ± 1 anlamına gelirve y = P ( ± 1 , 0 ,σ1σbenbenggx2=x3==xn=0xx=1x1=±1 , yani imzalamak için - P'nin ilk sütunu.)y=P(±1,0,,0)P

Hadi mantığı yeniden özetleyelim. Çünkü sınır optimize edilir D , n = S , n - 1 burada y ' y = 1 , çünkü ön değişmesidir g sadece sabiti ile σ 1 nolu sınır üzerinde, ve değerler, g bile olan yakın değerlerine f iç kısmında D , n , maksimumları f maksimumlarının ile aynı olmalıdır g .gDn=Sn1yy=1fgσ1gfDnfg


4
+1 Çok hoş. İstediğinizi düşündüğüm bir formülü düzeltmek için düzenledim (ancak lütfen kontrol edin). Bunun dışında, ben cümle sınır değerleri nedeniyle, ilk başta kafa karıştırıcı olmak "Bu f optimize edildiği herhangi sınır değerlerini değiştirmeyeceği" bulundu yapmak sen çıkarırsınız: değişim . Belki biraz yeniden formüle etmek mantıklıdır? σ1
amip diyor ki Reinstate Monica

@amoeba Her açıdan doğru; teşekkür ederim. Bu konunun tartışmasını güçlendirdim.
whuber

3
(+1) Yanıtınızda, çoğu insanın içbükey bir işlev olarak kabul edeceği bir dışbükey işlev tanımlamışsınız gibi görünebilir (belki de dışbükey bir optimizasyon sorununun dışbükey bir etki alanı ve üzerinde maksimumun hesaplandığı bir içbükey işlevi olduğu (veya bir dışbükey bir, üzerinde işlev az hesaplanır))
user795305

2
@amoeba Bu ince bir argüman. Bununla birlikte, bu yeni maxima - olanlar --are sadece sınırda meydana bulundu. Karşı örneklerinizin dışında kalır. Dikkat çeken bir başka nokta, sonunda, yeni yerel (veya küresel) maksimimin X'in iç kısmında görünüp görünmediğini umursamadığımızdır , çünkü başlangıçta sadece sınırındaki yerel maksimumlarla ilgileniyoruz. Bu nedenle, f'yi bu yerel sınır maksimumlarını hareket ettirmeyecek veya ortadan kaldırmayacak şekilde değiştirmekte özgürüz . gXf
whuber

2
Evet katılıyorum. Ortaya çıkan g "dışbükey" ise ve sınırda maksimum değere sahipse, içte nasıl değiştirildiği önemli değildir . Kişisel gr sınırda maksimum seviyesine sahip olmaları oluyor ve bütün bu argüman çalışma yapar. Mantıklı. fgg
amip diyor ki Reinstate Monica

6

Hayır.

Derece matrisin PCA M olarak formüle edilebilirkM

X^=birrgmbennrbirnk(X)kM-XF2

( olduğu Frobemino normu ). Türev için bkz. Eckart-Young teoremi .F

Norm dışbükey olmasına rağmen, optimize edildiği set dışbükeydir.


Bir dışbükey gevşeme PCA sorunun Konveks Düşük Derece Yaklaşım denir

X^=birrgmbennX*cM-XF2

*1

Ayrıntılar için Sparsity ile İstatistiksel Öğrenme , ch 6 (matris ayrışımı) başlıklı makaleyi görebilirsiniz .

Daha genel sorunlarla ve bunların konvekslikle ilişkisiyle ilgileniyorsanız, bkz. Genelleştirilmiş Düşük Sıralama Modelleri .


1

Feragatname: Önceki cevaplar, PCA'nın orijinal formülasyonundaki nasıl dışbükey olmadığını, ancak dışbükey bir optimizasyon problemine dönüştürülebildiğini açıklamak için oldukça iyi bir iş çıkarır. Cevabım sadece Birim Küreler ve SVD'lerin jargonuna çok aşina olmayan fakir ruhlar (benim gibi) içindir - ki bu btw, bilmek iyidir.

Benim kaynağım Prof. Tibshirani'nin bu ders notları

Bir optimizasyon probleminin dışbükey optimizasyon teknikleriyle çözülmesi için iki ön koşul vardır.

  1. Amaç işlevi dışbükey olmalıdır.
  2. Kısıtlama işlevleri de dışbükey olmalıdır.

PCA'nın çoğu formülasyonu, bir matrisin rütbesinde bir kısıtlama içerir.

Bu tip PCA formülasyonlarında, koşul 2 ihlal edilir. Çünkü rbirnk(X)=k,J11J22


" " in ne anlama geldiğini ve rütbesinde neden herhangi bir kısıtlama olduğunu açıklar mısınız? Bu, PCA anlayışımla uyuşmuyor, ancak belki de sadece kXk ana bileşenlerinin arandığı .
whuber

Evet, Xk
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.