当前位置: 首页 > 科技观察

这家全球知名的旅游网站在分析了自己的150个ML模型后,得出了6个经验教训

时间:2023-03-19 11:02:51 科技观察

在很多媒体文章中,我们都能看到“机器学习赋能XX行业”的字眼,但是这个“能量”体现在哪些方面反映出来,企业在引入机器学习模型时应该注意哪些问题,很多文章都没有说清楚。在今年的KDD大会录用论文中,全球最大的在线旅行社网站Booking.com贡献了一篇论文,分析了他们为客户提供的150个成功的机器学习应用以及从中吸取的六大教训。本文是论文的简短摘要。“150个成功的机器学习模型:在Booking.com吸取的6条经验教训”是一篇出色的概述,结合了为Booking.com客户提供的大约150个成功的机器学习模型以及从中吸取的经验教训。奇怪的是,尽管有论文的标题,但文中从未明确列出这六个教训。然而,我们可以从论文的划分中推断出这些部分,这是我的解释:使用机器学习模型的项目创造了巨大的商业价值模型性能与业务性能不同弄清楚你试图解决的问题预测延迟是一个importantissue获得关于模型质量的早期反馈用随机对照试验(在第2点中也提到)测试模型的商业影响当然,本文中有超过6个好的建议。我们发现实现真正的业务影响极其困难,更不用说将建模工作与观察到的影响之间的联系脱钩的困难了。我们的主要收获:使用机器学习构建这150个成功的产品是迭代的、假设驱动的过程以及与其他学科相结合的基础。不要将这句话解读为不值得投资于机器学习。相反,我认为提高组织在面向用户的场景中设计、构建和成功部署机器学习模型的能力与提高组织在面向用户的场景中设计、构建和成功部署机器学习模型的能力一样重要-面临的场景。组织竞争力起着基础性的作用。(此外,在未来的报告中看到证实或反驳该假设的数据会很有趣!)Booking.com在构建模型时需要解决哪些问题?您可能听说过Booking.com,“世界上最大的在线旅行社”。由于以下几个因素,为用户提供良好的旅行体验是一项具有挑战性的任务:推荐的风险很高——订错住宿比看不喜欢的电影更糟糕!当用户预订旅行时,他们通常不会提供足够的信息来说明他们真正的期望。住宿供应有限,价格变动会影响客人的喜好。客人的偏好可能会在每次使用该平台时发生变化(例如,如果他们一年只预订一次或两次)。住宿信息过多,用户无法及时消化。这150个型号是什么型号?目前在生产中部署了大约150个机器学习模型,机器学习涉及到Booking.com用户体验的方方面面。有些模型非常具体,专注于特定背景下的特定情况;其他的就像一个语义层,对某些可以在多种上下文中派上用场的概念进行建模,例如基于用户旅程的终点??预测用户灵活性的模型。Booking.com使用的模型可分为六大类:旅行者偏好模型:在语义层面对用户偏好进行各种预测。(如灵活性)旅行者背景模型:同样在语义层面,预测旅程的背景(如家庭旅行,朋友旅行,商务旅行,...)物品空间导航模型:跟踪用户的浏览历史,因此该建议可以从整体上考虑用户个人历史和整个目录。用户界面优化模型:优化背景图片、字体大小、按钮等UI。有趣的是,“我们发现没有特定的值是整体最优值,因此我们的模型将根据上下文和用户信息确定最佳用户界面。”内容管理模型:管理并有选择地显示人工生成的内容,例如评论。内容增强模型:计算有关旅程元素的附加信息,例如哪些选项当前物有所值,或某个地区的价格趋势。第1课:使用机器学习模型的项目创造了巨大的商业价值在Booking.com,上述所有模型都提供了商业价值。基于机器学习的项目往往比其他不使用机器学习的成功项目产生更高的回报。图2:各种模型的商业影响相对于中值影响一旦部署,尽管有直接的商业利益,它们往往会继续构成进一步产品开发的基石。下图显示了一系列产品部署的影响,每个产品部署都建立在前一个产品的基础上,这些产品部署继续改善业务成果。图3:针对推荐产品的一系列实验。每个实验都测试了特定领域或机器学习问题设置的新版本。条形的长度是相对于第一个版本的观察结果(都有显着的统计差异)第2课:模型性能不等于业务性能Booking.com通过随机对照试验衡量模型对某些业务指标的影响,估计模型产生的价值。我们有一个有趣的发现:提高模型性能并不一定会增加商业价值。原因可能有以下几种:商业价值饱和(不管做什么都挤不出来)、受众少造成的部分饱和(新老机型效果大致相同)、失败为某些指标(如转化率)过度优化间接指标(如点击),以及恐怖谷效应(人形玩具或机器人越逼真,越多人喜欢)说明成功转化为业务下图中,但是当超过一个临界点时,这种好感度会突然下降,越像一个人,就越厌恶和恐惧,一直到底部,这种效果称为恐怖谷)。图5:恐怖谷:人们有时不喜欢过于准确的预测(基于马尔可夫链的目的地推荐系统)。图片中的用户抱怨道:“在我去萨尔茨堡之前,booking.com怎么知道我要去维也纳?”第三课:弄清楚你要解决的问题在开始建立模型之前,有必要抽空去维也纳一趟。仔细定义您要解决的问题。问题构建过程将业务案例或概念作为输入,并输出定义明确的建模问题(通常是有监督的机器学习问题),以找到业务案例或概念的良好解决方案。概念建模。一些惊人的改进不是来自为给定系统优化模型,而是来自改变系统本身。例如,将基于点击数据的用户偏好模型转变为基于客人评论数据的自然语言处理问题。我们发现,最好的问题往往不是我们能立即想到的,改变问题的表述可以有效地释放隐藏的价值。第4课:预测延迟是一个重要问题关于性能对业务指标的影响,我们还有另一个重点。在一项引入合成延迟的实验中,Booking.com发现,如果延迟增加30%左右,转化率就会下降0.5%。“这是我们运营的相关成本。”这对于需要强大计算资源来进行预测的机器学习模型尤其重要。即使是数学上简单的模型也有可能引入对结果很重要的延迟。Booking.com使用多种方法来减少模型引入的延迟,包括分发模型的多个副本以实现水平扩展、开发自定义线性预测引擎、偏好参数较少的模型、批处理请求以及预计算和/或缓存。第5课:获得关于模型质量的早期反馈当模型在处理请求时,监控输出质量很重要,但至少有两个问题不容易解决……真实的标签很难观察到,导致反馈不完整。反馈延迟,例如,当模型预测用户是否会在用户进行预订时留下评论时,但在旅行完成之前无法评估该预测的准确性。Booking.com有一个技巧可以很好地解决这种情况下的二元分类问题,即查看模型生成的响应的概率分布。“具有明显高原的平滑双峰分布通常表明该模型能够成功地区分这两个类别。”其他形状(见下图)表明模型可能有一些困难。图7:响应分布图示例...有证据表明,响应分布分析对于在早期阶段检测模型中的缺陷非常有用。第6课:使用随机对照试验来测试模型的业务影响以测试影响。提供了关于如何在不同情况下设置实验的建议。当并非所有受试者都有资格参与变体时(例如,他们不具备模型所需的特征),请在符合条件的受试者子集中创建实验组和对照组。图8:选择性触发的实验设计如果模型产生的结果只在某些情况下影响用户体验,那么进一步限制实验组和对照组的范围,使模型能够在此范围内产生用户可见的输出范围(当然在对照组中没有看到)。为了评估对性能的影响,添加了第三个控制组,它根本不调用模型。图9:根据模型输出触发的实验设计,以及衡量性能影响的控制组在比较模型时,我们对两个模型不一致的情况感兴趣。我们使用仅调用当前模型的控制组(假设我们正在针对当前模型和候选改进版本进行测试)。如果是这样,实验设计将如下所示:图10:比较模型时的实验设计结论当我们通过机器学习创造价值时,假设驱动的迭代和跨学科参与是核心优势。我们希望这项工作可以作为其他机器学习从业者的指南,并激发对该主题的进一步探索。