Uber用机器学习和人工智能打造更可靠的交通工具

0
Uber用机器学习和人工智能打造更可靠的交通工具

最近几个月,Uber Engineering分享了我们如何使用机器学习(ML)、人工智能(AI)和先进技术为用户创造更无缝、更可靠的体验。从介绍贝叶斯神经网络架构那更准确的估计行程增长,给我们实时特征预测系统,甚至我们自己内部的ml即服务平台,米开朗基罗在美国,这两个领域对于支持优步为所有人、所有地方开发可靠的交通解决方案的使命至关重要。

在其他领域,我们使用ML来实现高效的拼车市场,识别可疑或欺诈账户,建议最佳的取货点和送餐点,甚至通过推荐餐厅和预测等待时间来促进更美味的UberEATS配送,以便在你需要的时候把食物送到你身边。但我们如何设计解决方案并开发新的算法来大规模应对这些挑战呢?

在本文中,我们通过描述ML和AI如何使Uber Engineering在我们的产品中交付可靠、安全和无缝的用户体验来解决这个问题。

2017年9月12日,与会者在Uber机器学习Meetup上聆听演讲。

优步和实体世界

物质世界是动态的。影响人类行为(以及应用程序的使用)的环境变化带来了不确定性,因此提供了大量的学习机会。

Uber问题空间的复杂性超出了点击网络链接购买汽车的范畴——我们实际上是在处理汽车本身。在建模交互过程中,从汽车的移动和路线,到实时优化市场两边数千个相互关联的实体,都存在巨大的复杂性。

随着优步用户网络的增长,帮助我们理解物理世界的传感器数量也在增长。我们使用这些信息来构建地图,优化我们的市场,并训练我们的自动驾驶汽车。

超级的问题空间是一种新兴的、快速发展的事物,尤其是在这种规模和维度的交集上:

  • 空间:在宏观层面(全球、区域和城市)和微观层面(骑手、汽车和商品)
  • 时间从几秒到几年
  • 人类:从决策到接受决策的每一个阶段都要参与
  • 活跃的对被建模系统的直接影响和响应
  • 规模:每分钟数以亿计的计算和成千上万的决策为数百万的乘客和司机做出

在下面的视频中,我们将强调如何通过ML处理这个复杂的问题空间:

在接下来的部分中,我们将概述我们的工程师和数据科学家每天要处理的一些ML和AI挑战,首先从我们的Maps团队开始。

设计超级地图

地图是建立在数据基础上的物理世界的代表,优步的核心任务与我们利用这些数据来完善我们的地图技术的能力息息相关。从目的地搜索和预测,生成地图贴图,eta,路线和预先票价估算,地图是我们物流网络的每个元素不可或缺的一部分。从视觉上看,地图覆盖了乘客和司机应用程序ui上95%以上的像素。

图1:一个可视化的突出显示了从旧金山Uber总部出发的出行。

为了实现更无缝的用户体验,我们将我们的地图技术与ML结合起来。实时地,我们根据骑手的当前位置、请求时间和历史信息,为目的地识别上下文感知的建议。即使是对平台或特定城市的新用户,我们也会使用聚合信息和条件概率(在给定的时间和空间背景下,任何用户都会选择特定的目的地)提供目的地建议。

2016年11月推出的“目的地预测”只是我们如何使用ML改进地图的一个例子。自实现以来,我们发现目的地预测完成了超过50%的所有目的地条目,这证明了我们算法的准确性。

图2:目的地预测排名利用了各种功能,以及梯度增强的决策树,为乘客提供目的地建议。

目的地预测过程由五个不同的步骤组成:

  1. 客户端调用服务端点。
  2. 该服务从特征库中检索候选者,并根据提供的纬度/经度和时间对候选者进行排名。
  3. 该服务返回排名前七的目的地建议,候选目的地是从人们之前旅行和搜索过的地方中选出的。
  4. 使用关于物理世界和ML的存储信息的组合,该服务生成一个带有一系列特性的地点列表,包括具有相应请求时间和当前时间的流行目的地的直方图。
  5. 然后,一个机器学习评分器将这些地方进行排名,并结合来自另一个模型的反馈,该模型训练如何分别对这些组件进行加权。

