【机器学习10】项目生命周期、偏斜类别评估、决策树

【机器学习10】项目生命周期、偏斜类别评估、决策树

文章目录


视频链接
吴恩达机器学习p83-p91


一 机器学习项目生命周期与部署

1.1 机器学习项目的完整生命周期

[在此处插入图片1]

一个完整的机器学习项目包含四个主要阶段:

  1. 项目范围定义 (Scope project):此阶段的目标是定义项目。
  2. 数据收集 (Collect data):此阶段的目标是定义数据并进行收集。
  3. 模型训练 (Train model):此阶段包含训练、错误分析和迭代改进。这是一个循环过程,分析结果可能会指导重新收集数据或调整训练方法。
  4. 生产部署 (Deploy in production):此阶段的目标是部署、监控和维护整个系统。部署后,系统的表现可能会反馈至数据收集和模型训练阶段,形成一个更大的迭代循环。

1.2 模型部署与MLOps

[在此处插入图片2]

部署是将训练好的模型投入实际应用的过程。一个常见的架构是:

  • 客户端(如 Mobile app) 通过API调用,将输入数据 x(例如一段音频)发送到推理服务器(Inference server)
  • 推理服务器内嵌有训练好的机器学习模型(ML model)
  • 服务器接收输入 x,进行推理计算,并将预测结果 ŷ(例如文本转录)返回给客户端。

将模型部署到生产环境需要大量的软件工程工作,这一领域被称为MLOps(机器学习运维)。MLOps关注以下几方面:

  • 确保预测的可靠性和效率。
  • 系统的扩展性(Scaling)。
  • 记录系统行为的日志(Logging)。
  • 对系统状态进行监控(System monitoring)。
  • 建立模型更新的流程(Model updates)。

二 偏斜类别下的模型评估

2.1 准确率的陷阱

[在此处插入图片3]

当数据集中正负样本数量严重不均衡时,即存在偏斜类别(skewed classes),准确率(Accuracy)会成为一个有误导性的评估指标。

以一个罕见病分类为例:

  • 一个分类器 f(x) 被训练用于检测疾病(y=1 代表患病)。
  • 该分类器在测试集上达到了1%的错误率(即99%的准确率)。
  • 然而,该疾病在人群中的真实患病率仅为0.5%。
  • 一个不进行任何学习,只是简单地对所有人都预测y=0(健康)的程序,其错误率仅为0.5%,准确率高达99.5%。
  • 这个结果(0.5%错误率)优于训练好的模型(1%错误率),这表明在偏斜类别问题中,高准确率并不能证明模型的有效性。

2.2 精确率与召回率

[在此处插入图片4]

为解决偏斜类别下的评估问题,我们使用精确率(Precision)和召回率(Recall)。这些指标基于一个混淆矩阵(Confusion Matrix),该矩阵展示了模型的四种预测结果:

  • 真正例 (True Positive, TP): 15
  • 假正例 (False Positive, FP): 5
  • 假负例 (False Negative, FN): 10
  • 真负例 (True Negative, TN): 70

精确率 (Precision)

  • 问题:在所有被模型预测为y=1的病人中,真实患病的比例是多少?
  • 公式Precision = TP / (TP + FP)
  • 计算15 / (15 + 5) = 0.75

召回率 (Recall)

  • 问题:在所有真实患病的病人中,被模型成功检测出的比例是多少?
  • 公式Recall = TP / (TP + FN)
  • 计算15 / (15 + 10) = 0.6

2.3 指标的权衡

[在此处插入图片5]

精确率和召回率之间存在权衡关系,这种关系可以通过调整分类器的**阈值(threshold)**来控制。

  • 逻辑回归输出一个0到1之间的概率 f(x)。预测 y=1 的条件是 f(x) >= threshold
  • 高阈值(例如 0.99):只有在模型极度确信时才预测 y=1。这会使精确率变高,召回率变低
  • 低阈值(例如 0.01):只要模型对 y=1 存在一丝可能性就进行预测。这会使召回率变高,精确率变低
  • 图中的精确率-召回率曲线展示了随着阈值的变化,两个指标此消彼长的关系。

2.4 F1分数:综合评估指标

[在此处插入图片6]

