【人工智能】机器学习中的评价指标

news2025/3/26 2:19:42

机器学习中的评价指标

在机器学习中,评估指标(Evaluation Metrics)是衡量模型性能的工具。选择合适的评估指标能够帮助我们更好地理解模型的效果以及它在实际应用中的表现。

一般来说,评估指标主要分为三大类:分类、回归和聚合


分类问题

分类,顾名思义,就是将输入数据识别并分配到不同的类别上去,以下是它的评估指标:

一、混淆矩阵(Confusion Matrix)

核心概念

混淆矩阵(Confusion Matrix),又称为误差矩阵,是一种特定的表格布局,用于描述分类模型的性能。在监督学习中,特别是分类问题中,混淆矩阵给出了分类器预测结果与实际类别之间的差异对比,它能够帮助我们全面了解分类器的表现。

元素定义应用场景示例
TP (True Positive)正类样本被正确预测的数量电商用户流失预测中的真实流失用户
FP (False Positive)负类样本被错误预测为正类的数量垃圾邮件过滤中的正常邮件误判
FN (False Negative)正类样本被错误预测为负类的数量医疗诊断中的漏诊病例
TN (True Negative)负类样本被正确预测的数量信用卡欺诈检测中的正常交易识别

公式表示

实际\预测正类(1)负类(0)
正类(1)TPFN
负类(0)FPTN

示例分析
在用户流失预测中,若测试集包含:

  • TP=150(正确识别的流失用户)
  • FP=30(误判的正常用户)
  • FN=50(漏检的流失用户)
  • TN=770(正确识别的正常用户)
    通过混淆矩阵可快速定位模型的召回能力缺陷(漏检率10%)。

二、基础评估指标

1. 准确率(Accuracy)

公式
Accuracy = T P + T N T P + T N + F P + F N \text{Accuracy} = \frac{TP + TN}{TP + TN + FP + FN} Accuracy=TP+TN+FP+FNTP+TN

特点

  • ✅ 适用场景:类别均衡数据(如MNIST手写数字识别)
  • ❌ 局限性:癌症筛查中若健康样本占99%,全预测为健康准确率可达99%但完全漏检癌症

2. 精确率(Precision)

公式
Precision = T P T P + F P \text{Precision} = \frac{TP}{TP + FP} Precision=TP+FPTP

应用场景

  • 垃圾邮件过滤:预测100封为垃圾邮件,其中90封真实为垃圾,则精确率90%
  • 法律文书分类:高精确率减少错误归档风险

3. 召回率(Recall)

公式
Recall = T P T P + F N \text{Recall} = \frac{TP}{TP + FN} Recall=TP+FNTP

应用场景

  • 信用卡欺诈检测:识别45/50笔欺诈交易,召回率90%
  • 地震预测:容忍较高误报率以降低漏报风险

三、复合评估指标

1. F1分数(F1-Score)

公式
F 1 = 2 × Precision × Recall Precision + Recall F1 = \frac{2 \times \text{Precision} \times \text{Recall}}{\text{Precision} + \text{Recall}} F1=Precision+Recall2×Precision×Recall

变体

  • Fβ分数:通过β调整召回率权重(β>1时更重视召回)
  • 案例:新闻推荐系统中,精确率80%+召回率70% → F1=74.8%
2. ROC曲线与AUC值

核心参数

  • TPR(真正率) T P T P + F N \frac{TP}{TP + FN} TP+FNTP
  • FPR(假正率) F P F P + T N \frac{FP}{FP + TN} FP+TNFP

特性

  • 曲线越接近左上角性能越好
  • AUC=0.85表示85%概率将正类样本排在负类前
3. PR曲线与AUPR

优势:在类别极度不平衡时(如新冠检测阳性率1%)比AUC更敏感

四、多分类评估策略

1. 宏平均(Macro-Average)

计算方式:各类别指标取算术平均
适用场景:强调类别平等(如多语言文本分类)

2. 微平均(Micro-Average)

计算方式:汇总所有类别TP/FP/FN后计算全局指标
特点:样本量差异大时更稳定(如商品评论情感分析)