如前所述,在开发该功能时,我们需要考虑如何为没有旅行历史记录的新用户提供建议,以上下文感知的方式提取。为了解决这个问题,目的地预测使用聚合数据来识别和建议热门地点。

在下面的视频中,我们总结了使用ML构建更好地图的方法:

地图和路线系统对于运送乘客和司机至关重要,但在我们开始移动之前,定价和调度决策是如何做出的呢?

Uber市场的发展

要回答这个问题,只需看看Uber Marketplace,它是我们服务背后的算法大脑和决策引擎。市场部门的多个团队,包括预测、调度、个性化、需求建模和动态定价,构建和部署ML算法,以处理庞大的协调、超局部决策和学习,以应对我们运输网络的巨大规模和移动。

为了让我们的决策引擎能够感知未来,我们需要能够跨越空间和时间尽可能准确地“看到未来”。ML使我们能够在未来几周内实时生成供应、需求和其他数量的时空预测。我们的算法快速学习和建模外部信号的影响,如全球新闻事件、节日和天气对市场的影响。在大多数情况下,历史数据有限,而在一些城市刚刚推出的情况下,根本没有数据。为了处理这个问题,我们利用了从线性到深度学习模型的技术,包括长短时记忆(LSTM)网络,以帮助我们预测市场的未来状态,甚至在极端事件发生前预测其发生!

图3:一个时空流处理引擎,加上定制模型,每分钟产生数十亿个实时预测。

为了提供无摩擦的运输体验,我们使用ML来创建改进的体验流。基于聚合首选项显示相关目的地和通信。例如,在隆升建模和聚合骑手队列的新技术被使用和生产TensorFlow减少骑手和驾驶员体验中的摩擦点。

一旦骑手准备好旅行,我们还使用ML来匹配骑手和司机。我们的调度算法实时查看数千个特征,每分钟生成超过30M个匹配对预测。这是一个非常复杂的问题,因为我们必须考虑距离、时间、交通、方向和其他现实世界的动态,同时深刻理解司机和乘客的体验需求。结合了基于树的模型、集成技术和匹配优化方法,以确保最佳的旅行体验。事实上,我们在连续行程匹配算法上的创新为我们的乘客和司机每周节省了多年的时间。然后将这些技术进行产业化,利用到达的每个行程请求的最近和历史数据,生成15,000个预测批次,响应时间为100毫秒。

图4:调度匹配利用数千个特性以亚秒级的时间生成数千个预测。

Uber的规模和物理世界建模的高度动态特性使我们的ML挑战在业内是独一无二的。为了解决这个问题,我们还构建了自动学习和改进的系统,这些系统可以通过规模和算法来检测和解决系统中的问题。为了发展这个市场,我们从最初的想法到跨多个团队的生产模式,为我们的乘客和司机创造网络效率,同时在这个过程中创造更无缝的用户体验。

图5:Uber的Marketplace组织通过构建可规模化学习的系统,实现了机器学习的产业化。

在下面的视频中,我们将讨论如何将ML和Uber Marketplace结合起来,为用户创造更好的体验:

我们的应用程序生成了各种各样的数据,这些数据可以用来解决大量的业务用例,但是我们如何使用这些数据来实现跨公司的快速模型构建呢?

构建数据科学平台

为了快速构建模型和算法,利用优步服务处理的大量聚合数据,我们建立了几个数据科学平台。这些平台使我们的数据科学家能够创造技术,提高我们产品和运营的有效性和效率。

米开朗基罗的ML-as-a-service平台,允许公司的用户查询数据,生成特征,并应用大量的ML模型来解决生产中的问题。先进科技组(ATG)开发我们自动驾驶汽车技术的团队、UberEATS、广告和营销只是利用这个强大平台的几个团队。

