郭震 AI公众号:郭震AI

13 机器学习模型评估之评估指标介绍

发布日期:

最近更新:

分类: 机器学习小白

预计阅读: 5 分钟

阅读次数: 0

预计阅读5 分钟
结构重点10 个
图文要点6 张
正文规模2.1k 字

整理说明

这篇内容怎么整理

郭震 · 2026-06-04

独立整理围绕 10 个结构重点拆成环境、步骤、验证点和常见误区,尽量让读者能照着复现。
图文对照保留 6 张和配置、流程、判断结果有关的图片,方便快速定位正文重点。
持续校对工具、模型和命令变化较快,后续优先修正入口、参数和风险提醒。

阅读路线

先按这条路线读

先抓住主线,再回到代码、配置和图文细节,读起来会更稳。

图文要点

先看本文图文节点

按图先建立主线,再跳回正文核对步骤、配置和判断标准。

评估指标介绍流程图查看大图
评估指标介绍流程图

评估指标不是固定答案。垃圾邮件、疾病筛查、房价预测和推荐排序需要不同指标,因为错判的业务代价不同。

指标含义可对照 scikit-learn 模型评估文档

评估指标介绍核对图查看大图
评估指标介绍核对图

选指标前,我会先问:哪种错误最贵,漏掉更糟还是误报更糟。业务代价不清,指标就容易选错。

在上一节中,我们讨论了模型选择与训练之超参数调优。超参数调优是提升模型性能的关键步骤,而模型评估则是确认模型有效性的必要过程。今天,我们将深入探讨机器学习模型评估中的评估指标,这些指标可以帮助我们量化模型的性能,为我们的模型选择和后续的改进提供可靠依据。

评估指标的作用

评估指标是用于衡量模型预测性能的标准。通过评估指标,我们可以:

  • 比较不同模型的表现
  • 确定模型是否满足业务需求
  • 识别模型在不同数据集或特征上的表现差异

在分类和回归任务中,常用的评估指标有所不同,接下来让我们分别讨论这些指标。

分类模型评估指标

在分类任务中,我们通常用如下几个指标来评估模型性能:

1. 准确率 (Accuracy)

准确率是最常见的分类评估指标,它表示模型正确预测的样本占总样本的比例。公式为:

Accuracy=TP+TNTP+TN+FP+FN\text{Accuracy} = \frac{\text{TP} + \text{TN}}{\text{TP} + \text{TN} + \text{FP} + \text{FN}}

其中,TP(True Positive)是真阳性,TN(True Negative)是真阴性,FP(False Positive)是假阳性,FN(False Negative)是假阴性。

案例:假设我们有一个二分类模型,预测某个邮件是否为垃圾邮件,实际有100封邮件,其中有30封是垃圾邮件。模型正确识别出25封垃圾邮件和60封正常邮件。我们可以计算模型的准确率:

TP = 25
TN = 60
FP = 5  # 误分类正常邮件为垃圾邮件
FN = 5  # 误分类垃圾邮件为正常邮件
accuracy = (TP + TN) / (TP + TN + FP + FN)
print("准确率:", accuracy)

2. 精确率 (Precision) 和 召回率 (Recall)

  • 精确率衡量的是模型在所有预测为正例的样本中,实际为正例的比例:
Precision=TPTP+FP\text{Precision} = \frac{\text{TP}}{\text{TP} + \text{FP}}
  • 召回率衡量的是在所有实际为正例的样本中,模型正确预测为正例的比例:
Recall=TPTP+FN\text{Recall} = \frac{\text{TP}}{\text{TP} + \text{FN}}

案例:继续使用上述邮件分类的例子,我们可以计算精确率和召回率:

precision = TP / (TP + FP)
recall = TP / (TP + FN)
print("精确率:", precision, "召回率:", recall)

3. F1-score

F1-score是精确率和召回率的调和平均值,适用于当我们希望在精确率和召回率之间找到平衡时:

F1=2×Precision×RecallPrecision+RecallF1 = 2 \times \frac{\text{Precision} \times \text{Recall}}{\text{Precision} + \text{Recall}}