3. 加权平均(Weighted Average)

公式
Weighted = ∑ i = 1 N Samples i Total × Metric i \text{Weighted} = \sum_{i=1}^N \frac{\text{Samples}_i}{\text{Total}} \times \text{Metric}_i Weighted=i=1NTotalSamplesi×Metrici
应用:电商用户分级(VIP客户样本少但权重大)


回归问题

均方误差(Mean Squared Error, MSE)

定义与公式
均方误差(MSE)是回归任务中最常用的评价指标之一,其计算公式为预测值与真实值差的平方的均值:
MSE = 1 n ∑ i = 1 n ( y i − y ^ i ) 2 \text{MSE} = \frac{1}{n} \sum_{i=1}^{n} (y_i - \hat{y}_i)^2 MSE=n1i=1n(yiy^i)2
MSE通过平方操作放大了较大误差的权重,使得模型在训练过程中更关注极端错误。例如,若真实值为 [200, 300, 400],预测值为 [210, 290, 410],则 MSE 计算为:
MSE = ( 10 ) 2 + ( − 10 ) 2 + ( 10 ) 2 3 = 100 + 100 + 100 3 ≈ 100 \text{MSE} = \frac{(10)^2 + (-10)^2 + (10)^2}{3} = \frac{100 + 100 + 100}{3} \approx 100 MSE=3(10)2+(10)2+(10)2=3100+100+100100
此时 MSE 的单位是目标变量的平方(如房价的平方值),导致解释性较差,但能有效反映模型的整体误差水平。

优点与缺点

  • 优点:对大误差敏感,适用于需要严格避免大偏差的场景(如金融风控)。
  • 缺点:量纲不直观,且异常值会显著拉高 MSE(例如某个预测误差为 100,其平方贡献为 10000)。

均方根误差(Root Mean Squared Error, RMSE)

定义与公式
RMSE 是 MSE 的平方根,公式为:
RMSE = 1 n ∑ i = 1 n ( y i − y ^ i ) 2 \text{RMSE} = \sqrt{\frac{1}{n} \sum_{i=1}^{n} (y_i - \hat{y}_i)^2} RMSE=n1i=1n(yiy^i)2
RMSE 解决了 MSE 量纲问题,使其与目标变量单位一致。例如,若预测温度(单位:℃)的 MSE 为 25,则 RMSE 为 5℃,可直接解读为“平均误差约为 5 摄氏度”。

实际案例
假设预测某城市日平均温度,真实值为 [20, 22, 25],预测值为 [18, 23, 24],则:
RMSE = ( 2 ) 2 + ( − 1 ) 2 + ( 1 ) 2 3 = 4 + 1 + 1 3 ≈ 1.41   ℃ \text{RMSE} = \sqrt{\frac{(2)^2 + (-1)^2 + (1)^2}{3}} = \sqrt{\frac{4 + 1 + 1}{3}} \approx 1.41 \,℃ RMSE=3(2)2+(1)2+(1)2 =34+1+1 1.41
RMSE 的优势在于直观性,但依然受异常值影响。例如,若某个预测误差为 10℃,其平方项将主导计算结果。

平均绝对误差(Mean Absolute Error, MAE)

定义与公式
MAE 计算预测值与真实值绝对误差的平均值:
MAE = 1 n ∑ i = 1 n ∣ y i − y ^ i ∣ \text{MAE} = \frac{1}{n} \sum_{i=1}^{n} |y_i - \hat{y}_i| MAE=n1i=1nyiy^i
MAE 对异常值的鲁棒性优于 MSE/RMSE。例如,预测房价时,若数据中存在少量极端高价(如 1000 万美元),MAE 仅线性放大这些误差,而 MSE 会因平方操作使其影响剧增。

实际案例
假设真实房价为 [200, 300, 1000](单位:万美元),预测值为 [210, 290, 950],则:
MAE = ∣ 10 ∣ + ∣ − 10 ∣ + ∣ 50 ∣ 3 = 10 + 10 + 50 3 ≈ 23.3   万美元 \text{MAE} = \frac{|10| + |-10| + |50|}{3} = \frac{10 + 10 + 50}{3} \approx 23.3 \,万美元 MAE=3∣10∣+10∣+∣50∣=310+10+5023.3万美元
MAE 的缺点是忽略误差方向(如高估或低估),且无法区分多个小误差和一个大误差的差异。

