码迷,mamicode.com
首页 > Web开发 > 详细

coursera机器学习技法笔记(13-14)——deep learning & RBFNetwork

时间:2016-05-07 08:44:28      阅读:960      评论:0      收藏:0      [点我收藏+]

标签:

13 Deep Learning

13.1 Deep Neural Network

  将神经网络的层数增大,即称为深度学习。深度学习一般在输入数据为row data的时候使用,因为这些数据很难人为构造出合适的特征。深度学习一般面临如下挑战:
  (1)神经网络结构的决定:一般只能通过人的主观领域知识来决定神经网络结构,例如图像识别中的convolutional NNet,即认为相邻的像素才有必要连接到下一层的同一神经元。
  (2)模型复杂度:由于高层神经网络会有很多变量,因此显然会提高模型复杂度。但是一般情况下row data的数据集都很大,因此这个问题不算太严峻。
  (3)优化问题:由于神经网络是一个容易陷入局部最优解的模型,因此应当谨慎选择初始值,目前寻找初始值的方法被称为pre-training。
  (4)计算复杂度:由于数据量很大,因此计算复杂度很高。现在采用先进的硬件架构来缓解这一问题,例如GPU计算。

13.2 Autoencoder

  本节讲述了一种叫Autoencoder的pre-trainning方式。构建一个三层网络,其中前两层是深度网络中相邻的两层,第三层输出层的神经元数量与第一层相同。训练时使输入和输出相同,最终得到1/2层和2/3层之间的权重,1/2层之间的权重即为预训练的权重。
  这么做的理由是,使得特征在经过转换之后有足够的信息可以转换回来,即在转换过程中尽量少地丢失信息。Autoencoder的中间层神经元一般比输入/输出层少,并且可以将其看做是输入数据经过萃取之后的模式特征。
  可以看到,这是一个非监督的方法,对于最终转换后输入与输出相似的特征而言,提取的模式能很好地解释它们,反之则不能,这可以看做是密度估计(解释得好的特征聚集在一起形成高密度)或者离群点检测(解释得不好的特征是离群点)。
  另外,称#1/2#层的权重是编码权重,另外一层权重为解码权重,有时候让两边的权重差作为惩罚项。

13.3 Denoising Autoencoder

  在上一节的基础上,将输入的值加上一些噪音,输出值不变,这样就相当于教算法如何从噪音数据中得到正确结论。由于过拟合可以看做是对噪音做了拟合,因此这样的方法也可以看做是避免过拟合的一种方式。

13.4 Principal Component Analysis

  在上两节中讲述了Autoencode的非线性模式,本小结讲述了其线性模式:

hk(x)=d?j=0wkj(di=1wijxi)

写成矩阵形式:
hk(x)=WWTx

WWT进行特征值分解,并构造成损失函数:
Ein=|x?VΓVTx|2

  这样问题就变成了优化VΓ的问题。很显然,Γ与单位矩阵越相似越好,但由于其秩为d?,因此令其为前d?个对角线元素为1,其余元素为0的矩阵。改写原损失函数:
argmax|CVTx|2

  其中,C矩阵是前d?d?个对角线元素为1,其余元素为0的矩阵,这里原本是后面的元素为1,前面的元素为0,但是将argmin的目标转换为了argmax,因此得到C矩阵。这里有约束条件VVT=E,因此将其作为限制条件,利用拉格朗日乘子带入原目标函数,并对V求导,得到:
XXTv=λv

可以看到,v的求解即矩阵XXT的特征向量,同时将v带入原目标函数中,其求解结果是λ,因此应选择最大特征值对应的特征向量作为V的解。
  可以看到,这个方法和PCA有相似之处,不同点在于,PCA中使用了协方差矩阵。

14 Radial Basis Function Network

14.1 RBF Network Hypothesis

  在带高斯核函数的SVM中,可以把高斯核看做是所有样本对于支持向量的相似度,那么SVM就可以看做是将样本与支持向量的相似度进行线性组合,再取符号。将这种思想反应成神经网络的样子,就是将中间的隐藏层换成与支持向量的相似度。
  由于这种相似度需要基于路径(Racial),即两个样本在高维空间中的距离越近,相似度越高,因此并不是所有的核函数都能替代高斯核。

14.2 RBF Network Learning

  回忆一下高斯核作为相似度的RBF网络:

h(x)=output(Mm=1βmRBF(x,μm))

还有另一种方法,令zn=[RBF(xn,μ1),,RBF(xn,μm)],则该问题可以看做是线性回归问题,βm是待求解权重。在线性回归的解析解中,权重如下求解:
βm=(ZTZ)?1Zym

如果x是各不相同的,则Z是可逆的,即:
βm=Z?1ym

  由于得到的解是解析解,我们可以发现当输入的样本是训练样本时,得到的结果一定是正确的,因此可能会带来过拟合问题,以下介绍一些避免过拟合方法:
  一种方法是加上正则化:
βm=(ZTZ+λI)?1Zym

另一种方法是不要对所有样本求相似度,只是对其中几个求。

14.3 K-means Algorithm

  接上节,可以用k-means的方法求出部分代表来使用到RBF中。K-means保证收敛,因为每一次迭代都会导致损失函数降低。

14.4 k-means and RBF Network in Action

  本节演示了RBF和k-means在实际上使用的情况。

coursera机器学习技法笔记(13-14)——deep learning & RBFNetwork

标签:

原文地址:http://blog.csdn.net/u010366427/article/details/51333610

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!