一行代码,得到最强时序基线!

Posted Datawhale

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了一行代码,得到最强时序基线!相关的知识,希望对你有一定的参考价值。

 AutoTS 

简介

时间序列问题无论是在销量预测,天气预测还是在股票预测等问题中都至关重要,而如今随着机器学习等快速发展,已经出现了非常多时间序列建模相关的工具包,今天介绍一种非常霸道的工具,融合了自动化机器学习技术开发的AutoTS。

Auto TS会先对数据进行预处理,从数据中删除异常值,通过学习寻找最佳的NaN值。只需使用一行代码,就可以训练多个时间序列模型,包括ARIMA、SARIMAX、FB Prophet、VAR,并得出效果最佳的模型。

AutoTS

Auto TS是一个关于时间序列预测的开源Python库。

它可以在仅仅使用一行Python代码中训练多个时间序列预测模型,包括ARIMA、SARIMAX、FB Prophet、VAR等,然后在从中选择最佳模型进行预测。其中AutoTS包含的技术有:

  • 遗传规划优化方法寻找最优时间序列预测模型。

  • 训练简单的模型、统计模型、机器学习模型和深度学习模型,同时涉及到所有可能的超参数配置和交叉验证。

  • 其它

代码

  • 代码摘自:https://medium.com/towards-data-science/train-multiple-time-series-forecasting-models-in-one-line-of-python-code-615f2253b67a

# !pip install autots
from autots import auto_timeseries
import pandas as pd


df = pd.read_csv("./data/data.csv", usecols=['Date', 'Close'])
df['Date'] = pd.to_datetime(df['Date'])
df = df.sort_values('Date')
train_df.Close.plot(figsize=(15,8), title= 'AMZN Stock Price', fontsize=14, label='Train')
test_df.Close.plot(figsize=(15,8), title= 'AMZN Stock Price', fontsize=14, label='Test')
plt.legend()
plt.grid()
plt.show()

model = auto_timeseries(forecast_period=219, score_type='rmse', time_interval='D', model_type='best')
model.fit(traindata= train_df, ts_column="Date", target="Close")
future_predictions = model.predict(testdata=219)

小结

Auto TS是一个非常不错的时间序列Baseline工具包,集成了非常多经典的时序模型,在碰到时间序列问题时,可以考虑使用AutoTS来进行训练和预测,作为一个非常不错的基线。

参考文献

  1. Train multiple Time Series Forecasting Models in one line of Python Code

  2. https://pypi.org/project/AutoTS/

  3. https://github.com/winedarksea/AutoTS

干货学习,三连

以上是关于一行代码,得到最强时序基线!的主要内容,如果未能解决你的问题,请参考以下文章

微软开源最强Python自动化神器Playwright!不用写一行代码!

微软开源最强Python自动化神器Playwright!不用写一行代码!

微软开源最强Python自动化神器Playwright 不用写一行代码

微软开源最强Python自动化神器Playwright,不用写一行代码

微软开源最强Python自动化神器Playwright 不用写一行代码

line-height