这个定理也被称为通用近似定理(UniversalApproximationTheorem这里的“Universal”,也有人将其翻译成“万能的”,由此可以看出,这个定理的能有多大。
通用近似定理告诉我们,不管函数
f(x)f(x)
f
(
x
)
在形式上有多复杂,我们总能确保找到一个神经网络,对任何可能的输入,以任意高的精度近似输出
f(x)f(x)
f
(
x
)
(即使函数有多个输入和输出,即
f(x1,x2,x3...xn)f(x_1,x_2,x_3...x_n)
f
(
x
1
,
x
2
,
x
3
.
.
.
x
n
)
,通用近似定理的结论也是成立的.换句话说,神经网络在理论上可近似解决任何问题,这就厉害了!有关神网络可以计算任何函数的可视化证明,感兴趣的读者可以参阅迈克尔·尼尔(Michael Nielsen)的博客文。
-
定理说的是,可以设计个神经网络尽可能好地去“近似”某个特定函数,而不是说“准确”计算这个函数。我们通过增加隐含层神元的个数来提升近似的精度。
-
被近似的函数,必须连续函数如果函数是非连续的,也就是说有极陡跳跃的函数,那神经网络就“爱莫能助”了。
即使函数是连续的,有关神经网络能不能解决所有问题,也是有争议的原因很简单,就如同那句玩笑话“理想很丰满,现实很霄’感”,通用近似定理在理论上是回事,而在实际操作中又是另外回事。
比如,深度学习新秀、生成对抗网络(GAN)的提出者伊恩·古德费洛(IanGoodfellow)就曾说过:“仅含有一层的前馈网络的确足以有效地表示任何函数,但是,这样的网络结构可能会格外庞大,进而无法正确地学习和泛化.
A feedforward network with a single layer is sufficient to represent any function,but the layer may be infeasibly large and may fail to learn and generalize correctly.
Goodfellow言外之意是说,“广而浅薄”的神经网络在理论上是万能的,但在实践中却不是那么回事儿。因此,网络往“深”的方向去做才是正途。
事实上,“通用近似定理”1989年就被提出了,到2006年深度学习开始厚积薄发,这期间神经网络并没有因为这个理论而得到蓬勃发展。因此,从某种程度上验证了Goodfellow的判断。