news 2026/3/28 11:01:02

评估模型性能

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
评估模型性能

文章目录

    • 一、评估模型性能
      • 1. 混淆矩阵示例
      • 2. 常用评估指标
    • 二、常见问题与解决
      • 1. 欠拟合(Underfitting)
      • 2. 过拟合(Overfitting)
      • 3. 正则化(Regularization)
      • 4. 数据标准化
      • 5. 交叉验证
      • 6. 类别不平衡处理

一、评估模型性能

在分类任务中,我们通常使用混淆矩阵及其衍生指标来评估模型表现。

1. 混淆矩阵示例

假设我们对15个人进行是否患病的预测(1=患病,0=正常),得到如下预测结果:

预测值11111000011101
真实值01101100101010

对应的混淆矩阵为:

预测值=1预测值=0
真实值=15 (TP)2 (FN)
真实值=04 (FP)4 (TN)

2. 常用评估指标

  • 准确率(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

  • 精确率(Precision):预测为正的样本中实际为正的比例
    Precision = T P T P + F P \text{Precision} = \frac{TP}{TP + FP}Precision=TP+FPTP

  • 召回率(Recall):实际为正的样本中被正确预测的比例
    Recall = T P T P + F N \text{Recall} = \frac{TP}{TP + FN}Recall=TP+FNTP

  • F1分数(F1-Score):精确率和召回率的调和平均
    F 1 = 2 ⋅ Precision ⋅ Recall Precision + Recall F_1 = 2 \cdot \frac{\text{Precision} \cdot \text{Recall}}{\text{Precision} + \text{Recall}}F1=2Precision+RecallPrecisionRecall

二、常见问题与解决

1. 欠拟合(Underfitting)

模型没有充分学习到数据特征,表现为在训练集和测试集上效果都不佳。通常由于模型过于简单或训练不足导致。

2. 过拟合(Overfitting)

模型在训练集上表现很好,但在测试集上表现下降。常见原因包括:

  1. 过度追求训练集上的低损失或高准确率
  2. 模型参数过于复杂(例如特征过多)

3. 正则化(Regularization)

为了防止过拟合,我们可以在损失函数中加入正则化项,约束模型参数的大小:

原始损失函数:
J ( θ ) = 1 2 ∑ i = 1 m ( y ( i ) − θ T X ( i ) ) 2 J(\theta) = \frac{1}{2} \sum_{i=1}^m (y^{(i)} - \theta^T X^{(i)})^2J(θ)=21i=1m(y(i)θTX(i))2

加入L2正则化后:
J ( θ ) = 1 2 ∑ i = 1 m ( y ( i ) − θ T X ( i ) ) 2 + 1 2 θ 2 J(\theta) = \frac{1}{2} \sum_{i=1}^m (y^{(i)} - \theta^T X^{(i)})^2 + \frac{1}{2} \theta^2J(θ)=21i=1m(y(i)θTX(i))2+21θ2

4. 数据标准化

为了提升模型收敛速度与稳定性,常对特征进行标准化:

  • 0~1标准化(离差标准化):
    y i = x i − min ⁡ 1 ≤ j ≤ n { x j } max ⁡ 1 ≤ j ≤ n { x j } − min ⁡ 1 ≤ j ≤ n { x j } y_i = \frac{x_i - \min_{1 \leq j \leq n} \{ x_j \}}{\max_{1 \leq j \leq n} \{ x_j \} - \min_{1 \leq j \leq n} \{ x_j \}}yi=max1jn{xj}min1jn{xj}ximin1jn{xj}
  • Z标准化
    y i = x i − x ‾ s y_i = \frac{x_i - \overline{x}}{s}yi=sxix

5. 交叉验证

为了更稳健地评估模型,常使用交叉验证方法,如K折交叉验证,将数据集分为K份,依次用其中一份作为测试集,其余作为训练集,最后取平均性能。

6. 类别不平衡处理

当正负样本比例悬殊时,可使用过采样技术,如SMOTE算法,通过合成少数类样本来平衡数据集。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/3/26 0:57:57

2025年夸克网盘不限速教程:速度可达70MB/s实测有效

2025年12月最新今天教大家一招能解决夸克网盘限制的在线工具。这个工具也是完全免费使用的。下面让大家看看我用这个工具的下载速度咋样。地址获取:放在这里了,可以直接获取 这个速度还是不错的把。对于平常不怎么下载的用户还是很友好的。下面开始今天的…

作者头像 李华
网站建设 2026/3/28 7:10:44

调试功能的说明-–-behaviac

原文 behaviac提供了离线调试以及连调功能。 离线调试 离线调试功能是指在编辑器里加载运行时产生的 _behaviac_$_.log 文件,如下图,可以加载 _behaviac_$_.log 文件: _behaviac_$_.log 是运行游戏时产生的log文件。一般都是产生在exe所在…

作者头像 李华
网站建设 2026/3/26 3:37:33

unity3d scene窗口选中物体, 在 hierarchy高光显示

在 Unity 中实现 “Scene 窗口选中物体时 Hierarchy 面板高光显示”,核心思路是监听 Scene 窗口的选择事件,并通过 Unity 的EditorGUIUtility和EditorWindow相关 API 主动高亮 Hierarchy 面板中对应的物体条目。以下是完整的实现方案:using U…

作者头像 李华
网站建设 2026/3/28 1:30:14

FOC开发工具学习

FOC开发工具使用 ST 提供的 FOC 开发套件——“X-CUBE-MCSDK”,来帮助我们生成 FOC 控制代码 。 X-CUBE-MCSDK:ST 推出的电机控制软件开发套件。其中包括永磁同步电机(PMSM)固件库(FOC 控制)以及 STM32 电机…

作者头像 李华
网站建设 2026/3/23 4:19:24

HyperLPR3 车牌识别(python3)

HyperLPR已经更新到了v3的版本,该版本与先前的版本一样都是用于识别中文车牌的开源图像算法项目,最新的版本的源码可从github中提取:https://github.com/szad670401/HyperLPR一、安装扩展 python -m pip install hyperlpr3 https://pypi.tuna…

作者头像 李华
网站建设 2026/3/27 8:11:19

234回文链表

2025_12_14 链表简单(虽然是简单但是链表的我总是卡呢) 234回文链表 思路:我想到的是递归或者倒转一半或者栈,再遍历检查回文,但是限制了空间就只能倒转一半,感觉写起来好麻烦www感觉写的不是很优雅&#x…

作者头像 李华