重构(Reconstruction)是指从经过变换的数据中恢复出原始数据。基本上,所有的深度学习算法中都用到了重构这一思想。

1. 概述

深度学习中的重构主要有两种:

  1. Value-based。 即基于值的重构。比如,平方误差。
  2. Distribution-based。即基于分布的重构。比如交叉熵误差。这类重构一般都基于信息论准则。

深度学习中用到重构比较多的模型主要是自动编码机(Autoencoder)和限制玻尔兹曼机(RBM)。这两种模型训练的基础都是基于重构误差最小化。而且,前者的训练使用的是Value-based重构误差最小化;而后者训练使用的是Distribution-based重构误差最小化。下面以这两种典型模型作为例子做深入探讨。

2. 自动编码机

其训练的基本原理就是使得重构误差(定义为模型输出值与原始输入之间的均方误差)最小化,从而可以无监督(实际上是使用了输入数据做监督信号)地训练出一个深度学习网络。

3. 限制玻尔兹曼机

玻尔兹曼是统计热力学的著名代表人物,玻尔兹曼机即是基于统计热力学原理提出的一种神经网络模型,因而得名。
限制玻尔兹曼机是玻尔兹曼机的简化,其层内无连接,层间全连接,相比于玻尔兹曼机结构有所简化。

玻尔兹曼机训练的基本思想是,通过训练使得训练后模型的可视层节点状态v和隐层节点状态h的联合分布<v,h>model<script type="math/tex" id="MathJax-Element-3"> _{model}</script>逼近基于原始输入数据得到的的联合分布 <v,h>data<script type="math/tex" id="MathJax-Element-4"> _{data}</script>。即通过对 <v,h>data<script type="math/tex" id="MathJax-Element-5"> _{data}</script>的重构来训练模型。

RBM的训练基于Gibbs采样,根据Gibbs采样原理,经过有限次Gibbs采样,可以逐渐逼近联合分布。这是RBM训练中的一个重要理论基础。

但是,由于状态空间巨大,RBM的训练比较困难。2006年Hinton提出了一种对比散度训练方法,这其实是对Gibbs采样过程的一种近似,但是却取得了很好的效果,从而使得RBM模型的训练成为可能。

基于信息论准则的一些训练方法应该是今后研究的一个重点方向。