位置: IT常识 - 正文

机器学习中的预测评价指标MSE、RMSE、MAE、MAPE、SMAPE

编辑:rootadmin
机器学习中的预测评价指标MSE、RMSE、MAE、MAPE、SMAPE

推荐整理分享机器学习中的预测评价指标MSE、RMSE、MAE、MAPE、SMAPE,希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:,内容如对您有帮助,希望把文章链接给更多的朋友!

💖作者简介:大家好,我是车神哥,府学路18号的车神🥇 ⚡About—>车神:从寝室到实验室最快3分钟,最慢3分半(那半分钟其实是等红绿灯) 📝个人主页:应无所住而生其心的博客_府学路18号车神_CSDN博客 🎉点赞➕评论➕收藏 == 养成习惯(一键三连)😋 📖本系列主要以学习Go语言打怪升级为标准,实现自我能力的提升为目标⚡ ⚡希望大家多多支持🤗~一起加油 😁

专栏

《Golang · 过关斩将》

《Neural Network》

《LeetCode天梯》

《Algorithm》

《Python》

《web》

预测评价指标背景均方误差(MSE)均方根误差(RMSE)平均绝对误差(MAE)平均绝对百分比误差(MAPE)对称平均绝对百分比误差(SMAPE)

最近论文在写关于极限学习机ELM的相关内容,在机器学习中有很重要的一点就是评级指标,这是判断你的算法性能很重要的、很有必要的一个评判标准,下面我们就一起来看看有哪些评价指标吧!~

背景

机器学习中,一般是对输出值,具体也就是对预测值 Y^\hat YY 和真实值 YYY 进行评价,利用以下的评价指标来表现预测和真实之间的差距,误差越小说明效果越好,性能越好!~

这里我们假设: Y^={y^1,y^2,...,y^n}−−预测值\hat{Y}=\{\hat{y}_1,\hat{y}_2,...,\hat{y}_n\}--预测值Y={y​1​,y​2​,...,y​n​}−−预测值

Y={y1,y2,...,yn}−−预测值{Y}=\{{y}_1,{y}_2,...,{y}_n\}--预测值Y={y1​,y2​,...,yn​}−−预测值

均方误差(MSE)

均方误差(Mean Square Error,MSE),反映估计量与被估计量之间差异程度的一种度量。设t是根据子样确定的总体参数θ的一个估计量,(θ-t)2的数学期望,称为估计量t的均方误差。它等于σ2+b2,其中σ2与b分别是t的方差与偏倚。

MSE

MSE计算公式: MSE=1n∑i=1n(y^i−yi)2{MSE}=\frac{1}{n} \sum_{i=1}^{n}\left(\hat{y}_{i}-y_{i}\right)^{2}MSE=n1​i=1∑n​(y​i​−yi​)2

解释:

范围[0,+∞),当预测值与真实值完全吻合时等于0,即完美模型;误差越大,该值越大。 总而言之,值越小,机器学习网络模型越精确,相反,则越差。

均方根误差(RMSE)

均方根误差(Root Mean Square Error,RMSE),从名称来看,我们都能猜得到是什么意思。多了一个根,这个“根”的意思顾名思义,就只是加了个根号。均方根误差是预测值与真实值偏差的平方与观测次数n比值的平方根,在实际测量中,观测次数n总是有限的,真值只能用最可信赖(最佳)值来代替。

RMSE的计算公式: RMSE=1n∑i=1n(y^i−yi)2RMSE=\sqrt{\frac{1}{n} \sum_{i=1}^{n}\left(\hat{y}_{i}-y_{i}\right)^{2}}RMSE=n1​i=1∑n​(y​i​−yi​)2​

解释:

它的计算方法是先平方、再平均、然后开方。均方根误差是用来衡量观测值同真值之间的偏差。和MSE同理,当我们的预测值和真实值之间的差距越小,模型精度越高;相反,则越低。

平均绝对误差(MAE)机器学习中的预测评价指标MSE、RMSE、MAE、MAPE、SMAPE

