从线性到非线性——神经网络的激活函数

鸽了许久,下面浅谈一下神经网络的激活函数。

众所周知,激活函数可以使得神经网络从线性进化为到非线性,意思就是说。原本只能线性可分,现在可以分类非线性分布的数据了。为什么?

首先看一下没有激活函数的神经网络模型:
在这里插入图片描述

那这能说明什么呢?
我们来看,假设有n个点呈非线性分布,将n个(x1, x2)输入到这个神经网络中,得到算出来的y1和y2,其结果可见下图:
在这里插入图片描述
可以看见没有激活函数的神经网络模型 b+w1*x1+w2 *x2
算出的预测值形成了一条直线,而这条直线不能把非线性分布的数据进行分类。

那怎么办呢?
考虑一下,之所以不能分类,是因为根据模型算出来的预测值形成的是直线,那我们不让它形成直线不就好了,问题又来了,不让它形成直线,那分类岂不是乱了套?
答案是我们有损失函数,根据损失函数,我们可以让预测值形成的曲线恰好能够将数据进行分类!
如下图:
在这里插入图片描述
这一步就是由激活函数做到的,那常见的激活函数我们都清楚,比如:sigmoid、Relu、tanh等等。其实跃迁函数,也就是sign()也是非线性的激活函数,只不过它只有0和1的取值。

好,到此为止,我们把激活函数为什么可以非线性分类讲完了。但是,激活函数一般是用在哪?是在深度学习领域中卷积层、池化层等等。我们上面讲的都是一下简单的二维数据点,看上去好像和深度学习隔了些什么。

那我们以卷积为例,看一下。
如图所示:
在这里插入图片描述
这个图太熟悉不过了,我们把它展开。

在这里插入图片描述
是不是就回到了上上上面那个神经网络了呀。只不过那个是二维的,这里是9维的。现在,我们得到9维空间上非线性分布的预测值了。再往下叠加层数,最终会形成一个超平面可以分类我们的数据点了。

想一下,二维数据点的预测值形成的是曲直线,三维数据点的预测值是不是就是曲直面了呀。更高维的呢?想不到,但是真实存在。

此外,卷积神经网络引入非线性激活函数的目的,是使得深层网络有存在的意义,否则线性的深层网络使用一层网络就可以代替了,叠加层数毫无用处。

上述观点有问题的,请读者在下方评论区给出,看到会及时回复。

  • 7
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值