ReLU如何让神经网络逼近连续非线性函数?

文摘   科技   2024-08-23 21:23   江苏  
点击蓝字
 
关注我们










01


引言



激活函数在神经网络(NN)中发挥着不可或缺的作用,因为它们引入了非线性,并允许神经网络学习比线性回归更复杂的特征和函数。最常用的激活函数之一是ReLU函数,理论证明它能让神经网络逼近各种连续函数,使其成为强大的函数逼近器。

在这篇文章中,我们将特别研究连续非线性函数的近似,这是使用 NN 而非简单线性回归模型的主要目的。更准确地说,我们研究了非线性函数的两个子类别:连续分段线性函数和连续曲线函数。我们将展示如何使用一个由一个隐藏层组成的 NN 网络来表示这两种函数类型。

为了便于说明,我们只考虑单特征输入,但这一想法同样适用于多特征输入。






02


ReLU激活函数


ReLU函数图示如下:

图 1:ReLU函数示例

ReLU 是一个连续分段函数,由两段线性函数组成:其中小于零的部分输出均为零,大于零的部分用于输出连续的线性映射。






03


 逼近连续分段线性函数


连续分段线性函数是具有多个线性部分的连续函数。每一部分的斜率都是一致的,而在过渡点则会通过添加新的线性函数而发生突然变化。

图 2:使用 NN 近似连续分段线性函数的示例。


在每个转换点,都会从输入中添加/减去一个新的 ReLU 函数,以增加/减少斜率。

在有一个使用 ReLU 激活的隐含层和一个线性输出层的 NN 神经网络中,激活函数被聚合起来形成连续分段线性目标函数。隐含层的每个单元负责一个线性片段。在每个单元中,都会添加一个与斜率变化相对应的新的ReLU 函数,以产生新的斜率(参见上图)。由于该激活函数始终为正,因此输出层中与增加斜率的单元相对应的权重将为正,反之,与减少斜率的单元相对应的权重将为负(参见下图3)。新的函数在转换点进行添加,但由于 ReLU 激活函数的禁用范围,在转换点之前(有时在转换点之后)不会对生成的函数产生影响。


图 3:使用由一个带 ReLU 激活的隐含层和一个线性输出层组成的 NN





04


  举个栗子


为了使其更加具体,我们来看个实际的例子,以下函数由自定义的 4 个线性段组成。

图 4:连续分段线性函数示例
为了表示这个目标函数,我们将使用包含一个由4 个单元组成的隐含层和一个线性层的NN,线性层的输出是前一层激活输出的加权之和。让我们来确定网络的参数,以便让隐含层中的每个单元都代表目标函数的一个分段。在本例中,输出层的偏置 (b2_0) 设置为 0。
图 5:上图中定义的函数网络建模架构。

我们假设单元0负责第一个分段,这里我们假设:

所以第一个分段的目标函数表示如下:

经过ReLU函数后,在x0 = 1,进行输出的抑制,最终这一分段通过权重w0=1添加到最终输出里,如下所示:

图 6:单元 0 经过激活函数Relu后的输出

同理,我们假设单元1负责第二个分段,这里我们知道链接点处x0 = 1,并且此时函数取值为0,所以第二段的分段函数表示为:z1=x0-1,同时权重为w1=1,得到结果如下:

图 7:单元 1 的激活输出 (a1_1),与输出 (a2_0) 汇总后产生片段。红色箭头代表斜率的变化

进而,单元2负责第三个分段,这里我们知道链接点处x0 = 2,并且此时函数取值为1,所以第三段的分段函数可以表示为:

同时权重为w1=1,得到结果如下:

图 8:单元 2 的输出 (a1_2),与输出 (a2_0) 汇总后产生分段。红色箭头表示斜率的变化。

最后,单元3负责第四个分段,这里我们知道链接点处x0 = 3,并且此时函数取值为4,所以第四段的分段函数可以表示为:

同时权重为w2=-1,得到结果如下:

图 9:单元 3 的输出 (a1_3),与输出 (a2_0) 汇总后产生分段。红色箭头表示斜率的变化。





05


  逼近连续曲线函数


我们要研究的下一类连续非线性函数是连续曲线函数。这一子类没有一个恰当的定义,但有一种非正式的方法来定义,即非分段式连续非线性函数。这类函数的几个例子包括:二次函数、指数函数、正弦函数等。

一个连续曲线函数可以用一系列无限小的线性片段来逼近,这就是函数的分段线性逼近。线性片段的数量越多,每个片段的大小越小,对目标函数的逼近效果就越好。因此,与之前相同的网络结构,只要有足够多的隐藏单元,就能获得曲线函数的良好近似值。

然而,在现实中,网络的训练是为了拟合输入-输出映射函数未知的给定数据集。神经元数量过多的架构容易出现过拟合、高方差等问题,并且需要更多的时间来训练。因此,适当的隐藏单元数量既不能太少而无法正确拟合数据,也不能太多而导致过度拟合。此外,在神经元数量有限的情况下,低损耗的良好近似会在限制域中有更多的过渡点,而不是以均匀采样的方式等距过渡点。如下图所示:

图 10:连续曲线函数的两个分段线性近似值(虚线部分)。

与近似值 2 相比,近似值 1 在限制域中有更多的过渡点,因此能更好地模拟目标函数。







06


  总结

在这篇文章中,我们研究了 ReLU 激活函数如何允许多个单元在不相互干扰的情况下对结果函数做出贡献,从而实现连续非线性函数逼近。此外,我们还讨论了如何选择网络架构和隐藏单元的数量,以获得良好的逼近结果。

您学废了吗?





点击上方小卡片关注我




添加个人微信,进专属粉丝群!


AI算法之道
一个专注于深度学习、计算机视觉和自动驾驶感知算法的公众号,涵盖视觉CV、神经网络、模式识别等方面,包括相应的硬件和软件配置,以及开源项目等。
 最新文章