决定系数(R² Score)

定义与公式
R² 衡量模型对目标变量方差的解释能力,公式为:
R 2 = 1 − ∑ i = 1 n ( y i − y ^ i ) 2 ∑ i = 1 n ( y i − y ˉ ) 2 R^2 = 1 - \frac{\sum_{i=1}^{n} (y_i - \hat{y}_i)^2}{\sum_{i=1}^{n} (y_i - \bar{y})^2} R2=1i=1n(yiyˉ)2i=1n(yiy^i)2
其中 y ˉ \bar{y} yˉ 是真实值的均值。R² 越接近 1,说明模型拟合越好。例如,若 R²=0.85,表示模型能解释 85% 的数据波动。

实际案例
假设某商品销量预测的 R²=0.75,说明模型解释了 75% 的销量变化,剩余 25% 由未考虑的因素(如促销活动)导致。但需注意:R² 随特征数量增加可能虚高,此时需结合调整后 R²(Adjusted R²)使用。

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

定义与公式
MAPE 计算相对误差的绝对值均值,公式为:
MAPE = 100 % n ∑ i = 1 n ∣ y i − y ^ i y i ∣ \text{MAPE} = \frac{100\%}{n} \sum_{i=1}^{n} \left| \frac{y_i - \hat{y}_i}{y_i} \right| MAPE=n100%i=1n yiyiy^i
MAPE 适用于不同量纲数据的横向比较。例如,预测销售额时,若 MAPE=10%,表示平均误差为实际值的 10%。

实际案例
假设某商品日销售额真实值为 [100, 200, 300](单位:美元),预测值为 [90, 210, 280],则:
MAPE = 100 % 3 ( 10 100 + 10 200 + 20 300 ) ≈ 8.33 % \text{MAPE} = \frac{100\%}{3} \left( \frac{10}{100} + \frac{10}{200} + \frac{20}{300} \right) \approx 8.33\% MAPE=3100%(10010+20010+30020)8.33%
但需注意:当真实值接近零时,MAPE 可能无限大(如真实值为 0 时,分母为零)。

调整后决定系数(Adjusted R²)

定义与公式
调整后 R² 在 R² 基础上引入特征数量惩罚,公式为:
Adjusted  R 2 = 1 − ( ( 1 − R 2 ) ( n − 1 ) n − k − 1 ) \text{Adjusted } R^2 = 1 - \left( \frac{(1 - R^2)(n - 1)}{n - k - 1} \right) Adjusted R2=1(nk1(1R2)(n1))
其中 k k k 为特征数量。当模型中添加无关特征时,调整后 R² 会下降,从而避免过拟合。

实际案例
假设某模型在 100 个样本上使用 5 个特征得到 R²=0.8,调整后 R² 计算为:
Adjusted  R 2 = 1 − ( 1 − 0.8 ) ( 99 ) 94 ≈ 0.787 \text{Adjusted } R^2 = 1 - \frac{(1 - 0.8)(99)}{94} \approx 0.787 Adjusted R2=194(10.8)(99)0.787
若新增一个无关特征后 R² 升至 0.805,调整后 R² 可能降至 0.78,说明新增特征无实际贡献。


聚类问题

纯度(Purity)

定义与公式
纯度衡量聚类结果与真实类别的一致性,通过统计每个聚类簇中占多数的真实类别样本数占比实现:
Purity = 1 N ∑ k max ⁡ j ∣ w k ∩ c j ∣ \text{Purity} = \frac{1}{N} \sum_{k} \max_j |w_k \cap c_j| Purity=N1kjmaxwkcj
其中 N N N 是总样本数, w k w_k wk 表示第 k k k 个聚类簇, c j c_j cj 表示第 j j j 个真实类别。例如,某聚类结果中三个簇的多数类别样本数分别为 5、4、3,总样本数 17,则纯度为 ( 5 + 4 + 3 ) / 17 ≈ 0.706 (5+4+3)/17 \approx 0.706 (5+4+3)/170.706

