Log-Cosh损失函数
Log-Cosh是应用于回归任务中的另一种损失函数,它比L2损失更平滑。Log-cosh是预测误差的双曲余弦的对数。
优点:
对于较小的X值,log(cosh(x))约等于(x ** 2) / 2;对于较大的X值,则约等于abs(x) - log(2)。这意味着Log-cosh很大程度上工作原理和平均方误差很像,但偶尔出现错的离谱的预测时对它影响又不是很大。它具备了Huber损失函数的所有优点,但不像Huber损失,它在所有地方都二次可微。
但Log-cosh也不是完美无缺。如果始终出现非常大的偏离目标的预测值时,它就会遭受梯度问题。
Log-cosh损失函数的Python代码:
# log cosh 损失
def logcosh(true, pred):
loss = np.log(np.cosh(pred - true))return np.sum(loss)
摘录:https://zhuanlan.zhihu.com/p/39239829