【科研】常用的实验结果评价指标(2) —— MAE 是什么? !

了解MAE

提示:先说概念,后续再陆续上代码


文章目录

  • 了解MAE
  • 前言
  • 一、MAE 基本概念
    • 1. MAE 是什么?
    • 2. MAE 的起源
    • 3. MAE 的计算公式
  • 二、MAE的适用场景是什么?
  • 三、MAE 的劣势,或 不适用于那些场景或者数据?
  • 四、MAE的取值特点(取值范围)


前言

各类论文的实验结果中经常会有MAE作为评价指标,本篇就是为了搞清楚MAE究竟是什么,什么时候能用,什么时候不能用。


一、MAE 基本概念

1. MAE 是什么?

MAE 是 “平均绝对误差”(Mean Absolute Error)的缩写,它是用来衡量预测模型或者估计方法在统计学中准确度的指标。MAE 反映了预测值与真实值之间的绝对误差的平均水平。

2. MAE 的起源

MAE 的概念和使用可以追溯到统计学和数理统计的早期发展。尽管难以准确指出它的“起源”,因为统计学的发展是一个逐步积累和演化的过程,但可以确定的是,MAE 作为误差度量的一种形式,在20世纪初的统计学和预测分析中已经开始使用。

在统计学的历史中,人们长期以来一直在探索和发展不同的误差度量方法来提高预测模型的准确性和可靠性。MAE 作为其中一种简单直观的方法,因其计算简单和对异常值具有较好的抵抗性而被广泛应用于多个领域,包括但不限于经济学、气象学、工程学等。

MAE 的使用特别适合那些需要等重视所有错误大小的场合,因为与平均平方误差(MSE)相比,MAE 不会将较大的误差的影响放大,从而提供了一个更均衡的误差评估。这种特性使得 MAE 在实际应用中非常有用,特别是在预测误差的大小不应被过度放大时。

3. MAE 的计算公式

MAE 的计算公式可以表示为:

在这里插入图片描述

其中

在这里插入图片描述

MAE 的值越小,表示模型的预测准确性越高。它是一个很直观的衡量误差的方式,因为它平等地考虑了所有的单个预测误差的大小,而不考虑误差的方向。

二、MAE的适用场景是什么?

作为一个常用的统计度量方法,MAE适用于多种不同的场景,主要特点是简单、直观且对异常值具有较好的鲁棒性。以下是一些MAE特别适用的场景:

  1. 异常值敏感度较低的应用:MAE对异常值的敏感度较平均平方误差(MSE)来说较低,因此在数据中可能包含一些异常值或离群值的情况下,使用MAE作为评估标准可以得到更稳定的误差评估。

  2. 需要等权重评估误差的场景:MAE为所有误差提供相同的权重(不像MSE那样对较大的误差赋予更高的权重),这使得在需要公平评估每个预测错误时,MAE成为一个更合适的选择。

  3. 简单性和可解释性重要的领域:由于MAE的计算和解释都相对简单,它在需要向非专业人士解释模型性能的领域(如商业分析和社会科学)中非常有用。

  4. 实时系统和快速反馈环境:MAE的计算效率高,适合在需要快速反馈的实时系统中使用,比如实时交易系统或在线学习环境。

  5. 多领域的预测和回归分析:无论是金融市场预测、气象预报、能源消耗预测还是医疗影像分析,MAE因其直观性和实用性,都是评估预测精度的常用工具。

总的来说,MAE是一个广泛应用的误差度量方法,适用于各种需要准确反映预测误差且对异常值有一定抵抗力的应用场景。

三、MAE 的劣势,或 不适用于那些场景或者数据?

虽然平均绝对误差(MAE, Mean Absolute Error)在很多场景中都是一个非常有用的误差度量方法,但它也存在一些局限性,使其在某些情况下可能不是最佳选择。以下是MAE不太适用的一些场景或数据类型:

  1. 对大误差敏感的场景:MAE对所有的误差都给予相同的权重,这意味着它对大误差的惩罚不如平均平方误差(MSE)严格。因此,在一些对大误差特别敏感的应用中,如安全关键系统(例如飞行控制系统),使用MAE可能无法有效地捕捉和惩罚这些大的预测错误。

  2. 需要加权误差的情况:在一些特定的应用中,可能需要对不同类型的误差按不同的重要性进行加权。例如,在经济预测中,对经济衰退期的预测错误可能比繁荣期的预测错误更加严重。在这种情况下,MAE由于无法直接实现误差加权,可能不是最佳选择。

  3. 分布极度不平衡的数据:在处理极端不平衡的数据集时,MAE可能无法提供充分的信息,尤其是当数据中的一个类别比其他类别频繁得多时。在这种情况下,MAE可能过于简化了误差的表现,不能完全捕捉数据的特性。

  4. 优化算法中的使用限制:在使用基于梯度的优化算法时,MAE的梯度相对于MSE来说是常数(不考虑误差的大小),这可能会导致优化过程中遇到一些问题,如收敛速度慢,尤其是在误差较大时。

  5. 分析需要强调异常值的情况:在需要识别或强调异常值的分析中,MAE由于对异常值的“容忍”性,可能掩盖了重要的异常现象。在这种情况下,可能需要选择更敏感于异常值的误差度量方法,如MSE或者其他基于异常值检测的统计方法。

