tsne与pca的区别
2017-08-17 本文已影响2391人
美环花子若野
降维的意思是能用一组个数为d的向量zi来代表个数为D的向量xi所包含的有用信息,其中d<D
可以降维的原因是数据有冗余,要不是没用或者重复的信息。或者是中心对称没必要保留所有的。
同为降维工具,二者的主要区别在于,
所在的包不同(也即机制和原理不同)
from sklearn.decomposition import PCA
from sklearn.manifold import TSNE
因为原理不同,导致,tsne 保留下的属性信息,更具代表性,也即最能体现样本间的差异;
TSNE 运行极慢,PCA 则相对较快;
因此更为一般的处理,尤其在展示(可视化)高维数据时,常常先用 PCA 进行降维,再使用 tsne:
data_pca= PCA(n_components=50).fit_transform(data)
data_pca_tsne = TSNE(n_components=2).fit_transform(data_pca)
【1】https://chenrudan.github.io/blog/2016/04/01/dimensionalityreduction.html
【2】http://blog.csdn.net/lanchunhui/article/details/64923702?locationNum=11&fps=1