我们支持ml技术的另一个例子包括我们的自然语言处理(NLP)平台,该平台为我们的客户支持罚单生成和部署可操作的响应,聊天机器人使司机更容易上车,以及建议的应用程序内回复。与我们的承诺对于我们的司机合作伙伴,我们一直在使用我们的NLP平台和深度学习模型,以改善我们的支持票的建议行动和周转时间。

图6:我们可定制的NLP平台使数据科学家能够快速地为聊天机器人、情感分析和支持票的快速响应建立模型。

ML还用于改进内部工程生产系统。为了确保我们的服务全天候可靠,我们用它来缓解随叫随到的责任我们的工程师通过我们的异常检测平台。该工具持续监视成千上万的服务指标,以剔除任何虚假警报。我们结合使用了循环神经网络和新的特征提取技术,因此系统可以学习这些指标的模式,包括昼夜和工作日-周末周期。

警报阈值不断调整,无需人工干预,因此我们总是在任何潜在的业务关键停机之前。在确保每天为数百万人提供安全可靠的交通运输时,系统故障可能会产生巨大影响。

图7:Uber的异常检测平台帮助我们的工程团队最大化可操作的随叫随到警报。

在下面的视频中,我们展示了米开朗基罗,我们的极端事件预测技术,以及其他利用我们的ML研究的工作:雷竞技是骗人的

现在我们已经讨论了如何使用ML来增强我们的数据科学平台,我们如何将这些系统应用到未来的交通工具中:自动驾驶汽车?

与Uber ATG合作设计自动驾驶汽车

全球范围内,每年有130万人死于车祸;仅在美国,94%的致命事故都是人为错误造成的。优步致力于开发技术,通过提高当前和未来用户的安全性来降低这些数据。在人工智能和人工智能的支持下,自动驾驶汽车将在提高道路安全方面发挥重要作用。

图8:一辆Uber ATG自动驾驶汽车的结构包括激光雷达传感器、摄像头、用于GPS定位的天线、计算和存储以及雷达。

到目前为止,优步的自动驾驶汽车已经在宾夕法尼亚州的匹兹堡和亚利桑那州的坦佩等地完成了超过3万次真实的乘客出行。在这些环境中,优步的自动驾驶汽车利用ML来告知它们如何在空间中移动,帮助我们的自动系统理解静止和移动的车辆、行人以及两者之间的一切之间的差异。

图9:使用多个输入和中间反馈循环进行训练,构建端到端自动驾驶学习。

为了确保我们的车辆尽可能安全地运行,优步的自动驾驶毫升技术超越了专注于教汽车驾驶的标准方法。在较高的层面上,我们认为这个问题是通过各种输入来决定方向盘的方向和车辆的速度。然而,这种方法不能解决机器的端到端驱动问题。相反,我们还必须考虑让网络充分捕捉物理世界的动态的例子的数量。如果出现意外,模型必须是可解释的,如果模型不能工作,则必须通过内省进行调试。

这一额外层面的洞察力确保了我们的ML工具和算法能够安全可靠地引导优步的自动驾驶车辆走向无事故的未来。

图10:时间聚合视图为关注安全性的算法创建更密集的信息和时间特征。

ML和AI在Uber的未来

在本文中,我们只讨论了我们在Uber使用ML和AI解决的令人兴奋的挑战中的一小部分。除了其他技术外,我们还将其应用于UberEATS、乘客和司机队列、账户欺诈和风险检测、建议接车点的无监督学习、改进乘客的ETA估计和司机的ETR估计、决策风险管理的概率建模和数据管道优化。

如果你对处理ML和AI挑战有兴趣,那就申请吧一个角色在我们的团队!

Chintan Turakhia是Uber市场定价团队的工程经理,也是湾区机器学习Meetup小组的成员。

Waleed Kadous(传感与感知和地图团队的首席工程师)、Fran Bell(商业平台团队的数据科学经理)和Kumar Chellapilla (Uber先进技术集团的工程总监)对本文也有贡献。

评论