Py学习  »  机器学习算法

数据并不是越多越好,机器学习是一个反复改进的过程.... 不信你问亚马逊

Python程序员 • 5 年前 • 299 次点击  


在UNC的一次演讲中,我有机会参加亚马逊的两位机器学习专家的演讲。 Ed Banti是Core AI亚马逊软件开发总监,Pat Bajari是亚马逊的核心AI副总裁兼首席经济师。 他们二人都分享了他们在亚马逊时对人工智能解决方案合作的见解,并与北卡罗来纳大学Carroll Hall的一群学生和教师进行了交谈(我曾就读的研究生院!)


在公司招聘人员对亚马逊价值观(包括臭名昭着的飞轮效应)的概述之后,Ed谈到了数据分析如何影响飞轮的几个部分,包括在客户面前获得正确的产品,获得正确的数量,以及确保客户满意。 他还就人工智能在学习过程中的实际情况做了一些非常有趣的评论,并不总是意味着第一次就把它弄好了。 实际上,听Ed谈论机器学习程序中出现的“出错的主要类型”是非常有趣的:

  • 一个模型现在正在生产环境中运行,但没有产生与实验中所证明的相同的结果(或者在相同的准确度水平上)...没有人知道为什么

  • 输入数据混乱,不完整或没有按时出现,导致模型训练延迟(请注意,这是我在之前的博客中已经贬低的主题,即强调数据治理作为AI和机器学习基础的关键性质)

  • 模型修复或改进卡在了同样的重写循环中,从而延迟了重要变化的部署

  • 模型是离线训练的,现在正部署在某个生产系统中,而没办法再进行训练或监控。

  • 最终,由于看到他们的工作转化为影响的速度缓慢而使研究受阻,并且工程师们对自己的工作不那么有主导权。


Ed指出亚马逊过去曾犯过所有这些错误(还有更多),机器学习程序员的一个重要经验法则是拥有一套强大的“护栏”,包括标准化单一框架,创建环境 反映生产环境的实验,定义模型必须符合的标准接口,以及封装抽象实验和生产环境的系统。


Pat随后谈到了他在华盛顿大学与一些研究生一起创办的最近一份白皮书的成果。 作为一名学术转型的高管,帕特是一位经验丰富的应用学术计量经济学家,专门从事实证产业组织。 在亚马逊,他的团队将计量经济学,软件开发和机器学习应用于数据驱动的决策。 在本次讲座中,他谈到了“数据对企业绩效的影响”,并指出随着企业获取更多数据,他们可以生成更好的模型,覆盖更多的亚马逊用户,从而产生更多数据,并参考亚马逊飞轮效应。

在这项研究中,亚马逊专注于36个产品线,存储有5年的每周数据,并将预测与实际情况进行比较。 他的团队有兴趣了解预测错误是否随着更多数据的收集而变化,并且在讨论数据变得“大”时意味着更加准确。 他首先注意到,亚马逊曾经使用单一的预测模型来订购他们所有的2500万本书,其中涉及85%的库存。 一般来说,这种方法可能效果很好,但结果会有很多差异。 他们的研究初步结果显示如下:

  • 更多的产品只有在预测过程最初开始时才有用

  • 随着产品数据的增长,获益甚少

  • 每个产品的更多观察很重要

  • 结果与渐近理论(中心极限定理)一致,该理论预测更多数据的获益递减。 总的来说,结果显示亚马逊预测中没有使用单一模型,使用具有潜在时间和产品效应的因子结构产生了优化结果,概括抽象出了一个标准的固定效应模型。

  • 较高速度的数据不会提高精确度的百分比,反而使精度水平变差!


这些发现的含义非常重要,并包含一些重要的经验教训,用于“大数据更好”营销的双曲线声明。 实际上,Pat推测结果似乎与天真的“数据反馈回路”不一致,并且随着产品数量的增加预测准确度是否会增加,这引起了人们的质疑。 在对大量产品进行建模时,规模的不经济性可以抵消精确度的微小改进,而努力应该集中在纵向观察单个产品上。


他还总结了一些关于公司应该如何看待和投资机器学习技术的非常有趣的观点。重要的是选择一个指标来改进,即使它并不完美,但要将其用作衡量绩效改进的基础。帕特指出,改善和学习往往非常缓慢 - 有点像减肥计划缓慢,你减肥的速度很慢。流程每季度可能仅提高20个基点,即每年提高80个基点。这不是很多,但十多年来,它确实有所作为。他还指出,科技公司通常由科学家经营,他们更愿意采用新方法,改进博士论文技术。以“书呆子”为首的这些公司是早期采用者,而管理往往是机器学习模型开发和采用的最重要障碍。云计算也允许技术的传播,采用科学方法的公司,使用理性方法探索非理性问题,将是成功的。他最后的建议 - 学生应该对很多事情有广泛的了解,但需要在一个领域非常深入。数据需要得到解释!



英文原文:https://scm.ncsu.edu/scm-articles/article/more-data-is-not-better-and-machine-learning-is-a-grind-just-ask-amazon
译者:赵四妹


Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/29222
 
299 次点击