成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

在R中使用開源大規模預測工具Prophet

大數據
Prophet 是 Facebook 推出的開源大規模預測工具,可以在 R 和 Python 中使用以預測時間序列數據。

Prophet 是 Facebook 推出的開源大規模預測工具,可以在 R 和 Python 中使用以預測時間序列數據。

下面將簡單介紹 Prophet 在 R 中的使用。

一、基礎介紹

下面實例中使用的是佩頓 · 曼寧的維基百科主頁每日訪問量的時間序列數據(2007/12/10 – 2016/01/20)。我們使用 R 中的 Wikipediatrend 包獲取該數據集。這個數據集具有多季節周期性、不斷變化的增長率和可以擬合特定日期(例如佩頓 · 曼寧的決賽和超級碗)的情況等 Prophet 適用的性質,因此可以作為一個不錯的例子。( 注: 佩頓 · 曼寧為前美式橄欖球四分衛)

在 R 中,Prophet 提供了一個 prophet 函數去擬合模型并且返回一個模型對象,可以對這個模型對象執行“預測”( predict )和“繪圖”( plot )操作。

使用 prophet_plot_components 函數去展示預測中的趨勢、周效應和年度效應。

注: Windows 系統語言設置為中文的話,會導致 R 輸出成分分析圖時,周效應無法正常顯示,可在 R 中使用 Sys.setlocale("LC_ALL","English") 代碼將環境改為英文。

二、預測增長

默認情況下, Prophet 使用線性模型進行預測。當預測增長情況時,通常會存在可到達的***極限值,例如:總市場規模、總人口數等等。這被稱做承載能力,那么預測時就應當在接近該值時趨于飽和。

Prophet 可使用 logistic 增長 趨勢模型進行預測,同時指定承載能力。下面使用 R 語言的維基百科主頁 訪問量(取對數)的實例來進行說明。

三、趨勢突變點

默認情況下, Prophet 將自動監測到突變點,并對趨勢做適當地調整。

下面將會介紹幾種使用的方法可以對趨勢的調整過程做更好地控制。

1. 調整趨勢的靈活性

如果趨勢的變化被過度擬合(即過于靈活)或者擬合不足(即靈活性不夠),可以利用輸入參數 changepoint.prior.scale 來調整稀疏先驗的程度。默認下,這個參數被指定為 0.05 。

增加這個值,會導致趨勢擬合得更加靈活。如下代碼和圖所示:

減少這個值,會導致趨勢擬合得靈活性降低。如下代碼和圖所示:

四、節假日效應

1. 對節假日建模

如果需要專門對節假日進行建模,你就必須得為此創建一個新的數據框,其中包含兩列(節假日 holiday 和日期戳 ds ),每行分別記錄了每個出現的節假日。

你可以在這個數據框基礎上再新建兩列 lower_window 和 upper_window ,從而將節假日的時間擴展成一個區間 [ lower_window , upper_window ] 。舉例來說,如果想將平安夜也加入到 “圣誕節” 里,就設置 lower_window = -1 , upper_window = 0 ;如果想將黑色星期五加入到 “感恩節” 里,就設置 lower_window = 0 , upper_window = 1 。

下面我們創建一個數據框,其中包含了所有佩頓 · 曼寧參加過的決賽日期:

上述代碼中,我們將超級碗的日期既記錄在了決賽的日期數據框中,也記錄在了超級碗的日期數據框中。這就會造成超級碗日期的效應會在決賽日期的作用下疊加兩次。

一旦這個數據框創建好了,就可以通過傳入 holidays 參數使得在預測時考慮上節假日效應。

可通過 forecast 數據框,來展示節假日效應:

在成分分析的圖中,如下所示,也可以看到節假日效應。我們可以發現,在決賽日期附近有一個穿透,而在超級碗日期時穿透則更為明顯。

2. 對節假日和季節性設定先驗規模

如果發現節假日效應被過度擬合了,通過設置參數 holidays.prior.scale 可以調整它們的先驗規模來使之平滑,默認下該值取 10 。

和之前相比,節假日效應的規模被減弱了,特別是對觀測值較少的超級碗而言。類似的,還有一個 seasonality.prior.scale 參數可以用來調整模型對于季節性的擬合程度。

五、預測區間

在預測時,不確定性主要來源于三個部分:趨勢中的不確定性、季節效應估計中的不確定性和觀測值的噪聲影響。

1. 趨勢中的不確定性

預測中,不確定性***的來源就在于未來趨勢改變的不確定性。Prophet 假定 “未來將會和歷史具有相似的趨勢” 。尤其重要的是,我們假定未來趨勢的平均變動頻率和幅度和我們觀測到的歷史值是一樣的,從而預測趨勢的變化并通過計算,最終得到預測區間。

