奇异值分解(SVD)原理与在降维中的应用

奇异值分解

奇异值分解(Singular Value Decomposition,以下简称SVD)是在机器学习领域广泛应用的算法,它不光可以用于降维算法中的特征分解,还可以用于推荐系统,以及自然语言处理等领域。是很多机器学习算法的基石。本文就对SVD的原理做一个总结,并讨论在在PCA降维算法中是如何运用运用SVD的。

1. 回顾特征值和特征向量

在这里插入图片描述

2. SVD的定义

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

3. SVD计算举例

在这里插入图片描述
在这里插入图片描述

4. SVD的一些性质

在这里插入图片描述

5. SVD用于PCA

在这里插入图片描述

SVD小结

SVD作为一个很基本的算法,在很多机器学习算法中都有它的身影,特别是在现在的大数据时代,由于SVD可以实现并行化,因此更是大展身手。SVD的原理不难,只要有基本的线性代数知识就可以理解,实现也很简单因此值得仔细的研究。当然,SVD的缺点是分解出的矩阵解释性往往不强,有点黑盒子的味道,不过这不影响它的使用。

数据的中心化和标准化

简介:
意义:数据中心化和标准化在回归分析中是取消由于量纲不同、自身变异或者数值相差较大所引起的误差。
原理:数据标准化:是指数值减去均值,再除以标准差;
数据中心化:是指变量减去它的均值。
目的:通过中心化和标准化处理,得到均值为0,标准差为1的服从标准正态分布的数据。

在回归问题和一些机器学习算法中,以及训练神经网络的过程中,还有PCA等通常需要对原始数据进行中心化(Zero-centered或者Mean-subtraction)处理和标准化(Standardization或Normalization)处理。

目的:通过中心化和标准化处理,得到均值为0,标准差为1的服从标准正态分布的数据。计算过程由下式表示:
原因:在一些实际问题中,我们得到的样本数据都是多个维度的,即一个样本是用多个特征来表征的。很显然,这些特征的量纲和数值得量级都是不一样的,而通过标准化处理,可以使得不同的特征具有相同的尺度(Scale)。这样,在学习参数的时候,不同特征对参数的影响程度就一样了。简言之,当原始数据不同维度上的特征的尺度(单位)不一致时,需要标准化步骤对数据进行预处理。
下图是二维的示例:
在这里插入图片描述
左图表示的是原始数据
中间的是中心化后的数据,可以看出就是一个平移的过程,平移后中心点是(0,0)。同时中心化后的数据对向量也容易描述,因为是以原点为基准的。
右图将中心化后的数据除以标准差,得到为标准化的数据,可以看出每个维度上的尺度是一致的(红色线段的长度表示尺度),而没有处理之前的数据是不同的尺度标准。原始数据经过数据标准化处理后,各指标处于同一数量级,适合进行综合对比评价。
————————————————
本文部分为CSDN博主「lilong117194」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/lilong117194/article/details/78561013

(本文部分转载,转载请注明出处。欢迎沟通交流: liujianping-ok@163.com)

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值