平均绝对误差(Mean Absolute Error,MAE),绝对偏差平均值即平均偏差,指各次测量值的绝对偏差绝对值的平均值。平均绝对误差可以避免误差相互抵消的问题,因而可以准确反映实际预测误差的大小。

MAE

MAE计算公式: MAE=1n∑i=1n∣y^i−yi∣M A E=\frac{1}{n} \sum_{i=1}^{n}\left|\hat{y}_{i}-y_{i}\right|MAE=n1​i=1∑n​∣y​i​−yi​∣

解释:

范围[0,+∞),和MSE、RMSE类似,当预测值和真实值的差距越小,则模型越好;相反则越差。

平均绝对百分比误差(MAPE)

平均绝对百分比误差(Mean Absolute Percentage Error,MAPE),平均绝对百分比误差之所以可以描述准确度是因为平均绝对百分比误差本身常用于衡量预测准确性的统计指标,如时间序列的预测。

计算公式: MAPE=100%n∑i=1n∣y^i−yiyi∣M A P E=\frac{100 \%}{n} \sum_{i=1}^{n}\left|\frac{\hat{y}_{i}-y_{i}}{y_{i}}\right|MAPE=n100%​i=1∑n​∣∣∣∣​yi​y​i​−yi​​∣∣∣∣​

解释:

和上面的MAE相比,在预测值和真实值的差值下面分母多了一项,除以真实值。 范围[0,+∞),MAPE 为0%表示完美模型,MAPE 大于 100 %则表示劣质模型。

需要注意的一点!!!

当真实值有数据等于0时,存在分母0除问题,该公式不可用!

对称平均绝对百分比误差(SMAPE)

对称平均绝对百分比误差(Symmetric Mean Absolute Percentage Error,SMAPE)

SMAPE计算公式为: SMAPE=100%n∑i=1n∣y^i−yi∣(∣y^i∣+∣yi∣)/2S M A P E=\frac{100 \%}{n} \sum_{i=1}^{n} \frac{\left|\hat{y}_{i}-y_{i}\right|}{\left(\left|\hat{y}_{i}\right|+\left|y_{i}\right|\right) / 2}SMAPE=n100%​i=1∑n​(∣y​i​∣+∣yi​∣)/2∣y​i​−yi​∣​

解释:

与MAPE相比,加了对称,其实就是将分母变为了真实值和预测值的中值。和MAPE的用法一样,范围[0,+∞),MAPE 为0%表示完美模型,MAPE 大于 100 %则表示劣质模型。

同样,值得注意的一点!!!

当真实值有数据等于0,而预测值也等于0时,存在分母0除问题,该公式不可用!

这里也给出一下Python代码:

#!/usr/bin/env python# -*- coding: utf-8 -*-# @Time : 2021/12/21 15:05# @Author : 府学路18号车神# @Email :yurz_control@163.com# @File : Evaluation_index.pyimport numpy as npfrom sklearn import metrics# 将sklearn的也封装一下吧# MSEdef mse(y_true, y_pred): res_mse = metrics.mean_squared_error(y_true, y_pred) return res_mse# RMSEdef rmse(y_true, y_pred): res_rmse = np.sqrt(metrics.mean_squared_error(y_true, y_pred)) return res_rmse# MAEdef mae(y_true, y_pred): res_mae = metrics.mean_absolute_error(y_true, y_pred) return res_mae# sklearn的库中没有MAPE和SMAPE,下面根据公式给出算法实现# MAPEdef mape(y_true, y_pred): res_mape = np.mean(np.abs((y_pred - y_true) / y_true)) * 100 return res_mape# SMAPEdef smape(y_true, y_pred): res_smape = 2.0 * np.mean(np.abs(y_pred - y_true) / (np.abs(y_pred) + np.abs(y_true))) * 100 return res_smape# mainif __name__=='__main__': # 由于没有用模型,这里就随机出几个值来测试下吧 y_true = np.random.random(10) print(y_true) y_pred = np.random.random(10) print(y_pred) # MSE print(mse(y_true, y_pred)) # RMSE print(rmse(y_true, y_pred)) # MAE print(mae(y_true, y_pred)) # MAPE print(mape(y_true, y_pred)) # 得到的值直接看成百分比即可 # SMAPE print(smape(y_true, y_pred)) # 得到的值直接看成百分比即可

