前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >人工神经网络学习笔记(3)

人工神经网络学习笔记(3)

作者头像
twelvecoder
发布2021-12-22 10:15:19
2650
发布2021-12-22 10:15:19
举报
文章被收录于专栏:十二的树洞十二的树洞

如何更新权重

在上一篇文章中我们算出了各个层的误差,现在是时候利用这些误差来指导链接权重的修改了。那么该如何修改?

**暴力枚举:**对于一个三层的神经网络,每层有3个神经元结点,有两个3 × 3 3\times 33×3的链接权重矩阵,共有18个权重值。假设每个权重在1和-1之间共有1000种取值,那么我们有100 0 18 1000^{18}1000

18

种权重组合,这个数字已经很大了。但是,如果是每层有500个结点呢?那么权重数将达到2 × 500 × 500 = 500000 2\times 500\times 500 = 5000002×500×500=500000个,将会有100 0 500000 1000^{500000}1000

500000

种组合。想要遍历这么些种可能得等到人类灭绝…

可见,暴力枚举并不能实际地解决我们的问题。

**新的思路:**让我们再次明确下我们的最终目的,让误差值降到最小。试着将其转化成数学上的求函数最小值问题。先前我们知道,误差是所有链接权重的函数:

现在我们需要额就是找出该函数的最小值。但由于真正的误差函数的自变量太多,先举个简单的例子:

假设误差函数只有一个自变量(链接权重):

可以将其想象成一个连绵的山脉,有山峰也有山谷。设想将一个小球至于山腰,那么在重力的作用下它必定沿着所在位置的斜率方向向下滚动直到山谷。但是很明显,我们并没有重力帮忙,因此必须人为指定“滚动方向”。

不难发现,当斜率为正时应向左滚动(x–),斜率为负时应向右滚动(x++)。这种方法在数学上被称为梯度下降(gradient descent)。 可能的意外情况: 我们可能会碰到这种情况:当小球的起始位置为左侧山腰时,其很有可能最终会在局部最小值(左侧的山谷)停下,这可不是我们所希望的结果。因为我们的目的是把误差降到最小,那里显然不是最小的地方。

为了避免上述情况,我们应从选择不同的其实位置对神经网络进行多次训练,以确保其并不总是终止于错误的地方。而不同的其实位置意味着不同的链接权重。


选择误差函数的形式

可选项:

我们选用方差形式,因为其具有很多优点:

  1. 可以很容易地使用代数方法(链式法则求解偏导数)计算出梯度下降的斜率
  2. 误差函数平滑连续,这使得梯度下降算法可以很好地发挥作用
  3. 越接近最小值梯度(斜率)越小,按照斜率调整步长可以减少越过最佳位置的风险

计算梯度值(斜率)

  • 当只有一个链接权重时,误差函数为二维曲线:
  • 当有两个链接权重时,误差函数为一个三维曲面: [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-hLK7QfiG-1580383013480)(https://timgsa.baidu.com/timg?image&quality=80&size=b9999_10000&sec=1559636048297&di=a69a0ac50c0c4c39c6290d14fe697429&imgtype=0&src=http%3A%2F%2Fimg.ph.126.net%2FwdlmGd6Cl2EyG0Bp-xEihQ%3D%3D%2F1016406140918957318.jpg)]

上述表达式表示了当权重w j , k w误差E 是如何改变的。这是误差函数的斜率,也就是我们希望使用梯度下降的方法达到最小值的方向。

计算梯度:

  1. 在开始计算前我们回顾一下网络中各个参数的意义:
  1. 展开误差函数: 由于一个结点的误差只与与其相连的链接权重有关,因此误差函数可以简单地表示为:

因此,我们得到了以下表达式:

又由于我们只关心误差函数斜率的方向,因此可以将公式中的常数2省略,并不影响正负号

改变链接权重

之前提到过,权重的改变方向与梯度的方向相反。因此我们规定权重的改变方式为:

到此,所有的前期工作都已完成。

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2020-09-01 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 如何更新权重
  • 选择误差函数的形式
  • 计算梯度值(斜率)
  • 改变链接权重
相关产品与服务
图像处理
图像处理基于腾讯云深度学习等人工智能技术,提供综合性的图像优化处理服务,包括图像质量评估、图像清晰度增强、图像智能裁剪等。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档