关于神经网络的训练与优化的一些想法。Thoughts about optimization & training in Neural Networks--back propagation & SGD

本文探讨了神经网络训练中的优化问题,包括梯度下降的分类(批量梯度下降、随机梯度下降和小批量梯度下降)以及参数更新策略。重点介绍了动量法和适应性学习率方法,如AdaGrad、RMSProp和Adam优化器,这些方法通过累积梯度和适应性学习率来改进参数更新,提高训练效率。
摘要由CSDN通过智能技术生成

一个神经网络是一个遵循连接原则级联构成的函数逼近器(function approximation)。这个function将输入x转化成输出y。以image classification为例,x是图片,y是labels。

对于一个神经网络的训练,是指通过trail-and-error来获得网络中所有参数w的最优值。当网络中所有参数都取得最优值时,该网络针对某个损失函数可以在给定样本集上得到最低loss。

这个训练,也即参数估计,的过程,就是一个目标函数为minimize loss function的优化过程。解优化的工具有很多,针对凸优化和非凸优化又可进行分类。由于神经网络的参数较多以及其强非线性,导致其所构成的优化问题往往非凸(non-convex optmization)。解这种非凸优化的工具就是gradient descent(GD).注意,我们之所以要“估计”参数,即approximate the optimal set of weights,而不是直接求解出这组参数(analytical solution:令loss funciton的导数函数(if convex)=0,求出所有wi),是因为 it is too complex to find the perfect analytical solution of all w with all the samples. Thus we find approximated solutions by an (numerical solution) iterative process-----GD optmization.

GD是一个迭代循环,trail-and-error,试错的过程。对参数的估计和优化也是不积跬步无以至千里,每次update都是微调,积少成多。GD每次循环的操作有两步:1. 计算网络中每个参数对应的梯度2. 按照该参数负梯度的方向更新每个参数

  1. 其中第一步,即参数梯度的计算,用到的计数就是back propagation(BP)。BP就是以loss function为起点,one operation at a time地依据复合函数求导的chian rule,将在起点处计算的gradient慢慢地反推流淌,流入网络的每一个参数处。假设网络中含有10K个参数w,那么在BP时,每一个wi处计算得到的流入的梯度gi只是一个可正可负的实数;而这10K个gi组成的大vector G则是一个10K维的向量。这个向量定义在一个10K维的w(参数)空间。在这个空间中,损失函数L(w)作为BP的梯度起点,会构成一个优化曲面(convex loss function会构成一个只有一个全局最优的碗形曲面,non-convex则会额外含有很多local optimal)。
  2. 在得到每个参数上的梯度gi后,即得到了梯度矩阵G,我们就进行第二步,参数更新。GD顾名思义,是沿着梯度下降的方向(即负梯度方向)进行每一次参数更新。梯度下降的几何解释就是在Loss function定义在w空间的曲面上,在某一点沿着该点梯度下降的方向微调一次。这个“点”从何而来呢?由于是10K维参数空间中的点。那么一个点就对应一个10K vector,这个vector就是在此次update开始时我们网络所有参数wi的现状,也就此刻我们在空间中所处的位置。因此,10K的梯度vector G就指引了在10K空间中的这个点下降的方向。10K对10K,乐哉。

好,综上,我们了解了BP与GD的关系:GD是一个优化算法,BP是一种梯度计算流程。在神经网络的训练中,BP是GD中的一个步骤。

那么为什么BP适用于在神经网络ANN中计算gradient呢?这是因为ANN的连接属性所构成的acyclic graph很适合与chain rule的实施。

接下来,介绍一下GD的两大热门问题:

1. GD的分类&

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值