分享

为什么神经网络永远学不会正弦波?

 芥子c1yw3tb42g 2024-05-22 发布于陕西

背景:Stephen Wolfram 在几个月前写了一篇名为“人工智能能否解决科学问题?”的文章,他认为神经网络由于架构的限制,无法在其训练范围之外进行泛化。

一个特别有趣的例子是展示了即使是具有多个隐藏层的MLP也无法将简单的周期函数泛化到训练范围之外:

图片

虽然这令人失望,但从直觉上讲这是合理的:

具有非周期性激活函数的MLP根本没有办法在整个范围(-∞, ∞)内应用给定的模式。虽然范围在通过隐藏层流动时被拉伸、挤压和旋转,但每个子区间必须单独处理。

我们能做些什么呢?嗯,自然而然地,如果我们给网络访问正弦激活函数的能力,这就变得微不足道了。

图片

当然,这是作弊的 -- 我们已经给出了解决方案。我们总是必须像我们在这里做的那样改变架构来适应问题吗?要回答这个问题,我们需要对这里发生的事情有一个更一般的解释。

要理解某事,神经网络就像人一样,必须创建一个将所有噪音压缩掉、捕捉到真正重要的东西的抽象表示。通常,这以识别不同对称性的形式出现。

具有典型非周期性激活函数的MLP必须单独处理线性输入空间的每个补丁 -- 它无法表示这种位置不变性。我们需要神经网络在其“内部词汇表”中具有这种周期性的概念。

(论文“神经网络无法学习周期函数及其解决方法”对这一点进行了深入的探讨。)

那么,我们是否发现了一个致命缺陷,从根本上限制了MLP的能力呢?好吧,我想提供一个不同的思考方式。

实际上,没有一个正确的方法来归纳一个序列。任何可能的延续都是合理的——毕竟,我们显然对接下来会发生什么一无所知。

图片

然而,有一条路径对我们来说更有意义;这是最简单的路径。这就是奥卡姆剃刀背后的思想。

换句话说,我们对无限可能空间赋予了一个“普遍先验”,即更简单的事物更有可能发生。这只是对人类关于宇宙的所有学习的一个广泛且惊人准确的概括。

这可以用Solomonoff归纳来形式化:

  • “更简单”被定义为具有较低科尔莫哥洛夫复杂度的事物。某些数据的科尔莫哥洛夫复杂度是重现它所需的最短程序的长度。直观地说,更复杂的东西需要更多的代码来表示。

  • 要找到序列的最佳延续,我们首先找到复制到目前为止完整序列的最简单程序。

  • 然后我们继续评估这个最小程序来继续序列。

而这正是我们希望从神经网络中得到的行为。事实上,这就是为什么较小的网络通常效果更好的原因 -- 它们模拟了更接近最小程序的东西。

但是,这是重要的部分,也是我们问题的根源:

“语言”从未被指定。而这种语言非常重要 -- 不同的选择会导致对“简单”意味着什么的不同理解。我们可以将这种影响称为归纳偏差。

图片

正如你在上面的图像中所看到的,我们使用哪种激活函数可以被视为前述归纳偏差的类比。我们可以将使用不同激活函数视为导致对简单曲线的不同定义的不同。这些图像中的每一个都显示了以不同方式拟合训练数据,但在其各自的归纳先验下,它们都是合理的。

所以,回答开头提出的问题,正弦波只是相对于人类归纳偏差的数据的最佳拟合:大致来说,自然语言和常见数学函数族。除非周期函数的概念存在于网络的结构中,否则它们对网络来说看起来是无限复杂的。

所以,这个帖子开头的“错误”图实际上是正确的。它们是在给定网络设置的情况下,序列的最可能延续。

我不会给出结论,而是留下一个问题陈述:

我们如何将机器学习的归纳偏差与现实的归纳偏差对齐?

本文内容取自于同名知识星球《AGI Hunt》,由AI 辅助创作完成。

星球《AGI Hunt》,实时采集和监控推特、油管、discord、电报等平台的热点AI 内容,并基于数个资讯处理的 AIAgent 挑选、审核、翻译、总结到星球中。

  • 目前每天约监控6000 条消息。可节省约800+ 小时的阅读成本。

  • 每天约挖掘出10+ 热门的/新的 github 开源 AI 项目

星球非免费。一是运行有成本,我希望它能自我闭环这样才能稳定运转;二是对人的挑选,鱼龙混杂不是我想要的,更希望找到关注和热爱 AI 的人。


    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多