【编辑推荐】
- MIT 提出Network Dissection框架,全主动窥测神经收集练习的黑箱
- DeepMind解密黑箱第一步:本来神经收集的认知道理和仁攀类是一样的!
- R vs Python:R是如今最好的数据科学说话吗?
- 神经收集基本:七种收集单位,四种层连接方法
- 卷积神经收集不克不及处理“图”构造数据?这篇文┞仿告诉你谜底
逆向反馈(Back Propagation)
因为输出层的值与真实的值会存在误差,我们可以用均方误差来衡量猜测值和真实值之间的误差。

均方误差
逆向反馈的目标就是让E函数的值尽可能的小,而每个神经元的输出值是由该点的连接线对应的权重值和该层对应的偏好所决定的,是以,要让误差函数达到最小,我们就要调剂w和b值, 使得误差函数的值最小。

对目标函数 E 求 w 和 b 的偏导可以获得 w 和 b 的更新量,下面拿求 w 偏导来做推导。

个中 η 为进修率,取值平日为 0.1 ~ 0.3,可以懂得魏每次梯度所迈的办法。留意到 w_hj 的值先影响到第 j 个输出层神经元的输入值a,再影响到输出值y,根据链式求导轨则有:

使用链式轨则展开对权重求偏导
权重和偏置的更新公式
根据神经元输出值 a 的定义有:

对函数 z 求 w 的偏导
Sigmoid 求导数的式子如下,大年夜式子中可以发明其在计算机中实现也是异常的便利:

Sigmoid 函数求导
所以

则权重 w 的更新量为:

类似可得 b 的更新量为:

但这两个公式只可以或许更新输出层与前一层连接线的权重和输出层的偏置,原因是因为 δ 值依附了真实值y这个变量,然则我们肮脏道输出层的┞锋实值而不知道每层隐蔽层的┞锋实值,导致难以估计每层隐蔽层的 δ 值,所以我们欲望可以或许应用 l+1 层的 δ 值来计算 l 层的 δ 值,而恰好经由过程一些列数学转换后可以做到,这也就是逆向反馈名字的由来,公式如下:

大年夜式子中我们可以看到,我们只须要知道下一层的权重和神经元输出层的值就可以计算出上一层的 δ 值,我们只要经由过程赓续的应用膳绫擎这个式子就可以更新隐蔽层的全部权重和偏置了。
在推导之前请先不雅察下面这张图:
推荐阅读
发个牢骚,搞大年夜数据的也得扶植数据仓库吧。并且不管是传统行业照样如今的互联网公司,都须要对数据仓库有必定的看重,而不是谈一句本身是搞大年夜数据的就很厉害了。数据仓库更多代表>>>详细阅读
本文标题:一文详解神经网络 BP 算法原理及 Python 实现
地址:http://www.17bianji.com/lsqh/36072.html
1/2 1

网友点评
精彩导读
科技快报
品牌展示