Aljabar LDA. Fisher daya diskriminasi variabel dan Analisis Diskriminan Linear

13

Tampaknya,

Analisis Fisher bertujuan memaksimalkan pemisahan antar kelas secara serentak, sekaligus meminimalkan dispersi di dalam kelas. Sebuah ukuran yang berguna dari kekuatan diskriminasi dari sebuah variabel maka diberikan oleh kuantitas diagonal: Bii/Wii .

http://root.cern.ch/root/htmldoc/TMVA__MethodFisher.html

Saya mengerti bahwa ukuran ( p x p) dari matriks Antara ( B ) dan Dalam-Kelas ( W ) diberikan oleh jumlah variabel input p,. Mengingat ini, bagaimana bisa Bii/Wii menjadi "ukuran yang berguna dari kekuatan diskriminasi" dari variabel tunggal? Setidaknya dua variabel diperlukan untuk membangun matriks B dan W, sehingga jejak masing-masing akan mewakili lebih dari satu variabel.

Pembaruan: Apakah saya benar dalam berpikir bahwa bukan jejak di atas jejak, di mana jumlah tersirat, tetapi elemen matriks B i i dibagi dengan W i i ? Saat ini, itulah satu-satunya cara saya dapat mencocokkan ekspresi dengan konsep.Bii/WiiBiiWii

kategori
sumber

Jawaban:

23

Berikut ini adalah kisah pendek tentang Analisis Diskriminan Linear (LDA) sebagai jawaban atas pertanyaan tersebut.

Ketika kita memiliki satu variabel dan kelompok (kelas) untuk membedakannya, ini adalah ANOVA. Kekuatan diskriminasi variabel adalah S S antar kelompok / S S dalam kelompok , atau B / W .kSSbetween groups/SSwithin groupsB/W

Ketika kita memiliki variabel , ini adalah MANOVA. Jika variabel tidak berkorelasi baik dalam jumlah sampel maupun dalam kelompok, maka kekuatan diskriminasi di atas, B / W , dihitung secara analog dan dapat ditulis sebagai t r a c e ( S b ) / t r a c e ( S w ) , di mana S w adalah menggenang dalam kelompok pencar matriks (yaitu jumlah k matriks SSCP dari variabel, berpusat sekitar pusat massa masing-masing kelompok); S bpB/Wtrace(Sb)/trace(Sw)Swk p x p Sbadalah matriks hamburan antar-kelompok , di mana S t adalah matriks hamburan untuk seluruh data (matriks SSCP dari variabel yang berpusat tentang grand centroid. ("scatter matrix" hanyalah matriks kovarians tanpa devidedness) oleh sample_size-1.)=StSwSt

Ketika ada beberapa korelasi antara variabel - dan biasanya ada - diekspresikan oleh S - 1 w S b yang bukan skalar lagi tetapi sebuah matriks. Hal ini hanya karena ada p variabel diskriminatif tersembunyi di balik ini diskriminasi "keseluruhan" dan sebagian berbagi.B/WSw1Sbp

Sekarang, kita mungkin ingin menenggelamkan dalam MANOVA dan menguraikan menjadi variabel laten baru dan saling orthogonal (jumlahnya adalah m i n ( p , k - 1 ) ) disebut fungsi diskriminan atau diskriminan - yang pertama adalah yang terkuat diskriminator, ke-2 berada di belakang, dll. Sama seperti kita melakukannya dalam analisis komponen Pricipal. Kami mengganti variabel berkorelasi asli dengan diskriminan tidak berkorelasi tanpa kehilangan kekuatan diskriminatif. Karena setiap diskriminan berikutnya lebih lemah dan lebih lemah, kami dapat menerima sebagian kecil dari m pertamaSw1Sbmin(p,k1)mdiskriminan tanpa kehilangan kekuatan diskriminatif (sekali lagi, mirip dengan bagaimana kita menggunakan PCA). Ini adalah esensi LDA sebagai teknik reduksi dimensionalitas (LDA juga merupakan teknik klasifikasi Bayes, tetapi ini adalah topik yang sepenuhnya terpisah).

LDA dengan demikian menyerupai PCA. PCA membusuk "berkorelasi", LDA menguraikan "keterpisahan". Dalam LDA, karena matriks di atas yang menyatakan "keterpisahan" tidak simetris, trik aljabar by-pass digunakan untuk menemukan nilai eigen dan vektor eigen 1 . Nilai eigen dari setiap fungsi diskriminan (variabel laten) adalah kekuatan diskriminatifnya B / W yang saya katakan di paragraf pertama. Juga, perlu disebutkan bahwa diskriminan, walaupun tidak berkorelasi, tidak ortogonal secara geometris seperti sumbu yang ditarik dalam ruang variabel asli.1B/W

Beberapa topik yang berpotensi terkait yang mungkin ingin Anda baca:

LDA adalah MANOVA "diperdalam" ke dalam menganalisis struktur laten dan merupakan kasus khusus analisis korelasi Canonical (kesetaraan yang tepat di antara mereka seperti itu ). Bagaimana LDA mengklasifikasikan objek dan apa koefisien Fisher. (Saya hanya menautkan ke jawaban saya sendiri saat ini, seperti yang saya ingat, tetapi ada banyak jawaban yang baik dan lebih baik dari orang lain di situs ini juga).


