是否存在可以学习所有可能的训练数据的神经网络?

人工智能 神经网络 计算学习理论 通用逼近定理
2021-10-25 13:22:55

通用逼近定理指出,具有包含有限数量神经元的单个隐藏层的前馈网络可以逼近紧缩子集上的连续函数Rn.

迈克尔尼尔森说

无论函数是什么,都保证有一个神经网络,这样对于每个可能的输入,x, 价值f(x)(或某种近似值)从网络输出。

因此,对于连续函数,这似乎是合理的。有趣的是,在同一篇文章中,尼尔森提到了“任何功能”。

后来,他写

然而,即使我们真正想要计算的函数是不连续的,通常情况下连续近似就足够了。

最后一个陈述留下了一个空白,询问一个近似值实际上可以有多好。

让我们忽略矛盾的输入/输出训练对,例如f(0)=0f(0)=1,它实际上并不代表一个函数。

此外,假设训练数据是随机生成的,这实际上会导致函数不连续。

神经网络如何学习这些数据?学习算法是否总是能够找到一个近似于输入-输出对所表示的函数的神经网络?

1个回答

回答此类问题的人工智能研究分支称为计算学习理论

对于您提出的具体问题,通用逼近定理确实证明了任何函数都可以通过足够宽的神经网络进行建模。函数的定义包括每个输入都映射到一个输出的要求,因此训练数据中的矛盾标签被明确排除。

这是一个粗略的草图,可以提供为什么这是真的背后的直觉。这不是一个适当的证明,但它让您了解隐藏层中“有限数量的神经元”的力量:

  1. 单个神经元基本上可以学习在输入特征空间中画一条直线。它输出一个任意接近于 1 的值,用于线的一侧,任意接近 0 的值用于线的另一侧。
  2. 对于任何给定的数据点,可以通过在输入空间中绘制一系列线并将每条线的一侧定义为超体积的“内部”来包围包含该数据点的超体积,而不是其他数据点另一边为“外”。在二维空间中,这对应于围绕一个点绘制正方形的 4 条边。
  3. 输出神经元学习在隐藏层神经元的输出上画线。因此,只有当 4 个其他神经元同时处于活动状态时,它才能决定输出 1。

那么,一个足够宽的神经网络可以记住所有输入模式似乎很自然。由于记忆足以“学习”以适应模式,这应该让您对神经网络适应事物的能力有一个直觉。