中文字幕理论片,69视频免费在线观看,亚洲成人app,国产1级毛片,刘涛最大尺度戏视频,欧美亚洲美女视频,2021韩国美女仙女屋vip视频

打開APP
userphoto
未登錄

開通VIP,暢享免費電子書等14項超值服

開通VIP
NeuralProphet:基于神經(jīng)網(wǎng)絡(luò)的時間序列建模庫

NeuralProphet是一個python庫,用于基于神經(jīng)網(wǎng)絡(luò)對時間序列數(shù)據(jù)進行建模。 它建立在PyTorch之上,并受到Facebook Prophet和AR-Net庫的極大啟發(fā)。

NeuralProphet 和 Prophet對比

從庫名稱中,您可能會問Facebook的Prophet庫和NeuralProphet之間的主要區(qū)別是什么。 根據(jù)NeuralProphet的文檔,增加的功能是[1]:

· 使用PyTorch的Gradient Descent進行優(yōu)化,使建模過程比Prophet快得多

· 使用AR-Net建模時間序列自相關(guān)(也稱為序列相關(guān))

· 自定義損失和指標(biāo)

· 具有前饋神經(jīng)網(wǎng)絡(luò)的可配置非線性層,

· 等等

項目維護者

基于該項目的GitHub頁面,該項目的主要維護者是斯坦福大學(xué)的Oskar Triebe,F(xiàn)acebook和莫納什大學(xué)的合作。

安裝

該項目處于測試階段,因此,如果您要在生產(chǎn)環(huán)境中使用此庫,我建議您謹慎使用。

不幸的是,在撰寫本文時,該庫沒有pip或conda軟件包。 只能通過克隆存儲庫并運行pip install。來安裝它。但是,如果要在Jupyter Notebook環(huán)境中使用該軟件包,則應(yīng)安裝其實時版本pip install . 這將提供更多功能,例如使用plotliveloss()實時訓(xùn)練和驗證損失。

git clone https://github.com/ourownstory/neural_prophet cd neural_prophet pip install .[live]

我建議創(chuàng)建一個新環(huán)境(conda或venv),并從新環(huán)境安裝NeuralProphet軟件包,讓安裝程序處理所有依賴項(它具有Pandas,Jupyter Notebook,PyTorch作為依賴項)。

現(xiàn)在我們已經(jīng)安裝了軟件包,讓我們開始吧!

案例分析實踐

在這里,我使用在Kaggle上的2013年至2017年德里的每日氣候數(shù)據(jù)。 首先,讓我們導(dǎo)入主要包。

import pandas as pd from neuralprophet import NeuralProphet

然后,我們可以將數(shù)據(jù)讀取到Panda DataFrame中。 NeuralProphet對象期望時間序列數(shù)據(jù)具有一個名為ds的日期列,而我們希望將其預(yù)測為y。

# Data is from https://www.kaggle.com/sumanthvrao/daily-climate-time-series-data df = pd.read_csv('./DailyDelhiClimateTrain.csv', parse_dates=['date']) df = df[['date', 'meantemp']] df.rename(columns={'date': 'ds', 'meantemp': 'y'}, inplace=True)

現(xiàn)在,讓我們初始化模型,為NeuralProphet對象定義的所有默認參數(shù),包括有關(guān)某些參數(shù)的其他信息。 這些是您可以在模型中配置的超參數(shù)。 當(dāng)然,如果您打算使用默認變量,則只需執(zhí)行model = NeuralProphet()。

# model = NeuralProphet() if you're using default variables below.model = NeuralProphet(    growth='linear',  # Determine trend types: 'linear', 'discontinuous', 'off'    changepoints=None, # list of dates that may include change points (None -> automatic )    n_changepoints=5,    changepoints_range=0.8,    trend_reg=0,    trend_reg_threshold=False,    yearly_seasonality='auto',    weekly_seasonality='auto',    daily_seasonality='auto',    seasonality_mode='additive',    seasonality_reg=0,    n_forecasts=1,    n_lags=0,    num_hidden_layers=0,    d_hidden=None,     # Dimension of hidden layers of AR-Net    ar_sparsity=None,  # Sparcity in the AR coefficients    learning_rate=None,    epochs=40,    loss_func='Huber',    normalize='auto',  # Type of normalization ('minmax', 'standardize', 'soft', 'off')    impute_missing=True,    log_level=None, # Determines the logging level of the logger object)

配置模型及其超參數(shù)后,我們需要訓(xùn)練模型并進行預(yù)測。 讓我們對溫度進行一年的預(yù)測。

metrics = model.fit(df, validate_each_epoch=True, freq='D') future = model.make_future_dataframe(df, periods=365, n_historic_predictions=len(df)) forecast = model.predict(future)

您可以通過調(diào)用model.plot(forecast)來簡單地繪制預(yù)測,如下所示:

fig, ax = plt.subplots(figsize=(14, 10)) model.plot(forecast, xlabel='Date', ylabel='Temp', ax=ax)ax.set_title('Mean Temperature in Delhi', fontsize=28, fontweight='bold')

上面顯示了一年的預(yù)測圖,其中從2017-01-01到2018-01-01之間的時間段是預(yù)測。 可以看出,預(yù)測圖類似于歷史時間序列。 它既捕獲了季節(jié)性,又捕獲了線性趨勢的緩慢增長。

也可以通過調(diào)用model.plot_parameters()來繪制參數(shù)。

使用平均絕對誤差(MAE)的模型損失如下圖所示。 您也可以使用'平滑的L1損失'功能。

fig, ax = plt.subplots(figsize=(14, 10))ax.plot(metrics['MAE'], 'ob', linewidth=6, label='Training Loss') ax.plot(metrics['MAE_val'], '-r', linewidth=2, label='Validation Loss')# You can use metrics['SmoothL1Loss'] and metrics['SmoothL1Loss_val'] too.

總結(jié)

在本文中,我們討論了NeuralProphet,這是一個基于神經(jīng)網(wǎng)絡(luò)對時間序列進行建模的python庫。 該庫使用PyTorch作為后端。 作為案例研究,我們?yōu)榈吕锏拿咳諝夂驎r間序列數(shù)據(jù)創(chuàng)建了一個預(yù)測模型,并進行了一年的預(yù)測。 使用此庫的一個優(yōu)點是其語法與Facebook的Prophet庫類似。

您可以在GitHub上找到此博客文章的Jupyter筆記本。謝謝閱讀!

github/e-alizadeh/medium/blob/master/notebooks/NeuralProphet/neural_prophet.ipynb

參考文獻

[1] NeuralProphet

[2] O. J. Triebe et al, AR-Net: A Simple Auto-Regressive Neural Network For Time-Series, (2019)

[3] facebook.github.io/prophet/

[4] github/ourownstory/AR-Net

本站僅提供存儲服務(wù),所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點擊舉報。
打開APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
FB開源大規(guī)模預(yù)測工具Prophet:支持Python和R
PYTHON中用PROPHET模型對天氣時間序列進行預(yù)測與異常檢測
【推薦】7個強大實用的Python機器學(xué)習(xí)庫!
被譽為「教科書」,牛津大學(xué)231頁博士論文全面闡述神經(jīng)微分方程
使用python 預(yù)測股票走向示例
Prophet: 時間序列預(yù)測庫
更多類似文章 >>
生活服務(wù)
熱點新聞
分享 收藏 導(dǎo)長圖 關(guān)注 下載文章
綁定賬號成功
后續(xù)可登錄賬號暢享VIP特權(quán)!
如果VIP功能使用有故障,
可點擊這里聯(lián)系客服!

聯(lián)系客服