一种新的 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
上一篇:中国的计算机围棋:只见忽悠,不见实力
下一篇:他入选美国工程学院院士之后