【导读】我们在上一节的内容中已经为大家介绍了台大李宏毅老师的机器学习课程的半监督学习,这一节将主要针对讨论无监督学习:主成分分析(PCA)。本文内容涉及机器学习中无监督学习的若干主要问题:k-means,HAC,dimension reduction以及PCA。话不多说,让我们一起学习这些内容吧
课件网址:
http://speech.ee.ntu.edu.tw/~tlkagk/courses_ML17_2.html
http://speech.ee.ntu.edu.tw/~tlkagk/courses_ML17.html
视频网址:
https://www.bilibili.com/video/av15889450/index_1.html
李宏毅机器学习笔记13Unsupervised Learning : Principle Component Analysis(无监督学习:主成分分析)
Unsupervised learning指的训练集都没有label,unsupervisedlearning分为两种,只有输入的叫做cluster或者dimension reduction,只要输出的叫做generation。
1. K-means
最简单的算法是K-means,先随机找出k个中心,x离哪个中心最近输入哪个类,然后重新找出这些类的中心,一直循环下去直到收敛。
2. HAC
还有一个聚类方法叫做hierarchical agglomerative clustering(HAC),先找最相近的两个连在一起,然后取平均,一次类推(类似哈弗曼树),最后根据阈值一刀切,分类。
但这样直接分类太粗糙了,我们可以使用分布式表示来表达一个x。
3. dimension reduction
将一个高维空间的x在低维空间表示叫做dimension reduction。
因为有时候不需要那么高的维度来描述一张image,如下图就用一维就可以表示,10,20为旋转的度数。
Dimension reduction最简单的方法是featureselection,选取最有用的维度,拿掉没有用的维度。
4. PCA
然后另一个常见的方法就是PCA
当PCA只有一维的时候,我们是找出让z1区分度最大的w1,
同理,如果有两维的话,找出让除z1以外z2区分度最大的w2,
将var(z1)进行转化后可以得到下图所示的式子
利用lagrange multiplier我们可以发现得到的w1是S的特征向量,其对应的特征值α是最大值。
当降维到两维时,得到的w2是S第二大特征值对应的特征向量
降维后得到的z其协方差矩阵是对角矩阵
PCA可以应用在手写数字辨识中,手写数字是由一些basiccomponent组成的,每个component是一个vector
于是每张图像可以用这些component加权表示
我们的任务是找出k个component使得reconstruction error最小
矩阵化可以表示成这样
利用SVD发现X和X转置乘积的前k个最大特征值对应的特征向量就是其解
实际上PCA也可以表示出网络的形式,这种网络我们称为自编码器
但PCA也有缺点,多个类别的数据混合在一起的话用PCA会导致无法分开
将这个s形拉开是对于PCA做不到的
领取专属 10元无门槛券
私享最新 技术干货