优点与缺点

  • 优点:计算简单,直观反映聚类与真实标签的匹配程度。
  • 缺点:未考虑类簇数量影响,可能因簇数过多虚高(如极端情况每个样本单独成簇,纯度=1)。

归一化互信息(Normalized Mutual Information, NMI)

定义与公式
NMI 通过信息熵衡量聚类结果与真实类别的信息共享程度:
NMI = I ( Ω ; C ) ( H ( Ω ) + H ( C ) ) / 2 \text{NMI} = \frac{I(\Omega; C)}{(H(\Omega) + H(C))/2} NMI=(H(Ω)+H(C))/2I(Ω;C)
其中 I ( Ω ; C ) I(\Omega; C) I(Ω;C) 是互信息, H ( Ω ) H(\Omega) H(Ω) H ( C ) H(C) H(C) 分别为聚类簇和真实类别的熵。NMI 值域为 [0,1],越接近 1 表示聚类与真实分布越一致。

实际案例
若真实类别分布为 [6,6,5],聚类结果分布为 [8,5,4],通过计算联合概率分布和熵值,可得 NMI≈0.564。
优点:对簇数量敏感,避免因簇数过多导致的虚高问题。缺点:计算复杂度较高,需依赖概率分布模型。


兰德系数(Rand Index, RI)与调整兰德系数(Adjusted Rand Index, ARI)

定义与公式
RI 通过样本对的一致性评估聚类质量:
RI = T P + T N T P + F P + F N + T N \text{RI} = \frac{TP + TN}{TP + FP + FN + TN} RI=TP+FP+FN+TNTP+TN
其中 T P TP TP 表示同类样本在同一簇中的对数, T N TN TN 表示异类样本在不同簇中的对数。RI 值域 [0,1],但随机聚类结果可能不为 0。因此引入 ARI 进行修正:
ARI = R I − E [ R I ] max ⁡ ( R I ) − E [ R I ] \text{ARI} = \frac{RI - E[RI]}{\max(RI) - E[RI]} ARI=max(RI)E[RI]RIE[RI]
ARI 值域 [-1,1],0 表示随机水平,1 表示完美匹配。

实际案例
某聚类结果中 T P = 20 TP=20 TP=20 T N = 72 TN=72 TN=72 F P = 20 FP=20 FP=20 F N = 24 FN=24 FN=24,则 R I ≈ 0.68 RI≈0.68 RI0.68,而 ARI 通过期望值修正后可能降至 0.48。
优点:综合考量同类/异类样本对的分布。缺点:计算复杂度高,需遍历所有样本对。


F值(F-score)

定义与公式
F-score 是准确率(Precision)和召回率(Recall)的调和平均,用于平衡聚类结果的精确性与覆盖率:
F β = ( 1 + β 2 ) ⋅ Precision ⋅ Recall β 2 ⋅ Precision + Recall F_{\beta} = (1+\beta^2) \cdot \frac{\text{Precision} \cdot \text{Recall}}{\beta^2 \cdot \text{Precision} + \text{Recall}} Fβ=(1+β2)β2Precision+RecallPrecisionRecall
其中 β \beta β 为权重参数(常取 1)。Precision 表示同一簇中同类样本占比,Recall 表示同类样本被正确聚类的占比。

实际案例
若某聚类结果中 T P = 20 TP=20 TP=20 F P = 20 FP=20 FP=20 F N = 24 FN=24 FN=24,则 Precision=0.5,Recall≈0.46, F 1 ≈ 0.48 F_1≈0.48 F10.48
优点:适用于类别不平衡场景。缺点:依赖样本对的统计,计算成本较高。


互信息(Mutual Information, MI)与调整互信息(AMI)

