1. 简介
本文根据2006年10月26日Hinton的《To Recognize Shapes, First Learn to Generate Images》翻译总结。如题所述,为了很好的识别图片,需要先学习生成图片。
主要是介绍了wake-sleep算法,该算法有两个通路,一个是从下到上的识别连接,一个是从上到下的生成连接。正如文章题目,为了很好的识别图片,需要先学习生成图片。
2. 五种学习多层网络的策略
多层学习就涉及中间特征,即隐藏单元的学习。
2.1 拒绝(denial)策略
如果假定只有一层的隐藏单元,我们就可以通过手工使用域内知识来设定隐藏单元的输入权重。这样的话,学习隐藏单元的问题就不存在了。
一个经典案例就是支持向量机,是一个固定的、非自适应的方法。将训练图片转化成一个特征,然后一个巧妙的优化技术来决定哪一个训练样本应该被激活,以及这些特征如何权重。优化技术主要是保证找到全局最小。
2.2 演化(evolution)策略
随机抖动权重,记录那些可以让网络表现改善的权重。所以当网络权重很大时,这种方法经常效率低下。学习过程有点瞎猜的感觉。
2.3 拖延(procrastination)策略
一层一层的学习图片的特征,第二层的输入来自于第一层学到的特征,最后才进行分类识别,而不是一开始就进行分类。该方法确实有助于准确识别,接近于我们的方法了。
2.4 微积分(calculus)策略
这种方法主要是反向传播(backpropagation)。反向传播由下面这些人分别独立发现:(Bryson
and Ho, 1975; Werbos, 1974; Parker, 1985; LeCun, 1985; Rumelhart et al., 1986)。反向传播是第一个有效的学习神经网络的方法,神经网络可以拥有一个或多个自适应隐藏单元层。
但反向传播还存在两个严重的计算问题,第一个是必须很好的选择初始化权重值,第二个问题是每个训练样本提供的信息量约等于可能分类数量的log,故大神经网络需要大量的标注训练数据。
2.5 wake-sleep算法
如下图,有两个通路,一个是从下到上的识别连接,一个是从上到下的生成连接。在“wake”阶段,识别权重被采用,从下到上,相邻层单元的二值状态然后可能用来训练生成权重;在“sleep”阶段,从上到下的生成连接被用来驱动网络,在相邻层单元的二值状态然后可能用来训练识别权重。
“wake”阶段,生成权重学习公式如下:
“sleep”阶段,识别权重学习公式如下:
3. 其他
本文也采用了预训练方法。
alternating Gibbs sampling。