2.1.5 梯度检验

梯度的数值逼近

当实施反向传播的时候,有一个测试叫做梯度检验,它的作用是保证反向传播可以正确实施。在写好反向传播公式的时候,你没有办法保证执行反向传播的所有细节全部都是正确的。为了实现逐步梯度检验,我们先来说一下如何对梯度做数值逼近。

这里写图片描述

如图所示,我们只需记住,双边检测误差更低,精度更高。

那么为什么是平方误差关系呢,这里用到了泰勒展开式,做差所得,我们先来复习一下泰勒展开式的知识

这里写图片描述

然后这个公式的推导过程如下:
这里写图片描述

梯度检验

下面我们介绍一下如何用梯度检验来检验反向传播实施是否正确。

这里写图片描述

如图所示,为了执行梯度检验,我们首先要把所有参数转化成一个巨大的向量数据。

转换完之后那么现在的问题是 dθ ,或者说是代价函数J的梯度和代价函数之间有什么关系。而这,就是实施梯度检验的过程。英语里通常称为grad check

这里写图片描述

如图所示,为了执行梯度检验,你要做的就是使用循环操作。

我们执行双边误差检测。由上节课的知识我们应该知道,这个双边误差应该近似于 dθ

那么如何定义两个向量是否彼此接近呢?我们一般使用二范数来进行度量。最后我们将向量长度做归一化处理,得到上图中最下面的公式。如果我们得到的这个误差在10的负7次方的数量级,那么非常好,如果这个误差比较大,那么我们就要重新检验了。

关于梯度检验实现的注记

这里我们谈一下在神经网络中实现梯度检验的注意技巧和注意事项

这里写图片描述

最后的一点说明一下,最好在反复训练神经网络之后再进行梯度检验。

吴教主深度学习和神经网络课程总纲

  • 5
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 3
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Einstellung

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值