定义与公式
MI 直接衡量聚类结果与真实类别的信息相关性:
I ( Ω ; C ) = ∑ k , j ∣ w k ∩ c j ∣ N log ⁡ N ∣ w k ∩ c j ∣ ∣ w k ∣ ∣ c j ∣ I(\Omega; C) = \sum_{k,j} \frac{|w_k \cap c_j|}{N} \log \frac{N|w_k \cap c_j|}{|w_k||c_j|} I(Ω;C)=k,jNwkcjlogwk∣∣cjNwkcj
为消除随机聚类影响,AMI 引入调整项:
AMI = I ( Ω ; C ) − E [ I ] ( H ( Ω ) + H ( C ) ) / 2 − E [ I ] \text{AMI} = \frac{I(\Omega; C) - E[I]}{(H(\Omega) + H(C))/2 - E[I]} AMI=(H(Ω)+H(C))/2E[I]I(Ω;C)E[I]
AMI 值域 [0,1],更鲁棒。
优点:无需假设数据分布,适应复杂结构。缺点:计算复杂,需依赖概率估计。

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

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

相关文章

本地安装deepseek大模型,并使用 python 调用

首先进入 ollama 官网 https://ollama.com/点击下载 下载完成后所有都是下一步,就可以 点击搜索 Models : https://ollama.com/search然后点击下载: 选择后复制: ollama run deepseek-r1:32b例如: 让它安装完成后&#xff1…

Android:蓝牙设置配套设备配对

一、概述 在搭载 Android 8.0(API 级别 26)及更高版本的设备上,配套设备配对会代表您的应用对附近的设备执行蓝牙或 Wi-Fi 扫描,而不需要 ACCESS_FINE_LOCATION 权限。这有助于最大限度地保护用户隐私。使用此方法执行配套设备&am…

Python 变量作用域、global 关键字与闭包作用域深度解析 第三部分

## 三、闭包作用域的存在原因及适用场景 ### 3.1 闭包作用域存在的原因 #### 3.1.1 数据封装与隐藏 闭包可以把数据封装在外部函数的作用域中,只有内部函数能够访问这些数据,这有助于实现数据的隐藏和保护。 python def counter(): count 0 def incre…

zookeeper使用

下载 官网 链接 1. 2. 然后解压: 启动 先复制一份这个文件, 双击启动 默认占用8080,和Tomcat冲突, 解决方法:链接 然后重启

使用BootStrap 3的原创的模态框组件,没法弹出!估计是原创的bug

最近在给客户开发一个CRM系统,其中用到了BOOTSTRAP的模态框。版本是3。由于是刚开始用该框架。所以在正式部署到项目中前,需要测试一下,找到框架中的如下部分。需要说明的是。我用的asp.net mvc框架开发。测试也是在asp.net mvc环境下。 复制…

【Azure 架构师学习笔记】- Azure Networking(1) -- Service Endpoint 和 Private Endpoint

本文属于【Azure 架构师学习笔记】系列。 本文属于【Azure Networking】系列。 前言 最近公司的安全部门在审计云环境安全性时经常提到service endpoint(SE)和priavate endpoint(PE)的术语,为此做了一些研究储备。 云…

Excel第41套全国人口普查

