Scikit文档说明fit_transform
只能用于密集的矩阵,但是我有一个CSR格式的稀疏矩阵,我想在tsne上执行tsne。文档说使用fit
方法进行稀疏矩阵,但这不会返回低维嵌入。
我感谢我可以使用.todense()
方法,如这个问题,但是我的数据集非常大(0.4*10^6行和0.5*10^4列),因此不适合内存。确实,使用稀疏矩阵进行此操作会很高兴。是否可以使用Scikit tsne(或任何其他Python实现TSNE)来降低大稀疏矩阵的维度并返回低维嵌入以可视化?
来自同一文档:
强烈建议使用另一种维度降低方法(例如,用于密集数据的PCA或稀疏数据的截断),以将尺寸的数量减少到合理的数量(例如50),如果特征的数量很高。这将抑制一些噪音,并加快样品之间成对距离的计算。
使用sklearn.decomposition.TruncatedSVD
而不是。