D1第 1 / 6 节 · 约 35 分钟

机器学习的问题地图:标签、基线与完整流程

本节目标
  • 区分监督、无监督与规则方案
  • 把业务问题写成输入输出和评估条件

先确认是否需要机器学习

虚构积木体验站想解决三个问题:预计完成用时、判断某次任务是否可能未完成、把风格相近的任务归组。机器学习是让系统利用数据学习某种模式,而不是人工逐条规定全部规则。如果问题只有检查积木数量是否超过明确上限,一条规则就足够,未必需要训练模型。选择机器学习应有理由,例如关系较复杂、存在足够相关数据、希望对新样本预测。模型不是越复杂越先进,能满足需求且容易核对的简单方案通常更适合作为起点。

标签决定可以怎样学习

监督学习利用输入与对应目标结果学习映射。预测用时的标签是实际分钟数,输出连续数量,属于回归;判断是否完成的标签是完成或未完成,属于分类。无监督学习没有预先给定的目标标签,常见目的是发现结构,例如把任务按照数量、形状和步骤归组。没有标签不意味着没有判断标准,仍需检查分组是否稳定、是否对使用目的有帮助。强化学习则研究根据连续行动与反馈学习策略,不是每个含反馈的表格问题都应归为强化学习。

给任务写一张问题卡

以开始前预测用时为例,输入是积木数量、任务难度和此前练习次数,输出为预计分钟数,预测时点为任务开始前,评价对象是新虚构角色。标签采用完成任务的实际用时,因此未完成记录需另设处理规则,不能把停止时间混成完成时间。如果目标改成预测十分钟内能否完成,标签定义和输出类型也会改变。问题卡应写数据范围、允许输入、目标含义、使用时机和错误代价,它能阻止模型优化到一个与实际需求不同的问题上。

基线是判断改进的参照物

基线是容易实现、可解释的参考方案。回归可以始终预测训练集中位用时,分类可以始终预测多数类别,推荐可以列出近期常见任务。假设十条测试记录八条完成,始终预测完成就有百分之八十准确率。复杂模型达到同样分数,不能只凭看起来很高就宣布有效;还要看它是否更好识别未完成。基线要与模型使用同一划分和指标,才能比较。它不仅降低开发门槛,还能发现数据问题:如果事后字段让成绩异常完美,就应警惕泄漏。

训练到交付是一条闭环

典型流程是定义任务、审核数据、划分集合、建立基线、训练候选模型、在验证集比较、冻结方案、最终测试与误差分析。训练是学习参数,推理是用已经确定的规则对新输入产生结果,两者不可混淆。测试通过也不是部署完成,还要检查新输入是否同分布、字段是否可获得、失败时如何复核。本课程用虚构小数据演练设计,不承诺现实准确率。学会完整流程,比只记住算法名称更能帮助你判断一份模型报告是否可信。

本节要点

  • 先选正确问题,再选模型
  • 输出与标签定义区分回归和分类
  • 基线必须用同一数据划分与指标比较

动手练习:给积木体验站写两张任务卡

  1. 分别定义开始前预测分钟数和十分钟内是否完成两个目标
  2. 为每个目标列三个开始前可得输入
  3. 写标签记录规则及未完成记录怎样处理
  4. 为回归与分类各写一个不训练的基线
  5. 说明评估对象为新角色时应怎样划分

自查清单

  • 正确区分连续输出与类别输出
  • 标签与预测时点一致
  • 基线和划分可执行
先自己做,再查看参考答案

用时任务输出连续分钟数,是回归;十分钟内是否完成输出二元类别,是分类。两者都可使用预先确定的积木数量、难度和此前练习次数,不能使用本次最终用时作为开始前输入。回归标签若定义为完成用时,就应明确未完成尝试没有对应完成时间;分类可按统一十分钟限时生成是与否,未记录结果仍标未知。回归基线可以预测训练集中位数,分类基线可以总猜训练多数类。若评估目标是新角色,应按角色分组划分,模型与基线在同一测试范围比较,并报告小样本局限。

本节自测

学完了吗?

标记后会记录在本机浏览器,课程首页显示你的进度。