訂閱
糾錯(cuò)
加入自媒體

Prophet:Facebook 簡(jiǎn)單高效的時(shí)間序列模型

3.1 趨勢(shì)模型

首先是趨勢(shì)模型 g(t)。

在 Prophet 算法里,趨勢(shì)模型有兩個(gè)選擇,一個(gè)是基于飽和增長(zhǎng)模型 (saturating growth model),另一個(gè)是基于分段線性函數(shù) (piecewise linear model)。

3.1.1 飽和增長(zhǎng)模型

Prophet 使用如下形式的飽和增長(zhǎng)模型:

其中,C 為承載能力(如可上網(wǎng)人數(shù)、可處理事件等),k 為增長(zhǎng)率,m 為偏移參數(shù)。

當(dāng) C=1,k=1,m=0 時(shí)就是大家常見的 Sigmoid 函數(shù)的形式。

在現(xiàn)實(shí)生活中,承載能力、增長(zhǎng)率和偏移參數(shù)并不是一成不變的,所以作者將其轉(zhuǎn)換為隨時(shí)間變化的函數(shù):

除此之外,現(xiàn)實(shí)中的時(shí)間序列其走勢(shì)也不是不變的,在某些特定的時(shí)候會(huì)發(fā)生改變,這就需要用戶去研究變點(diǎn)檢測(cè) (change points)。

在 Prophet 中,變點(diǎn)的位置是需要設(shè)置的,每一段的趨勢(shì)和走勢(shì)也會(huì)隨著變點(diǎn)的設(shè)置而改變。目前有兩種方法去設(shè)置變點(diǎn),一種是人工指定的方式,另一種是通過(guò)算法來(lái)自動(dòng)選擇。

假設(shè)現(xiàn)在有 S 個(gè)變點(diǎn),變點(diǎn)的時(shí)間戳為

,

每個(gè)變點(diǎn)都會(huì)出現(xiàn)增長(zhǎng)率的變化  。如果初始增長(zhǎng)率為 k 的話,那么時(shí)間戳 t 上的增長(zhǎng)率為:

其中

為指示函數(shù):

一旦初始增長(zhǎng)率 k 確定,那么偏移參數(shù) m 也會(huì)隨之確定。

既然是分段函數(shù),我們也需要處理好分段邊界:

所以分段邏輯回歸模型為:

此外我們含有一個(gè)重要參數(shù) C(t),該參數(shù)需要用戶根據(jù)市場(chǎng)規(guī)模來(lái)進(jìn)行調(diào)整。

3.1.2 分段線性模型我們?cè)賮?lái)看一下分段線性函數(shù),根據(jù)

給出基本模型:

其中 k 表示增長(zhǎng)率,

表示增長(zhǎng)率的變化量,m 為偏移參數(shù),

值得注意的是,分段線性函數(shù)并沒有表示承載能力的

參數(shù)。

3.1.3 序列中的變點(diǎn)變點(diǎn)可以由分析師人工設(shè)定,相應(yīng)的參數(shù)有變點(diǎn)的位置、個(gè)數(shù)、增長(zhǎng)的變化率。

當(dāng)然,也可以根據(jù)候選對(duì)象進(jìn)行自動(dòng)選擇。自動(dòng)選擇主要是利用了先驗(yàn)知識(shí)

,參數(shù)

控制模型變換的靈活性,當(dāng)

趨于 0 時(shí),增長(zhǎng)函數(shù)將蛻變?yōu)?Logistic 函數(shù)或者線性函數(shù)。默認(rèn)情況下,Prophet 會(huì)在時(shí)間序列前 80% 的范圍里,通過(guò)等份的方法找到 25 個(gè)變點(diǎn),而變點(diǎn)的增長(zhǎng)率滿足 Laplace 分布

3.1.4 趨勢(shì)預(yù)測(cè)現(xiàn)在,歷史 T 個(gè)數(shù)據(jù)點(diǎn)中有 S 個(gè)變點(diǎn),且對(duì)應(yīng)的增長(zhǎng)率的變化量服從

,但預(yù)測(cè)未來(lái)也需要考慮未來(lái)的變點(diǎn)位置。

作者通過(guò)歷史數(shù)據(jù)推斷出方差,從而替換

來(lái)模擬未來(lái)的速率變化。在一個(gè)完全貝葉斯框架下,可以通過(guò)先驗(yàn)知識(shí)來(lái)獲得它的后驗(yàn)概率,或者我們也可以用最大似然估計(jì)來(lái)評(píng)估速率尺度參數(shù):

。

未來(lái)變點(diǎn)位置將通過(guò)隨機(jī)抽樣的方法使變點(diǎn)的平均頻率與歷史數(shù)據(jù)相匹配:

因此,我們保證了未來(lái)和歷史具有相同平均頻率和變點(diǎn)變化率,從而衡量預(yù)測(cè)未來(lái)趨勢(shì)中的不確定性,一旦從數(shù)據(jù)中推斷出了 λ ,我們便可以使用生成模型來(lái)模擬未來(lái)可能的趨勢(shì),并使用模擬的趨勢(shì)來(lái)計(jì)算不確定區(qū)間。

3.2 季節(jié)性模型

季節(jié)性(這里指周期性)是大部分時(shí)間序列都會(huì)考慮其中的,因?yàn)闀r(shí)間序列通常會(huì)隨著天、周、月、年等的變化而呈現(xiàn)周期性變化。為了擬合和預(yù)測(cè)這些數(shù)據(jù),作者制定了季節(jié)模型。

作者利用傅立葉級(jí)數(shù)來(lái)提供一個(gè)靈活的周期性影響:

其中,P 為周期(一年 P=365.25,一個(gè)星期 P=7);N 為經(jīng)驗(yàn)所得(年 N=10,周N=3)。

我們另傅立葉級(jí)數(shù)的參數(shù)為

,則可以用這個(gè)來(lái)構(gòu)造一個(gè)季節(jié)性向量矩陣。

例如當(dāng) N=10 時(shí):

季節(jié)項(xiàng)表示為:

作者用標(biāo)準(zhǔn)化

對(duì)參數(shù)

進(jìn)行初始化, σ 為可設(shè)置參數(shù),值越大,季節(jié)效應(yīng)越明顯;值越小,季節(jié)效應(yīng)越不明顯。

<上一頁(yè)  1  2  3  4  下一頁(yè)>  
聲明: 本文由入駐維科號(hào)的作者撰寫,觀點(diǎn)僅代表作者本人,不代表OFweek立場(chǎng)。如有侵權(quán)或其他問(wèn)題,請(qǐng)聯(lián)系舉報(bào)。

發(fā)表評(píng)論

0條評(píng)論,0人參與

請(qǐng)輸入評(píng)論內(nèi)容...

請(qǐng)輸入評(píng)論/評(píng)論長(zhǎng)度6~500個(gè)字

您提交的評(píng)論過(guò)于頻繁,請(qǐng)輸入驗(yàn)證碼繼續(xù)

  • 看不清,點(diǎn)擊換一張  刷新

暫無(wú)評(píng)論

暫無(wú)評(píng)論

人工智能 獵頭職位 更多
掃碼關(guān)注公眾號(hào)
OFweek人工智能網(wǎng)
獲取更多精彩內(nèi)容
文章糾錯(cuò)
x
*文字標(biāo)題:
*糾錯(cuò)內(nèi)容:
聯(lián)系郵箱:
*驗(yàn) 證 碼:

粵公網(wǎng)安備 44030502002758號(hào)