《人工神经网络原理》读书笔记(六)-Boltzmann机[通俗易懂]

《人工神经网络原理》读书笔记(六)-Boltzmann机[通俗易懂]全部笔记的汇总贴:《人工神经网络原理》-读书笔记汇总一、随机型神经网络的提出BP和Hopfield网络陷入局部最小点的原因网络误差或能量函数构成了含有多个极小点的非线性超曲面;网络误差或能量函数只能按照梯度下降方向单调变化,而不能有任何上升趋势。随机型神经网络的基本思想不但能够让网络误差或能量函数按照梯度下降方向变化,也能够让它们按照某种方式向梯度上升方向变化,这样才有可能使网络跳出局部极小点而向全局极小点收敛。随机型神经网络的特点神经元的输出状态有概率决定;网络连接权值的调整

大家好,又见面了,我是你们的朋友全栈君。

全部笔记的汇总贴:《人工神经网络原理》-读书笔记汇总

一、随机型神经网络的提出

BP和Hopfield网络陷入局部最小点的原因

  • 网络误差或能量函数构成了含有多个极小点的非线性超曲面;
  • 网络误差或能量函数只能按照梯度下降方向单调变化,而不能有任何上升趋势。

在这里插入图片描述
随机型神经网络的基本思想

  • 不但能够让网络误差或能量函数按照梯度下降方向变化,也能够让它们按照某种方式向梯度上升方向变化,这样才有可能使网络跳出局部极小点而向全局极小点收敛。

随机型神经网络的特点

  • 神经元的输出状态有概率决定;
  • 网络连接权值的调整按照某种概率分布进行处理;
  • 网络状态的转移由某种概率分布决定。

Boltzmann机

  • 是一种典型的随机型神经网络
  • 是第一个受统计力学启发得到的神经网络
  • 其名称来源于Boltzmann在统计热力学中的早期工作和网络本身的动态分布行为
  • 是Hinton等人以模拟退火思想为基础,在离散型Hopfield神经网络的基础上引入随机机制得到的

二、Boltzmann机的网络结构

介于BP神经网络的多层层次结构与离散型Hopfield神经网络的单层全互连结构之间。

网络中的 n n n个神经元之间相互连接,为双向对称连接结构,即 w i j = w j i w_{ij}=w_{ji} wij=wji

在这里插入图片描述
每个神经元到自身都无反馈,即 w i i = 0 w_{ii}=0 wii=0

每个神经元的输出 x j x_j xj均为0、1二值离散输出。

n n n个神经元的状态集合构成了Boltzmann机网络的状态。

n n n个神经元分为可视层与隐含层两大部分,其中的可视层又继续分为输入部分和输出部分,但这些层次在Boltzmann机中没有明显的划分界限。

三、Boltzmann机处理单元模型

在这里插入图片描述
在这里插入图片描述

四、Boltzmann机的能量函数

Boltzmann机的能量函数为 E = − 1 2 ∑ i = 1 n ∑ j = 1 n w i j x i x j + ∑ i = 1 n θ i x i E=-\frac12\sum_{i=1}^n\sum_{j=1}^nw_{ij}x_ix_j+\sum_{i=1}^n\theta_ix_i E=21i=1nj=1nwijxixj+i=1nθixi

随着Boltzmann机的运行,从概率意义上说,网络的能量呈下降趋势。这意味着在网络状态的演化过程中,尽管网络能量总的变化趋势是下降的,但不能排除在某一时刻某个神经元按照小概率事件进行状态变化,从而使网络的能量暂时上升。

五、Boltzmann机的Boltzmann分布

Boltzmann机网络处于某一状态的概率主要取决于网络在该状态下的能量,某个网络状态对应的能量越低,该状态出现的概率就越大;某个网络状态对应的能量越高,该状态出现的概率就越低。

在网络状态反复更新,并且更新次数足够大时,网络中某个状态出现的概率服从Boltzmann分布 P ( E i ) = e − E i T ∑ i = 1 m e − E i T P(E_i)=\frac{e^{-\frac{E_i}T}}{\sum_{i=1}^me^{-\frac{E_i}T}} P(Ei)=i=1meTEieTEi

特点

  • 最小能量状态以最大的概率出现
  • Boltzmann机处于某一状态的概率取决于网络温度参数 T T T
    当温度 T T T很高时,网络各个不同状态出现的概率非常接近,网络比较容易跳出局部极小点而达到全局最小点;
    当温度 T T T较低时,网络各个不同状态出现的概率差异较大,网络落入全局最小点或局部极小点后,虽然存在着一定的跳出可能性,但是其跳出概率较小。

六、Boltzmann机的运行规则

