[译]基于模型的机器学习 - 插曲:机器学习生命周期
回到第 1 章处理谋杀之谜时,我们首先从犯罪现场收集证据,然后运用我们自己的知识来构建这起谋杀的概率模型。我们以观测变量的形式,把犯罪现场的证据整合进模型,并执行推断来回答我们关心的查询:每个嫌疑人是凶手的概率是多少?随后我们评估推断的结果是否足够好——也就是说,概率是否高到足以认定谋杀已被侦破?当结果不够好时,我们便收集更多数据、扩展模型、重新运行推断,最终达到了我们的目标概率。
在第 2 章评估求职者技能时,我们从参加真实测试的人那里收集数据并对这些数据进行了可视化。然后我们基于对人们如何做测试的知识建立了一个模型。我们运行了推断,并评估出结果不够好。我们诊断了问题、扩展了模型,然后对原始模型和扩展后的模型都进行了评估,以量化改进程度,并检查改进后的模型是否达到了我们的成功标准。
我们可以从这两个例子出发进行归纳,定义出任何基于模型的机器学习应用所需的步骤:
- 收集用于训练和评估模型的数据。
- 收集知识,以帮助做出恰当的建模假设。
- 可视化数据,以更好地理解它、检查数据问题,并获得对有用建模假设的洞见。
- 构建一个模型,使其捕捉关于问题领域的知识,并与你对数据的理解相一致。
- 执行推断,利用数据来固定其他变量的取值,从而对我们关心的变量做出预测。
- 使用某种评估指标来评估结果,看它们是否满足目标应用的成功标准。
在(通常的)系统第一次未能满足成功标准的情况下,还需要额外的两个步骤:
- 诊断那些正在降低预测准确度的问题。可视化是一个强大的工具,能把数据、模型或推断算法的问题暴露出来。推断问题也可以用从模型采样得到的合成数据来诊断(正如我们在第 2 章中所看到的)。在这个阶段,如果推断算法耗时过长而无法完成,可能还需要诊断性能问题。
- 改进系统——这可能意味着改进数据、模型、可视化、推断或评估。
这两个阶段需要不断重复,直到系统达到目标应用所需的性能水平。当使用自动化推断软件时,基于模型的机器学习可以让这种反复改进的过程快得多,因为扩展或修改一个模型非常容易,而推断随后就可以立即应用到修改后的模型上。这使得我们可以对若干个模型进行快速探索,而其中每一个若靠手工编写代码都会非常缓慢。
这个机器学习生命周期的各个阶段可以用一张流程图来说明:
当我们继续进入下一个案例研究时,请把这张生命周期流程图记在心里——它将持续作为解决机器学习问题的模板而发挥作用。
下一章:匹配你的对手
- 本文作者:BeanHsiang
- 本文链接:https://beanhsiang.github.io/post/2026-07-25-mbml-life-cycle/
- 版权声明:本作品采用知识共享署名-非商业性使用-禁止演绎 4.0 国际许可协议. 进行许可,非商业转载请注明出处(作者,原文链接),商业转载请联系作者获得授权。