总第241篇/张俊红

在人工智能算法大数据时代,会有各种各样的预测模型,那怎么来评判一个预测模型的准确度呢?这一篇就来聊聊常用的一些评价指标。

所谓的预测准确度其实就是预测值和实际值之间的相近程度,预测值和实际值之间越接近,说明预测准确度越高。我们用y_{hat}表示模型的预测值,y表示模型的真实值。

1.MSE

MSE是Mean Square Error的缩写,表示均方误差,具体公式如下:

该公式表示每个预测值与实际值之间距离的平方和,值越大,表示误差越大。

2.RMSE

RMSE表示均方根误差,是对MSE的开根号,有点类似方差与标准差的区别。人们对均方差和方差一样没有直观的理解,不知道均方差=100时到底是准确度高还是低。所以就有了均方根误差,可以将均方根误差和实际值之间去比较,就可以对预测准确度有个直观的理解。

比如实际值基本在10左右,均方根误差是5,那么就可以感受到,预测值差不多会有一半的误差。而如果要是看均方误差25的话,可能就不太好理解。

3.MAE

MAE是Mean Absolute Error的缩写,表示平均绝对误差,公式如下:

平均绝对误差就是把均方误差中对预测值与实际值之间的差值求平方改成了求绝对值。与RMSE有点类似。

4.MAPE

MAPE是Mean Absolute Percentage Error的缩写,表示平均绝对百分比误差,公式如下:

MAPE对预测的准确度表示就更直观了,有点类似于增幅的概念。用预测值与实际值之间的差去与实际值相比,看其中的占比有多大。

5.Python实现

是不是想问,那上面这些指标用Python怎么计算呢?往下看:

MSE的计算在Sklearn中有现成的函数可以调用,代码如下:

from sklearn import metrics
mse = metrics.mean_squared_error(y_test, y_pre)

RMSE直接对MSE的结果开根号即可,代码如下:

import numpy as np
rmse = np.sqrt(mse)

MAE的计算在Sklearn中也有现成的函数可以调用,代码如下:

from sklearn import metrics
mae = metrics.mean_absolute_error(y_test, y_pre)

MAPE的计算需要我们自己写代码来实现,不过也比较简单,具体代码如下:

def  mape(y_true, y_pred): return np.mean(np.abs((y_pred - y_true) / y_true)) * 100
mape = mape(y_true, y_pred)

以上就是关于模型准确度常用的评价指标以及Python实现代码。

关于模型预测结果好坏的几个评价指标相关推荐

  1. 模型预测精度(数值regression)评价指标 - RMSE, MAE, MAPE Bias哪个指标更好?Forecast KPIs: RMSE, MAE, MAPE Bias

    模型预测精度(数值regression)评价指标 - RMSE, MAE, MAPE & Bias哪个指标更好? 在销量/需求预测时常用的一些模型评价指标,尤其是在supplychain销量预 ...

  2. sklearn模型预测性能评估(二)

    1. 使用sklearn.metric包中的性能度量函数 1.1 分类器性能度量 精度-召回率-F度量 损失函数 接收机操作曲线 1.2 只限于二元单标签分类问题的评估指标 metrics.preci ...

  3. python模型预测_用Python如何进行预测型数据分析

    数据分析一般分为探索性数据分析.验证型数据分析和预测型数据分析.上一篇讲了如何用Python实现验证型数据分析(假设检验),文章链接:转变:用Python如何实现"假设检验"​zh ...

  4. 阿里云ACA 使用时间序列分解模型预测商品销量(一)

    使用时间序列分解模型预测商品销量 1.1实验目的 1.2实验概述 1.3 实验目标 1.4 实验工具 1.5 实验准备 实验资源 ============== 这是一条分割线 ============ ...

  5. 使用时间序列分解模型预测商品销量(手把手教你如何利用阿里云大数据开发套件进行商品销量的预测)

    使用时间序列分解模型预测商品销量 1.1实验目的 1.2实验概述 1.3 实验目标 1.4 实验工具 1.5 实验准备 实验资源 ============== 这是一条分割线 ============ ...

  6. 如何从零开始设计与开发一款通用模型预测调度系统 | 干货分享

    机器学习模型从训练导出到生成环境部署,这个过程中涉及大量工作,会面临着各种问题与挑战,比如不断丰富的业务场景,系统需要负载种类繁多的神经网络,预测任务不均匀等,然而企业拥有的计算资源(如GPU个数)是 ...

  7. 为什么模型复杂度增加时,模型预测的方差会增大,偏差会减小?

    点击上方"小白学视觉",选择加"星标"或"置顶" 重磅干货,第一时间送达 编辑:忆臻 https://www.zhihu.com/quest ...

  8. R语言机器学习Caret包(Caret包是分类和回归训练的简称)、数据划分、数据预处理、模型构建、模型调优、模型评估、多模型对比、模型预测推理

    R语言机器学习Caret包(Caret包是分类和回归训练的简称).数据划分.数据预处理.模型构建.模型调优.模型评估.多模型对比.模型预测推理 目录

  9. R语言编写自定义函数、评估回归模型预测变量的相对重要性(Relative importance)、通过在所有可能的子模型中添加一个预测变量而获得的R方的平均增加、评估预测变量的重要度、并通过点图可视化

    R语言编写自定义函数.评估回归模型预测变量的相对重要性(Relative importance).通过在所有可能的子模型中添加一个预测变量而获得的R方的平均增加.来评估预测变量的重要程度.并通过点图可 ...

最新文章

  1. hadoop源码datanode序列图
  2. “蓝桥杯”软件大赛入门训练4道题
  3. 【吐血整理】面试官问的那些Java原理你都懂吗
  4. 【数据挖掘知识点六】假设检验
  5. caffe编译报错 cudnn.hpp:127:41: error: too few arguments to function ‘cudnnStatus_t cudnnSetPooling2dDe
  6. vue 侦听器侦听对象属性_Spring中的异步和事务性事件侦听器
  7. 当页面上的某个控件回发时,保持滚动条位置的。
  8. prompt 你到底行不行?
  9. hbase1.1.1 连接集群_HBase-1.2.1集群搭建
  10. 只需8招,搞定Pandas数据筛选与查询
  11. Dell笔记本Alienware Command Center监测不到CPU和内存数据
  12. 在openEuler上搭建LFS
  13. 纪念我那悲苦的黑色草莓米糕
  14. 20余年互联网沉浮史:剩者为王
  15. springboot框架图解
  16. html 链接长宽,CSS实现长宽比的几种方案【转载】
  17. python--生成器
  18. oracle如何打开控制文件,看一看oracle控制文件里面的内容
  19. 【力扣周赛#324】6266. 使用质因数之和替换后可以取到的最小值+6267. 添加边使所有节点度数都为偶数+6268. 查询树中环的长度
  20. c# Thread 线程详细讲解

热门文章

  1. js,html条码生成
  2. Activity和Service的生命周期-----Activity学习笔记(一)
  3. 70+漂亮且极具亲和力的导航菜单设计推荐
  4. Thread.currentThread().getContextClassLoader().getResourceAsStream()读取配置文件
  5. 【Java学习笔记之一】java关键字及作用
  6. ES6 异步编程之二:Promise
  7. java中的字符串相关知识整理
  8. 创业三年来的一些感想 - 创业篇1
  9. 路由 交换 网桥 相关转贴
  10. Java多线程学习笔记一