Machine Learning - 李宏毅 学习笔记 (8)

刚才是定性的使用graph图,接下来定量的使用graph图。在图结构上定义label的smoothness平滑度,只考虑两两有相连的point,然后公式为计算$ S = \frac{1}{2}\sum { \omega _{i,j}(y{i}-y{j})^{2} }$,不管是否有label的data都要算,smothness越小越好。

将上式整理,改写成简洁式:$ S = y^{T}Ly $,y = [..yi..yj..]T,y:(R+U),L=D-W,L:(R+U) * (R+U),W是所有权重的组合,D是所有权重叠加的对角矩阵。L称之为Graph Laplacian图拉普拉斯算子。

可以把smoothness加入deep neural network的任何层输出,只要把某个hidden layer接出来再乘上转置它也是smoothness。

第十七章 Unsupervised Learning 无监督学习 - 线性降维

无监督学习分为两种:

Clustering & Dimension Reduction 聚合和降维(化繁为简):只有输入没有输出/标签 - 本节主讲线性降维

Generation 生成(无中生有):只有输出/标签没有输入

Cluster 聚类:

聚类需要多少个cluster簇,跟神经网络层数一样属于超参,根据经验调整。(使用肘部图)

在聚类中最常用的是K-mean K均值方法。首先人工确定有k个中心,然后初始化从数据集中随机选k个/直接确定k个作为簇中心。每个数据集只属于最接近的集群类,每更新一次集群都要更新一次簇中心坐标。

聚类另一种方法叫做Hierarchical Agglomerative Clustering HAC层次聚类。这个方法首先建立一棵树,把把每个样本两两计算相似度,然后挑选最相似的那个配对,之后将挑选出来的两个样本合并平均得到新样本向量,再与剩下的样本循环上述操作。分层完后做集群,集群是根据层的切分来进行聚类。

K-mean和HAC最大的区别是,K-mean需要自己决定集群数目,而HAC不需要自己决定有多少集群,或者只需要去切分树层次。

Distributed Representation 分布式表示:聚类因为非黑即白,有时候会以偏概全。我们可以用分布式表示,用向量来表示结果,每个维度都表示某一种特值。

假设我们原来的输入是高维度的东西比如图像,现在输出用低维度来代表,这件事就被称之为降维。是同样一个东西,只是不同维度的称呼而已。

Dimension Reduction 降维:

因为有时候多维浪费资源,使用低维可以完全代替高维特征。做降维也就是在做尺寸缩小。

降维里面最简单是Feature selection特征选择,就是人工选取特征,筛除不需要特征,但一般情况下是任何一个dimension都不能拿掉。

另一种常见的降维方法叫Principe Component Abalysis PCA主成分分析。PCA做的方式就是将输入和输出做一个线性变换:x在w方向上做映射,现在要做的就是根据输入x求出变换矩阵w。$ PCA:z = Wx $

我们希望选一个w方向,输入x经过投影后得到的z分布是越大越好,这样意味着很少的点重合,点与点之间的差异度还在。即 $ Var(z _ {i}) = Σ(z _ {i} - \overline{z _ {i}} )^{2} , \vert w^{i} \vert_{2}=1, w^{i} * w^{j} = 0$,Var尽可能小,w是一个正交矩阵。

PCA:$ Var(z _ {1}) = \frac{1}{N}\sum (z _ {i}-\overline{z _ {i}} )^{2}= \frac{1}{N}\sum(\omega ^{i}\cdot (x-\overline{x})^{2})$

$ = (\omega {i}){T}\frac{1}{N}\sum(x-\overline{x})(x-\overline{x})^{T}\omega ^{i} = (\omega {i}){T}Cov(x)\omega ^{i} = (\omega {i}){T}S\omega ^{i} $,现在讲就是在w的约束下求Var的最大值。

S是协方差矩阵,又是半正定,就是说所有的特征值都是非负的。这个问题的解决就是\(w^{i}\)是S的特征向量。

中间过程首先用lagrange multiplier拉格朗日乘数法求解最大值时的w:对所有的w做偏微分令其等于0,然后带入看w为多少,可使拉格朗日系数α最大为S的最大特征向量。每个w都进行此带入求解,依次带入α,β,γ..,它们是S的第一、第二、第三大等的特征向量。

之后求解z,发现z的协方差是对角矩阵,也就是说假设你用PCA得到的feature(z)不同的dimension之间没有解相关,这样保证新特征没有一个维度是多余的,减少参数量,避免overfitting。

从另一个角度来看PCA,假设手写数字识别,这些数字实际上是由basic component基本构件组成的,比如笔画,我们将这些基本构件写成向量,把这些向量加起来就代表一个数字。每张图里面的pixel像素都可以看作是:$ x≈c _ {1}u^{1}+...+c _ {k}u^{k}+\overline{x} $,这是一堆构件的linear conformation线性函数关系。

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/zwsszd.html