两种损失函数的性质
异常值
MSE对异常值敏感,因为它的惩罚是平方的,所以异常值的loss会非常大。
MAE对异常之不敏感,
不妨设拟合函数为常数,那么MSE就相当于所有数据的均值(列出loss对c求导即可),而MAE相当于所有数据的中位数,所以会对异常值不敏感。
优化效率
MAE不可导而且所有的导数的绝对值都相同,优化时无法确定更新速度,
MSE可导,有closed-form解,只需要令偏导数为0即可。
如何选择
如果想要检测异常值则使用MSE,如果想学习一个预测模型则建议使用MAE,或者先进行异常值处理再使用MSE