Fisher kriter ağırlıkları nasıl hesaplanır?


12

Örüntü tanıma ve makine öğrenimi üzerine çalışıyorum ve aşağıdaki soru ile karşılaştım.

Eşit önceki sınıf olasılığına sahip iki sınıflı bir sınıflandırma problemi düşünün

P(D1)=P(D2)=12

ve verilen her sınıftaki örneklerin dağılımı

p(x|D1)=N([00],[2001]),

p(x|D2)=N([44],[1001]).

Fisher kriter ağırlıkları nasıl hesaplanır?

Güncelleme 2: Kitabım tarafından sağlanan hesaplanan ağırlık: .W=[−43−29]

Güncelleme 3: @ xeon'un ima ettiği gibi, Fisher'in ayrımcısının projeksiyon hattını belirlemem gerektiğini anlıyorum.

Güncelleme 4: , projeksiyon çizgisinin yönü olsun , sonra Fisher lineer discriminant yöntemi, en iyi ölçüt fonksiyonunun en üst düzeye çıkarıldığı olduğunu bulur . Geriye kalan zorluk, sayısal olarak vektörünü nasıl alabiliriz ?W WWWW


İlk dağıtımınız tanımsız. Özellikle, çiftin ikinci varyasyonu 0 varyansla dejenere bir dağılıma sahiptir, ancak ilk varyant ile pozitif bir kovaryansa sahiptir, bu imkansızdır.
— owensmartin

@owensmartin bu değerlerin nasıl hesaplandığı hakkında bir fikriniz var mı?
— Dr. Hoshang

Fisher ölçüt ağırlığının tanımı nedir?
— Vladislavs Dovgalecs

Fisher'in doğrusal ayırıcısının maksimize eden vektör tarafından verildiği anlamına gelir ... luthuli.cs.uiuc.edu/~daf/courses/Learning/Kernelpapers/… gibi her malzemede s. 2. okx @xeon mu?
— Dr. Hoshang

İpucu: İki sınıf arasındaki sınır ne olacak? Doğrusal, polinom, başka bir şey mi?
— Vladislavs Dovgalecs

Yanıtlar:


11

Bağlantı verdiğiniz makaleyi takiben (Mika ve ark., 1999) , genelleştirilmiş Rayleigh bölümünü en üst düzeye çıkaran yi bulmalıyız ,w

w⊤SBww⊤SWw,

burada ve kovaryanslar ,C 1 , C 2m1,m2C1,C2

SB=(m1−m2)(m1−m2)⊤,SW=C1+C2.

Çözüm, genelleştirilmiş özdeğer problemi ilk hesaplama ile çözerek bulunabilir. özdeğerler çözerek özvektör için çözme ve daha sonra . Sizin durumunuzda, Belirleyici bu 2x2 matris elle hesaplanabilir.

SBw=λSWw,
λ
det(SB−λSW)=0
w
SB−λSW=(16−3λ161616−2λ).

En büyük özdeğeri olan özvektör Rayleigh bölümünü en üst düzeye çıkarır. Hesaplamaları elle yapmak yerine, Python'daki genelleştirilmiş özdeğer problemini kullanarakscipy.linalg.eig ve bulduğunuz farklı olan . Aşağıda bulduğum ağırlık vektörünün optimal hiper düzlemini (siyah) ve kitabınızda bulunan ağırlık vektörünün hiper düzlemini (kırmızı) çizdim.

w1≈0.5547,w2≈0.8321,

resim açıklamasını buraya girin


1
Bu örnek çok ilginç. Her iki çizgi de iki sınıfı ayırır ancak bunlardan biri öğrenme teorisi bakış açısından "daha iyidir".
— Vladislavs Dovgalecs

2
Fisher Criterion, books.google.com/…
— nini

1
@Lucas belki söz konusu sonuç xeon yorumlarına yakın, "Belki de birim vektörü w rapor etmeliyiz, çünkü hiper düzlem büyüklükle değil, yön ile tanımlanır."
— nini


1
@Lucas Teşekkürler. Sınırı görmek için lütfen üç farklı renkle W = [- 2/3 -2/3] ve W = [- 4/3 -2/3] ve W = [- 2 -3] için başka bir resim ekler misiniz? Teşekkürler. Güzel bir cevap için sana ödül verdim.
— nini

7

SOLUTION1:

Duda ve ark. @Lucas'a alternatif bir çözümü olan ve bu durumda çözümü hesaplamak çok kolaydır. (Umarım bu alternatif çözüm yardımcı olur !! :))

