前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >选择正确的错误度量标准:MAPE与sMAPE的优缺点

选择正确的错误度量标准:MAPE与sMAPE的优缺点

作者头像
deephub
发布于 2020-11-09 06:58:56
发布于 2020-11-09 06:58:56
9.8K0
举报
文章被收录于专栏:DeepHub IMBADeepHub IMBA

MSE,RMSE,MAE,MAPE,sMAPE…等等有大量不同的错误度量标准,每个错误度量标准都有其优点和缺点,并且涉及的案例比以前更多。那么,如何决定要为我们的项目使用哪种指标呢?

我相信回答这个问题的关键是了解这些最流行的度量标准的优势和局限性。这样,我们就可以选择最适合手头任务的度量标准。这就是为什么在本文中我将介绍我最近使用的两个度量标准。

MAPE 平均绝对百分比误差(Mean Absolute Percentage Error)

平均绝对百分比误差是用于评估预测性能的最受欢迎的指标之一。由以下公式给出。

其中A_t代表实际值,而F_t是预测值。在这种情况下,如果我们正在做一般回归问题(预测一个人的体重或房屋价格),我们可以将t解释为观察值,或者将其解释为时间序列分析中的时间指数。

该公式通常包括将值乘以100%,以百分比形式表示数字。

优点

  • 以百分比表示,与比例无关,可用于比较不同比例的预测。我们应该记住,虽然MAPE的值可能超过100%。
  • 易于向利益相关者解释。

缺点

  • 当实际值为零时,MAPE会采用未定义的值,例如在需求预测中可能会发生这种情况。此外,当实际值非常接近零时,它将采用极值。
  • MAPE是不对称的,它对负误差(当预测值高于实际值时)要比对正误差施加更大的罚款。解释如下:对于过低的预测,百分比误差不能超过100%。虽然没有太高的预测上限。因此,MAPE将偏向于预测不足而不是过度预测的模型。
  • MAPE假定变量的度量单位具有有意义的零值。因此,尽管预测需求并使用MAPE是有意义的,但当预测温度以摄氏度(不仅是那个)表示时,却没有意义,因为温度具有任意零点。
  • MAPE并非到处都是可微的,在将其用作优化标准时可能会导致问题。

sMAPE 对称平均绝对百分比误差(symmetric Mean Absolute Percentage Error )

在讨论了MAPE之后,我们还将介绍它的建议替代方案之一—对称MAPE。本来可以克服上述不对称性,即预测的无限性高于实际情况。

那里有几种不同版本的sMAPE。另一种流行且普遍接受的方法是在分母的中加上绝对值,以说明当实际值和预测值均等于0时,sMAPE不确定。

优点

  • 以百分比表示。
  • 修复了原始MAPE的缺点-它同时具有下限(0%)和上限(200%)。

缺点

  • 当真实值和预测值都非常接近零时不稳定。发生这种情况时,我们将处理非常接近零的数字除法。
  • sMAPE可以取负值,因此对“绝对百分比误差”的解释可能会产生误导。
  • 0%到200%的范围解释起来不那么直观,因此通常会忽略sMAPE公式的分母中的2除法。
  • 每当实际值或预测值为0时,sMAPE都会自动达到上边界值。
  • 关于有意义的零值,与MAPE相同的假设。
  • sMAPE在修正无边的不对称性的同时,引入了另一种由公式的分母引起的微妙的不对称性。想象两个案例。在第一个中,我们有A = 100和F =120。sMAPE为18.2%。现在是一个非常相似的情况,其中A = 100,F =80。在这里,我们得出的sMAPE为22.2%。

结论

在本文中,我描述了对回归问题进行性能评估的两种流行方法。虽然它可以解决MAPE的一些缺点,但仍然存在一些问题,并且还会创建一些新问题。您可以调查的其他一些指标是:

平均绝对比例误差(MASE)

平均方向精度(MDA)

