Bagaimana cara menentukan parameter untuk t-SNE untuk mengurangi dimensi?

11

Saya sangat baru menggunakan kata embeddings. Saya ingin memvisualisasikan bagaimana dokumen mencari setelah belajar. Saya membaca bahwa t-SNE adalah pendekatan untuk melakukannya. Saya memiliki 100 ribu dokumen dengan 250 dimensi sebagai ukuran penyematan. Ada beberapa paket yang tersedia juga.

Namun, untuk t-SNE, saya tidak tahu berapa banyak iterasi atau nilai alfa atau nilai perpexility yang harus saya terus pelajari lebih baik.

Apakah ini hiper-parameter atau dapatkah ini ditentukan oleh beberapa atribut?

silent_dev
sumber

Jawaban:

12

Saya sangat merekomendasikan artikel Cara Menggunakan t-SNE Secara Efektif . Ini memiliki plot animasi hebat dari proses pemasangan tsne, dan merupakan sumber pertama yang benar-benar memberi saya pemahaman intuitif tentang apa yang dilakukan tsne.

Pada tingkat tinggi, kebingungan adalah parameter yang penting. Ada baiknya mencoba kebingungan 5, 30, dan 50, dan lihat hasilnya.

Tapi serius, baca Cara Menggunakan t-SNE Secara Efektif. Ini akan membuat penggunaan TSNE Anda lebih efektif.

Untuk paket, gunakan Rtsne di R, atau sklearn.manifold.TSNE dalam python

Zach
sumber
2

Saya akan mengutip FAQ dari situs web t-SNE . Pertama karena kebingungan:

Bagaimana cara mengatur kebingungan di t-SNE?

Kinerja t-SNE cukup kuat di bawah pengaturan yang berbeda dari kebingungan. Nilai yang paling tepat tergantung pada kepadatan data Anda. Secara longgar, bisa dikatakan bahwa dataset yang lebih besar / lebih padat membutuhkan kebingungan yang lebih besar. Nilai tipikal untuk rentang kebingungan antara 5 dan 50.

Untuk semua paremeter lainnya, saya akan mempertimbangkan untuk membaca ini:

Bagaimana saya bisa menilai kualitas visualisasi yang dibangun oleh t-SNE?

Lebih disukai, lihat saja mereka! Perhatikan bahwa t-SNE tidak mempertahankan jarak tetapi probabilitas, jadi mengukur beberapa kesalahan antara jarak Euclidean di D-tinggi dan D-rendah tidak berguna. Namun, jika Anda menggunakan data dan kebingungan yang sama, Anda dapat membandingkan divergensi Kullback-Leibler yang dilaporkan oleh t-SNE. Sangat baik untuk menjalankan t-SNE sepuluh kali, dan pilih solusi dengan divergensi KL terendah.

Dengan kata lain itu berarti: lihat plot, jika visualisasinya bagus jangan mengubah parameter. Anda juga dapat memilih proses dengan KL divergensi terendah untuk setiap kebingungan tetap.

Daniel Falbel
sumber