多层感知机
概念:多层感知机就是含有至少一个隐藏层的由全连接层组成的神经网络,且每个隐藏层的输出通过激活函数进行变换。多层感知机的层数和各隐藏层中隐藏单元个数都是超参数。以单隐藏层为例并沿用本节之前定义的符号,多层感知机按以下方式计算输出:
激活函数
激活函数 | 公式 | 导数公式 | 优点 | 缺点 |
---|---|---|---|---|
ReLU | 不会同时激活所有神经元,使得计算高效 | x<0,梯度是0,导致神经元死亡,权重无法更新 | ||
Sigmod | 非线性,适合输出层 | 两边太平滑导致学习率低;输出不是以0为中心 | ||
Tanh | 弥补了sigmod很多缺陷 | 两边太平滑会导致学习率低 |
激活函数 | 原公式图像 | 导数公式图像 |
---|---|---|
ReLU | relu.png | relu_grad.png |
Sigmod | sigmod.png | sigmod_grad.png |
Tanh | tanh.png | tanh_grad.png |
激活函数的选择
1.通用情况下选择ReLu函数。注意:ReLu函数只能在隐藏层使用。如果出现死神经元,选择PReLu函数。
2.分类问题中,Sigmod函数及其组合通常效果更好,但应避免梯度消失问题。
网友评论