为了在只有一个数值的情况下比较不同算法的精确率和召回率表现,我们使用F1分数(F1 Score)

  • 简单的算术平均 (P+R)/2 是不可取的,因为它可能会给一个极端但无用的模型高分(如算法3)。
  • F1分数是精确率(P)和召回率(R)的调和平均数(Harmonic Mean)
  • 公式F1 Score = 2 * (P * R) / (P + R)
  • F1分数要求P和R都比较高时,其值才会高。如表格所示,算法1的F1分数为0.444,而算法2的F1分数为0.175,这提供了一个明确的比较基准。

三 决策树模型详解

3.1 模型结构与预测

[在此处插入图片7]

决策树是一种用于分类和回归的模型。以一个猫分类任务为例,输入数据 X 包含三个离散特征:耳朵形状(Ear shape)、脸部形状(Face shape)和是否有胡须(Whiskers)。输出标签 y 为1(是猫)或0(不是猫)。

[在此处插入图片8]

决策树的结构包含:

  • 根节点 (root node):树的起点,代表第一个判断特征(例如 Ear shape)。
  • 决策节点 (decision nodes):树的中间节点,代表后续的判断特征。
  • 叶节点 (leaf nodes):树的终点,代表最终的分类结果(Cat 或 Not cat)。
    对一个新样本进行预测时,从根节点开始,根据其特征值沿树的分支向下,直至到达一个叶节点,该叶节点即为预测结果。

3.2 决策树学习的核心问题

[在此处插入图片9]

对于同一份数据,可以构建出多种不同结构的决策树。

[在此处插入图片10]
在这里插入图片描述
[在此处插入图片12]

