深度置信网络在MNIST数据集中的分类效果
- 关键词:DBN – MNIST – 特征提取能力探究
1.RBM网络结构

2.基本原理(引用热平衡理论)
(1) 对于一组给定的状态,当参数确定时,RBM作为一个系统所具备的能量函数定义为:

(2) 基于该能量函数,可以得到的联合概率分布:

其中Z为归一化因子,其定义为:

(3) 我们需要关心的是由RBM所定义的关于观测数据v的分布:

(4) 当给定可见单元的状态时,各隐含单元的激活状态之间是条件独立的(σ为sigmoid激活函数):

(5) 当给定隐含单元的状态时,各可见单元的激活状态之间也是条件独立的:

3.RBM计算过程
主要目标就是让重构数据越来越接近原始数据:
计算采样(基本一次采样就够):

重构误差(该值越小越好):

过程再现:

1.DBN网络结构

2.DBN参数设置
(1)输入层取决于数据维数;
(2)输出层取决于分类类别数;
(3)通过设置一定的网络深度、最大迭代次数和隐含层节点数能够在提取高层次特征同时实现数据降维。
3.DBN如何运用
(1)无监督逐层训练:防止提前收敛、防止陷入局部最优。
(2)有监督微调:提高准确度和精度。
1.MNIST手写字符数据集
MNIST共有70000条样本,每条样本是由28x28=784个像素点构成的手写字符图像组成,总共有10种字符。

用python代码加载MNIST手写字符数据集:
2.RBM代码结构
调用方式:
sizes = [X.shape[1],输出数据维度]
rbm1 = rbm(sizes)
3.DBN代码结构
调用方式:
dbn1 = dbn(sizes,学习率,采样迭代次数)
4.其他函数
Softmax分类器

5.网络整体结构

6.实践结果
(1)结果一:整体结果,每一个分子是预测准确的数据个数,分母是对应该类数字的全部个数

(2)结果二:输入图片,得到结果如下

版权声明:
本文来源网络,所有图片文章版权属于原作者,如有侵权,联系删除。
本文网址:https://www.mushiming.com/mjsbk/7957.html