资讯专栏INFORMATION COLUMN

神经网络中的梯度下降与反向传播的关系(大白话,通俗易懂版本)

邹立鹏 / 1398人阅读

摘要:损失函数的作用可以理解为当前向传播得到的预测值与真实值接近时,取较小值。

神经网络

神经网络就是一个”万能的模型+误差修正函数“,每次根据训练得到的结果与预想结果进行误差分析,进而修改权值和阈值,一步一步得到能输出和预想结果一致的模型。

举一个例子:比如某厂商生产一种产品,投放到市场之后得到了消费者的反馈,根据消费者的反馈,厂商对产品进一步升级,优化,从而生产出让消费者更满意的产品。这就是神经网络的核心。

神经网络的本质

机器学习可以看做是数理统计的一个应用,在数理统计中一个常见的任务就是拟合,也就是给定一些样本点,用合适的曲线揭示这些样本点随着自变量的变化关系。

深度学习同样也是为了这个目的,只不过此时,样本点不再限定为(x, y)点对,而可以是由向量、矩阵等等组成的广义点对(X,Y)。而此时,(X,Y)之间的关系也变得十分复杂,不太可能用一个简单函数表示。然而,人们发现可以用多层神经网络来表示这样的关系,而多层神经网络的本质就是一个多层复合的函数。

说白了,深度学习就是弄出来一个超级大的函数,这个函数含有海量的权值参数、偏置参数,再通过一系列复合的复杂运算,得到结果。

时间万物,可以抽象成数学模型,用数字来表示,深度学习网络就是对这些数字进行各种数学运算,计算得到人们期望的结果。

反向传播

前向传递输入信号直至输出产生误差,反向传播误差信息更新权重矩阵。

其根本就是求偏导以及高数中的链式法则


梯度下降与反向传播

梯度下降 是 找损失函数极小值的一种方法,
反向传播 是 求解梯度的一种方法。

关于损失函数:

在训练阶段,深度神经网络经过前向传播之后,得到的预测值与先前给出真实值之间存在差距。我们可以使用损失函数来体现这种差距。损失函数的作用可以理解为:当前向传播得到的预测值与真实值接近时,取较小值。反之取值增大。并且,损失函数应是以参数(w 权重, b 偏置)为自变量的函数。

训练神经网络,“训练”的含义:

它是指通过输入大量训练数据,使得神经网络中的各参数(w 权重, b 偏置)不断调整“学习”到一个合适的值。使得损失函数最小。

如何训练?

采用 梯度下降 的方式,一点点地调整参数,找损失函数的极小值(最小值)

为啥用梯度下降?
由浅入深,我们最容易想到的调整参数(权重和偏置)是穷举。即取遍参数的所有可能取值,比较在不同取值情况下得到的损失函数的值,即可得到使损失函数取值最小时的参数值。然而这种方法显然是不可取的。因为在深度神经网络中,参数的数量是一个可怕的数字,动辄上万,十几万。并且,其取值有时是十分灵活的,甚至精确到小数点后若干位。若使用穷举法,将会造成一个几乎不可能实现的计算量。

第二个想到的方法就是微分求导。通过将损失函数进行全微分,取全微分方程为零或较小的点,即可得到理想参数。(补充:损失函数取下凸函数,才能使得此方法可行。现实中选取的各种损失函数大多也正是如此。)可面对神经网络中庞大的参数总量,纯数学方法几乎是不可能直接得到微分零点的。

因此我们使用了梯度下降法。既然无法直接获得该点,那么我们就想要一步一步逼近该点。一个常见的形象理解是,爬山时一步一步朝着坡度最陡的山坡往下,即可到达山谷最底部。(至于为何不能闪现到谷底,原因是参数数量庞大,表达式复杂,无法直接计算)我们都知道,向量场的梯度指向的方向是其函数值上升最快的方向,也即其反方向是下降最快的方向。计算梯度的方式就是求偏导。

这里需要引入一个步长的概念。个人理解是:此梯度对参数当前一轮学习的影响程度。步长越大,此梯度影响越大。若以平面直角坐标系中的函数举例,若初始参数x=10,步长为1 。那么参数需要调整十次才能到达谷底。若步长为5,则只需2次。若为步长为11,则永远无法到达真正的谷底。

如何求解梯度?

采用反向传播算法。
关于反向传播算法的推荐博文

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/45225.html

相关文章

  • 《DeepLearning.ai 深度学习笔记》发布,黄海广博士整理

    摘要:在这堂课中,学生将可以学习到深度学习的基础,学会构建神经网络,包括和等。课程中也会有很多实操项目,帮助学生更好地应用自己学到的深度学习技术,解决真实世界问题。 深度学习入门首推课程就是吴恩达的深度学习专项课程系列的 5 门课。该专项课程最大的特色就是内容全面、通俗易懂并配备了丰富的实战项目。今天,给大家推荐一份关于该专项课程的核心笔记!这份笔记只能用两个字形容:全面! showImg(...

    wenhai.he 评论0 收藏0
  • 被Geoffrey Hinton抛弃,反向传播为何饱受质疑?

    摘要:在最近的一次人工智能会议上,表示自己对于反向传播非常怀疑,并提出应该抛弃它并重新开始。在人工智能多年的发展过程中,反向传播已经成为了深度学习不可或缺的一部分。最后,我们会将这些规则组合成可用于任意神经网络的反向传播算法。 现在的深度学习发展似乎已经陷入了大型化、深度化的怪圈,我们设计的模型容易被对抗样本欺骗,同时又需要大量的训练数据——在无监督学习上我们取得的突破还很少。作为反向传播这一深度...

    yvonne 评论0 收藏0
  • 深度学习神经科学相遇(三)[译]

    摘要:例如,是一些神经元的特征,其中突触权重变化的符号取决于突触前后的较精确至毫秒量级相对定时。,是大脑自身调整其神经元之间的连接强度的生物过程。从他博士期间就开始研究至今,目前可以说深度学习占领着机器学习的半壁江山,而则是深度学习的核心。 上次说到误差梯度的反向传播(Backpropagation),这次咱们从这继续。需要说明的是,原文太长,有的地方会有些冗长啰嗦,所以后面的我会选择性地进行翻译...

    _ipo 评论0 收藏0
  • 【DL-CV】反向传播,(随机)梯度下降

    摘要:下面介绍梯度下降算法以并用反向传播来求梯度梯度下降看名字就和梯度脱不了关系了。运用反向传播,我们可以计算损失函数关于每一层权重的梯度,然后实现每一层权重的训练。应用小批量梯度下降法的随机梯度下降法已经成为当前深度学习的主流算法。 【DL-CV】损失函数,SVM损失与交叉熵损失【DL-CV】激活函数及其选择 有了损失函数L,我们能定量的评价模型的好坏。我们希望损失能最小化,或具体点,我们...

    missonce 评论0 收藏0

发表评论

0条评论

最新活动
阅读需要支付1元查看
<