wwrechard/pydlm
A python library for Bayesian time series modeling
解决的问题
PyDLM 是一个专为时间序列建模设计的 Python 库。它通过将时间序列分解为趋势、季节性等不同成分,提供了一个灵活的框架,用于分析和预测时间序列数据,使用户能够处理复杂模式并提高预测准确性。
工作原理
该库基于贝叶斯动态线性模型(DLM)。它采用状态空间方法,将时间序列建模为多个成分的和。用户可以通过组合以下不同成分来构建模型:
- 线性/二次趋势:用于捕捉数据的整体运动方向。
- 季节性:用于捕捉特定周期(如周或年)内的重复模式。
- 动态回归:使用
dynamic成分来纳入随时间变化的外部预测变量(特征)。
模型定义后,通过前向滤波和后向平滑对数据进行拟合,生成滤波结果、未来一天的预测以及置信区间。
适用人群
需要在 Python 中进行贝叶斯时间序列分析、分解和预测的数据科学家和分析师,特别是寻找 R 包 bsts 替代方案的人。
主要亮点
- 灵活的模型构建:通过
+操作符将趋势、季节性、动态回归等成分组合起来构建模型。 - 支持 Pandas 输入:
dlm和dynamic类支持 Pandas 输入。 - 快速推断:针对快速模型拟合和推断进行了优化。
- 全面的可视化:内置绘图函数,可可视化拟合结果、预测值和各个成分。
相关
- 项目
- 项目
- 项目
- 项目
- 项目