Prophet:Facebook 簡單高效的時間序列模型

導(dǎo)讀:

時序預(yù)測是一個很常見的數(shù)據(jù)科學(xué)任務(wù),可以幫助組織或個人進行目標規(guī)劃或者異常檢測等。

本文介紹的是 Facebook 2017 年的工作——Prophet,這是一個適用于大規(guī)模的時序預(yù)測模型。它不僅解決了時序預(yù)測的建模問題,還解決了模型的可解釋性問題。

此外,F(xiàn)acebook 提供了 Prophet 的開源代碼,并且將模型封裝的非常簡單且友好,極大地降低了分析人員的入門門檻,同時也提供了各種接口以便分析人員靈活地調(diào)整模型。

1 為什么有 Prophet

構(gòu)建一個高質(zhì)量的預(yù)測不是一件容易事,而在商業(yè)預(yù)測的實踐過程中通常會出現(xiàn)兩個問題:

完全自動的預(yù)測技術(shù)不夠靈活,過于死板;分析師通常有較高的專業(yè)知識,但是在時序模型預(yù)測方面一無所知;

預(yù)測是一個需要大量專業(yè)經(jīng)驗的任務(wù),因此,如何能夠提供一個高質(zhì)量且簡單易用的預(yù)測模型成了一個亟需解決的問題。

為此,F(xiàn)acebook 的研究員進行了大量的研究,并提出了 Prophet 模型,該模型非常簡單靈活,適用于沒有進行過時序預(yù)測的人員,同時也提供了非常人性化的配置。

下圖展示了大規(guī)模商業(yè)分析中的循環(huán)方法,其由自動化建模和人工干預(yù)兩部分組成:

Modeling:首先分析師會使用制定的參數(shù)對時間序列進行建模;Foreca and Evaluation:然后由模型產(chǎn)生預(yù)測并對其進行評估;Surface Problems:當性能不佳時可以進行人工干預(yù),并將問題標記給分析師;Visually Inspect Forecasts:分析師進行檢查并根據(jù)反饋調(diào)整模型。

2 Prophet 預(yù)測模型

在介紹模型之前,我們先看一張圖:

這是 Facebook 的真實數(shù)據(jù)集,每一天都有一個點,點的顏色按照星期進行編碼,以展示一個星期的周期性。

從這張圖中我們可以看到:這個時間序列具有周期性 (weekly、yearly)、趨勢變化性 (Trend)、異常點 (outliers) 和節(jié)假日效應(yīng) (holiday)。

我們可以使用時間序列分解將其分解為趨勢、季節(jié)性、節(jié)假日:

其中,g(t)建模時間序列值非周期變化的趨勢函數(shù);s(t)建模周期性變換,包括 weekly、yearly;h(t)建模不規(guī)律的假期影響;誤差項 表示模型不適應(yīng)的任何特殊變化;后面我們會假設(shè)這個參數(shù)服從正態(tài)分布。

這類規(guī)范類似于廣義可加模型 (Generalized additive model,GAM),這是一種非線性的回歸模型。這里 Prophet 只使用時間作為回歸因子,并用幾個線性和非線性的時間函數(shù)作為分量。

GAM 不具備 ARIMA 重要的推論優(yōu)勢,但其也具備其他方面的優(yōu)勢:

靈活性強,易于分解,且在必要時也可以容納新的成分;擬合速度快,允許用戶進行交互式探索;測量值不需要有規(guī)則的間隔,也不需要對缺失值進行處理;參數(shù)的可解釋性強,方便用戶更改。

接下來我們關(guān)注模型分解后的不同模塊。

1234下一頁>

(免責(zé)聲明:本網(wǎng)站內(nèi)容主要來自原創(chuàng)、合作伙伴供稿和第三方自媒體作者投稿,凡在本網(wǎng)站出現(xiàn)的信息,均僅供參考。本網(wǎng)站將盡力確保所提供信息的準確性及可靠性,但不保證有關(guān)資料的準確性及可靠性,讀者在使用前請進一步核實,并對任何自主決定的行為負責(zé)。本網(wǎng)站對有關(guān)資料所引致的錯誤、不確或遺漏,概不負任何法律責(zé)任。
任何單位或個人認為本網(wǎng)站中的網(wǎng)頁或鏈接內(nèi)容可能涉嫌侵犯其知識產(chǎn)權(quán)或存在不實內(nèi)容時,應(yīng)及時向本網(wǎng)站提出書面權(quán)利通知或不實情況說明,并提供身份證明、權(quán)屬證明及詳細侵權(quán)或不實情況證明。本網(wǎng)站在收到上述法律文件后,將會依法盡快聯(lián)系相關(guān)文章源頭核實,溝通刪除相關(guān)內(nèi)容或斷開相關(guān)鏈接。 )

贊助商
2020-08-03
Prophet:Facebook 簡單高效的時間序列模型
導(dǎo)讀:時序預(yù)測是一個很常見的數(shù)據(jù)科學(xué)任務(wù),可以幫助組織或個人進行目標規(guī)劃或者異常檢測等。本文介紹的是 Facebook 2017 年的工作——Prophet,這是一個適用于大規(guī)模的時序預(yù)測模型。

長按掃碼 閱讀全文