Time series is a series of data points indexed in time order.
时间序列分析具体包括的任务:
检索Indexing (query by content): given a time series and some similarity measure, find the nearest matching time series.聚类Clustering: find groups (clusters) of similar time series.分类Classification: assign a time series to a predefined class.分割Segmentation (Summarization): create an accurate approximation of a time series by reducing its dimensionality while retaining its essential features.预测Forecasting (Prediction): given a time series dataset up to a given time tn, forecast the next values.异常检测Anomaly Detection: find abnormal data points or subsequences.因果分析Rules Discovery: find the rules that may govern associations between sets of time series or subsequences| Forecasting | Classsification | Anomaly Detection | Segmentation | TSFeature | |
|---|---|---|---|---|---|
| Prophet | ✅ | ||||
| Kats | ✅ | ✅ | ✅ | ||
| GluonTS | ✅ | ✅ | ✅ | ||
| NeuralProphet | ✅ | ✅ | ✅ | ||
| arch | ✅ | ||||
| AtsPy | ✅ | ||||
| banpei | ✅ | ||||
| cesium | ✅ | ||||
| darts | ✅ | ||||
| PaddleTS | ✅ | ✅ |
更多的模型介绍可以查阅论文[arxiv 2021]A systematic review of Python packages for time series analysis.
| Model | Univariate | Multivariate | Probabilistic | Multiple-series training |
|---|---|---|---|---|
ARIMA | ✅ | ✅ | ||
VARIMA | ✅ | ✅ | ||
AutoARIMA | ✅ | |||
ExponentialSmoothing | ✅ | ✅ | ||
Theta and FourTheta | ✅ | |||
Prophet | ✅ | ✅ | ||
FFT (Fast Fourier Transform) | ✅ | |||
RegressionModel (incl RandomForest, LinearRegressionModel and LightGBMModel) | ✅ | ✅ | ✅ | |
RNNModel (incl. LSTM and GRU); equivalent to DeepAR in its probabilistic version | ✅ | ✅ | ✅ | ✅ |
BlockRNNModel (incl. LSTM and GRU) | ✅ | ✅ | ✅ | ✅ |
NBEATSModel | ✅ | ✅ | ✅ | ✅ |
TCNModel | ✅ | ✅ | ✅ | ✅ |
TransformerModel | ✅ | ✅ | ✅ | ✅ |
TFTModel (Temporal Fusion Transformer) | ✅ | ✅ | ✅ | ✅ |
| Naive Baselines | ✅ |