机器学习降维方法概括

article/2025/9/14 3:23:49

最近刷题看到特征降维相关试题,发现自己了解的真是太少啦,只知道最简单的降维方法,这里列出了常见的降维方法,有些算法并没有详细推导。特征降维方法包括:Lasso,PCA,小波分析,LDA,奇异值分解SVD,拉普拉斯特征映射,SparseAutoEncoder,局部线性嵌入LLE,等距映射Isomap。

1. LASSO通过参数缩减达到降维的目的。

LASSO(Least absolute shrinkage and selection operator, Tibshirani(1996))
该方法是一种压缩估计,通过构造一个罚函数得到一个较为精炼的模型,使得压缩一些系数,同时设定一些系数为零。英雌保留了子集收缩的优点,,是一种处理具有复共线性数据的有偏估计。Lasso 的基本思想是在回归系数的绝对值之和小于一个常数的约束条件下,使残差平方和最小化,从而能够产生某些严格等于 0 的回归系数,得到可以解释的模型。

2. 主成分分析PCA

PCA(Principal Component Analysis)是一种常用的数据分析方法。PCA通过线性变换将原始数据变换为一组各维度线性无关的表示,可用于提取数据的主要特征分量,常用于高维数据的降维。
设有m条n维数据。

1)将原始数据按列组成n行m列矩阵X
2)将X的每一行(代表一个属性字段)进行零均值化,即减去这一行的均值
3)求出协方差矩阵C=\frac{1}{m}XX^\mathsf{T}
4)求出协方差矩阵的特征值及对应的特征向量
5)将特征向量按对应特征值大小从上到下按行排列成矩阵,取前k行组成矩阵P
6)Y=PX即为降维到k维后的数据

PCA降维过程请参考http://www.cnblogs.com/zhangchaoyang/articles/2222048.html

3. 小波分析

小波分析有一些变换的操作降低其他干扰可以看做是降维。
http://www.360doc.com/content/15/0613/14/21899328_477836495.shtml

4. 线性判别LDA

线性判别式分析(Linear Discriminant Analysis),简称为LDA。也称为Fisher线性判别(Fisher Linear Discriminant,FLD),是模式识别的经典算法,在1996年由Belhumeur引入模式识别和人工智能领域。

基本思想是将高维的模式样本投影到最佳鉴别矢量空间,以达到抽取分类信息和压缩特征空间维数的效果,投影后保证模式样本在新的子空间有最大的类间距离和最小的类内距离,即模式在该空间中有最佳的可分离性。

LDA与前面介绍过的PCA都是常用的降维技术。PCA主要是从特征的协方差角度,去找到比较好的投影方式。LDA更多的是考虑了标注,即希望投影后不同类别之间数据点的距离更大,同一类别的数据点更紧凑。

详细请参考http://www.cnblogs.com/zhangchaoyang/articles/2644095.html

5. 拉普拉斯映射

拉普拉斯特征映射将处于流形上的数据,在尽量保留原数据间相似度的情况下,映射到低维下表示。

这里写图片描述

求解广义特征向量,取前几个非零最小特值对应的特向,即为原数据在低维下的表示。
资料来源于:http://blog.csdn.net/yujianmin1990/article/details/48420483

6. 深度学习SparseAutoEncoder

稀疏自编码就是用少于输入层神经元数量的隐含层神经元去学习表征输入层的特征,相当于把输入层的特征压缩了,所以是特征降维。
详细请参考http://blog.csdn.net/whiteinblue/article/details/20639629

7. 矩阵奇异值分解SVD

在PCA算法中,用到了SVD,类似PCA,可以看成一类。

8. LLE局部线性嵌入

Locally linear embedding(LLE)是一种非线性降维算法,它能够使降维后的数据较好地保持原有流形结构。LLE可以说是流形学习方法最经典的工作之一。很多后续的流形学习、降维方法都与LLE有密切联系。

LLE算法认为每一个数据点都可以由其近邻点的线性加权组合构造得到。算法的主要步骤分为三步:(1)寻找每个样本点的k个近邻点;(2)由每个样本点的近邻点计算出该样本点的局部重建权值矩阵;(3)由该样本点的局部重建权值矩阵和其近邻点计算出该样本点的输出值。具体的算法流程如图2所示:

这里写图片描述

这里写图片描述
这里写图片描述

9. Isomap等距映射

Isomap是一种非迭代的全局优化算法,通过一种原本试用于欧式空间的算法MDS,达到降维的目的。

参考资料:

http://www.36dsj.com/archives/26723


http://chatgpt.dhexx.cn/article/McSOWO8s.shtml

相关文章

详解机器学习高维数据降维方法

当特征选择完成后,可以直接训练模型了,但是可能由于特征矩阵过大,导致计算量大,训练时间长的问题,因此降低维度也是必不可少的。 常见的降维方法除了以上提到的基于 L1 惩罚项的模型以外,另外还有主成分分…

机器学习之降维

本周关于降维的学习主要分为五类:PCA、LDA、LLE、tSNE、ISOMAP 来进行学习 首先自己的任务是:tSNE的学习 (一)降维的基本知识点总结 1、降维方法分为线性和非线性降维,非线性降维又分为基于核函数和基于特征值的方…

四大机器学习降维方法

引言: 机器学习领域中所谓的降维就是指采用某种映射方法,将原高维空间中的数据点映射到低维度的空间中。降维的本质是学习一个映射函数 f : x->y,其中x是原始数据点的表达,目前最多使用向量表达形式。 y是数据点映射后的低维向…

