【机器学习】21-22 机器学习系统开发流程 & 倾斜数据集

21 Machine Learning Development Process

21.1 Iterative Loop of ML Development

21.2 Error Analysis

对于验证集中失败的case,检测并归纳总结共性的错误原因,优先处理比例大的。

如果验证集较大无法人工检查所有的case,随机抽取其中的一部分进行查看

21.3 Adding Data

数据增强(Data Augmentation):修改已有的训练数据来创建新的训练数据,例如一个字母A的图像,将其旋转、调整大小等

数据合成(Data Synthesis):通常只用于CV,人工合成生成数据,例如文本编辑器生成文本并对截图进行一些扭曲等操作,用于OCR的训练

注:模型效果的提升不仅仅可以通过改变模型设计来实现,往往也可以通过优化训练数据来实现

21.4 Transfer Learning: Using Data from a Different Task

迁移学习

适用场景:自身任务的数据量不足,借用其他类似任务的数据帮助训练

核心思想:除了输出层,借用类似任务的其他层的已训练好的参数,在此基础上用自己的数据的训练优化

两个策略:

  1. 只训练输出层参数
  2. 训练所有层参数,但其他层参数的初始值使用类似任务的已训练的参数
    策略1一般适用于数据集很小的情况,如果规模稍大一些,通常策略2会更好
    注:这种先在大数据集上预训练,叫作有监督预训练(Supervised Pretraining),再在小数据集上进一步调整参数,叫作微调(Fine Tuning)

21.5 Full Cycle of a Machine Learning Project

  1. 确定任务的Scope
  2. 收集数据并构建数据集
  3. 训练模型
  4. 部署,并持续监控性能
    注:
  5. 训练模型的过程中,可以通过错误分析,反过来补充或调整数据集
  6. 部署的过程中,也可以通过线上的数据和表现,反过来补充和调整数据集,以及优化模型

21.6 Fairness, Bias, and Ethics 公平,偏见,伦理

多元化

在部署前做检查

22 Skewed Datasets 倾斜数据集

22.1 Error Metrics for Skewed Datasets

如果数据集中的正负样本比例失调,这种情况下正确率这个指标并不能很好地反映模型的效果

例如:识别罕见疾病,即使是全预测成0的模型,也能正确率很高

引入概念:准确率Precison召回率Recall

↓ Predicted Class \ Actual Class → 1 0
1 True Positive 真阳 False Positive 假阳
0 False Negative 假阴 True Negative 真阴

Precision=True Positiveall predicted positive=True PositiveTrue Positive + False PositiveRecall=True Positiveall actual positive=True PositiveTrue Positive + False Negative\begin{aligned} \text{Precision} &= \frac {\text{True Positive}} {\text{all predicted positive}} &= \frac {\text{True Positive}} {\text{True Positive } + \text{ False Positive}} \\ \text{Recall} &= \frac {\text{True Positive}} {\text{all actual positive}} &= \frac {\text{True Positive}} {\text{True Positive } + \text{ False Negative}} \end{aligned}PrecisionRecall=all predicted positiveTrue Positive=all actual positiveTrue Positive=True Positive + False PositiveTrue Positive=True Positive + False NegativeTrue Positive

Precision反映了预测的所有正例中正确的比例,Recall反映了真正的正例中能预测对的比例。

22.2 Trading off Precision and Recall

阈值的选择:通常用0.5来作为判断的阈值,但如果阈值调大,准确率会上升,召回率会下降,反之亦然

两者之间需要进行权衡
注:选择阈值不能通过交叉验证集来完成

如何量化权衡指标 --> 合二为一,引入 F1 Score调和平均值 ,更强调两者中较低的值不能过低)
F1 score=112(1Precision+1Recall)=2⋅PRP+RF_1 \space score = \frac {1} {\frac 1 2 (\frac 1 {\text{Precision}} + \frac 1 {\text{Recall}})} = 2 \cdot \frac {PR} {P + R}F1 score=21(Precision1+Recall1)1=2⋅P+RPR

相关推荐
一切皆是因缘际会21 小时前
从概率拟合到内生心智:2026 下一代 AI 架构演进与落地实践
人工智能·深度学习·算法·架构
科研前沿21 小时前
镜像视界 CameraGraph™+多智能体:构建自感知自决策的全域空间认知网络技术方案
大数据·运维·人工智能·数码相机·计算机视觉
爱学习的张大21 小时前
具身智能论文问答(2):Diffusion Policy
人工智能
AI科技星21 小时前
全域数学·72分册·射影原本 无穷维射影几何卷细化子目录【乖乖数学】
人工智能·线性代数·算法·机器学习·数学建模·数据挖掘·量子计算
Chef_Chen21 小时前
论文解读:MemOS首次把记忆变成大模型的一等公民资源,Scaling Law迎来第三条曲线
人工智能·agent·memory
风落无尘21 小时前
《智能重生:从垃圾堆到AI工程师》——第四章 变化的艺术
人工智能·线性代数·算法
发哥来了1 天前
AI视频生成模型选型指南:五大核心维度对比评测
大数据·人工智能·机器学习·ai·aigc
发哥来了1 天前
AI驱动生产线的实际落地:一个东莞厂商的技术选型实录
大数据·人工智能·机器学习·ai·aigc
AC赳赳老秦1 天前
知识产权辅助:用 OpenClaw 批量生成专利交底书 / 软著申请材料,自动校验格式与内容合规性
java·人工智能·python·算法·elasticsearch·deepseek·openclaw
AI科技1 天前
原因大揭秘:为什么别人的编曲伴奏做得又快又好,2026年度甄选5款AI编曲软件汇总
人工智能