基于 Python 的 11 种经典数据降维算法—数据挖掘
通常,我们会发现大部分数据集的维度都会高达成百乃至上千,而经典的 MNIST,
其维度都是 64。我们所用到的有用信息却并不需要那么高的维度,而且每增加一维
所需的样本个数呈指数级增长,这可能会直接带来极大的「维数灾难」。而数据降
维,也常应用于文本处理、人脸识别、图片识别、自然语言处理等领域。
- 数据降维:高维数据下降为低维数据
(1)使得数据集更易使用;
(2)确保变量之间彼此独立
(3)降低算法计算运算成本 - 数据降维原理:往往高维空间的数据会出现分布稀疏的情况,在降维处理的过程中,通常会做一些数据删减,这些数据包括了冗余的数据、无效信息、重复表达内容等
(1)线性降维方法:PCA 、ICA、 LDA、LFA、LPP(LE 的线性表示)
(2)非线性降维方法:
- 基于核函数的非线性降维方法——KPCA 、KICA、KDA
- 基于特征值的非线性降维方法(流型学习)——ISOMAP、LLE、LE、LPP、LTSA、MVU
哈尔滨工业大学计算机技术专业的在读硕士生 Heucoder 则整理了 PCA、KPCA、LDA、MDS、ISOMAP、LLE、TSNE、AutoEncoder、FastICA、SVD、LE、LPP 共 12 种经典的降维算法,并提供了相关资料、代码以及展示.
序号 | 算法 |
---|---|