Andrew Ng机器学习课程笔记(十七)之无监督学习之主成份分析与降维

Preface

Principal Components Analysis(主成份分析)

Principal Components Analysis

我们在上一篇文章中说讲述的 Andrew Ng机器学习课程笔记(十六)之无监督学习之因子分析模型与EM算法的因子分析是基于概率模型对样例的个数 m m 都小于其特征个数n,甚至样例的个数 m m 都远远小于其特征个数n情况的处理。 这里我们将使用一种改进的因子分析方法PCA来解决问题(PCA以前也叫做Principal Factor Analysis,PFA)。

Problem

对于给定的数据集 S={x(i)Rn;i=1,...,m} S = { x ( i ) ∈ R n ; i = 1 , . . . , m } ,我们希望得到一个更低维的数据集合 S={x(i)Rk;i=1,...,m;k<n} S ′ = { x ( i ) ∈ R k ; i = 1 , . . . , m ; k < n }

Normalize Mean and Variance

  1. 置均值 μ=0 μ = 0 μ=1mmi=1x(i) μ = 1 m ∑ m i = 1 x ( i )
  2. x(i)μ x ( i ) − μ 替换 x(i) x ( i )
  3. 置方差 σ2j σ j 2 为单位向量, σ2j=1mmi=1(x(i)j)2 σ j 2 = 1 m ∑ i = 1 m ( x j ( i ) ) 2
  4. x(i)j/σj x j ( i ) / σ j 替换每一个 x(i)j x j ( i )

在上述过程中步骤1-2完成将样本数据均值置0;步骤3-4完成将样本数据方差置1;使得数据保持统一规格。值得一提的是:当数据本身就是同一规格时,步骤3-4可以忽略。

For Example

我们现在以二维数据到一维数据的例子来说明:
假设我们已经对数据集 S={x(i)Rn;i=1,...,m} S = { x ( i ) ∈ R n ; i = 1 , . . . , m } 进行了规范化处理,所以有:
这里写图片描述
我们将数据集中的数据投影到一三象限的角平分线上,可以看出投影后的数据有较大的方差。
这里写图片描述
我们将数据集中的数据投影到二四象限的角平分线上,可以看出投影后的数据有较小的方差。
这里写图片描述
根据方差最大化理论,我们认为将数据投影到一三象限的角平分线上好,因为投影后的样本点之间方差大。

Principal Components Analysis

步骤一:规范化数据,即数据集 S={x(i)Rn;i=1,...,m} S = { x ( i ) ∈ R n ; i = 1 , . . . , m } 中的每一个样本 x(i) x ( i ) 满足均值为零,且有单位方差。
步骤二:向某一个特定方向的单位向量 u u 投影,使得投影之后的样本方差最大。
所以投影样本数据可以表示为:

x(i)Tu

由于投影后均值为 0,投影之后的样本方差可以表示为:

1mmi=1(x(i)Tu)2=1mmi=1uTx(i)x(i)Tu=uT(1mmi=1x(i)x(i)T)u 1 m ∑ m i = 1 ( x ( i ) T u ) 2 = 1 m ∑ m i = 1 u T x ( i ) x ( i ) T u = u T ( 1 m ∑ m i = 1 x ( i ) x ( i ) T ) u

步骤三:在投影之后的样本方差公式中的中间那部分是样本特征的协方差矩阵 (当 x x 的均值为 0 时,一般协方差矩阵都除以 m‐1,这里用 m)
Σ=1mmi=1x(i)x(i)T λ=uT(1mmi=1x(i)x(i)T)u λ = u T ( 1 m ∑ m i = 1 x ( i ) x ( i ) T ) u ,所以使得投影之后的样本方差最大的目标问题可以表示为:
argmaxθλ=uTΣu arg max θ λ = u T Σ u

步骤四: 由于 u u 是单位向量,即|u|=uuT=1。所以:
uλ=uuTΣuuλ=ΣuΣu=λu u λ = u u T Σ u u λ = Σ u Σ u = λ u

所以 λ λ Σ的特征值, u u Σ的特征向量。所以,最佳的投影直线是特征值 λ λ 最大时对应的特征向量,其次是λ第二大对应的特征向量,依次类推。
所以:
步骤五:因此,我们只需要对协方差矩阵 Σ Σ 进行特征值分解,得到的前k大特征值对应的特征向量就是最佳的 k k 维新特征,而且这k维新特征是正交的。得到前 k k u以后,样例 x x 通过以y(i)下变换可以得到新的样本。
y(i)=uT1x(i)uT2x(i)uTkx(i)Rk y ( i ) = [ u 1 T x ( i ) u 2 T x ( i ) ⋮ u k T x ( i ) ] ∈ R k

对于步骤五我们还需要引入累计贡献率来论证:
由于协方差矩阵是正定矩阵,并且我们对特征值(假设有n个)按大小排序后,可以得到:

λ1λ2λ3...λn0 λ 1 ≥ λ 2 ≥ λ 3 ≥ . . . ≥ λ n ≥ 0

λi/ni=1λi λ i / ∑ n i = 1 λ i 为第 i i 个主成份的贡献率。
ki=1λi/ni=1λi前k个主成份的累计贡献率。这个累计贡献率表示这 k k 个主成份能够多大程度上代表原始数据。所以我们在步骤五中选择最大的k个特征值对应的特征向量来作为投影方向能够在尽可能的程度上代表原始数据。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值