❤坚持读Paper,坚持做笔记,坚持学习,坚持刷力扣LeetCode❤!!! 坚持刷题!!!打天梯!!! ⚡To Be No.1

⚡⚡哈哈哈哈

⚡创作不易⚡,过路能❤关注、收藏、点个赞❤三连就最好不过了

ღ( ´・ᴗ・` )

『 只是相谈就会开心起来,沉浸在温柔的眼神当中,竭尽全力的思念,悄悄地奉献。 』

本文链接地址:https://www.jiuchutong.com/zhishi/298468.html 转载请保留说明!

上一篇:Vue自定义指令(含常用8种指令封装)(vue自定义指令生命周期)

下一篇:NLP进阶,Bert+BiLSTM情感分析实战(nlp baseline)

  • 哈罗单车忘记锁了怎么办(哈罗单车忘记锁了怎么关)

    哈罗单车忘记锁了怎么办(哈罗单车忘记锁了怎么关)

  • 电脑平车断面线怎么调视频(电脑平车断面线怎么调)

    电脑平车断面线怎么调视频(电脑平车断面线怎么调)

  • 荣耀30pro和v30pro区别(荣耀30pro和v30pro选哪个)

    荣耀30pro和v30pro区别(荣耀30pro和v30pro选哪个)

  • 微信限额吗(两个微信号一个身份证微信限额吗)

    微信限额吗(两个微信号一个身份证微信限额吗)

  • blued验证码怎么收不到(收到blued验证码的一定是自己注册的吗)

    blued验证码怎么收不到(收到blued验证码的一定是自己注册的吗)

  • 惠普1020硒鼓型号(惠普1020硒鼓型号是2616e吗)

    惠普1020硒鼓型号(惠普1020硒鼓型号是2616e吗)

  • 剪切板是什么的临时储存区(剪切板是什么的一个临时储存区)

    剪切板是什么的临时储存区(剪切板是什么的一个临时储存区)

  • 退出word的正确方式(退出word的正确操作方法是选择文件菜单单击关闭对不对)

    退出word的正确方式(退出word的正确操作方法是选择文件菜单单击关闭对不对)

  • 网络光信号一直闪红灯(网络光信号一直亮红灯是怎么回事)

    网络光信号一直闪红灯(网络光信号一直亮红灯是怎么回事)

  • 隐藏列如何显示出来(隐藏列在哪里)

    隐藏列如何显示出来(隐藏列在哪里)

  • 计算机中运算器的作用(计算机中运算器和控制器合称什么)

    计算机中运算器的作用(计算机中运算器和控制器合称什么)

  • 魅族怎样录制手机屏幕视频(魅族怎样录屏)

    魅族怎样录制手机屏幕视频(魅族怎样录屏)

  • vivo有没有5g手机(vivo有5g吗)

    vivo有没有5g手机(vivo有5g吗)

  • 苹果x原彩显示要不要开(苹果x原彩显示不见了什么情况)

    苹果x原彩显示要不要开(苹果x原彩显示不见了什么情况)

  • 小米手环4防水吗(小米手环4防水吗洗澡时能佩戴吗)

    小米手环4防水吗(小米手环4防水吗洗澡时能佩戴吗)

  • 荣耀20是否支持防水(荣耀20是否支持nfc)

    荣耀20是否支持防水(荣耀20是否支持nfc)

  • 相互宝分摊怎么退出(相互宝分摊怎么关闭)

    相互宝分摊怎么退出(相互宝分摊怎么关闭)

  • 蚂蚁森林加速器快多久(蚂蚁森林加速器能加速多久)

    蚂蚁森林加速器快多久(蚂蚁森林加速器能加速多久)

  • 华为note3怎么清理后台程序(华为手机3清)

    华为note3怎么清理后台程序(华为手机3清)

  • vivox27闪充开关在哪里(vivox27闪充界面)

    vivox27闪充开关在哪里(vivox27闪充界面)

  • 拼多多砍价怎么获得小刀(拼多多砍价怎么找不到了)

    拼多多砍价怎么获得小刀(拼多多砍价怎么找不到了)

  • qq回收站能恢复视频吗(qq回收站恢复3年前照片)

    qq回收站能恢复视频吗(qq回收站恢复3年前照片)

  • 网上办手机卡怎么办理(网上办手机卡怎么办)

    网上办手机卡怎么办理(网上办手机卡怎么办)

  • 360tray.exe是什么进程 360tray可以关闭吗(360tray.exe损坏文件怎么修复)

    360tray.exe是什么进程 360tray可以关闭吗(360tray.exe损坏文件怎么修复)

  • phpcms如何自定义表单(phpcms模板制作教程)

    phpcms如何自定义表单(phpcms模板制作教程)

  • Scala-泛型(scala实例)

    Scala-泛型(scala实例)

  • 城镇土地使用税纳税义务发生时间
  • 疫情期间公司买水
  • 个体户每月开票超3万
  • 收到外境来电
  • 哪些发票能做公章
  • 采购商品成本包括
  • 前期差错会计处理知乎
  • 计提递延所得税资产
  • 再保后赔款支出
  • 留抵税额注销时,会计分录
  • 如何知道企业交了多少税
  • 房产税的计税依据包含增值税吗
  • 增值税发票单位可以不填吗
  • 增值税专用发票和普通发票的区别
  • 股权激励会计处理分录和企业所得税
  • 公司没有残疾人需要缴纳残保金吗
  • 企业分立账务处理办法
  • 存商品入成原材料怎么改?
  • 出口0税率是免抵退还是免税
  • 已签收的电子银行承兑汇票截图给别人有风险吗
  • 收到汇算清缴后怎么处理
  • 报销货物运输费需要什么凭证
  • 固定资产处置的三种情况
  • 资本化的后续支出包括哪些项目
  • echarts图表绘制步骤
  • vue ref获取元素高度
  • 安装exclipse
  • vue的路由器
  • 增值税怎样交
  • 取得了水电费发票怎么做
  • 开红字信息表后的账务处理
  • 预收账款包括哪些内容具体明细
  • 退回发票金额是什么意思
  • 购买备用品会计分录
  • python PyQt如何使用资源
  • 揭秘蟹卡骗局
  • 小企业长期债券投资
  • 画完图不给钱怎么办
  • 同一控制下长期股权投资的入账价值
  • 销项负数发票如何作废
  • 报表的应付账款怎么算
  • 开票收入摘要怎么写
  • 收购企业如何做账务处理
  • 工程服务预交税怎么算
  • 付款退回在现金里怎么查
  • 财务费用在贷方负数表示什么
  • 企业利润总额计算例题及答案
  • k3凭证模板
  • 工程不交税
  • 普通发票找不到了可以重开吗
  • 一级资本充足率不得低于
  • 如何启动vmware authorization service
  • windows软件授权服务报告无法激活计算机
  • win2003怎么安装
  • centos7光盘挂载方法
  • win7系统桌面快捷键
  • ubuntu20.0安装
  • linux php教程
  • centos搭建服务器
  • 无法启动.dll
  • win10没有win8好用
  • [置顶] 此外,车牌号:458143(懂得都懂[吃瓜])
  • python输出1-100
  • js 验证数字
  • retrofit提交表单
  • unity摄像机在哪里
  • unity+
  • bash: /usr/bin/autocrorder: /usr/bin/python^M: bad interpreter: No such file or directory
  • javascript教程完整版
  • shell脚本实际运用
  • JavaScript中的复杂数据类型又称为
  • javascript组成
  • 详解各种汽油一吨等于多少升
  • 税务局解决户口吗
  • 简述进料加工对中国的意义
  • 伙食补助和伙食费
  • 税务部门政务公开
  • 满五唯一是指省内还是本市
  • 如何落实请示汇报
  • 软件企业专项审计
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设