時間序列預(yù)測方法及代碼總結(jié)!
一、傳統(tǒng)時序建模
-
arma/arima 模型歸根到底還是簡單的線性模型,能表征的問題復(fù)雜程度有限; -
arma 全名是自回歸滑動平均模型,它只能支持對單變量歷史數(shù)據(jù)的回歸,處理不了多變量的情況。
重點介紹基本的金融時間序列知識和 arma 模型
介紹更為高階的 arch 和 garch 模型
arma 模型快速上手
arch、garch模型快速建模
https://machinelearningmastery.com/develop-arch-and-garch-models-for-time-series-forecasting-in-python/
二、機(jī)器學(xué)習(xí)模型方法
-
計算速度快,模型精度高; -
缺失值不需要處理,比較方便; -
支持 category 變量; 支持特征交叉。
lightgbm 原理
xgboost 的原理沒你想像的那么難:
xgboost 原理
https://www.jianshu.com/p/7467e616f227
lightgbm 模型實踐
xgboost 模型實踐
三、深度學(xué)習(xí)模型方法
-
不能包括缺失值,必須要填充缺失值,否則會報錯; -
支持特征交叉,如二階交叉,高階交叉等; -
需要 embedding 層處理 category 變量,可以直接學(xué)習(xí)到離散特征的語義變量,并表征其相對關(guān)系; -
數(shù)據(jù)量小的時候,模型效果不如樹方法;但是數(shù)據(jù)量巨大的時候,神經(jīng)網(wǎng)絡(luò)會有更好的表現(xiàn); -
神經(jīng)網(wǎng)絡(luò)模型支持在線訓(xùn)練。

▲ 圖源:https://www.kaggle.com/c/avito-demand-prediction/discussion/59880
LSTM 原理
seq2seq 原理
wavenet 原理
1D-CNN 處理時序數(shù)據(jù)
transformer 時序預(yù)測
seq2seq 模型實現(xiàn)
LSTM 實踐
wavenet 模型預(yù)測股票價格
transformer 時序預(yù)測數(shù)據(jù)
https://towardsdatascience.com/how-to-use-transformer-networks-to-build-a-forecasting-model-297f9270e630
Timeseries classification with a Transformer model:transformer 處理時序數(shù)據(jù)分類
CNN 預(yù)測模型