准确率的对数(预测值与实际值的比率)

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2020-11-04,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 DeepHub IMBA 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
vue 报错-Module not found: Error: Can't resolve 'element-plus' in '
王小婷
2025/05/20
1820
vue 报错-Module not found: Error: Can't resolve 'element-plus' in '
vue3+element-plus+router+vuex+axios从零开始搭建(1)vue3+element-plus
1.下载node, 不要使用最新的版本element-plus组件没支持到最新的版本。
solate
2021/06/21
3.1K0
vue3+element-plus+router+vuex+axios从零开始搭建(1)vue3+element-plus
vue踩坑-Error: Can't resolve 'sass-loader' in 'E:\Element-UI-master\src\components'
好了 完美解决Error: Can't resolve 'sass-loader' in 'E:\Element-UI-master\src\components'的问题了。
王小婷
2019/08/23
6.5K0
vue踩坑-Error: Can't resolve 'sass-loader' in 'E:\Element-UI-master\src\components'
vue项目安装element报错:npm error code ERESOLVE npm error ERESOLVE unable to resolve de
这个错误是由 依赖冲突 引起的,特别是在你的项目中使用了 vue@3.5.13 版本,但你同时安装了 element-ui@2.15.14,该版本的 element-ui 依赖于 vue@^2.5.17。而 element-ui 仅支持 Vue 2.x 版本,所以导致了这个依赖冲突。
肥晨
2024/12/06
6610
vue 报错:Module not found:Error:Can't resolve 'vuex' in XXX
在vue的组件里面 引用import { useStore } from 'vuex'的时候 出现了这样的报错
王小婷
2022/09/28
1.7K0
vue  报错:Module  not found:Error:Can't resolve 'vuex' in XXX
Module not found: Error: Can't resolve '@/components/achievement/echartsPage' in '/app/src/views/ach
cat src/views/achievement/CategoryDepart.vue
程裕强
2020/03/18
2.5K0
Vue3 + Vite + TypeScript 项目搭建总结
node 版本>=12.0.0,这边建议直接更新到 16+(我本地的是最新的 v20.11.1)
zz_jesse
2024/05/02
6100
Vue3 + Vite + TypeScript 项目搭建总结
Syntax Error: Error: Cannot find module ‘node-sass‘
启动vue项目的时候,会出现这样的报错 Syntax Error: Error: Cannot find module ‘node-sass’
王小婷
2025/05/19
950
Syntax Error: Error: Cannot find module ‘node-sass‘
mac下使用vue create 项目名称 创建项目后无法运行ERROR  Error: Cannot find module 'vue-template-compiler/package.json'
promote:vue_pro wangxinqiang$ npm run serve
botkenni
2019/09/03
6.1K0
mac下使用vue create 项目名称 创建项目后无法运行ERROR  Error: Cannot find module 'vue-template-compiler/package.json'
Vue2.0 新手完全填坑攻略——从环境搭建到发布
Homebrew 1.0.6(Mac)、Node.js 6.7.0、npm 3.10.3、webpack 1.13.2、vue-cli 2.4.0、Atom 1.10.2
onety码生
2018/11/21
1.8K0
mongodb踩坑-Error: Cannot find module 'mongoose'
在输入命令npm start启动运行项目的时候,有时候会遇到这样的错误Error: Cannot find module 'mongoose',缺少mongoose这个模块。
王小婷
2020/12/01
8550
node环境之Error: Cannot find module ‘chalk’ 报错无法解决的问题—-网上说让你npm install chalk 基本是没有
node环境之Error: Cannot find module ‘chalk’ 报错无法解决的问题—-网上说让你npm install chalk 基本是没有用的-优雅草央千澈解决方案
卓伊凡
2024/12/31
4820
Vue 2 教程菜鸟
遇到:Module build failed: Error: Cannot find module '模块名'
zhangjiqun
2024/12/16
1500
Vue 2 教程菜鸟
如何解决 Module build failed: Error: Cannot find module ‘node-sass‘ 报错问题
在进行前端开发时,特别是使用 Webpack 或其他构建工具时,我们可能会遇到如下的错误信息:
猫头虎
2025/03/31
9040
【实战技巧】Vue3+Vite工程常用工具的接入方法
Vue3 正式版已经发布一段时间了,和 Vue3 更配的工具 Vite 也已经投入使用了,本文整理了如何将一些常用的工具整合到项目中。
一尾流莺
2022/12/10
2.1K0
阅读源码 -【vite项目架构】
为了省事,我们可以在项目架构时就把一切都准备好,虽然配置起来有点烦人,但是这样写项目的时候真的很方便很丝滑。
y191024
2023/08/22
5110
阅读源码 -【vite项目架构】
Vue3 全家桶 + Element Plus + Vite + TypeScript + Eslint 项目配置最佳实践
而且 Element Plus + Vite 也出了一段时间了,是时候该上手体验分享一波了。
Sneaker-前端公虾米
2021/06/21
2.6K1
Vue3 全家桶 + Element Plus + Vite + TypeScript + Eslint 项目配置最佳实践
umi3升级umi4报错问题汇总,附解决方法
删除 package.json 中的 react-dev-inspector ,从新 yarn 一下:
德顺
2023/08/25
4.6K0
Vue3+Element-plus前端学习笔记-巨长版
「写好的代码」:Lvan826199/mwj-vue3-project: vue3-vite构建的一个前端模版 (github.com)
梦无矶小仔
2024/03/25
8960
Vue3+Element-plus前端学习笔记-巨长版
Vue + TypeScript + Element 项目实战及踩坑记
本文讲解如何在 Vue 项目中使用 TypeScript 来搭建并开发项目,并在此过程中踩过的坑 。
夜尽天明
2019/06/03
4.7K0
推荐阅读
相关推荐
vue 报错-Module not found: Error: Can't resolve 'element-plus' in '
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档