【Python算法】常用降维方法-常用降维方法的目的
常用降维方法-常用降维方法的目的
正所谓每一个结果的出现都是一系列的原因导致的,当构建机器学习模型时候,有时候数据特征异常复杂,这就需要经常用到数据降维技术,下面主要介绍一些降维的主要原理。
1. 降维的目的
在实际的机器学习项目中,特征选择/降维是必须进行的,因为在数据中存在以下几个 方面的问题:
数据的多重共线性:特征属性之间存在着相互关联关系。多重共线性会导致解的空间不稳定, 从而导致模型的泛化能力弱;
高纬空间样本具有稀疏性,导致模型比较难找到数据特征;
过多的变量会妨碍模型查找规律;
仅仅考虑单个变量对于目标属性的影响可能忽略变量之间的潜在关系。通过特征选择/降维的目的是:
减少特征属性的个数
确保特征属性之间是相互独立的
当然有时候也存在特征矩阵过大, 导致计算量比较大,训练时间长的问题
因为篇幅有限,本次实验主要介绍以下两种降维方法:
PCA
LDA
2. 常见两大降维方法
2.1 PCA
主成分析(PCA):将高纬的特征向量合并称为低纬度的特征属性,是一种无监督 的降维方法。
算法目标是通过某种线性投影,将高维的数据映射到低维的空间中表 示,并且期望在所投影的维度上数据的方差最大(最大方差理论),以此使用较 少的数据维度,同时保留较多的原数据点的特性。
主成分选择
假设原来的特征数据是n维数据,首先选着方差最大方向为第一维数据。第二个坐标轴选择和第一个坐标轴垂直或者正交 的方向;第三个坐标轴选择和第一个、第二个坐标轴都垂直或者正交的方向;该 过程一直重复,直到新坐标系的维度和达到给定的值。 而这些方向所表示的数据特征就被称为“主成分”。
2.2 LDA
线性判断分析(LDA):LDA是一种基于分类模型进行特征属性合并的操作,是一 种有监督的降维方法。
LDA的原理是,将带上标签的数据(点),通过投影的方法,投影到维度更低的 空间中,使得投影后的点,会形成按类别区分,一簇一簇的情况,相同类别的点, 将会在投影后的空间中更接近。用一句话概括就是:“投影后类内方差最小,类 间方差最大”
比较:
相同点:
两者均可以对数据完成降维操作
两者在降维时候均使用矩阵分解的思想
两者都假设数据符合高斯分布
不同点:
LDA是监督降维算法,PCA是无监督降维算法
LDA降维最多降到类别数目k-1的维数,而PCA没有限制
LDA除了降维外,还可以应用于分类
LDA选择的是分类性能最好的投影,而PCA选择样本点投影具有最大方差的方向
- 点赞
- 收藏
- 关注作者
评论(0)