perhitungan fase ekstraksi LDAadalah sebagai berikut. Nilai eigen ( L ) dari S - 1 w S b adalah sama dengan matriks simetris ( U - 1 ) S b U - 1 , di mana U adalahakar Choleskydari S w : matriks segitiga atas dimana U U = S w . Sedangkan untuk vektor eigen S - 1 w S b ,vektortersebut diberikan oleh V1 LSw1Sb(U1)SbU1USwUU=SwSw1Sb , di mana E adalah vektor eigen dari matriks di atas ( U - 1 ) S b U - 1 . (Catatan: U , berbentuk segitiga,dapat dibalik- menggunakan bahasa tingkat rendah - lebih cepat daripada menggunakan fungsi "inv" generik standar dari paket.)V=U1EE(U1)SbU1U

Dijelaskan solusi-eigendecomposition-of-the metode diwujudkan dalam beberapa program (dalam SPSS, misalnya), sementara di program lain ada direalisasikan metode "kuasi zca-pemutih" yang, menjadi hanya sedikit lebih lambat , memberikan hasil yang sama dan dijelaskan di tempat lain . Untuk meringkas di sini: mendapatkan ZCA pemutih matriks untuk S w - yang persegi simetris root. S - 1 / 2 w (apa yang dilakukan melalui eigendecomposition); kemudian eigendecomposition dari S - 1 / 2 w S b S - 1 /Sw1SbSwSw1/2 (yang merupakan matriks simetris) menghasilkan nilai eigen diskriminanLdan vektor eigenA, dimana vektor eigen diskriminanV=S - 1 / 2 w A. Metode "kuasi zca pemutih" dapat ditulis ulang harus dilakukan melalui tunggal-nilai dekomposisi casewise dataset bukan bekerja denganSwdanSbmatriks pencar; yang menambah presisi komputasi (apa yang penting dalam situasi singularitas), tetapi mengorbankan kecepatan.Sw1/2SbSw1/2LAV=Sw1/2ASwSb

OK, mari kita beralih ke statistik yang biasanya dihitung dalam LDA. Korelasi kanonik yang sesuai dengan nilai eigen adalah . Sedangkan nilai eigen dari seorang diskriminan adalahB/Wdari ANOVA dari yang diskriminan, korelasi kanonik kuadrat adalahB/T(T = jumlah total kuadrat-kuadrat) dari ANOVA itu.Γ=L/(L+1)B/WB/T

Jika Anda menormalkan (untuk SS = 1) kolom vektor eigen maka nilai-nilai ini dapat dilihat sebagai arah cosinus dari rotasi sumbu-variabel menjadi sumbu-diskriminan; jadi dengan bantuannya mereka dapat memplot pembeda sebagai sumbu pada sebar yang ditentukan oleh variabel asli (vektor eigen, sebagai sumbu dalam ruang variabel itu, bukan ortogonal).V

Koefisien atau bobot diskriminan yang tidak standar hanyalah vektor eigen yang diskalakan . Ini adalah koefisien prediksi linear diskriminan oleh variabel asli terpusat. Nilai fungsi diskriminan itu sendiri (skor diskriminan) adalahXC, di manaXadalah variabel asli terpusat (input data multivarian dengan setiap kolom berpusat). Diskriminan tidak berkorelasi. Dan ketika dihitung dengan rumus tepat di atas, mereka juga memiliki properti yang digabungkan dalam matriks kovarian kelasnya adalah matriks identitas.C=Nk VXCX

Istilah konstan opsional yang menyertai koefisien tidak standar dan memungkinkan untuk tidak memusatkan diskriminan jika variabel input memiliki nilai nol adalah , di mana d i a g ( ˉ X ) adalah matriks diagonal berarti variabel p dan Σ p adalah jumlah seluruh variabel.C0=pdiag(X¯)Cdiag(X¯)p

Dalam koefisien diskriminan terstandarisasi , kontribusi variabel menjadi diskriminan disesuaikan dengan fakta bahwa variabel memiliki varian yang berbeda dan dapat diukur dalam unit yang berbeda; (diag (Sw) adalah matriks diagonal dengan diagonalSw). Meskipun "terstandarisasi", koefisien ini terkadang melebihi 1 (jadi jangan bingung). Jika variabel input z-standar di setiap kelas secara terpisah, koefisien standar = yang tidak standar. Koefisien dapat digunakan untuk menafsirkan diskriminan.K=diag(Sw)VSw

Dikumpulkan dalam kelompok korelasi ( "struktur matriks", kadang-kadang disebut beban) antara variabel dan discriminants diberikan oleh . Korelasi tidak sensitif terhadap masalah kolinearitas dan merupakan pedoman alternatif (terhadap koefisien) dalam penilaian kontribusi variabel, dan dalam menafsirkan diskriminan.R=diag(Sw)1SwV


Lihat hasil lengkap dari tahap ekstraksi analisis diskriminan data iris di sini .

Baca jawaban nanti yang bagus ini yang menjelaskan sedikit lebih formal dan mendetail hal yang sama seperti yang saya lakukan di sini.

Pertanyaan ini berkaitan dengan masalah standardisasi data sebelum melakukan LDA.

ttnphns
sumber
Seperti yang dikatakan dalam jawaban Anda, terutama LDA digunakan untuk melakukan pengurangan dimensi, tetapi jika tujuannya hanya klasifikasi, maka kita bisa menggunakan pendekatan Bayes, kan? Tetapi jika tujuannya adalah pengurangan dimensi, maka kita harus mengambil pendekatan Fisher untuk menemukan arah di mana kita akan memproyeksikan input asli , kan? X
alpukat
1
Iya. Namun, kata "pendekatan Fisher" bersifat ambigu. Ini dapat berarti 2 hal: 1) LDA (untuk 2 kelas) itu sendiri ; 2) Fungsi klasifikasi Fisher di LDA.
ttnphns