多层感知机
多层感知机是一种简单的神经网络,包含输入层、隐藏层以及输出层。如下图所示。
多层感知机的计算过程
输入层为小批量样本,批量大小为,输入个数为。上述图的多层感知机为单隐藏层,隐藏层输出为,,为隐藏层单元个数。网络各层之间全连接,设隐藏层的权重参数和偏差参数分别为,。输出层的权重和偏差参数分别为,。
多层感知机的输出为:
激活函数
神经网络的最大特点之一是能够拟合数据之间的非线性关系,其关键在于激活函数的使用。激活函数主要包括ReLU函数,Sigmoid函数,tanh函数。
(1)ReLU函数
ReLU函数只保留正数元素,并将负数元素清零。其函数图像为:
ReLU函数求导:
(2)Sigmoid函数
Sigmoid函数可以将元素的值变换到0和1之间。
sigmoid函数求导:
(3)tanh函数
tanh函数是将元素值变换到-1和1之间:
tanh函数求导:
(4)三种激活函数的选择
- 用于分类器时,sigmoid函数及其组合通常效果更好。由于梯度消失问题,有时要避免使用sigmoid和tanh函数。
- 在神经网络层数较多的时候,最好使用ReLu函数,ReLu函数比较简单计算量少,而sigmoid和tanh函数计算量大很多。
- 在选择激活函数的时候可以先选用ReLu函数如果效果不理想可以尝试其他激活函数。
注:以上资源来源于伯禹平台《动手学深度学习》的学习笔记
来源:CSDN
作者:伸腿瞪眼丸
链接:https://blog.csdn.net/weixin_43839651/article/details/104316663