這種衡量不確定性的方法具有以下性質:變化速率靈活性更大時(通過增大參數changepoint.prior.scale 的值),預測的不確定性也會隨之增大。原因在于如果將歷史數據中更多的變化速率加入了模型,也就代表我們認為未來也會變化得更多,就會使得預測區間成為反映過擬合的標志。

預測區間的寬度(默認下,是 80% )可以通過設置 interval.width 參數來控制:

2. 季節效應中的不確定性

默認情況下, Prophet 只會返回趨勢中的不確定性和觀測值噪聲的影響。你必須使用貝葉斯取樣的方法來得到季節效應的不確定性,可通過設置 mcmc.samples 參數(默認下取 0 )來實現。

上述代碼將***后驗估計( MAP )取代為馬爾科夫蒙特卡洛取樣 ( MCMC ),并且將計算時間從 10 秒延長到 10 分鐘。如果做了全取樣,就能通過繪圖看到季節效應的不確定性了:

六、異常值

下面我們使用之前使用過的 R 語言維基百科主頁對數訪問量的數據來建模預測,只不過使用存在時間間隔并不完整的數據:

如上 R 輸出圖所示,趨勢預測看似合理,預測區間的估計卻過于廣泛。

處理異常值***的方法是移除它們,而 Prophet 使能夠處理缺失數據的。如果在歷史數據中某行的值為空( NA ),但是在待預測日期數據框 future 中仍保留這個日期,那么 Prophet 依舊可以給出該行的預測值。

上述這個實例雖然影響了不確定性的估計,卻沒有影響到主要的預測值 yhat 。但是,現實往往并非如此,接下來,在上述數據集基礎上加入新的異常值后再建模預測:

這里 2015年 6 月存在一些異常值破壞了季節效應的估計,因此未來的預測也會***地受到這個影響。***的解決方法就是移除這些異常值:

七、非日數據

Prophet 處理的對象并非必須是日數據,不過要是試圖通過非日數據來預測每日的情況或擬合季節性效應,往往會得到奇奇怪怪的結果。下面使用美國零售業銷售量數據來預測未來 10 年的情況:

 

預測結果看起來非常雜亂,原因正是在于這個特殊的數據集使用的是月數據。當我們擬合年度效應時,只有每個月***天的數據,而且對于其他天的周期效應是不可測且過擬合的。當你使用 Prophet 擬合月度數據時,可以通過在 make_future_dataframe 中傳入頻率參數只做月度的預測。

 


責任編輯:武曉燕 來源: 36大數據
相關推薦

2017-02-28 19:27:22

Facebook開源Prophet

2022-03-21 08:30:13

開源模型訓練預測引擎

2022-07-01 18:50:32

英特爾

2010-04-29 17:51:40

Unix工具

2012-03-09 10:26:26

2023-05-09 18:45:28

監控監視工具

2022-12-09 14:07:11

框架開源

2022-11-01 16:19:47

Powershell開源命令

2015-08-10 10:34:06

2017-03-07 13:14:04

深度學習

2020-06-10 10:00:53

Serverless數據處理函數

2016-10-12 09:22:51

數據分析技術Apache Kyli

2023-05-10 10:54:37

項目ts代碼

2020-11-16 08:54:05

Google 開源技術

2016-01-29 20:23:23

華為

2017-04-26 13:30:24

爬蟲數據采集數據存儲

2009-04-09 09:32:00

VoWLANWLAN

2010-09-01 15:16:49

WLAN交換機結構

2017-03-13 18:07:22

互聯網

2013-03-21 09:24:28

點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 夜夜草 | 精品视频一区二区三区在线观看 | 欧美亚洲视频在线观看 | 黄片毛片免费看 | 欧美中文字幕一区二区三区 | 欧美精品一区二区三区四区五区 | a黄视频 | 成人av在线播放 | 一区二区久久电影 | 日韩中文在线视频 | 男女羞羞视频在线免费观看 | 亚洲综合日韩精品欧美综合区 | 国产精品免费一区二区三区四区 | 亚州综合在线 | 亚洲 一区 | 久久精品| 国产农村妇女精品一区 | 亚洲视频中文字幕 | 精品国产乱码 | 国产日韩久久 | 91精品国产乱码久久蜜臀 | 鲁视频| 国产精品国产亚洲精品看不卡15 | 黄色网址免费在线观看 | 黄色大片在线视频 | 成人三区| 欧美日韩国产三级 | www.亚洲视频 | 午夜精品久久久久久久 | 国产高清在线精品一区二区三区 | 欧美日韩亚洲视频 | 色婷婷av久久久久久久 | 精品久久久久久久久久久久久久 | 成人1区2区 | 欧美国产日韩在线 | 精品一区精品二区 | 激情自拍偷拍 | 午夜小视频在线观看 | 91一区二区 | 国产福利免费视频 | 日本激情一区二区 |