首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >支持Python!Facebook开源预测工具Prophet

支持Python!Facebook开源预测工具Prophet

作者头像
AI研习社
发布2018-03-29 16:08:55
8710
发布2018-03-29 16:08:55
举报
文章被收录于专栏:AI研习社AI研习社

【AI研习社】关注AI前沿、开发技巧及技术教程等方面的内容。欢迎技术开发类文章、视频教程等内容投稿,邮件发送至:zhangxian@leiphone.com

————————————————————

本周,Facebook 宣布开源一款基于 Python 和 R 语言的数据预测工具——“Prophet”,即“先知”。取名倒是非常直白。

Facebook 表示,Prophet 相比现有预测工具更加人性化,并且难得地提供 Python 支持。另外,它生成的预测结果足以和专业数据分析师媲美。

Facebook 把预测任务的流程用下图展示出来:

从图中可以看出,预测共分四个流程:建模,预测评估,表面问题和人工检查。

在建模阶段,当前可用的 Python 工具包寥寥无几。最广为人知的 “ forecast” ,谷歌开发的 CausalImpact, 以及推特的 AnomalyDetection,均是基于 R 语言。很显然,Facebook 想要改变这一点。

从 Facebook 官方声明来看,推出 Prophet,是希望用它来替代 forecast,成为最受欢迎的预测工具。相对于后者,Facebook 表示 Prophet 有两大优点:

  1. 开发合理、准确的预测模型更加直接。 Prophet 包含许多预测技术,比如 ARIMA 和 exponential smoothing。每一项工具都有它的长处、短处和调节参数。Facebook 表示,选择不恰当的模型或参数会造成让人难以满意的结果;而即便是有经验的数据分析师在选择模型、参数上也经常遇到困难。言下之意是,Prophet 将着重改善这方面的体验,让模型、参数的选择更直观。
  2. 用 Prophet 做出的预测,能够以对普通人更加直观的方式进行定制。 Prophet 有针对周期性的平滑参数(smoothing parameters for seasonality),允许开发者调整与历史周期的匹配程度。它还有针对趋势的平滑参数,能够调整对历史趋势变化的紧跟程度。对于增长曲线(growth curves),开发者能人工设置上限,即 capacities,把关于“该预测如何增长(或下降)”的先验信息注入进去。最后,开发者还能设置不规则日期,来对超级碗、感恩节、黑色星期五之类的特殊日子进行建模。

组成部分

在它的核心,Prophet 是一个可加回归模型(additive regression model),它有四个组成部分:

  1. 一个分段的线性或逻辑增长曲线趋势。Prophet 通过提取数据中的转变点,自动检测趋势变化。
  2. 一个按年的周期组件,使用傅里叶级数(Fourier series)建模而成。
  3. 一个按周的周期组件,使用虚拟变量(dummy variables)。
  4. 用户设置的重要节日表。

适用范围

Prophet 针对的是商业预测任务,适用于具备以下特征的场景:

  • 针对每小时、每天或每星期的观察频次,有至少数月(理想情况的一年)的历史记录。
  • 多重显著的“人类层级”周期性:星期X以及年份。
  • 日期间隔不规则的重要节日(比如超级碗),需要事先得知。
  • 观察缺失或是异常值在合理范围内。
  • 历史趋势变化,比如产品发布或者改写记录(logging changes)。
  • 符合非线性增长曲线的趋势,有天然上、下限或者饱和点。

想要进一步了解 Prophet 的读者,请参考以下链接:

Facebook 博客:https://research.fb.com/prophet-forecasting-at-scale/

使用指南:

https://facebookincubator.github.io/prophet/docs/quick_start.html

文件:http://facebookincubator.github.io/prophet/

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2017-02-26,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 AI研习社 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 组成部分
  • 适用范围
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档