李宏毅ML lecture-13 unsupervised Learning Principle Component Analysis

在这里插入图片描述
这个课呢讲解无监督学习中的两大类,数据降维和生成模型.
数据降维先专注于线性降维.

聚类(Clustering)

K-means

在这里插入图片描述

HAC

在这里插入图片描述

数据降维(Dimension Reduction)

数据降维直观上看这张图就能知道,高维空间中的特点可以在低维空间表示.
在这里插入图片描述
再举例来说,一张数字图片大小为 28 × 28 28\times28 28×28,但是表示数字的信息的像素点是很少的.
在这里插入图片描述
在这里插入图片描述
一张3的图片,经过旋转之后,还是3,但是计算机得到的是另外4张图片.
而这4张图片可以用一个仿射变换矩阵得到,这样数据得到了压缩.
在这里插入图片描述
如何做降维呢?

第一种方法叫Feature selection:把没有用的维度去掉
在这里插入图片描述
第2种就是PCA

PCA(Principal Component Analysis)

PCA就是一个线性函数,输入一个高维向量输出一个低维向量.
在这里插入图片描述
在这里插入图片描述
这里引用了Bishop 对于PCA的定义.
在这里插入图片描述
再补充一个大佬的博客

PCA的做法就蕴含在定义中.
先找 w 1 w_1 w1,使得 z 1 z_1 z1的方差最大:
在这里插入图片描述
再找 w 2 w_2 w2,使得 z 2 z_2 z2的方差最大,同时保证 w 2 w_2 w2与先找到的 w 1 w_1 w1垂直,以此类推,找到所有的 w i w_i wi.所以最终的 W W W是一个正交矩阵(Orthogonal matrix):
在这里插入图片描述
在大佬的博客中,其实就说的非常清楚了:
在这里插入图片描述
PCA降维到k维,这个k就是一个超参数,是需要自己决定的.下图中的M既是k.
在这里插入图片描述
在这里插入图片描述
下面的推导需要注意:
( a ⋅ b ) (a \cdot b) (ab)表示内积
( a b ) (ab) (ab)表示矩阵乘积
下面推导后的结果就是:
让投影后方差最大等价于让 ( w 1 ) T S w 1 (w^1)^TSw^1 (w1)TSw1最大.
S S S是数据的协方差矩阵
同时规定 ∣ ∣ w 1 ∣ ∣ 2 = ( w 1 ) T w 1 = 1 ||w^1||_2=(w^1)^Tw^1=1 w12=(w1)Tw1=1作为限定条件
这个条件就可以用拉格朗日乘数法带入,找到 w 1 w^1 w1
如果对推导有困难,可以先看后面的PRML中的特征向量和拉格朗日乘数法.
在这里插入图片描述

基于特征值分解协方差矩阵实现PCA算法

因为 S S S是数据的协方差矩阵,所有具有一些性质:

  1. S S S是对称的(Symmetric)
  2. S S S是半正定矩阵(Positive-semidefinite): 设 S S S为实对称矩阵,若对于每个非零实向量 X X X,都有 X T S X ≥ 0 X^TSX\ge 0 XTSX0,则称A为半正定矩阵,称 X T S X X^TSX XTSX为半正定二次型。
  3. S S S的特征值(eigenvalues)都是非负的
  4. eigenvector是特征向量

通过推导得到结论:
计算数据矩阵的协方差矩阵,然后得到协方差矩阵的特征值特征向量,选择特征值最大(即方差最大)的k个特征所对应的特征向量组成的矩阵。
下图为k=1:
在这里插入图片描述
下图为k=2:
求偏导得到红色框公式:
左乘 ( w 1 ) T (w^1)^T (w1)T推导得 β = 0 \beta=0 β=0
红色框公式带入 β = 0 \beta=0 β=0得黄色框公式
所以 w 2 w^2 w2是特征向量
因为最大的特征值对应的特征向量是 w 1 w^1 w1
所以为了使 ( w 2 ) T S w 2 (w^2)^TSw^2 (w2)TSw2最大
w 2 w^2 w2就是第二大特征值对应的特征向量

在这里插入图片描述
在这里插入图片描述
C o v ( z ) = D Cov(z)=D Cov(z)=D对角矩阵(diagonal matrix)
在这里插入图片描述

特征向量

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

拉格朗日乘数法

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

基于SVD分解协方差矩阵实现PCA算法

假设在MNIST上的数字都是由不同的笔画组成,每一个数字可以看作是笔画的线性组合.
我们提取的笔画数远远小于像素数,就完成了数据降维.
在这里插入图片描述
在定义中一个digit由component线性组成,再加一个digit的平均
digit: x x x
digits的平均: x ˉ \bar x xˉ
component线性组成: x ^ \hat x x^
x ˉ \bar x xˉ x x x是已知的,目标就是最小化 x − x ˉ x-\bar x xxˉ x ^ \hat x x^之间的重构误差(reconstruction error)

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

PCA通过神经网络实现

注意这时候 W W W不能保证是正交矩阵
在这里插入图片描述

PCA在数据可视化的例子

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

在这里插入图片描述

在这里插入图片描述

Weakness of PCA

  1. 无监督的
  2. 线性的

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

PCA的扩展

矩阵分解(Matrix Factorization)

https://datajobs.com/data-science-repo/Recommender-Systems-[Netflix].pdf

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值