首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >为什么深度学习不遭受浮点或数值精度误差,如果它的大部分训练是在数据上的平均值0和std 1?

为什么深度学习不遭受浮点或数值精度误差,如果它的大部分训练是在数据上的平均值0和std 1?
EN

Stack Overflow用户
提问于 2017-10-21 21:22:59
回答 1查看 975关注 0票数 3

受到这个问题的启发:

Why do different methods for solving Xc=y in python give different solution when they should not?

这似乎有数值问题,因为浮点,倒置矩阵和限制值的[-1,1],我现在好奇的是,为什么深度学习不遭受浮点或数值精度错误,如果它的大部分培训是在平均值为0和std 1的数据(我想我假设大部分数据已经预处理在这个范围内,而且我觉得这是大致正确的考虑到批量标准化的高使用率)。是因为深度学习不能通过将多项式提高到一个很高的程度来训练,还是为什么深度学习通常是很好的?SGD是否有什么特殊之处,或者(流行的)激活函数、relu、elu等在数值上不是不稳定的(与高次多项式相比)?或者GPU训练避免了浮点表示在一起?或者为什么深度学习训练在数字上是稳定的?

EN

Stack Overflow用户

发布于 2017-10-21 23:21:30

DL本身并没有什么神奇之处--它也一直受到数值误差的影响。然而,由于非线性的规模和数目,DL中的数值不稳定性通常会导致无穷大或nans,而不是错误的答案。因此,它们通常很容易被发现。特别是,0,1间隔没有什么困难,实际上,它是一个很好的浮动存储点,如 of representable floats actually live in [0,1]!你所指的问题在于获取这样一个数字的巨大指数,这个指数接近机器精度是危险的。任何标准的DL技术都不需要任何激活的30级能量。事实上,大多数最成功的DL技术(基于sigmoids、tanhs和relus)几乎是线性的,因此数值不稳定性主要来自概率估计中的exp运算。

所以:

  • 是关于高次多项式的吗?,这是主要的问题,在DL中没有遇到。
  • SGD有什么特别之处吗?不怎么有意思。
  • 是关于激活函数吗?是的,他们不会让如此巨大的精度下降(指数是例外,它确实导致数值问题)。
  • GPU是在避免浮动吗?不,它不是,GPU与它无关。
票数 2
EN
查看全部 1 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/46868237

复制
相关文章

相似问题

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