Bagaimana cara memilih jumlah komponen untuk analisis komponen independen?

11

Dengan tidak adanya perkiraan apriori yang baik tentang jumlah komponen yang diminta dalam Analisis Komponen Independen, saya mencari untuk mengotomatiskan proses seleksi. Saya berpikir bahwa kriteria yang masuk akal mungkin angka yang meminimalkan bukti global untuk korelasi antara komponen yang dihitung. Inilah pseudocode dari pendekatan ini:

for each candidate number of components, n:
    run ICA specifying n as requested number of components
    for each pair (c1,c2) of resulting components:
        compute a model, m1: lm(c1 ~ 1)
        compute a model, m2: lm(c1 ~ c2)
        compute log likelihood ratio ( AIC(m2)-AIC(m1) ) representing the relative likelihood of a correlation between c1 & c2
    compute mean log likelihood ratio across pairs
Choose the final number of components as that which minimizes the mean log likelihood of component relatedness

Saya pikir ini harus secara otomatis menghukum kandidat yang lebih besar daripada jumlah "benar" komponen karena ICA yang dihasilkan dari kandidat tersebut harus dipaksa untuk mendistribusikan informasi dari komponen tunggal yang benar di berbagai komponen yang diperkirakan, meningkatkan rata-rata bukti korelasi di seluruh pasangan komponen.

Apakah ini masuk akal? Jika demikian, apakah ada cara yang lebih cepat untuk mencapai metrik keterkaitan agregat di seluruh komponen yang diestimasi daripada pendekatan kemungkinan log yang disarankan di atas (yang bisa agak lambat secara komputasi)? Jika pendekatan ini tidak masuk akal, seperti apa prosedur alternatif yang baik itu?

Mike Lawrence
sumber

Jawaban:

6

Pendekatan Variational Ensemble Learning ke ICA dapat melakukan "deteksi relevansi otomatis" ini. Secara otomatis mematikan komponen yang tidak diperlukan untuk meningkatkan ikatan pada Bukti Bayesian.

Lihatlah tesis James Miskin yang tersedia di sini , yang memperkenalkan teknik ini.

Ini diimplementasikan dengan sangat layak di Jawa oleh John Winn (PhD lain yang mengimplementasikan Bayesian Ensemble Learning melalui pesan lewat Algoritma).

Untuk mempelajari teknik ini, saya memutuskan untuk mengimplementasikan algoritma Winn di c ++ yang dapat diperoleh dari sini (pengembangan aktif).

Tom
sumber
2

Seperti yang dikatakan Tom, Penentuan Relevansi Otomatis adalah pendekatan yang baik untuk memilih sebagian kecil komponen dalam model probabilistik.

Pendekatan lain untuk ICA adalah dengan menggunakan Proses Prasmanan India sebelumnya - Knowles dan Ghahramani melakukan ini dalam "Analisis Faktor Jarang Terbatas dan Analisis Komponen Independen Tak Terbatas."

pengguna1149913
sumber