05_特征工程—降维

一、降维

  • 特征降维必须在特征选择做完以后才能进行。

  • 当特征选择完成后,可以直接可以进行训练模型了,但是可能由于特征矩阵过大,导致计算量比较大,训练时间长的问题,因此降低特征矩阵维度也是必不可少的。

  • 常见的降维方法除了基于L1的惩罚模型外,还有主成分析法(PCA)线性判别分析法(LDA),这两种方法的本质都是将原始数据映射到维度更低的样本空间中

  • 但是采用的方式不同,PCA是为了让映射后的样本具有更大的发散性,LDA是为了让映射后的样本有最好的分类性能

  • 除了使用PCA和LDA降维外,还可以使用主题模型来达到降维的效果。

1.1 降维必要性

在实际的机器学习项目中,特征选择/降维是必须进行的,因为在数据中存在以下几个方面的问题:

  • 数据的多重共线性:特征属性之间存在着相互关联关系。多重共线性会导致解的空间不稳定,从而导致模型的泛化能力弱;
  • 高纬空间样本具有稀疏性,导致模型比较难找到数据特征;
  • 过多的变量会妨碍模型查找规律;
  • 仅仅考虑单个变量对于目标属性的影响可能忽略变量之间的潜在关系。

1.2 降维目的

通过降维的目的是:

  • 减少特征属性的个数。
  • 确保特征属性之间是相互独立的。(特征与特征之间独立)

二、降维—PCA(无监督)

主成分分析(PCA): 将高纬的特征向量合并成为低纬度的特征属性,是一种无监督的降维方法。

  • n_components:产生新特征的个数。

在这里插入图片描述

2.1 PCA原理

  • PCA(Principal Component Analysis)是常用的线性降维方法,是一种无监督的降维算法。算法目标是通过某种线性投影,将高维的数据映射到低维的空间中表示,并且期望在所投影的维度上数据的方差最大(最大方差理论),以此使用较少的数据维度,同时保留较多的原数据点的特性。
  • 通俗来讲的话,如果将所有点映射到一起,那么维度一定降低下去了,但是同时也会将几乎所有的信息(包括点点之间的距离等)都丢失了,而**如果映射之后的数据具有比较大的方差,那么可以认为数据点则会比较分散,这样的话,就可以保留更多的信息。**从而我们可以看到PCA是一种丢失原始数据信息最少的无监督线性降维方式。
  • 在PCA降维中,数据从原来的坐标系转换为新的坐标系,新坐标系的选择由数据本身的特性决定。 第一个坐标轴选择原始数据中方差最大的方向,从统计角度来讲,这个方向是最重要的方向;第二个坐标轴选择和第一个坐标轴垂直或者正交的方向;第三个坐标轴选择和第一个、第二个坐标轴都垂直或者正交的方向;该过程一直重复,直到新坐标系的维度和原始坐标系维度数目一致的时候结束计算。 而这些方向所表示的数据特征就被称为**“主成分”**。

在这里插入图片描述

2.2 PCA 计算

假设X是已经中心化(z-score)过的数据矩阵,每列一个样本(每行一个特征);样本点xi在新空间中的超平面上的投影是:WTxi;若所有样本点的投影能够尽可能的分开,则表示投影之后的点在各个维度上的方差应该最大化,那么投影样本点的各个维度方差和可以表示为:
在这里插入图片描述
在这里插入图片描述

2.3 PCA的执行过程

  • 输入: 样本集X={x1,x2,…,xn};每个样本有m维特征,X是一个m行n列的矩阵。

  • 步骤:

    • 1、数据中心化:对X中的每一行(即一个特征属性)进行零均值化,即减去这一行的均值。(标准化)

    • 2、求出数据中心化后矩阵X的协方差矩阵(即特征与特征之间的协方差构成的矩阵)

    • 3、求解协方差矩阵的特征值和特征向量

    • 4、将特征向量按照特征值从大到小按列进行排列称为矩阵,获取最前面的k列数据形成矩阵W。

    • 5、利用矩阵W和样本集X进行矩阵的乘法得到降低到k维的最终数据矩阵。

2.4 PCA案例

在这里插入图片描述

2.5 PCA降维的SVD求解方式

在这里插入图片描述

三、降维—LDA(有监督)

线性判断分析(LDA): LDA是一种基于分类模型进行特征属性合并的操作,是一种有监督的降维方法。
在这里插入图片描述

3.1 LDA原理

  • LDA的全称是Linear Discriminant Analysis(线性判别分析),是一种有监督学习算法。
  • LDA的原理是,将带上标签的数据(点),通过投影的方法,投影到维度更低的空间中,使得投影后的点,会形成按类别区分,一簇一簇的情况,相同类别的点,将会在投影后的空间中更接近。用一句话概括就是:“投影后类内方差最小,类间方差最大”

在这里插入图片描述

3.2 LDA问题求解

  • 假定转换为w,那么线性转换函数为x’= wTx; 并且转换后的数据是一维的。
  • 考虑二元分类的情况,认为转换后的值大于某个阈值,属于某个类别,小于等于某个阈值,属于另外一个类别,使用类别样本的中心点来表示类别信息,那么这个时候其实就相当于让这两个中心的距离最远:

在这里插入图片描述

  • 同时又要求划分之后同个类别中的样本数据尽可能的接近,也就是同类别的投影点的协方差要尽可能的小。

在这里插入图片描述

  • 结合着两者,那么我们最终的目标函数就是:

在这里插入图片描述

  • 对目标函数进行转换(A、B为方阵,A为正定矩阵):

在这里插入图片描述

四、PCA和LDA异同

相同点:

  • 两者均可以对数据完成降维操作。
  • 两者在降维时候均使用矩阵分解的思想。
  • 两者都假设数据符合高斯分布。

不同点:

  • LDA是有监督降维算法,PCA是无监督降维算法。
  • LDA降维最多降到类别数目k-1的维数,而PCA没有限制。
  • LDA除了降维外,还可以应用于分类。
  • LDA选择的是分类性能最好的投影,而PCA选择样本点投影具有最大方差的方向。
    在这里插入图片描述
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

少云清

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值