1 Unsupervised Learning作用
Clustering & Dimension Reduction(化繁为简):将复杂的输入转化输出为简单内容,如输入一组树的图片 输出一颗抽象的树图片。
Generation(无中生有):输入特定值,通过已知的function输出不同类型的树图片。
本课时重点在于线性问题中的Dimension Reduction。
2 Clustering
方法1:K-means
做法:
- 将X={x1,...,xn,...xN}X = \{ x^1,...,x^n,...x^N \}X={x1,...,xn,...xN}分成K簇
- 从XXX中随机初始化中心点 cic^ici,i=1,2,...ki=1,2,...ki=1,2,...k
- (重复)遍历所有xnx^nxn,若xnx^nxn与哪个cic^ici最近 则 bin=1b^n_i=1bin=1,反之bin=0b^n_i=0bin=0
- (重复)更新中心点 cic^ici,ci=∑xnbinxn∑xnbinc^i=\frac{\sum_{x^n}b^n_ix^n}{\sum_{x^n}b^n_i}ci=∑xnbin∑xnbinxn
方法2:Hierarchical Agglomerative Clustering(HAC)层次聚类
做法:
- 现有ABCDE五颗树
- 两两计算相似度,选择最相似的一对A&B,将其平均起来得F。现在有FCDE四棵树
- 再两两计算相似度 取最相似一对做平均得G,以此类推得再得H,最后得到根节点ROOT
- 当切在橙色处,形成三类AB、C、DE;当切在绿色处,形成两类ABC、DE
3 Dimension Reduction(降维)
3.1 理解
- 看上去是三维的,但实际放到二维中研究即可。
- 在MNIST数据集中,一个数据是28*28维度的,实际上可以将其转换为关键因素进行研究(如角度)
注意:主成分研究并非简单的剔除特征,而是将高纬度特征映射成低维度,映射得到的低维度特征(能够较好代表原来的高纬度特征)为主成分。
3.2 方法
3.2.1 Feature Selection
直观看到特征聚集在某一维度,则直接提取该维度。(实际操作有困难)
3.2.2 Principle Component Analysis主成分分析
z=Wxz=Wxz=Wx关键是找到WWW
3.2.2.1 举例
例子:宝可梦 横轴:攻击力,纵轴:防御力,现将其降维至一个维度。要点如下:
- z1=w1⋅xz_1=w^1·xz1=w1⋅x 其中∣∣w1∣∣2=(w1)Tw1=1||w^1||_2=(w^1)^Tw^1=1∣∣w1∣∣2=(w1)Tw1=1
- 可能得到的结果 如图橙色区域,但我们尽可能选择方法最大的(以防止降维后的数据堆叠到一起),即最大化:
3.2.2.2 引申
若将xxx降维至两个维度,则:
- 找到w1和w2w^1和w^2w1和w2,且∣∣w1∣∣2=1||w^1||_2=1∣∣w1∣∣2=1,∣∣w2∣∣2=1||w^2||_2=1∣∣w2∣∣2=1,w1⋅w2=0w^1·w^2=0w1⋅w2=0
- 最大化z1和z2z_1和z_2z1和z2
- 则W=[(w1)T(w2)T..]W=\begin{bmatrix} (w^1)^T \\ (w^2)^T \\ .\\.\end{bmatrix}\quadW=⎣⎢⎢⎡(w1)T(w2)T..⎦⎥⎥⎤
3.2.2.3 如何解
- 方法1:可将PCA描述为神经网络,然后采用梯度下降方法求解
- 方法2:拉格朗日乘子法
预备:
投影到1维:
- 目标:找到w1w^1w1,使Var(z1)=(w1)Sw1Var(z_1)=(w^1)Sw^1Var(z1)=(w1)Sw1最大
- 约束:(w1)Tw1=1(w^1)^Tw^1=1(w1)Tw1=1
- 朗格朗日乘法,得:
- 结论:w1w^1w1是协方差矩阵SSS的特征向量(对应的特征值λ1\lambda_1λ1为最大的特征值)
投影到1维:
- 目标:找到w2w^2w2,使Var(z2)=(w2)Sw2Var(z_2)=(w^2)Sw^2Var(z2)=(w2)Sw2最大
- 约束:(w2)Tw2=1(w^2)^Tw^2=1(w2)Tw2=1 ,(w2)Tw1=0(w^2)^Tw^1=0(w2)Tw1=0
- 朗格朗日乘法,得:(蓝色线处=1,黄色线处=0,绿色线处=行向量*矩阵*列向量=标量)
- 结论:w2w^2w2是协方差矩阵SSS的特征向量(对应的特征值λ2\lambda_2λ2为第二大的特征值。解释:因为两个特征向量是正交的,故特征值一定不同,所以w2w^2w2特征值一定不是最大的那个,那么顺延即为第二大)