[神经网络]2.2/2.3-How the backpropagation algorithm works-The two assumptions we need...(翻译)

The two assumptions we need about the cost function(2个关于成本函数的假设)

反向传播的全局是计算网络的成本函数 C 关于权重w和偏差 b 的偏导数C/w C/b 。关于反向传播的工作,我们需要做2个主要的假设。在开始假设之前,在头脑中有一个成本函数的例子是有用的。我们将使用最后一张的二次成本函数(方程(6))。形式如下:
C=12nx||y(x)aL(x)||2                  (26)

这里: n 是训练样本的总数;sum指的是所有独立训练样本x的和;y=y(x)是对应的所期望的输出; L 定义了网络层的数量;并且aL=aL(x)是当x是输入的时候,网络的输出。

好了,那么我们需要做些什么假设来了解我们的成本函数 C ,以使反向传播可以被应用?第一个假设是,成本函数可以写成平均C=1nxCx,其中 x 是训练样本。又因为这是平方的成本的函数,因此一个训练样本的成本是 Cx=12||yaL||2.这个假设也适用于所有本书中其它成本函数。

我们这样假设的原因,是因为反向传播实际上是计算偏导数(求导后,系数为1)。记住这个假设,我们将成本函数 Cx 写成 C 。我们最终会将x 放回,但是现在省去符号的麻烦。

第二个假设我们需要做的是,成本可以被写成是神经网络的输出函数:
这里写图片描述
举个例子,平方成本函数满足这个要求,因为对于每个训练样本 x ,平方成本可以写成:
C=12||yaL||2=12j(yjaLj)2                  27

并且因此是输出激活的函数。当然,成本函数也依赖于我们期望的输出 y ,并且你可能会奇怪为什么不考虑成本为y的函数。记住,虽然训练的例子 x 是固定的,所以输出y也是一个固定参数。特别是,它不是我们可以修改权重和偏差的东西,即,它不是神经网络学习的东西。并因此把C作为一个单独的输出激活 aL 功能, y 是一个参数,有助于定义函数。

The Hadamard product, s⊙t(Hadamard乘积,s⊙t)

反向传播算法基于普通线性代数运算-比如向量加法、矩阵的乘法等等。但是有一些运算平时很少被使用。特别地,假设s t 是具有相同维度的2个向量。那么我们使用st来定义向量元素的乘积。那么 st 等价于 (st)=sjtj 。下面是一个例子:
这里写图片描述
这种对应元素相乘有时也被称为Hadamard乘法或者Schur乘法。我们这里称它为Hadamard乘法。好的矩阵库提供了Hadamard乘积的快速实现,并且将在实现反向传播时使用。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值