决策树学习算法主要解决两个核心问题:

  1. 决策1:如何选择在每个节点上用于分裂的特征?
    • 原则:选择能最大化节点纯度(purity或最小化不纯度(impurity的特征。一个纯的节点意味着其包含的样本尽可能属于同一类别。
  2. 决策2:何时停止分裂?
    • 停止条件
      • 当一个节点已经是100%的同一类别时。
      • 当分裂会导致树超过预设的最大深度时。
      • 当分裂带来的纯度提升低于某个阈值时。
      • 当一个节点中的样本数量低于某个阈值时。

3.3 用熵衡量不纯度

[在此处插入图片13]
[在此处插入图片14]

熵(Entropy是用来衡量不纯度的常用指标。

  • p₁ 被定义为节点中“是猫”的样本所占的比例。
  • 熵函数 H(p₁) 的图像显示:
    • 当节点完全纯净时(p₁=0p₁=1),熵 H(p₁)=0
    • 当节点最不纯时(p₁=0.5),熵达到最大值 H(p₁)=1
  • 熵的计算公式 (针对二分类问题):
    • H(p₁) = -p₁log₂(p₁) - p₀log₂(p₀),其中 p₀ = 1 - p₁
    • 根据约定,0 log₂(0) = 0

3.4 信息增益:选择最佳分裂

[在此处插入图片15]
[在此处插入图片16]

信息增益(Information Gain是用来决定最佳分裂特征的指标。它衡量了进行一次分裂后,熵(不纯度)的减少量。

  • 计算过程
    1. 计算分裂前父节点的熵 H(p₁_root)
    2. 计算分裂后所有子节点熵的加权平均值。权重 w 是每个子节点的样本数占父节点总样本数的比例。
    3. Information Gain = H(p₁_root) - (w_left * H(p₁_left) + w_right * H(p₁_right))
  • 在图例中,初始节点熵为 H(0.5)=1
    • 按“Ear shape”分裂,信息增益为 1 - [ (5/10)H(0.8) + (5/10)H(0.2) ] = 0.28
    • 按“Face Shape”分裂,信息增益为 0.03
    • 按“Whiskers”分裂,信息增益为 0.12
  • 由于“Ear shape”的信息增益最高,因此算法选择它作为第一个分裂特征。

3.5 决策树学习算法流程

[在此处插入图片17]
[在此处插入图片18]

决策树的学习是一个递归分裂(Recursive splitting的算法,其流程如下:

  1. 从根节点开始,该节点包含所有训练样本。
  2. 计算所有可用特征的信息增益,选择信息增益最高的特征。
  3. 根据所选特征将数据集分裂,创建新的分支和子节点。
  4. 对每个子节点,递归地重复步骤2和3,直到满足预设的停止条件。

如图所示,在根据“Ear shape”分裂后,算法会对“Pointy”和“Floppy”两个子节点分别应用相同的逻辑,继续寻找最佳分裂特征(“Face shape”和“Whiskers”),从而构建出完整的决策树。

Read more

二手平台出现OpenClaw卸载服务,299元可上门“帮卸”;2026年春招AI人才身价暴涨:平均月薪超6万;Meta辟谣亚历山大·王离职 | 极客头条

二手平台出现OpenClaw卸载服务,299元可上门“帮卸”;2026年春招AI人才身价暴涨:平均月薪超6万;Meta辟谣亚历山大·王离职 | 极客头条

「极客头条」—— 技术人员的新闻圈! ZEEKLOG 的读者朋友们好,「极客头条」来啦,快来看今天都有哪些值得我们技术人关注的重要新闻吧。(投稿或寻求报道:[email protected]) 整理 | 苏宓 出品 | ZEEKLOG(ID:ZEEKLOGnews) 一分钟速览新闻点! * 微信员工辟谣“小龙虾可自动发红包”:不要以讹传讹 * 蚂蚁集团启动春招,超 70% 为 AI 相关岗位 * 受贿 208 万!拼多多一员工被抓 * 2026 年春招 AI 人才身价暴涨: 平均月薪超 6 万元 * 二手平台出现 OpenClaw 上门卸载服务 * 权限太高,国家互联网应急中心发布 OpenClaw 安全应用的风险提示 * 字节豆包内测 AI 电商功能:无需跳转抖音,日活用户数超

By Ne0inhk
遭“美国政府封杀”后,Anthropic正式提起诉讼!

遭“美国政府封杀”后,Anthropic正式提起诉讼!

整理 | 苏宓 出品 | ZEEKLOG(ID:ZEEKLOGnews) 据路透社报道,当地时间周一,AI 初创公司 Anthropic 正式对美国国防部及特朗普政府提起诉讼,抗议五角大楼将其列为“国家安全供应链风险”主体的决定。 Anthropic 在向美国加州北区地方法院提交的诉讼文件中表示,这一认定“史无前例且非法”,已对公司造成“不可挽回的损害”。公司希望法院撤销该决定,并指示联邦机构停止执行相关认定。 划定 AI 应用红线,双方观点不一 正如我们此前报道,这场争端的核心在于 Anthropic 为其核心 AI 模型 Claude 设定的两条技术使用红线,与美国国防部的使用需求发生根本冲突。 此前,Anthropic 曾与五角大楼签署一份价值最高可达 2 亿美元的合作合同,Claude 也成为少数被纳入美国机密网络环境进行测试的 AI 系统之一。 对此,Anthropic 一直坚持两条底线: * Claude 等技术不得被用于对美国民众的大规模国内监控;

By Ne0inhk
为省5-10美元差点毁库!Claude一条指令删光200万条数据、网站停摆24小时,创始人坦言:全是我的错

为省5-10美元差点毁库!Claude一条指令删光200万条数据、网站停摆24小时,创始人坦言:全是我的错

编译 | 屠敏 出品 | ZEEKLOG(ID:ZEEKLOGnews) AI 时代,一次看似普通的操作,竟能让整套生产环境与近 200 万条数据瞬间「归零」。 近日,数据科学社区 DataTalks.Club 创始人 Alexey Grigorev 就遭遇了这样的惊魂时刻,他在使用 AI 编程工具 Claude Code 管理网站服务器时,意外清空了平台积累 2.5 年的核心数据,甚至连数据库快照也未能幸免,导致网站停摆整整 24 小时。 这起事故不仅在开发者社区引发热议,更给所有依赖 AI 工具与自动化运维的从业者敲响了警钟。事后,Alexey Grigorev 公开复盘了整个过程,并揭露了此次事故的核心问题。让我们一起看看。 一次看似很普通的网站迁移 这场“删库”事件的前因,其实并不复杂。

By Ne0inhk
星标超 28 万,OpenClaw 两天两次大更!适配GPT 5.4,告别“抽卡式 Prompt”

星标超 28 万,OpenClaw 两天两次大更!适配GPT 5.4,告别“抽卡式 Prompt”

整理 | 梦依丹 出品 | ZEEKLOG(ID:ZEEKLOGnews) “We don’t do small releases.” 这是 OpenClaw 在发布 2026.3.7 版本时写下的一句话。 刚刚过去的周六与周日,这个 GitHub 星标已超 28 万 的 AI Agent 开源项目再次迎来两轮重量级更新。 两天两次更新:OpenClaw 做了一次“真正的大版本升级” 打开 OpenClaw 的 GitHub 更新日志,你会发现这次版本更新的规模确实不小。在 3 月 7 日发布更新后,第二天又迅速推出 2026.3.8-beta.1 和

By Ne0inhk