请问MAE和MSE的关系,会出现反相关的现象吗,也就是一个下降,一个上升?

您所在的位置:网站首页 means和mean有关系吗 请问MAE和MSE的关系,会出现反相关的现象吗,也就是一个下降,一个上升?

请问MAE和MSE的关系,会出现反相关的现象吗,也就是一个下降,一个上升?

2023-01-22 03:04| 来源: 网络整理| 查看: 265

首先给出答案,那就是你所描述的情况是可能出现的!下面具体说一下:

首先统一一下说法,由于你调用的是mean_square_error,所以我后面一直称为MSE,然后将mean_absolute_error称为MAE。MSE被叫做均方误差,也有叫残差平方和的。MAE为绝对误差。

假设想要预测的变量为 Y=\left( y_1,y_2,...,y_n \right) ,而预测到的值为 \hat{Y}=\left( \hat{y_1},\hat{y_2},...,\hat{y_n} \right) ,MSE及MAE的定义分别如下:

MSE=\frac{1}{n}\sum_{i=1}^{n}{(y_i-\hat{y_i})^2} , MAE=\frac{1}{n}\sum_{i=1}^{n}{|y_i-\hat{y_i}|}

上面的MSE和MAE分别可以对应到向量的2-范数和1-范数。若是分别使用参数向量的2-范数和1-范数作为线性回归损失函数的正则项,那么就可以分别得到Ridge回归及LASSO回归。当然这是题外话!

下面举一个例子来说明会出现你的情况:

假如想要预测的变量的真实值为 Y=\left( 1, 1, 2, 1 \right) , 而当前的预测值为 \hat{Y}=\left( 0.6, 0.6, 1.6, 0.6 \right) ,我们可以简单计算出此时的MSE和MAE分别为: MSE=\frac{1}{4}[(1-0.6)^2+(1-0.6)^2+(2-1.6)^2+(1-0.6)^2]=0.16MAE=\frac{1}{4}(|1-0.6|+|1-0.6|+|2-1.6|+|1-0.6|)=0.4

然后对上面的预测值进行调整,可能由于数据噪音或者由于学习率(learning rate)设置过大等原因导致MSE发散,举个例子,比如调整后新预测的值为 \hat{Y}=\left( 1, 1, 1, 1 \right) ,此时我们重新计算MSE和MAE:

MSE=\frac{1}{4}[(1-1)^2+(1-1)^2+(2-1)^2+(1-1)^2)=0.25

MAE=\frac{1}{4}(|1-1|+|1-1|+|2-1|+|1-1|)=0.25

显然MSE从0.16变为了0.25是在增加的,而MAE从0.4变为了0.25,是在减少的。这里的示例和你出现的情况一致。

具体以上面哪个为标准需要根据你的需要以及你的需求来决定。上面在你设置MSE为损失函数然后MSE还在升高,你可以尝试降低learning rate,增加训练数据量等方法来尝试解决一下。

-------------

P.S. 1. 问题标题中问的是RMSE和MSE的关系,根据问题的具体描述,题主应该是想说MSE和MAE,所以直接回答的MSE和MAE。感谢wenlin和梁赋航的评论!

P.S. 2. 最初MSE和MAE公式有些问题,已经修正,感谢元峰提醒!

P.S. 3. 关于Ridge和LASSO的表述有些错误,已经修正。感谢三笠 阿克曼指出!



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3