深度神经网络中的数学,对你来说会不会太难

选自MIT

机器之心编译

编辑:Gemini

这是一篇讲解深度学习数学的系列文章,但并非是基础数学,还涉及到了拓扑与测度论等内容。本文为该系列文章的第一部分。

本文为Lecture1的内容。

深度前馈网络

我们从统计学出发,先很自然地定义一个函数f,而数据样本由?Xi,f(Xi)?给出,其中Xi为典型的高维向量,f(Xi)可取值为{0,1}或一个实数。我们的目标是找到一个最接近于描述给定数据的函数f?(不过拟合的情况下),因此其才能进行精准的预测。

在深度学习之中,总体上来说就是参数统计的一个子集,即有一族函数f(X;θ),其中X为输入数据,θ为参数(典型的高阶矩阵)。而目标则是寻找一组最优参数θ?,使得f(X;θ?)最合适于描述给定的数据。

在前馈神经网络中,θ就是神经网络,而该网络由d个函数组成:

大部分神经网络都是高维的,因此其也可以通过以下结构图表达:

其中是向量值函数f^(i)的分量,也即第i层神经网络的分量,每一个是的函数。在上面的结构图中,每一层函数f^(i)的分量数也称为层级i的宽度,层级间的宽度可能是不一样的。我们称神经网络的层级数d为网络的深度。重要的是,第d层的神经网络和前面的网络是不一样的,其为输出层,在上面的结构图中,输出层的宽度为1,即f=f(d)为一个标量值。通常统计学家最喜欢的是线性函数,但如果我们规定神经网络中的函数f^(i)为一个线性函数,那么总体的组合函数f也只能是一个线性函数,也样就完全不能拟合高维复杂数据。因此我们通常激活函数使用的是非线性函数。

最常用的激活函数来自神经科学模型的启发,即每一个细胞接收到多种信号,但神经突触基于输入只能选择激活或不激活一个特定的电位。因为输入可以表征为。

对于一些非线性函数g,由样本激励的函数可以定义为:

其中g?定义了以线性函数为自变量的一个非线性函数。

通常我们希望函数g为非线性函数,并且还需要它能很方便地求导。因此我们一般使用ReLU(线性整流单元)函数g(z)=max(0,z)。其它类型的激活函数g还包括logistic函数:和双曲正切函数:。

这两种激活函数相对ReLU的优点,即它们都是有界函数。

正如前面所说的,最后的输出层和前面的层级都不一样。首先它通常是标量值,其次它通常会有一些统计学解释:。

通常可以看作经典统计学模型的参数,且d-1层的输出构成了输出层激活函数的输入。输出层激活函数可以使用线性函数。

该线性函数将输出作为高斯分布的条件均值。其它也可以使用σ(wTh+b),其中σ代表Sigmoid函数,即

该Sigmoid函数将输出视为P(y)为exp(yz)的伯努利试验,其中。

更广义的soft-max函数可以给定为:

其中。

现在,z的分量和可能的输出值相对应,softmax(z)i代表输出值i的概率。例如输入图像到神经网络,而输出(softmax(z)1,softmax(z)2,softmax(z)1)则可以解释为不同类别(如猫、狗、狼)的概率。

卷积网络

卷积网络是一种带有线性算符的神经网络,即采用一些隐藏的几何矩阵作为局部卷积算符。例如,第k层神经网络可以用m*m阶矩阵表达:

我们定义k+1层的函数可以由2*2矩阵在前一层神经网络执行卷积而得出,然后再应用非线性函数g:

参数a(k)、b(k)、c(k)和d(k)只取决于不同层级滤波器的设定,而不取决于特定的元素i,j。虽然该约束条件在广义定义下并不必要,但在一些如机器视觉之类的应用上还是很合理的。除了有利于参数的共享,这种类型的网络因为函数h的定义而自然呈现出一种稀疏的优良特征。

卷积神经网络中的另一个通用的部分是池化操作。在执行完卷积并在矩阵索引函数上应用了g之后,我们可以用周围函数的均值或最大值替代当前的函数。即设定:

这一技术同时可以应用到降维操作中。

模型和优化

下面我们需要了解如何求得神经网络参数,即到底我们该采取什么样的θ和怎么样评估θ。对此,我们通常使用概率建模的方法。即神经网络的参数θ决定了一个概率分布P(θ),而我们希望求得θ而使条件概率Pθ(y

x)达到极大值。即等价于极小化函数:

其中可以用期望取代对数似然函数。例如,如果我们将y拟合为一个高斯分布,其均值为f(x;θ),且带有单位协方差矩阵。然后我们就能最小化平均误差:

那么现在我们该怎样最优化损失函数J以取得最优秀的性能。首先我们要知道最优化的困难主要有四个方面:

过高的数据和特征维度

数据集太大

损失函数J是非凸函数

参数的数量太多(过拟合)

面对这些挑战,自然的方案是采用梯度下降。而对于我们的深度神经网络,比较好的方法是采用基于链式求导法则的反向传播方法,该方法动态规划地求偏导数以降误差反向传播以更新权重。

