一種新的 Unsupervised learning算法, t-SNE ( t-distributed stochastic neighbor embedding), 最近很熱門。荷蘭的發明者Laurens van der Maaten在2008年發表的論文“Visualizing data using t-SNE”,至今已有1900多次引用。
Unsupervised learning算法通常用于降低高維資料的維數,常用的算法有clustering,principal component analysis (PCA), kernel PCA,等。這些算法都有其内在的缺點,比如是linear 算法,比如受制于curse of dimensionality,比如計算的結果取決于distance measure或者choice of kernel.
t-SNE 似乎比以前的算法高明。很多算例表明它的結果比較合理。t-SNE常用于把高維資料降到2維,這樣就可以在平面作圖,是data visualization的一個很好的工具。
從我現在的了解,t-SNE也有缺點:1)要選取一個叫 perplexity 的參數;2)這是一個non-convex的最優化問題,是以會有local minima的問題,以至于每一次計算都會有不同的結果。
有興趣的讀者可以讀Maaten的兩篇文章:
“Dimensionality Reduction: A Comparative Review” -- 比較各種unsupervised learning算法
“Visualizing data using t-SNE” -- 提出t-SNE 算法
t-SNE 算法的軟體有現成的,還有很多種計算機語言的界面(Matlab, Python, R, Java, Javascript, CUDA, Julia):http://lvdmaaten.github.io/tsne/
轉載本文請聯系原作者擷取授權,同時請注明本文來自湯奔陽科學網部落格。
連結位址:http://blog.sciencenet.cn/blog-344158-1010755.html
上一篇:中國的計算機圍棋:隻見忽悠,不見實力
下一篇:他入選美國工程學院院士之後