例如,如果我使用神经网络进行回归分析,没有任何隐藏层的神经网络将给出线性函数。隐藏层是否对应逼近函数的度数?如果是这样,具有单个隐藏层的神经网络如何成为通用逼近器?
神经网络中的层数是否与逼近函数的程度相对应?
确实,更多的层/深度可以产生更多的非线性,但我不认为使用多项式次数的类比是一个完美的类比,这当然不是数学事实。
您可以通过几种不同的方式查看深度网络回归:学习非线性函数。从这个意义上说,用次数和多项式来思考是很自然的。另一种意义是,使用神经网络进行学习涉及学习将域划分为子域,并且在每个子域上,我们用线性叠加或更简单函数的深度组合来近似函数。从这个意义上说,我们根据我们可以学习多少个子域来衡量表征能力。当然,这些概念可能不是正交的,但它们强调不同的方面。多项式次数的类比对我来说很像插值,而我相信具有深度网络表示能力的哲学(和最近的理论)更多的是关于分区或学习区域.
你的问题有几个不同的角度。如果您问为什么单个隐藏层 NN 是通用函数逼近器,那是一个数学问题,并且证明是可用的,例如参见Cybenko 的 sigmoidal 非线性证明。Cybenko 论文的一个关键引述如下:
“具有一个内部层和任意连续 S 型函数的网络可以以任意精度逼近连续函数,前提是不对节点数量或权重大小施加任何限制”
因此,要将具有单个隐藏层 NN的连续函数可能需要非常宽的架构,尽管它非常浅。意思是,我们有很多很多不同的 sigmoidal 激活函数。通过允许我们自己可能拥有许多这样的 sigmoidal 激活函数,即广泛的架构,我们允许自己对我们的域进行更复杂的划分,这提高了我们的近似精度。
还有一些进一步的方法可以打破通用逼近定理。例如,它要求激活函数是非常量、有界和单调递增的连续函数。以 sigmoidal 激活为例,它在时渐近到 1. 使用 sigmoidal 激活的最初动机之一是它可以像一个开关一样工作。允许权重具有任意大小,即对参数值的大小没有硬性限制,我们可以有效地将 sigmoid 转换为具有非常负值的“关闭”状态,并将 sigmoid 转换为具有非常正值的“开启”状态。训练单个隐藏层对应于学习良好的参数配置。通过允许权重具有无限大小(在负和正的意义上),我们可以将单个隐藏层 NN 解释为将域划分为子空间,其中 sigmoidals 的特定配置“打开”并有助于函数逼近和其他被“关闭”。
我认为激励研究人员的一个问题是:这有多有效?特别是:表示容量如何随着单隐藏层神经网络的隐藏单元数量而扩展?对于更深层次的架构?
我相信 Yoshua Bengio 和他的合作者最近的工作通过非常成功的 ReLU和称为 Maxout 激活函数的泛化,进一步推动了这些想法。这些 ReLU 和 Maxout 网络往往具有多个层并且不浅。请看下文如何理解神经网络内部运作的几何直觉?以获得更详细的解释。但粗略地说,他们证明了Maxout 网络学习了指数级的线性区域。特别是,学习的线性区域的数量随着层数呈指数增长。
因此,也许从多项式的角度考虑度数并不是最好的类比,但最好从深度如何随我们的网络可以学习的区域数量(分区大小)缩放的角度来考虑。
与单隐藏层 NN 相比,如果一般原则是表示能力随深度而变化,那么我们将需要一个非常宽和浅的架构,并且在每个参数的基础上,与更深的网络相比,这可能非常低效。