降维方法总结

目录 数据降维方法: 降维: 降维的用处: 降维方法思想分类: 降维方法总览 降维方法详细说明 1. 缺失值比率(Missing Value Ratio) 2. 低方差滤波(Low Variance Filter) 3. 高相关…

数据分析七种降维方法

近来由于数据记录和属性规模的急剧增长,大数据处理平台和并行数据分析算法也随之出现。于此同时,这也推动了数据降维处理的应用。实际上,数据量有时过犹不及。有时在数据分析应用中大量的数据反而会产生更坏的性能。 最新的一个例子是采用 20…

12种降维方法及python实现

你遇到过特征超过1000个的数据集吗?超过5万个的呢?我遇到过。降维是一个非常具有挑战性的任务,尤其是当你不知道该从哪里开始的时候。拥有这么多变量既是一个恩惠——数据量越大,分析结果越可信;也是一种诅咒——你真的…

特征降维方法

关于降维的学习主要分为五类:PCA、LDA、LLE、tSNE、ISOMAP (一)降维的基本知识点总结 1、降维方法分为线性和非线性降维,非线性降维又分为基于核函数和基于特征值的方法。 (1)线性降维:PCA、…

四大降维方法

PCA和LDA之间的区别 从主观的理解上,主成分分析到底是什么?它其实是对数据在高维空间下的一个投影转换,通过一定的投影规则将原来从一个角度看到的多个维度映射成较少的维度。到底什么是映射,下面的图就可以很好地解释这个问题—…

数据降维方法小结

数据的形式是多种多样的,维度也是各不相同的,当实际问题中遇到很高的维度时,如何给他降到较低的维度上?前文提到进行属性选择,当然这是一种很好的方法,这里另外提供一种从高维特征空间向低纬特征空间映射的…

12种降维方法终极指南

来源:Analytics Vidhya 编译:Bot 授权自 论智 你遇到过特征超过1000个的数据集吗?超过5万个的呢?我遇到过。降维是一个非常具有挑战性的任务,尤其是当你不知道该从哪里开始的时候。拥有这么多变量既是一个恩惠——数据…

12种降维方法终极指南(含Python代码)

12种降维方法终极指南(含Python代码) 你遇到过特征超过1000个的数据集吗?超过5万个的呢?我遇到过。降维是一个非常具有挑战性的任务,尤其是当你不知道该从哪里开始的时候。拥有这么多变量既是一个恩惠——数据量越大&…

七种降维方法

近来由于数据记录和属性规模的急剧增长,大数据处理平台和并行数据分析算法也随之出现。于此同时,这也推动了数据降维处理的应用。实际上,数据量有时过犹不及。有时在数据分析应用中大量的数据反而会产生更坏的性能。 最新的一个例子是采用 20…

【数据降维】数据降维方法分类

数据降维基本原理是将样本点从输入空间通过线性或非线性变换映射到一个低维空间,从而获得一个关于原数据集紧致的低维表示。 数据降维工具箱drtoolbox中众多算法,这里简单做个分类。 因为很多并没有仔细了解,在此次只对八种方法做分类&…

机器学习之降维方法总结

降维方法分为线性降维方法和非线性降维方法,看下表:本文结构如下: 线性降维方法主成分分析法线性判别法奇异值分解法因子分析法非线性降维方法~~流形学习简介 说到维度,其目的是用来进行特征选择和特征提取…

常见的降维方法(PCA,SVD)

1、PCA降维(主成分分析) PCA降维就是去除线性相关,使得最后剩余的属性维度全都线性无关。 其实:PCA降维不仅是去除先线性无关,还可以过滤掉小特征值对应的特征向量。因为特征值变化小,对应的特征向量变化…

看!数据分析领域中最为人称道的七种降维方法

http://dataunion.org/20803.html 感谢王穆荣的投稿,转载请注明出处:数盟社区 近来由于数据记录和属性规模的急剧增长,大数据处理平台和并行数据分析算法也随之出现。于此同时,这也推动了数据降维处理的应用。实际上&#xff0…

数据降维的几种常见方法(PCA;FA;LDA;ICA等)

文章目录 数据降维方式简述PCA与ICA、FA、LDA的区别与联系1.PCA与ICA的联系与区别2.PCA与LDA的联系与区别3.PCA与FA的联系与区别 总结 数据降维方式简述 在学习ICA算法的过程中,了解到常常需要对数据进行降维,如PCA,FA等,以达到数…

大整数的乘法

大整数的乘法 (这里主要讨论的是两个较大的数相乘的效率问题,实际上并不是真正意义上的大数相乘。在java中有个BigInteger类已经可以储存大数,并提供了大数相乘的方法了。) 【分析】 首先,当两个整数X、Y&#xff0…

实验一:大整数乘法

1.实验目的 掌握分治算法的基本思想、技巧和效率分析方法。熟练掌握用递归设计分治算法的基本步骤。学会利用分治算法解决实际问题。 2.实验内容 大整数乘法 采用分治算法实现两个n位二进制(或者十进制)大整数的乘法。 3.实验要求 根据实验内容构思…

分治法的经典问题——大整数相乘

分治法的原理 讨论问题时,先来了解一下什么是分治法。 分治法的意思就是,分而治之,也就是把一个问题,拆分成几个小问题,最后再汇总解决的方法 通过大整数相乘问题来了解分治法 假如现在我们要求两个大整数相乘的乘积…