欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 健康 > 美食 > Understanding Deep Learning 第三章 Shallow neural networks

Understanding Deep Learning 第三章 Shallow neural networks

2025/6/9 17:38:54 来源:https://blog.csdn.net/EnochChen_/article/details/144934401  浏览:    关键词:Understanding Deep Learning 第三章 Shallow neural networks

3.1神经网络示例

浅神经网络是函数y = f[xϕ],其参数将多变量输入x映射到多变量输出y。我们使用示例网络f[xϕ]来介绍主要思想,该网络将标量输入x映射到标量输出y,并具有十个参数ϕ = {Ф_{0},Ф_{1},Ф_{2},Ф_{3}θ_{10}θ_{11}θ_{20}θ_{21}θ_{30}θ_{31}}:

我们可以把计算分成三部分:首先我们计算输入数据的三个线性函数(θ_{10}+ θ_{11}x, θ_{20}+ θ_{21}x和θ_{30}+ θ_{31}x)。其次我们通过激活函数a[]传递这三个结果。最后我们用Ф_{1}Ф_{2}Ф_{3}对三个结果激活进行加权,将它们相加并添加偏移量Ф_{0}

激活函数a[]有很多可能性,但最常见的选择是整流线性单元也称为ReLU

当输入为正时返回输入,否则返回零。 

3.1整流线性单元(ReLU)。如果输入小于零,这个激活函数返回零,否则返回输入不变。换言之,它将负值剪辑为零。激活函数还有许多选择,但ReLU是最常用也最易理解的。

3.1.1神经网络直觉 

实际上方程3.1表示的是一组连续分段线性函数(图3.2),最多有四个线性区域。现在我们分解方程3.1并说明为什么它描述了这个族。为了更容易理解,我们将函数分成两部分。首先,我们介绍中间量:

 我们把h_{1} h_{2}h_{3}作为隐藏单位。其次,我们通过将这些隐藏单元与线性函数组合来计算输出:

 3.2由方程3.1定义的Ф_{0}等十个参数中三种不同选择的函数。在每种情况下,输入/输出关系都是分段线性的。然而节点的位置、节点之间直线区域的斜率以及整体高度都不同。

以上图为例a-c)输入x经过三个线性函数,每个函数有不同的y截距θ_{*0}斜率为θ_{1*}

3.1.2描述神经网络

我们一直在讨论一个有一个输入,一个输出和三个隐藏单元的神经网络。我们在图3.4a中可视化这个网络。输入在左边,隐藏单元在中间,输出在右边。每个连接代表十个参数中的一个。为了简化这种表示,我们通常不绘制截距参数,因此该网络通常如图3.4b所示。

 

a)左侧为输入x,中间为隐藏单元h1h2h3,右侧为输出y。计算从左到右进行。输入用于计算隐藏单元,这些隐藏单元组合起来创建输出。十个箭头中的每一个都代表一个参数(橙色为截距,黑色为斜率)。每个参数乘以其源并将结果添加到其目标。

b) 省略了截距ReLU函数和参数名更简单描述网络。

3.2普遍近似定理

在上一小节中,我们介绍了一个示例神经网络,它具有一个输入、一个输出、ReLU激活函数和三个隐藏单元。现在让我们稍微推广一下,考虑有D个隐藏单位的情况,其中第D个隐藏单位是:

这些被线性组合起来产生输出:

浅层网络中隐藏单元的数量是衡量网络容量的一个指标。对于ReLU激活函数,具有D个隐藏单元的网络的输出最多有D个节点,因此是一个至多有D+1个线性区域的分段线性函数。随着隐藏单元的增加,模型可以逼近更复杂的函数。

事实上,只要有足够的隐藏单元,浅层网络就可以以任意精度描述任何连续1D函数。想象每次我们添加一个隐藏单元时,我们都会向函数添加另一个线性区域。随着区域越来越多,它们代表了函数的较小部分,这些部分越来越好地近似于一条线(图3.5)。普遍逼近定理证明了对于任意连续函数,存在一个能将该函数逼近到任意精度的浅层网络。