另外还有一个十分重要的技术,即正则化。正则化能解决模型过拟合的问题,即通常我们对每一个特征采取一个罚项而防止模型过拟合。卷积神经网络通过参数共享提供了一个方案以解决过拟合问题。而正则化提供了另一个解决方案,我们不再最优化J(θ),而是最优化J(θ)=J(θ)+Ω(θ)。

其中Ω是「复杂度度量」。本质上Ω对「复杂特征」或「巨量参数」引入了罚项。一些Ω正则项可以使用L2或L1,也可以使用为凸函数的L0。在深度学习中,还有其他一些方法解决过拟合问题。其一是数据增强,即利用现有的数据生成更多的数据。例如给定一张相片,我们可以对这张相片进行剪裁、变形和旋转等操作生成更多的数据。另外就是噪声,即对数据或参数添加一些噪声而生成新的数据。

生成模型:深度玻尔兹曼机

深度学习应用了许多概率模型。我们第一个描述的是一种图模型。图模型是一种用加权的图表示概率分布的模型,每条边用概率度量结点间的相关性或因果性。因为这种深度网络是在每条边加权了概率的图,所以我们很自然地表达为图模型。深度玻尔兹曼机是一种联合分布用指数函数表达的图模型:

其中配置的能量E由以下表达式给出:

一般来说,中间层级为实数值向量,而顶部和底部层级为离散值或实数值。

波尔兹曼机的图模型是典型的二分图,对应于每一层的顶点只连接直接在其顶部和底部的层级。

这种马尔可夫性质意味着在h1条件下,v分量的分布是和h2,…,hd还有v的其他分量相互独立的。如果v是离散的:

其他条件概率也是相同的道理。

不幸的是,我们并不知道如何在图模型中抽样或优化,这也就极大地限制了玻尔兹曼机在深度学习中的应用。

深度信念网络

深度信念网络在计算上更为简洁,尽管它的定义比较复杂。这些「混合」的网络在本质上是一个具有d层的有向图模型,但是它的前两层是无向的:P(h(d?1),h(d))定义为

对于其它层,

注意到这里与之前的方向相反。但是,该隐变量满足以下条件:如果

由公式(1)定义,则它们也满足公式(2)。

我们知道怎样通过上面的公式直接对基于其它条件层的底层进行抽样;但是要进行推断,我们还需要给定输入下输出的条件分布。

最后,我们强调,尽管深度玻尔兹曼机的第k层取决于k+1层和k-1层,在深度信念网络,如果我们只条件基于k+1层,我们可以准确地生成第k层(不需要条件基于其它层)。

课程计划

在本课程中,我们主要的讨论主题为:

深度的表现力

计算问题

简单可分析的生成模型

第一个主题强调神经网络的表现力:可以被网络近似的函数类型有哪些?我们计划讨论的论文有:

Cybenko的「迭加激活函数的近似」(89)。

Hornik的「多层前馈网络的近似能力」(91)。

Telgarsky的「深度向前网络的表征优势」(15)。

Safran和Shamir的「Relu网络的深度分离」(16)。

Cohen、Or和Shashua的「关于深度学习的表现力:张量分析」(15)。

前两篇论文(我们将在后面的课程中详细阐述)证明了「你可以仅用单一层表达任何事物」的思想。但是,后面几篇论文表明此单一层必须非常宽,我们将在后面侧面展示这种论点。

关于第二个主题,我们在本课程中讨论的关于复杂度结果的内容可能包括:

Livni、ShalevSchwartz和Shamir的「关于训练神经网络的计算效率」(14)。

Danieli和Shalev-Schwartz的「学习DNF的复杂度理论限制」(16)。

Shamir的「特定分布的学习神经网络复杂度」(16)。

在算法方面:

Janzamin、Sedghi和Anandkumar的「使用张量方法有效训练神经网络」(16)。

Hardt、Recht和Singer的「训练更快,泛化更佳」(16)。

最后,我们将阅读的关于生成模型的论文将包括:

Arora等人()的「学习一些深度表征的可证明约束」。

Mossel()的「深度学习和生成层次模型」。

今天我们将开始研究关于第一个主题的前两篇论文:Cybenko和Hornik的论文。

Cybenko和Hornik的理论

在年的论文中,Cybenko证明了以下结论:

[Cybenko(89)]令σ为一个连续函数,且极限limt→–∞σ(t)=0和limt→+∞σ(t)=1。(例如,σ可以为激活函数且σ(t)=1/(1+e?t))然后,f(x)=∑αjσ(wTjx+bj)形式的函数族在Cn([0,1])中是稠密的。

其中,Cn([0,1])=C([0,1]n)是从[0,1]n到[0,1]的连续函数空间,它有d(f,g)=sup

f(x)?g(x)

Hornik证明了下面的Cybenko的衍生结论:

[Hornik(91)]考虑上面定理定义的函数族,但是σ没有条件限制。

如果σ有界且非连续,那么函数族在Lp(μ)空间是稠密的,其中μ是任意在Rk上的有限测度。

如果σ是条件连续的,那么函数族在C(X)空间是稠密的,其中C(X)是所有在X上的连续函数的空间,X?Rk是满足有限开覆盖的集合(







































北京治疗白癜风到哪个医院好
白癜风怎么治疗好



转载请注明:http://www.danbaopay.com/zydy/15714.html