综上所述,虽然MAE是一个广泛使用的误差度量工具,具有计算简单和直观的优点,但在需要对大误差敏感、进行错误加权、处理极不平衡数据或强调异常值的情况下,可能需要考虑其他更合适的度量方法。

四、MAE的取值特点(取值范围)

平均绝对误差(MAE, Mean Absolute Error)的取值具有一些特点,这些特点使其在统计分析和预测模型评估中非常有用:

  1. 非负值:MAE的取值范围是从0到无穷大。MAE是实际值与预测值之差的绝对值的平均,因此它永远是非负的。MAE等于0表示完美预测,即所有预测值都完全等于实际值。

  2. 量纲一致性:MAE的单位与被预测数据的单位相同。例如,如果你在预测消费者支出(以美元计),MAE的单位也将是美元。这使得MAE易于理解和解释。

  3. 易于理解和解释:由于MAE是每个误差的平均绝对值,它提供了一个直观的度量,显示平均每个预测的误差大小。这使得非技术用户也能容易地理解模型性能。

  4. 对所有错误相等敏感:MAE给予所有的预测误差相同的权重,无论它们的大小。这与平均平方误差(MSE)不同,后者对较大的误差给予更高的惩罚(因为误差被平方)。因此,MAE对异常值的影响较小,更加稳健。

  5. 中位数的最优性:在统计学中,MAE的一个有趣特点是它的最小化等同于找到一组数据的中位数,而不是均值。这意味着当使用MAE作为损失函数时,它倾向于产生对抗异常值的鲁棒预测。

这些特点使得MAE成为在各种应用中评估预测准确性的一个非常实用和受欢迎的工具,特别是在需要一个直观、易解释和对异常值相对稳健的误差度量时。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/bicheng/12301.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Linux修炼之路之yum和vim编辑器

目录 一:Linux软件包管理器yum 二:vim编辑器 vim的三种模式及互相转换 命令模式 底行模式 三:普通用户的sudo指令(修改信任名单) 接下来的日子会顺顺利利,万事胜意,生活明朗-----------林辞忧 一&#xff1a…

c++编程(11)——string类的模拟实现

欢迎来到博主的专栏——c编程 博主ID:代码小豪 文章目录 前言string类的模拟实现string的成员对象构造、赋值、析构访问成员对象的接口访问字符串中的元素迭代器对字符序列的插入、删除元素操作mystring类的相关操作 mystring类的所有模拟实现以及测试案例 前言 本…

【已解决】 ‘Conv2d’ object has no attribute ‘register_full_backward_hook’

😎 作者介绍:我是程序员行者孙,一个热爱分享技术的制能工人。计算机本硕,人工制能研究生。公众号:AI Sun,视频号:AI-行者Sun 🎈 本文专栏:本文收录于《AI实战中的各种bug…

(四十二)第 6 章 树和二叉树(树的二叉链表(孩子-兄弟)存储)

1. 背景说明 2. 示例代码 1) errorRecord.h // 记录错误宏定义头文件#ifndef ERROR_RECORD_H #define ERROR_RECORD_H#include <stdio.h> #include <string.h> #include <stdint.h>// 从文件路径中提取文件名 #define FILE_NAME(X) strrchr(X, \\) ? strrch…

centos7中如何优雅的动态切换jdk版本?

在 CentOS 7 中动态切换 JDK 版本可以通过多种方法实现&#xff0c;其中最常见的方法是使用 alternatives 命令&#xff0c;这是 CentOS 和其他基于 Red Hat 的系统中用于管理多个软件版本的标准工具。下面我会详细介绍如何使用 alternatives 命令来切换 JDK 版本。 步骤 1: 安…

【JS面试题】this

this取什么值&#xff0c;是在函数执行的时候确定的&#xff0c;不是在函数定义的时候确定的&#xff01; this的6种使用场景&#xff1a; ① 在普通函数中使用&#xff1a;返回window对象 ② 使用call apply bind 调用&#xff1a;绑定的是哪个对象就返回哪个对象 ③ 在对象…

怎样计算Excel一列数值中十位数为5的个数?

有一列数字&#xff0c;可能正数也可能是负数&#xff0c;有可能有小数&#xff0c;要怎么计算这列数字中十位数为5的数量有多少个&#xff1f; 一、按示例情况&#xff0c;数字均为整数 公式如下&#xff1a; SUM(--(MID(A1:A6,LEN(A1:A6)-1,1)"5")) 数组公式&a…

一台linux通过另一台linux访问互联网-TinyProxy

