深度生成模型概述 Hopfield神经网络 玻尔兹曼机和受限玻尔兹曼机 深度玻尔兹曼机和深度信念网络 自编码器及其变种 深度生成模型概述 年份 | 事件 | 相关论文 1982 | Hopfield网络提出 | J. J . Hopfield . Neural networks and physical systems with emergent collective computational abilities. Proceedings of the National Academy of Sciences, Vol. 79 , No. 8, pp. 2554-2558, 1982 1983 | 玻尔兹曼机生成模型被提出 | Fahlman, S. E., Hinton, G. E.
| 年份 | 事件 | 相关论文 |
|---|---|---|
| 1982 | Hopfield网络提出 | J. J . Hopfield . Neural networks and physical systems with emergent collective computational abilities. Proceedings of the National Academy of Sciences, Vol. 79 , No. 8, pp. 2554-2558, 1982 |
| 1983 | 玻尔兹曼机生成模型被提出 | Fahlman, S. E., Hinton, G. E., & Sejnowski, T. J. (1983). Massively parallel architectures for Al: NETL, Thistle, and Boltzmann machines. Proceedings of AAAI-83109, 113 |
| 1992 | Neal提出了sigmoid信念网 络 | Neal, R. M. (1992). Connectionist learning of belief networks. Artificial intelligence, 56(1), 71- 113 |
| 2006 | Hinton提出深度信念网络 | Hinton, G. E., Osindero, S., & Teh, Y. W. (2006). A fast learning algorithm for deep belief nets. Neural computation, 18(7), 1527-1554 |
| 2008 | 采用DBNs来完成回归任务 | Hinton, G. E., & Salakhutdinov, R. R. (2008). Using deep belief nets to learn covariance kernels for Gaussian processes. In Advances in neural information processing systems (pp. 1249-1256) |
| 2009 | 将卷积深度信念网络用于可视物体识别 | Lee, H., Grosse, R., Ranganath, R., & Ng, A. Y. (2009, June). Convolutional deep belief networks for scalable unsupervised learning of hierarchical representations. In Proceedings of the 26th annual international conference on machine learning (pp. 609-616). ACM |
| 2012 | DBNs应用在语音识别领域 | Mohamed, A. R., Dahl, G. E., & Hinton, G. (2012). Acoustic modeling using deep belief networks. IEEE Transactions on Audio, Speech, and Language Processing, 20(1), 14-22 |
| 2014 | Goodfellow提出生成对抗网络 | Goodfellow, I., Pouget-Abadie, J., Mirza, M., Xu, B., Warde-Farley, D., Ozair, S., ... & Bengio, Y. (2014). Generative adversarial nets. In Advances in neural information processing systems (pp. 2672-2680) |
| 2016 | Deepmind创建了一个深度 生成模型Wavenet,可用来 生成具有自然人声的语音 | Van Den Oord, A., Dieleman, S., Zen, H., Simonyan, K., Vinyals, O., Graves, A., ... & Kavukcuoglu, K. (2016). Wavenet: A generative model for raw audio. arXiv preprint arXiv:1609.03499 |
神经网络可以分为,多层神经网络和相互连接型网络。
1982年提出的 Hopfield 神经网络是最典型的相互连结型网络。
联想记忆就是当输入模式为某种状态时,输出端要给出与之相应的输出模式。如果输入模式与输出模式一致,称为自联想记忆,否则称为异联想记忆。
玻尔兹曼机的输出是按照某种概率分布决定的:
附Hopfield网络的输出:
模拟退火算法
模拟退火是一种贪心算法,但是它的搜索过程引入了随机因素,以一定的概率来接受一个比当前解要差的解,因此有可能会跳出这个局部的最优解, 达到全局的最优解, 而且这个概率随 着时间推移逐渐降低(逐渐降低才能趋向稳定)
玻尔兹曼机的训练过程
训练准备:初始化连接权重 _{} 和偏置 _
调整参数
2.1 选取一个单元 $, 求 _$
2.2 根据_ 的值,计算输出 _
2.3 根据输出 _ 和 _ 的值,调整连接权重 _{} 和偏置 _
重复步骤2,直到满足终止判断条件
通常,使用对数似然函数求解
当对数似然函数的梯度为0时,就可以得到最大似然估计量,即通 过求连接权重 w_{ij} 和偏置 b_i 的相关梯度,可以求出调整值。
求解困难:似然函数是基于所有单元组合来计算的,所以单元数过多将导致组 合数异常庞大,无法进行实时计算。为了解决这个问题,人们提出 了一种近似算法,对比散度算法(后面有介绍)。
含有隐藏变量的波尔兹曼机训练非常困难,所以Hinton等人提出了受限玻尔兹曼机(Restricted Boltzmann Machine)
下面是受限玻尔兹曼机的能量函数:
其中,a_i 是可见变量的偏置,b_j 是隐藏变量的偏置,w_{ij} 是连接权重,\theta = (W,a,b) 表示参数集合。
深度玻尔兹曼机(Deep Boltzmann Machine, DBM) 是由受限玻尔兹曼机堆叠组成。
深度信念网络(Deep Belief Network, DBN):最上面的两层之间有无方向的对称连接,形成联想记忆。下层从上层接收自上而下的定向连接。最底层单元的状态表示一个数据向量。
参考论文:
[1] Hinton, Geoffrey E., Simon Osindero, and Yee-Whye Teh. "A fast learning algorithm for deep belief nets." Neural computation 18, no. 7 (2006): 1527-1554.
[2] Hinton GE. Deep belief networks. Scholarpedia. 2009 May 31;4(5):5947.
深度玻尔兹曼机采用与多层神经网络不同的训练方法,在训练时采用对比散度算法,逐层来调整连接权重和偏置。
具体做法:
深度玻尔兹曼机既可以当作生成模型,也可以当作判别模型
作为生成模型使用时,网络会按照某种概率分布生成训练数据。概 率分布可根据训练样本导出,但是覆盖全部数据模式的概率分布很难导出,所以通常选择最大似然估计法训练参数,得到最能覆盖训练样本的概率分布
这种生成模型能够:去除输入数据中含有的噪声,得到新的数据, 对输入数据压缩和特征表达
作为判别模型使用时,需要在模型顶层添加一层Softmax实现分类
进行分类时,需要同时提供训练样本和期望输出,在最顶层级联一 个层
训练方法:
自编码器(Autoencoder):是一种有效的数据维度压缩算法, 主要应用在以下两个方面:
构建一种能够重构输入样本并进行特征表达的神经网络
训练多层神经网络时,通过自编码器训练样本得到参数初始值
当样本中包含噪声时,如果神经网络能够消除噪声,则被称为降噪自编码器(Denoising Autoencoder),还有一种称为稀疏自编码器**( Sparse Autoencoder )**的网络, 它在自编码器中引入了正则化项,以去除冗余信息。