机器学习之主成分分析

一.绪言

前段时间开始入门机器学习,《机器学习实战》(Peter Harrington 著)差不多过了一遍,第一遍主要关注算法的实现和应用。现在把注意力转移到算法的原理,这一次争取把算法总结得尽量全面,便于以后查阅。

这是本系列的第一篇文章——主成分分析。

二.什么是主成分分析

主成分分析是姜维,哦不,降维的一种。

降维就是将维度降低。在机器学习中,降维常常用来做数据的预处理。为什么要对数据进行降维了?那来从数据本身说起。

  • 大数据时代,数据冗余,维度高。例如个人用户信息,存储了身份证,同时也存储了生日,就造成了冗余。
  • 数据维度有相关性。例如,人脸头像具有对称性,去掉一般的像素点也是没有太大问题的。
  • 数据有噪声。噪声对学习会产生干扰,去掉噪声可以提高算法的精度。

那如何进行降维了?难道要随机去掉一些维度吗?答案是否定的。直接去掉维度会导致数据信息的大量确实。主成分分析(PCA)技术可以尽量保证数据信息少量减小的情况下,进行维度的缩减。

主成分分析的原理是将数据从原来的坐标系转化到新的坐标系,新坐标系的选择是由数据本身决定的。第一个新坐标轴选择的是原始数据中方差最大的方向,第二个新坐标轴的选择和第一个坐标轴正交且具有最大方差的方向。重复选择新坐标轴之后,最终大部分方差都包含在最前面的几个新坐标轴中。因此,可以忽略余下的坐标轴,达到降维的目的。

举个栗子:

在上图中,在第一次移动坐标轴时,先找到了数据的最大方差方向,即此时的 u u u方向,接着第二次移动坐标轴,找到的次大方差方向且与 u u u轴正交的 v v v方向。

这里,第一个主成分就是从数据差异性最大的(即方差最大)的方向,即 u u u。第二个主成分则来自于数据差异性次大的方向,并且与第一个主成分方向正交,即 v v v

我们可以只用 u u u方向来研究原来的数据,就达到了降维的目的,而且最大得保留了原数据的差异性。

三.数学原理

总体主成分

x = ( x 1 , x 2 , … , x m ) T x=(x_{1},x_{2},\dots,x_{m})^{T} x=(x1,x2,,xm)T是m维随机变量,其均值向量是 μ \mu μ

μ = E ( x ) = x = ( μ 1 , μ 2 , … , μ m ) T \mu=E(x)=x=(\mu_{1},\mu_{2},\dots,\mu_{m})^{T} μ=E(x)=x=(μ1,μ2,,μm)T

协方差矩阵是 Σ \Sigma Σ

Σ = c o v ( x , x ) = E [ ( x − μ ) ( x − μ ) T ] \Sigma=cov(x,x)=E[(x-\mu)(x-\mu)^{T}] Σ=cov(x,x)=E[(xμ)(xμ)T]

考虑由m维随机变量 x x x到m维随机变量 y = ( y 1 , y 2 , … , y m ) T y=(y_{1},y_{2},\dots,y_{m})^{T} y=(y1,y2,,ym)T的线性变换
y i = α i T x = α 1 i x 1 + α 2 i x 2 + ⋯ + α m i x m y_{i}=\alpha_{i}^{T}x=\alpha_{1i}x_{1}+\alpha_{2i}x_{2}+\dots+\alpha_{mi}x_{m} yi=αiTx=α1ix1+α2ix2++αmixm
其中 α i T = ( α 1 i , α 2 i , … , α m i ) \alpha_{i}^{T}=(\alpha_{1i},\alpha_{2i},\dots,\alpha_{mi}) αiT=(α1i,α2i,,αmi)

于是y有下列性质:

E ( y i ) = α i T μ E(y_{i})=\alpha_{i}^{T}\mu E(yi)=αiTμ
v a r ( y i ) = α i T Σ α i var(y_{i})=\alpha_{i}^{T}\Sigma\alpha_{i} var(yi)=αiTΣαi
c o v ( y i , y

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值