参考&#xff1a; https://blog.csdn.net/weixin_41831919/article/details/113061317https://www.yuncongz.com/archives/1.htmlhttps://blog.csdn.net/aoc68397/article/details/101893369 环境&#xff1a;ubuntu 18.04 机器1: IP 219.216.65.252 (可以访问外网) 机器2: IP…

【C++语言】动态内存管理

文章目录 前言内存管理数据存储位置C语言动态内存管理方式C动态内存管理方式&#xff1a;new/deleteoperator new与operator delete函数new和delete的实现原理定位new表达式&#xff08;了解&#xff09;常见面试题 总结C语言系列学习目录 前言 本章要介绍的是动态内存管理&am…

学习神经网络基础架构

今日学习了解了常见的几种神经网络基础架构。 1.卷积神经网络 卷积神经网络CNN是一种人工神经网络&#xff0c;旨在处理和分析具有网格状拓扑结构的数据&#xff0c;如图像和视频。将 CNN 想象成一个多层过滤器&#xff0c;可处理图像以提取有意义的特征并进行推理预测。 想…

PG数据文件和块管理与Oracle比较

之前有说过PG数据库中的对象oid与数据文件一一对应&#xff0c;创建的数据库如果没有指定表空间&#xff0c;则会默认放在默认表空间中&#xff0c;例如&#xff1a; 1.对象OID与数据文件对应关系 Oracle的逻辑与物理对应关系如下&#xff1a; 两种结果相比较而言&#xff1a; …

赋能业务全球化,明道云HAP通过亚马逊云科技 FTR认证

近日&#xff0c;明道云作为融合多元能力的超级应用平台&#xff0c;成功通过了AWS&#xff08;Amazon Web Service&#xff09;的FTR&#xff08;Foundational Technical Review&#xff09;认证。FTR是亚马逊云科技为合作伙伴解决方案提供的一项全面技术审核机制&#xff0c;…

Python 操作数据库

十、Python3 操作数据库 1、Python3 操作 MySQL 1、基本介绍 Python3 操作 MySQL 数据库 可以使用的模块是 pymysql 和 MySQLdb。 这个两个模块都是通过自己的 API 执行原生的 SQL 语句实现的。 MySQLdb 是最早出现的一个操作 MySQL 数据库的模块&#xff0c;核心由C语言编…

【NodeMCU实时天气时钟温湿度项目 7】和风天气API返回JSON数据信息的解压缩实现——ArduinoUZlib功能库

今天是第七专题&#xff0c;主要内容是&#xff1a;导入ArduinoUZlib功能库&#xff0c;借助该库把从【和风天气】官网返回的经过Gzip压缩的JSON数据&#xff0c;进行解压缩和t解析&#xff0c;在串口监视器上输出解析后的JSON信息。 如您需要了解其它专题的内容&#xff0c;请…

C++:编程世界的永恒之石

在编程的广袤领域中&#xff0c;C犹如一块永恒的基石&#xff0c;历经岁月的洗礼&#xff0c;依旧坚固而璀璨。它的深厚底蕴、强大功能和广泛的应用领域&#xff0c;使其成为无数程序员心中的信仰与追求。 一、C&#xff1a;历史与传承的交汇点 C的历史可追溯到上世纪80年代&…

由于安全设置错误,远程桌面连接失败怎么办?

问题&#xff1a;远程桌面安全设置错误&#xff1f; “我是一名IT经理&#xff0c;需要经常使用远程桌面连接到办公室的电脑。近期&#xff0c;我在使用远程桌面时&#xff0c;远程桌面提示‘由于安全设置错误&#xff0c;客户端无法连接到远程计算机。’我不清楚是什么原因所…

哪些软件格式在win跟linux上都能运行?

在开始前我有一些资料&#xff0c;是我根据网友给的问题精心整理了一份「linux的资料从专业入门到高级教程」&#xff0c; 点个关注在评论区回复“888”之后私信回复“888”&#xff0c;全部无偿共享给大家&#xff01;&#xff01;&#xff01; 有一些软件格式在Windows和Li…

Windows snmp++获取本地主机信息

编译snmp的包 调用snmp.lib实现信息获取_哔哩哔哩_bilibili 代码&#xff1a; #include <iostream> #include <libsnmp.h> #include <vector> #include <fstream> #include <string> #include "snmp_pp/snmp_pp.h" //#define _NO_L…

基于django医用耗材网上申领系统的实现

基于django医用耗材网上申领系统的实现 开发语言:Python 数据库&#xff1a;MySQL所用到的知识&#xff1a;Django框架工具&#xff1a;pycharm、Navicat、Maven 系统功能实现 管理员登录 系统在安全性的验证方面究竟做了什么功能呢&#xff1f;在做之前我们也进行了思量&…

开源go实现的iot物联网新基建平台

软件介绍 Magistrala IoT平台是由Abstract Machines公司开发的创新基础设施解决方案&#xff0c;旨在帮助组织和开发者构建安全、可扩展和创新的物联网应用程序。曾经被称为Mainflux的平台&#xff0c;现在已经开源&#xff0c;并在国际物联网领域受到广泛关注。 功能描述 多协…