我正在尝试使用SciKit Learn的SVM模块训练模型。对于计分,我找不到mean_absolute_error
(MAE),但是确实存在negative_mean_absolute_error
(NMAE)。这两个指标之间有什么区别?可以说,对于2个模型,我得到以下结果:
model 1 (NMAE = -2.6), model 2(NMAE = -3.0)
哪种模式更好?是1型吗?
此外,负数与正数相比如何?说以下话:
model 1 (NMAE = -1.7), model 2(MAE = 1.4)
这里,哪种型号更好?
答案 0 :(得分:3)
顾名思义,负MAE只是MAE的负数,根据定义,MAE(MAE)是正数。而且由于MAE是一个 error 度量标准,即越低,负MAE则相反:1
的值比{{ 1}}。
只需删除负号并将其视为MAE值(可以说它还会回答您的第二个问题)。
请记住,MAE始终在scikit-learn中作为通用指标(https://github.com/fnbk/world)提供。
答案 1 :(得分:0)
我想在这里补充一点,当您通过GridSearchCV()比较多种算法时,此负错误也有助于找到最佳算法。
这是因为经过训练后,GridSearchCV()对所有算法(估计器)进行排名,并告诉您哪种算法最好。现在,当您使用误差函数时,sklearn将为得分较高的估计器排名较高,而对于MAE(以及MSE和其他一些情况),情况并非如此。
为解决这个问题,库会翻转错误的迹象,因此,最高的MAE排名最低,反之亦然。
因此回答您的问题:-2.6优于-3.0,因为实际的MAE分别为2.6和3.0。