模拟退火算法

基本思路

  • 将神经元看作金属内部的“粒子”,神经网络的状态就是各个粒子的状态集合,神经网络在各个状态下的能量就是粒子所处的能态。如果在神经网络的运行中设置一个控制参数 T T T模拟金属退火过程中的温度,使得 T T T较大时,网络能量由低向高变化的可能性较大, T T T较小时,网络能量由低向高变化的可能性较小,那么在 T T T从高向低变化缓慢下降时,整个神经网络的状态的变化过程就模拟了金属的退火过程,当参数 T T T下降到一定程度时,网络将收敛于能量的最小值。

在这里插入图片描述
在这里插入图片描述

网络运行规则

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

七、Boltzmann机的学习规则

Boltzmann机实现联想记忆的实质是网络通过学习目标概率分布函数,将其记忆在网络的连接权值上,并在以后的回忆阶段能够将这一概率分布再现出来。

当Boltzmann机按照运行规则使网络状态发生转移的次数足够多时网络中各个状态的出现将服从Boltzmann分布。将Boltzmann分布获得的网络状态出现的概率称为期望概率,网络运行过程中网络各个状态实际出现的概率称为实际概率,两个概率之间的差值就是网络调整连接权值的基础。

自联想记忆的学习规则

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

互联想记忆的学习规则

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
下一章传送门:《人工神经网络原理》读书笔记(七)-自适应共振理论神经网络

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/159852.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 算法学习–整型转字符串

    算法学习–整型转字符串字符串转整型的逆过程代码思路:1、输入一个整型数,判断整型数是否<0;2、不断地对整型数做取余,得出余数与‘0’相加,然后整型除去10,就是说,把整型个十百千每一位都取出来,变成ASCII码的数字,存起来;3、最后把正负号补上。代码如下:#include#include#include#includeusingnamespacestd;

    2022年10月19日
    2
  • Lucene分词实现—Analyzer、TokenStream(Token、Tokenizer、Tokenfilter)

    Lucene分词实现—Analyzer、TokenStream(Token、Tokenizer、Tokenfilter)一 分清概念:  1  TokenStream是用来走访Token的iterator(迭代器),       Tokenizer继承自TokenStream,其输入为Reader。       TokenFilter继承自TokenStream,其作用是用来完成对TokenStream的过滤操作,譬如 去StopWords,将Token变为小

    2022年7月22日
    8
  • origin两个柱状图重叠在一起怎么分开_origin柱状图重叠怎么分开

    origin两个柱状图重叠在一起怎么分开_origin柱状图重叠怎么分开今天论文作图的时候,遇到一个问题:输入两列y数据,想绘制柱状图,但是它们重叠了,我希望他们并列:解决方法:右键点击绘图内容之后选中两列数据,再点击“成组”即可…

    2022年9月27日
    4
  • Hybrid APP混合开发的一些经验和总结

    Hybrid APP混合开发的一些经验和总结HybridAPP混合开发的一些经验和总结转载至: http://www.cnblogs.com/yuanyingke/p/6060150.html1、混合开发概述Hybrid App主要以JS+Native两者相互调用为主,从开发层面实现“一次开发,多处运行”的机制,成为真正适合跨平台的开发。Hybrid App兼具了Native App良好用户体验的优势,

    2022年9月22日
    5
  • ddns dnspod_dns和ddns的区别

    ddns dnspod_dns和ddns的区别NBNS——–NetBIOS漏洞【询问主机名】NBNS是网络基本输入/输出系统(NetBIOS)名称服务器的缩写。它也是TCP/IP协议的一部分。它负责将计算机名转化为对应的IP。其中,NamequeryNB是请求包,NamequeryresponseNB是响应包。双方的端口号均为137。NBNS在WIndows用的较少,Windows普遍采用LLMNR协议。在一个局域网中的两台主机,主机A的ip是:10.30.59.77,Mac地址为:HonHaipr_81:74:8A。主

    2022年8月31日
    2
  • elasticsearch批量插入数据的时候出现java.net.SocketTimeoutException: 30,000 milliseconds timeout on connection「建议收藏」

    elasticsearch批量插入数据的时候出现java.net.SocketTimeoutException: 30,000 milliseconds timeout on connection「建议收藏」问题:elasticsearch每次都批量插入几万数据量,然后就会出现下列问题。看这个问题应该是配置的问题ERROR[https-jsse-nio-443-exec-4]2020-07-0923:31:54(EsMiniDaansouDataInfoWithBLOBsUtil.java:80)java.net.SocketTimeoutException:30,000millisecondstimeoutonconnectionhttp-outgoing-0[ACTIVE]

    2022年8月30日
    5

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号