在Uber,活动预测使我们能够根据预期的用户需求来实现未来的服务。目标是准确预测Uber在任何给定时间将收到的何时,何时和多少乘车请求。
极端事件 - 假期,音乐会等旅行时间,讨论天气和体育赛事 - 仅提高了预测对运营计划的重要性。计算需求时间序列预测在极端事件中是关键的组成部分异常检测,最佳资源分配和预算。
尽管极端事件的预测是Uber运营的关键部分,但数据稀疏性使准确的预测具有挑战性。考虑一下除夕(NYE),这是Uber最繁忙的日期之一。我们只有少数NYE可以使用,每个实例可能都有不同的用户。除了历史数据外,极端事件预测还取决于许多外部因素,包括天气,人口增长和营销变化,例如驾驶员激励措施。1
古典时间序列模型的组合,例如在标准R预测软件包,机器学习方法通常用于预测特殊事件。2,,3但是,这些方法既不灵活,也不足够可扩展。
在本文中,我们介绍了一个Uber预测模型,该模型将历史数据和外部因素结合在一起,以更精确地预测极端事件,突出显示其新体系结构以及与我们以前的模型的比较。
创建Uber的新极端活动预测模型
随着时间的流逝,我们意识到,为了按大规模发展,我们需要升级我们的预测模型,以准确预测Uber市场的极端事件。
我们最终根据基于长期长期记忆(LSTM)体系结构,一种具有端到端建模的技术,易于合并外部变量和自动特征提取能力。4通过在众多维度上提供大量数据,LSTM方法可以对复杂的非线性特征相互作用进行建模。
选择架构后,我们评估了培训模型所需的数据积压,如下所示:
由于频率不足,对极端事件的预测可能很困难。为了克服这种数据缺陷,我们决定培训一个灵活的神经网络立即建模来自许多城市的数据,极大地提高了我们的准确性。
使用神经网络建立新的体系结构
我们的目标是设计一个通用的端到端时间序列预测模型,该模型可扩展,准确且适用于异质时间序列。为了实现这一目标,我们使用了数千个时间序列来训练多模块神经网络。
我们测量并跟踪了原始外部数据以构建此神经网络,如下所示:
该原始数据在我们的培训模型中用于进行简单的预处理,包括对数转换,缩放和数据逐渐降低。
滑动窗户的培训
需要我们神经网络的培训数据集滑动窗口所需滞后的X(输入)和Y(输出)(例如,输入大小)以及预测范围。使用这两个窗口,我们通过最小化了一个神经网络损失功能, 如平方误差。
X和Y Windows都单一的增量滑动以生成培训数据,如下所示:
接下来,我们解释如何使用培训数据来设计自定义LSTM模型。
调整我们的LSTM模型
在测试过程中,我们确定香草与基线模型相比,LSTM实施没有表现出卓越的性能,该模型包括单变量预测和机器学习元素的组合。香草模型无法与未经训练的域进行适应时间序列,这导致使用单个神经网络时的性能差。
为数百万个指标训练每次序列的一种模型是不切实际的。根本没有足够的资源,更不用说白天了。此外,训练单个香草LSTM不会产生竞争结果,因为该模型无法区分不同的时间序列。虽然可以将时间序列功能和输入手动加载到香草LSTM模型中,但这种方法乏味且容易出错。
为了提高我们的准确性,我们将一个自动特征提取模块纳入了我们的模型,如下所示:
我们决定构建一种神经网络体系结构,该架构可通过自动进行单模,异质预测特征提取模块。6如图4所示,模型首先是通过自动的网络来源基于合奏特征提取。提取特征向量后,使用标准的集合技术将它们取平均值。然后将最终矢量与输入连接以产生最终的预测。
在测试期间,我们能够达到14.09%对称的平均绝对百分比错误(Smape)对基本LSTM体系结构的改进,比使用的经典时间序列模型改进了25%以上argos,Uber的实时监控和根本原因探索工具。
随着我们的架构成功开发,定制和测试,现在是时候在生产中使用该模型了。
使用新的预测模型
一旦计算了神经网络的权重,就可以用任何编程语言导出和实现它们。我们当前的管道首先使用TensorFlow和凯拉斯然后将产生的权重导出到本机GO代码中,如下所示:
出于本文的目的,我们在七天,在圣诞节和元旦(如圣诞节和元旦之类的假期)的七天内,在美国各地的Uber旅行五年的日常历史建立了一个模型。
我们提供平均在此预测范围内使用我们以前的新型号(下面):
例如,我们的新模型发现,要预测的最困难的假期之一是圣诞节,这与骑手需求的最大错误和不确定性相对应。
我们描绘了在一个城市的200天期间的预测和实际完整旅行的图:下面:
我们的测试结果表明,与我们的专有模型相比,准确性增加了2-18%。
虽然神经网络对Uber有益,但此方法不是银弹。根据我们的经验,我们定义了三个维度,用于确定神经网络模型是否适合您的用例:(a)时间序列数,(b)时间序列序列序列和(c)时间序列之间的相关性。这三个维度都增加了神经网络方法将相对于经典时间序列模型更准确地预测的可能性。
预测将来
我们打算通过为异构时间序列创建一般的预测模型,以作为独立的端到端模型或在较大的自动预测系统中的构建块来继续使用神经网络。如果这种研究激发了您的兴奋(您碰雷竞技是骗人的巧是下面),查看Uber的论文时间序列研讨会在此期间国际机器学习会议2017年8月6日在悉尼。
Nikolay Laptev,Santhosh Shanmugam和Slawek Smyl是Uber智能决策系统团队的数据科学家。
致谢:Li Erran Li是一位深度学习工程师Uber ATG。Jason Yosinski是一位研究科雷竞技是骗人的学家Uber AI实验室。
编辑注释2018年2月5日:我们已经澄清了Uber对ICML时间序列研讨会的贡献。〜康纳·米尔沃尔德(Conor Myhrvold)
脚注
Å霍恩(John D.)和曼森雷特(Manzenreiter)为大型事件进行核算。国际体育社会学评论,39(2):187–203,2004。
²Hyndman,Rob J和Khandakar,Yeasmin。自动时间序列预测:R.统计软件杂志的预测软件包,26(3):1-22,2008。
3Meinshausen,尼古拉。分数回归森林。机器学习研究杂志,7:983–999,2006。雷竞技是骗人的
4阿萨德(Assaad),穆罕默德(Mohammad),骨,浪漫主义者(Romuald)和卡德(Cardot),休伯特(Hubert)。一种新的增强算法,用于改进通过复发性神经网络预测的时间序列。inf。Fusion,9:41-55,2006。
5Ogunmolu,Olalekan P.,GU,Xuejun,Jiang,Steve B.和Gans,Nicholas R.使用深层动态神经网络的非线性系统识别。Corr,2016年。
6Rob J. Hyndman,Earo Wang,Nikolay Laptev:大规模不寻常的时间序列检测。ICDM研讨会2015。






