/dimensionality_reduction_alo_codes

特征提取/数据降维:PCA、LDA、MDS、LLE、TSNE等降维算法的python实现

Primary LanguagePythonApache License 2.0Apache-2.0

DimensionalityReduction_alo_codes

网上关于各种降维算法的资料参差不齐,同时大部分不提供源代码;在此通过借鉴资料实现了一些经典降维算法的Demo(python),同时也给出了参考资料的链接。

降维算法 资料链接 代码 展示
PCA 资料链接1 资料链接2 资料链接3 PCA PCA
KPCA 资料链接1 资料链接2 资料链接3 KPCA KPCA
LDA 资料链接1 资料链接2 LDA LDA
MDS 资料链接1 MDS MDS Tensor-MDS
ISOMAP 资料链接1 资料链接2 ISOMAP ISOMAP
LLE 资料链接1 资料链接2 LLE LLE
TSNE 资料链接1 TSNE TSNE
AutoEncoder AutoEncoder
FastICA 资料链接1 FastICA
SVD 资料链接1 资料链接2 SVD
LE 资料链接1资料链接2 LE LE
LPP 资料链接1 资料链接2 LPP LPP

环境: python3.6 ubuntu18.04(windows10) 需要的库: numpy sklearn tensorflow matplotlib

  • 每一个代码都可以单独运行,但是只是作为一个demo,仅供学习使用
  • 其中AutoEncoder只是使用AutoEncoder简单的实现了一个PCA降维算法,自编码器涉及到了深度学习领域,其本身就是一个非常大领域
  • LE算法的鲁棒性极差,对近邻的选择和数据分布十分敏感
  • 2019.6.20添加了LPP算法,但是效果没有论文上那么好,有点迷,后续需要修改