谈谈为什么要把上一层的输出经过激活函数后再作为下一层的输入呢?
首先谈谈万能近似性质。
线性模型,通过矩阵乘法将特征映射到输出(),顾名思义,仅能表示线性函数。线性函数具有易于训练的优点,当使用线性函数时,许多损失函数会导出凸优化问题。但是,我们往往希望我们的系统学习的是非线性函数。
那么我们如何要为非线性函数设计模型呢,万幸,具有隐藏层的前馈网络提供了一种万能近似框架。具体来说,万能近似定理表明,一个前馈神经网络如果具有线性输出层和至少一层具有任何一种“挤压”性质的激活函数(例如logistic sigmoid函数)的隐藏层,只要给与网络足够数量的隐藏单元,它可以以任意的精度近似任何一个有限维空间到另一个有限维空间的Borel可测函数。前馈网络的导数也可以任意好地近似函数的导数。
我们只需要知道定义在 的有界闭集上的任意连续函数是 Borel 可测的, 因此可以用神经网络来近似,神经网络也可以近似从任何有限维离散空间映射到另一个的任意函数。
万能近似定理意味着无论我们学习什么函数,我们知道一个大的MLP一定能表示这个函数。然而,我们并不能保证训练算法能够学到这个函数。即使MLP能够表示这个函数,学习也可能因为两个原因而失败。首先,用于训练的优化算法可能找不到用于期望函数的参数值。其次,训练算法可能由于过拟合而选择了错误的函数。前馈网络提供了一个表示函数的万能系统,给定一个前馈网络能够近似该函数。不存在万能的过程既能够验证训练集上的特殊样本,又能够选择一个函数来扩展到训练集上没有的点。
万能近似定理说明了存在一个足够大的网络能够达到我们所希望的任意精度,但是定理并没有说这个网络有多大。总之,具有单层的前馈网络足以表示任何函数,但是网络层可能大的不可实现,并且可能无法正确地学习和泛华。在很多情况下,使用更深的模型能够减少表示期望函数所需的单元的数量,并且可以减少泛化误差。
(为什么能够更深的模型能够减少参数数量呢)
书上说是折叠了空间。。看不懂。。