反向传播与其相关研究

1反向传播概念与推导

反向传播算法是一种用于训练神经网络的学习算法。在这种算法的概念中,将神经网络的训练周期分成若干个周期交替进行。前向传播阶段是通过输入层进行输入,再通过随机赋予的每个神经元中权重进行计算,最终通过输出层输出结果。而在反向传播的阶段,将输出值与目标值之间的损失函数最小化作为训练目标,以梯度下降的方式进行优化,最终通过链式求导的方式求得每一层网络上神经元所需要调整的权重值。

图一:神经网络训练阶段示意 图源:Backprop Evolution

下面对反向传播算法进行推导:

式子一是损失函数,我们选择观测值与目标值的算术平方差作为损失函数,将所有的输出层所得到的结果进行计算。我们通过该式对第i层输出层第P个神经元权重的Wip求偏导。其中,f'hip是对于激活函数的求导。最后,因为要求最小值,权值的改变朝着损失函数的负梯度方向进行。其中,α是学习率,负责控制梯度下降的幅度。接下来,我们对于输出层以外的公式进行推导。

这种方式相当于由后至前逐层求导,最终通过这种方式将整个神经网络的损失函数进行逐步优化。最终,达到训练的效果。

2反向传播演变

在Backprop Evolution一文中,作者通过进化算法来选择出计算δ值更为快速、准确的公式。这之中我们需要注意实验开始之前首先通过DSL(domain-specific language)将可以计算δ值的式子划分成为了操作对象、一元公式与二元公式,方便之后进化算法进行组合。后面通过实验选取了几组与通过随机梯度下降法进行的反向传播对比。在A1实验中实验选取了WRN 16-2神经网络进行20次计算进行对比,可以发现进化算法选择出的公式远优于标准模型。A2实验选择WRN 28-10神经网络进行20次计算进行对比,测试公式的在大模型的泛化效果,也优于标准模型。A3实验中实验选取了WRN 16-2神经网络进行100次计算进行对比,发现两者表现相似,这种情况下选择进化算法所得出公式仅能加快训练速度,无法提升训练效果。针对A3组出现的状况,作者认为可能是在遗传算法中选择子模型的时候仅进行了20次训练,而测试的时候是100次引起的误差。作者设计了B1实验,进化算法每一次选择的子模型都进行了100次计算。最后结果显示,这种情况下遗传算法所选择的模型由于随机梯度下降模型,但是与随机梯度下降含冲量的模型还有差距。

3基于 Moore-Penrose Pseudo无梯度下降的反向传播算法

Bp算法通常是采用梯度下降法进行权重调整与训练,主要是因为无法通过对不可逆权重矩阵进行求解。如果我们可以直接对不可逆矩阵进行求逆运算,那么我们就可以采用一种新的优化方式。在线性代数中,恰好由对不可逆矩阵求伪逆的计算方法。接下来我先将文中调整权重的部分进行推导,而后再说明伪逆求解的方法。

首先,我们设定W为原始神经网络权重矩阵,为调整后的目标权重矩阵。X为原始神经网络输出值,为调整后的目标神经网络输出值。C为输入,b为偏差项。

式子一是在前向传播中计算所得结果,式子二则是根据调整后所应有的结果,我们对两式做差可得式子三,将此式转化为矩阵形式,我们可以据此直接计算出所需要的调整值,这种方法可以直接对神经网络中的权值进行调整。

在神经网络输入不再局限于向量,转变为多维数组的时候。这要求我们在计算所有权重的时候,对目标输出值取输入变量维数的平均值。

当激活函数属于非线性的时候,通过这种方式反向求解出的值并没有办法在相同的输入变量的情况下求出相同的结果。作者说选择相同值域和定义域的函数,这样可以避免消除数学方面的错误,并且达到优化的目的。

在推导神经网络的过程中,我们根据结构有时可能需要进行逐层地推,我们可以根据Xn来计算Cn的值。通过这种方式对整个神经网络进行优化。

接下来对伪逆的运算进行简单的推导。设矩阵A为M*N的不可逆矩阵。我们若想求出矩阵A的逆矩阵首先需要将矩阵A进行奇异值分解。这其中U是M*M阶正交矩阵,ε为M*N对角矩阵具体形式如下图所示,V为N*N阶正交矩阵。我们通过奇异值分解所得到的三个矩阵,正交矩阵的逆为转置,对角矩阵的逆为数值的倒数。因此,我们可以对A的分解矩阵求解得出矩阵A的伪逆A+

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值