《深入浅出图神经网络》阅读笔记-第2章 图神经网络基础(2)

第2节 神经网络

1.单隐层感知机

输入层-》一层隐藏层-》输出层

计算过程:f(x) = f_2(b^{(2)} + W(f_1(b^{(1)} + W^{(1))}x)) )

b为偏置、w为权重向量,f_1、f_2为激活函数

2.感知器的信息传递

多层感知器也成为前馈神经网络。

3.激活函数

激活函数的非线性使得神经网络几乎可以任意逼近非线性函数。如果不适用激活函数,无论有多少层,都只是上一层输入的线性组合,表达能力有限。

对激活函数的基本要求:连续可导,可允许在少数点上不可导

  • S型激活函数-有界

Sigmoid:\sigma (x) = \frac{1}{1+e^{(-x)}},将任意大小的输入压缩到0-1之间。应用:二分类最后一层的激活函数;类似于开关调节器,用于对其他信息的调节。

Tanh:tanh(x) = \frac{e^x + e^{(-x)}}{e^x - e^{(-x)}}tanh(x) = \frac{e^x - e^{(-x)}}{e^x + e^{(-x)}}

  • ReLU及其变种

ReLU(x) = \left\{\begin{matrix} x & if & x>=0\\ 0 & if & x < 0 \end{matrix}\right.,单侧抑制。优势:为隐藏层输出带来一定的稀疏性,缓解梯度消失的问题。不足:某些情况下会导致某个神经元死亡。

LeakyReLU(x) = \left\{\begin{matrix} x &if &x>0 \\ \lambda x & if & x<=0 \end{matrix}\right.,避免某个神经元死亡。

PReLU(x) = \left\{\begin{matrix} x & if & x > 0\\ ax & if & x<= 0 \end{matrix}\right.,将\lambda加入可训练的参数中。

ELU(x) = \left\{\begin{matrix} x &if &x>=0 \\ a(e^x)-1 & if & x<0 \end{matrix}\right.,在输入为负的时候,进行非线性变换。a为超参数,具有调节激活值的均值为0的功能,可以加速神经网络的收敛

4.训练神经网络

神经网络运行过程:向前传播、反向传播、参数更新,通过不断迭代进行模型参数的更新。

前向传播:给定输入和参数,逐层向前进行计算,最后输出预测结果。

反向传播:基于前向传播得到的预测结果,使用损失函数得到损失值,然后计算相关参数的梯度,该计算方法成为反向传播。以多层感知机为例介绍反向传播

参数更新:使用梯度下降算法对参数进行更新,重复上述过程,逐步迭代,直到模型收敛。

优化困境:梯度消失、局部最优与鞍点。详细内容参见:梯度消失、局部最优与鞍点

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值