İki sınıf LDA'da amaç:

wTSBwwTSWw bu sadece sınıf varyansı arasında artış ve sınıf içi varyansın azalması anlamına gelir.

burada ve , burada kovaryans matrisi ve sırasıyla sınıf 1 ve 2'nin araçlarıdır.SB=(m1−m2)(m1−m2)TSW=S1+S2S1,S2m1,m2

Bu genelleştirilmiş raleigh bölümünün çözümü, genelleştirilmiş bir özdeğer problemidir.

SBw=λSWw→SW−1SBw=λw

Yukarıdaki formülasyon kapalı bir form çözeltisine sahiptir. , temelli bir rütbe 1 matrisidir, bu nedenle ve cevabı almak için normlizd olabilir.SBm1−m2w∝SW−1(m1−m2)

Sadece hesaplanan ve [0,5547, 0,8321] var.w

SW−1(m1−m2)=(S1+S2)−1(m1−m2)=([2001]+[1001])−1([00]−[44])=([1/3001/2])([00]−[44])=[−1.3333−2.0000]∝[0.55470.8321]

Ref: Duda, Hart, Leylek Desen Sınıflandırması

SOLUTION2:

Alternatif olarak, genelleştirilmiş özdeğer problemine öz vektör bularak çözülebilir. SBw=λSWw

bir polinom tarafından oluşturulabilir ve bu polinomun çözümleri için öz değer . Şimdi diyelim ki polinomun kökleri olarak gibi bir dizi öz değeriniz var . Şimdi ve karşılık gelen öz vektörü doğrusal denklem sistemine çözüm olarak . Bunu her i için yaparak bir dizi vektör alabilirsiniz ve bu bir dizi öz vektörleridir.determinant(SB−λSW)SBw=λSWwλ1,λ2,...,λn,λ=λi,i∈{1,2,..,n}SBwi=λiSWwi{wi}i=1n

determinant(SB−λSW)=[16−3λ161616−2λ]=6λ2−80λ , Yani öz değerler kökleri polinom .6λ2−80λ

Yani 0 ve 40/3 iki çözümdür. LDA için, en yüksek öz değerine karşılık gelen öz vektör, çözeltidir.λ=

Denklem sistemine çözüm ve(SB−λiSW)wi=0λi=40/3

ki[16−3λ161616−2λ]wi∝[−724848−32]wi=0

Yukarıdaki denklem sisteminin çözümü, önceki çözümle aynı olan şeklindedir.[−0.5547−0.8321]∝[0.55470.8321]

Alternatif olarak, , boş alanında yer .[0.55470.8321][−724848−32]

İki sınıf LDA için, en yüksek öz değeri olan öz vektör çözümdür. Genel olarak, C sınıfı LDA için, en yüksek C - 1 özdeğerlerine kadar olan ilk C - 1 öz vektörleri çözeltiyi oluşturur.

Bu videoda, basit özdeğer problemi için öz vektörlerin nasıl hesaplanacağı açıklanmaktadır. ( https://www.khanacademy.org/math/linear-algebra/alternate_bases/eigen_everything/v/linear-algebra-finding-eigenvectors-and-eigenspaces-example )

Aşağıda bir örnek verilmiştir. http://www.sosmath.com/matrix/eigen2/eigen2.html

Çok sınıflı LDA: http://en.wikipedia.org/wiki/Linear_discriminant_analysis#Multiclass_LDA

Bir matrisin Boş Alanının Hesaplanması: https://www.khanacademy.org/math/linear-algebra/vectors_and_spaces/null_column_space/v/null-space-2-calculating-the-null-space-of-a-matrix


1
Güzel cevap, kitabın cevabı yanlış demektir! Tamam mı?
— Dr. Hoshang

Bu cevabın doğru olduğuna inanıyorum ve kitabınız ve farklı tanımlıyorsa , o tanımlarla ne elde ettiğinizi görün. SWSB
— dksahuji

2
-1.33, -4/3'e eşittir, ancak ikinci eleman farklıdır. Belki kitap rapor birimi vektör w? Doğru değil mi? Çok teşekkürler
— Dr.Hoshang

2
Ödül için W değerine ulaşmak için lütfen çözüm 2'yi tamamlayın
— nini

1
@ Dr.Hoshang: Kitabınızdaki çözüm yanlış. Neden olduğuna dair hiçbir fikrim yok.
— amip diyor Reinstate Monica
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.