2. 导入网页中的表格:数据-现有链接-考生文件夹:网页-找到表格-点击→变为√-导入删除外部链接关系:数据-点击链接-选中连接-删除-确定(套用表格格式-也会是删除外部链接)数值缩小10000倍(除以10000即可&am…

VUE2导出el-table数据为excel并且按字段分多个sheet

首先在根目录下建一个文件夹export用来存储export.js import * as XLSX from xlsxfunction autoWidthFunc(ws, data) {// 设置每列的最大宽度const colWidth data.map(row > row.map(val > {var reg new RegExp([\\u4E00-\\u9FFF], g) // 检测字符串是否包含汉字if (v…

PDF文件转Markdown,基于开源项目marker

​ 首先我们来问下deepseek 为啥要选marker呢 基于深度学习,一看就逼格拉满。搞科研必备,效果应该不会太差。 看下官网 https://github.com/VikParuchuri/marker ​ 一看头像是个印度佬,自吹——又快又好。那就试试吧。 安装步骤 安装…

【蓝桥杯速成】| 9.回溯升级

题目一:组合综合 问题描述 39. 组合总和 - 力扣(LeetCode) 给你一个 无重复元素 的整数数组 candidates 和一个目标整数 target ,找出 candidates 中可以使数字和为目标数 target 的 所有 不同组合 ,并以列表形式返…

【uni-app】引用公共组件

目录 一、建立公共组件 1.1新建vue文件 1.2编写公共文件代码 1.3使用 注意事项 一、建立公共组件 1.1新建vue文件 在公共组件文件目录下新建所需要的功能文件 1.2编写公共文件代码 按需求写对应功能的代码 1.3使用 在需要使用的文件下引用公共组件 注意事项 想要使用s…

API-Arrays

Arrays 操作数组的工具类 1.tostring import java.util.Arrays;public class demo1 {public static void main(String[] args) {Integer[] arr {2, 3, 1, 5, 6, 7, 8, 4, 9};System.out.println(Arrays.toString(arr));//[2, 3, 1, 5, 6, 7, 8, 4, 9]} } 2.binarySearch 二…

尝试在软考62天前开始成为软件设计师-信息系统安全

安全属性 保密性:最小授权原则(能干活的最小权限)、防暴露(隐藏)、信息加密、物理保密完整性(防篡改):安全协议、校验码、密码校验、数字签名、公证 可用性:综合保障( IP过滤、业务流控制、路由选择控制、审计跟踪)不可抵赖性:数字签名 对称加密 DES :替换移位 3重DESAESR…

dsPIC33CK64MC105 Curiosity Nano|为高性能数字电源与电机控制而生

「dsPIC33CK64MC105 Curiosity Nano」面向高性能数字电源与电机控制而生 dsPIC33CK64MC105 Curiosity Nano 该评估套件是一个经济高效的硬件平台,用于评估dsPIC33CK系列高性能数字信号控制器(DSC)。该板采用 100 MHz dsPIC33CK64MC105 DSC&am…

《面向车险理赔的事故信息提取》开题报告

个人主页:大数据蟒行探索者 目录 一、选题的依据及意义 二、国内外研究概况及发展趋势 (1)车牌识别技术 (2)证件信息提取技术 (3)交通事故认定书文本提取 三、研究内容及实验方案 1.研究…

【AI神经网络】深度神经网络(DNN)技术解析:从原理到实践

引言 深度神经网络(Deep Neural Network, DNN)作为人工智能领域的核心技术,近年来在计算机视觉、自然语言处理、医疗诊断等领域取得了突破性进展。与传统机器学习模型相比,DNN通过多层非线性变换自动提取数据特征,解决…

EasyRTC轻量级Webrtc音视频通话SDK,助力带屏IPC在嵌入式设备中的应用

一、市场背景 随着人们生活水平的提高,对于家居安全和远程监控的需求日益增长,带屏IPCam不仅满足了用户实时查看监控画面的需求,还提供了诸如双向语音通话、智能报警等丰富的功能,极大地提升了用户体验。 此外,技术的…

预测数值型数据:回归

1.1 用线性回归找到最佳拟合直线 线性回归:优点:结果易于理解,计算上不复杂 缺点:对非线性的数据拟合不好 适用数据类型:数值型和标称型数据 回归的目的就是预测数值型的目标值。 回归的一般方法: &#…

【操作系统安全】任务3:Linux 网络安全实战命令手册

目录 一、基础网络信息获取 1. 网络接口配置 2. 路由表管理 3. 服务端口监控 二、网络监控与分析 1. 实时流量监控 2. 数据包捕获 3. 网络协议分析 三、渗透测试工具集 1. 端口扫描 2. 漏洞利用 3. 密码破解 四、日志审计与分析 1. 系统日志处理 2. 入侵检测 3…

5.4 位运算专题:LeetCode 137. 只出现一次的数字 II

1. 题目链接 LeetCode 137. 只出现一次的数字 II 2. 题目描述 给定一个整数数组 nums,其中每个元素均出现 三次,除了一个元素只出现 一次。请找出这个只出现一次的元素。 要求: 时间复杂度为 O(n),空间复杂度为 O(1)。 示例&a…