1、损失函数主要分为回归损失函数和分类损失函数。
回归:
(1)L2损失(均方误差)MSE
(2)L1损失(平均绝对值误差)MAE---考虑方向---->平均偏差MBE
(3)Huber损失(平滑的平均绝对误差)
(4)Log-Cosh损失
(5)分位数损失。更关注区间预测
分类:
(1)对数损失函数
(2)Focal loss.解决one-stage中正负样本比例失衡
(3)相对熵(relative entropy)
(4)指数损失
(5)合页损失
(6)0-1损失
(7)Logistic loss
详情可见:
https://www.jiqizhixin.com/articles/2018-06-21-3
https://www.cnblogs.com/massquantity/p/8964029.html
2、激活函数
(1)sigmoid函数。缺陷:软饱和性--->梯度消失;偏置现象(输出均值不为0)
(2)tanh函数。收敛速度比sigmoid函数快
(3)Relu函数----改进--->Leaky Relu
优点:相比于sigmoid,计算量小;不会出现梯度消失的情况;一部分输出为0-->网络稀疏性-->减少参数相互依存-->缓解过拟合。
缺陷:偏移;神经元死亡现象。
(4)Elu函数
右侧线性部分使得ELU能够缓解梯度消失,而左侧软饱能够让ELU对输入变化或噪声更鲁棒。
ELU的输出均值接近于零,所以收敛速度更快。
在 ImageNet上,不加 Batch Normalization 30 层以上的 ReLU 网络会无法收敛,PReLU网络在MSRA的Fan-in (caffe )初始化下会发散,而 ELU 网络在Fan-in/Fan-out下都能收敛。
(5)softplus函数
可以看作Relu的平滑。
(6)恒同映射
(7)Maxout
(8)Leaky Relu函数
3、正则化(降低模型复杂度,防止过拟合)
(1)L1范数: 原目标函数+所有特征系数绝对值的和。更适用于特征选择
(2)L2范数:原目标函数+所有特征系数的平方和。更适用于防止模型过拟合
(3)训练集增强:小幅旋转、平移、放大、缩小、给图片加波动
(4)dropout
(5)earlystopping
梯度爆炸解决方法:
Smooth L1损失替换L2损失;减少学习率;使用Relu函数;使用正则化,惩罚较大权重。