在分类问题,尤其是不平衡的分类问题中,F1-score是一个非常重要的评估指标。

代码示例

F1 = 2 * (precision * recall) / (precision + recall)
print("F1-score:", F1)

回归模型评估指标

在回归任务中,我们采用不同的指标来评估模型性能,常用的有:

机器学习评估指标判断卡查看大图
机器学习评估指标判断卡

选择机器学习评估指标时,先看任务类型、类别分布、误判代价、验证集和业务阈值。

1. 均方误差 (Mean Squared Error, MSE)

MSE是预测值与真实值之差的平方的平均值,公式为:

MSE=1ni=1n(yiy^i)2\text{MSE} = \frac{1}{n}\sum_{i=1}^{n}(y_i - \hat{y}_i)^2

其中,yiy_i是真实值,y^i\hat{y}_i是预测值,nn是样本数量。

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

RMSE是均方误差的平方根,具有与原始数据相同的单位,使其更易于解释:

机器学习阅读地图卡查看大图
机器学习阅读地图卡

《机器学习模型评估之评估指标介绍》适合边看图边读正文。先确认问题和判断标准,再看概念解释与练习步骤,信息会更容易连成一条线。

RMSE=MSE\text{RMSE} = \sqrt{\text{MSE}}

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

MAE是预测值与真实值之差的绝对值的平均值,公式为:

MAE=1ni=1nyiy^i\text{MAE} = \frac{1}{n}\sum_{i=1}^{n}|y_i - \hat{y}_i|

代码示例

from sklearn.metrics import mean_squared_error, mean_absolute_error
import numpy as np

y_true = np.array([3, -0.5, 2, 7])
y_pred = np.array([2.5, 0.0, 2, 8])

mse = mean_squared_error(y_true, y_pred)
rmse = np.sqrt(mse)
mae = mean_absolute_error(y_true, y_pred)

print("均方误差 (MSE):", mse)
print("均方根误差 (RMSE):", rmse)
print("平均绝对误差 (MAE):", mae)
机器学习模型评估之评估指标介绍应用复盘卡查看大图
机器学习模型评估之评估指标介绍应用复盘卡

复习《机器学习模型评估之评估指标介绍》时,建议把关键概念、操作步骤和可见结果放在同一页里回看。

机器学习模型评估之评估指标介绍应用检查卡查看大图
机器学习模型评估之评估指标介绍应用检查卡

练习《机器学习模型评估之评估指标介绍》时,建议把输入条件、处理动作和可见结果写在一起,方便下次复查。

总结

在模型评估中,选择合适的评估指标至关重要。对于分类问题,准确率、精确率、召回率和F1-score是常用的指标,而回归问题则常用MSE、RMSE和MAE。这些指标不仅帮助我们了解模型的性能,还为我们在模型调优和选择时提供了重要的参考依据。

接下来,我们将讨论模型评估之交叉验证。在实际应用中,合理地使用交叉验证可以帮助我们更准确地评估模型性能,减少因过拟合或数据划分不当导致的偏差。

继续阅读

从这篇继续找到相关教程

AI 教程总索引

常见问题

读前先确认这三点

机器学习模型评估之评估指标介绍适合谁读?

这是 机器学习入门 系列第 13 / 21 篇,适合正在学习机器学习入门,并且需要把概念落到操作步骤或判断标准里的读者。

读这篇机器学习入门教程要多久?

按中文技术文章阅读速度估算,通读大约 5 分钟;如果要跟着复现,建议把命令、配置和结果检查分开做。

这篇文章里的图文节点怎么用?

正文里有 6 个图文节点,可以先用它们抓住流程、配置和判断点,再回到对应段落细读。

分享文章

转发到常用平台

微信/朋友圈可先复制链接

相关教程

AI 教程总索引

继续阅读

继续找到相关 AI 教程

返回栏目

Reader Messages

读者留言

有问题、补充资料或实测结果,可以直接留下。这里不需要登录。

最多 800 字

为了防刷,每条留言会做长度、链接数量和提交频率限制。

0/800

留言列表

0
正在加载留言...