首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >毕业检查,平均核实?

毕业检查,平均核实?
EN

Data Science用户
提问于 2018-04-25 00:02:00
回答 1查看 66关注 0票数 3

我正在运行梯度检验,以发现我的数学计算的梯度和实际的采样梯度之间的任何差异,以保证我的支持被正确实现。

当计算出这样的差异时,我能把差异的平方加起来,然后取它们的平均值吗?然后,我可以使用这个平均值来估计网络如何正确地计算梯度:

\frac{1}{m}\sum_{i=0}^{i=m}(g_i-n_i)^2

甚至:

\sqrt{\sum_{i=0}^{i=m}(g_i-n_i)^2}

其中g是反向传播的梯度,n是梯度检验的梯度。

然而,吴荣奎建议:

\frac{\vert \vert (g-n) \vert \vert _2 }{ \vert \vert g \vert \vert _2 + \vert \vert n \vert \vert _2}

其中\vert \vert . \vert \vert _2是向量的长度。

另一篇文章也推荐了一种稍微不同的方法:https://stats.stackexchange.com/a/188724/187816

为什么他们的方法会比我的好呢?

EN

回答 1

Data Science用户

回答已采纳

发布于 2018-04-25 07:39:38

让我举一个例子,安德鲁的建议比你的更有效:

假设实际梯度是$(0,0,0)$,而您计算的梯度是$(10^{-4},10^{-4},10^-4})$。然后您的平均值将返回$10^{-8}$,而Andrew的建议将返回$1美元。你的度量可能会欺骗你,让你认为你的梯度是很容易计算出来的,而误差只是因为一个数字问题,而安德鲁的指标不能欺骗你,因为它认为梯度可能很小。

总之,如果你的梯度没有接近零的范数,那就不重要了。然而,当梯度接近于零时,你可能会被愚弄到认为你的梯度不是正确的。

票数 1
EN
页面原文内容由Data Science提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://datascience.stackexchange.com/questions/30787

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档