t-SNE: Mengapa nilai data yang sama secara visual tidak ditutup?


9

Saya memiliki 200 titik data yang memiliki nilai yang sama pada semua fitur.

Setelah pengurangan dimensi t-SNE mereka tidak terlihat begitu sama lagi, seperti ini: masukkan deskripsi gambar di sini

Mengapa mereka tidak berada pada titik yang sama dalam visualisasi dan bahkan tampaknya didistribusikan dalam dua kelompok yang berbeda?


4
Pastikan untuk membaca distill.pub/2016/misread-tsne
— Emre

Bisakah itu disebabkan oleh presisi (double / float) yang Anda gunakan?
— El Burro

Sebagian besar nilai adalah bilangan bulat. Dan sangat jarang, sekitar 500 fitur dengan sebagian besar nol. Saya tidak tahu apakah itu bisa disebabkan oleh presisi. Tetapi jarak antara kelompok-kelompok ini dan antara titik-titik data ini relatif besar.
— ScientiaEtVeritas

Cluster mana? Saya pikir semua sama - atau maksud Anda plot?
— El Burro

Ya, maksud saya kluster di plot.
— ScientiaEtVeritas

Jawaban:


3

Anda benar bahwa nilai-nilai yang sama di T-SNE dapat didistribusikan di berbagai titik, alasan ini terjadi jelas jika Anda melihat pada algoritma yang dijalankan oleh T-SNE.

x1=[0,1]x2=[0,1]

import numpy as np from sklearn.manifold import TSNE m = TSNE(n_components=2, random_state=0) m.fit_transform(np.array([[0,1],[0,1]]))

Anda juga akan mengamati bahwa mengubah yang random_statesebenarnya memodifikasi koordinat output dari model. Tidak ada korelasi nyata antara koordinat aktual dan outputnya. Sejak langkah pertama TSNE menghitung kemungkinan bersyarat.

xixjpj|i=exp(−||xj−xi||22σ2)∑k≠iexp(−||xj−xi||22σ2)pij=pi|j+pj|i2Npijxixj

R2

Jadi, kebenarannya adalah, alih-alih melihat kedua kelompok itu, lihatlah jarak di antara mereka, karena itu menyampaikan lebih banyak informasi daripada mengoordinasikan diri mereka sendiri.

Semoga ini menjawab pertanyaan Anda :)

Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.