3.5用分段线性模型逼近一维函数(虚线)。

a-c)随着区域数量的增加,模型越来越接近连续函数。

具有标量输入的神经网络为每个隐藏单元创建一个额外的线性区域。这个想法可以推广到i维函数。普遍逼近定理证明,只要有足够的隐藏单元,就存在一个浅层神经网络,它可以将定义在R^{D^{i}}的紧子集上的任意连续函数描述到任意精度。

3.3.1多变量输出可视化

为了将网络扩展到多元输出y,我们只需对每个输出使用隐藏单元的不同线性函数。因此,一个具有标量输入x、四个隐藏单元h1h2h3h4和一个二维多元输出y = [y_{1},y_{2}]^{T}的网络定义为:

 这两个输出是隐藏单元的两个不同的线性函数。

 

3.6一个输入,四个隐藏单元,两个输出的网络。

a)网络结构可视化。

b)该网络产生两个分段线性函数y_{1}[x]y_{2}[x]。这些功能的四个“连接点”(在垂直虚线处)被限制在相同的位置,因为它们共享相同的隐藏单元,但斜率和整体高度可能不同。

3.3.2可视化多变量输入

为了处理多元输入x,我们扩展了输入和隐藏单元之间的线性关系。因此具有两个输入x=[x_{1},x_{2}]^{T}和标量输出y(图3.7)的网络可能有三个隐藏单元定义为:

 现在每个输入都有一个斜率参数。隐藏单元以通常的方式组合形成输出:

3.8两个输入x=[x_{1},x_{2}]^{T},三个隐藏单元h1,h2,h3,一个输出y a-c)的网络处理,每个隐藏单元的输入是两个输入的线性函数,对应一个有向平面。亮度表示功能输出。

a)中亮度表示为θ_{10}+ θ_{11}x_{1}_{12}x_{2}。细线是轮廓。

d-f)每个平面被ReLU激活函数剪辑,青色线相当于图3.3df中的“关节”。

g-i)然后对被剪切的平面进行加权,

j)与确定表面总体高度的偏移量相加。结果是一个由凸分段线性多边形区域组成的连续曲面。

3.4浅神经网络:一般情况

我们描述了几个浅层网络的例子,以帮助培养对它们如何工作的直觉。我们现在定义了一个浅层神经网络y = f[x, Ф]的一般方程,它将一个多维输入xR^{D^{i}}映射到一个多维输出y R^{D^{i}},使用h R^{D}隐藏单元。每个隐藏单元计算如下:

 这些被线性组合起来产生输出:

 其中a[]为非线性激活函数。模型参数d = {θ..,d..}。图3.11显示了一个具有三个输入、三个隐藏单元和两个输出的示例。

激活函数允许模型描述输入和输出之间的非线性关系,它本身必须是非线性的;如果没有激活函数或线性激活函数,那么从输入到输出的整体映射将被限制为线性。已经尝试了许多不同的激活函数(参见图3.13),但最常见的选择是ReLU(图3.1),它具有易于解释的优点。通过ReLU激活,网络将输入空间划分为凸多面体,这些凸多面体由ReLU函数中的“关节”计算的超平面相交定义。每个凸多面体包含一个不同的线性函数。对于每个输出,多面体是相同的,但是它们包含的线性函数可能不同。

 3.11三输入二输出神经网络可视化。这个网络有二十个参数。有15个斜坡(箭头表示)和5个偏移(未显示)。

3.12术语。浅层网络由输入层、隐藏层和输出层组成。每一层通过前向连接(箭头)连接到下一层。由于这个原因,这些模型被称为前馈网络。当一层中的每个变量都连接到下一层中的每个变量时,我们称之为全连接网络。每个连接代表底层方程中的一个斜率参数,这些参数称为权重。隐藏层中的变量被称为神经元或隐藏单元。输入到隐藏单元的值称为预激活,而隐藏单元的值(即在应用ReLU函数之后)称为激活。 

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

热搜词