PCA 主成分分析

    矩阵乘法对应一个变换。该变换是把任意一个向量变成另一方向或长度都大多不同的新向量。在这个变换过程中,原向量主要发生旋转变换,伸缩变换。如果矩阵对某一个向量或某些向量只发生伸缩变换,不对这些向量发生旋转变换,那么这些向量就称为这个矩阵的特征向量,伸缩的比例就是特征值。

    例如现在有一个M*N的矩阵A,我们想要把其变换到新的M*N矩阵B,那么就有A*C= B,其中C是N*N的变换矩阵。而我们仅仅希望A进行伸缩变换,那么C就是A的特征向量构成的矩阵,特征值决定了其在对应的特征向量的伸缩比例。

    现有M个N维观测样本A(M*N维,每行代表一个样本),我们同样希望将其变换到新的样本矩阵B(M*N维)。那么就有A * C = B,其中C是N*N的变换矩阵。现在我们希望从A变换到B仅仅发生伸缩变换,伸缩变换体现了每个样本在变换后仅仅沿着某个方向进行伸缩,而伸缩比例体现了每个样本在在该方向上的离散程度。这样,变换矩阵C的特征向量构成的矩阵对A的变换仅仅有伸缩变换。那么,该怎么确定变换矩阵C呢?我们关心的仅仅是变换矩阵的特征向量,而不关心变换矩阵C。对样本矩阵A求解协方差,得到其协方差矩阵D,D刚好是N*N,可以作为一个变换矩阵C。这样求解出D的特征向量构成矩阵E作为变换矩阵就能实现A*E=B仅仅对A沿着某些方向进行伸缩变换。当然,对于E可以选择若干维N*d(d<N),从而实现将原始数据集降维即仅仅使用N维空间的d维子空间。

    在做类别预测时,伸缩性可以保证新的样本(在d维子空间中的样本)在较大特征值对应下的特征向量伸缩比例大(分散大),从而使得在该方向具有可分性。

    PCA就是利用上述这种思想。其具体步骤分为

1. 将样本数据集按行存放构成样本矩阵Amn
2.将数据样本集中心化即去掉各维度的均值。
2. 求解该矩阵的协方差矩阵D(作为变换矩阵的一种选择)
3.求解该协方差矩阵D的特征值以及对应的特征向量。并按特征值大小排序
4.取前d(d<=n)维构成新的转换矩阵E(n*d)。当d<n时,实现降维
5.将原始样本映射到新的d维子空间中Bmd = A * E.

以上是我的初步理解。若有错误欢迎指正。后期将进行更改提供具有推导过程和应用举例。

PCA用于人脸检测
http://b2museum.cdstm.cn/identification/rlsb-2.htm

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值