[论文解读] MSTL: A Seasonal-Trend Decomposition Algorithm for Time Series with Multiple Seasonal Patterns
MSTL 是一种快速、自动化的时间序列分解算法,通过迭代应用 Loess 平滑,将 STL 扩展以处理多个季节性模式,从而提取趋势、多个季节性成分和残差。在真实世界电力需求数据上,MSTL 在准确性和计算效率方面均优于 STR、TBATS 和 Prophet,RMSE 更低,执行时间更短。
The decomposition of time series into components is an important task that helps to understand time series and can enable better forecasting. Nowadays, with high sampling rates leading to high-frequency data (such as daily, hourly, or minutely data), many real-world datasets contain time series data that can exhibit multiple seasonal patterns. Although several methods have been proposed to decompose time series better under these circumstances, they are often computationally inefficient or inaccurate. In this study, we propose Multiple Seasonal-Trend decomposition using Loess (MSTL), an extension to the traditional Seasonal-Trend decomposition using Loess (STL) procedure, allowing the decomposition of time series with multiple seasonal patterns. In our evaluation on synthetic and a perturbed real-world time series dataset, compared to other decomposition benchmarks, MSTL demonstrates competitive results with lower computational cost. The implementation of MSTL is available in the R package forecast.
研究动机与目标
- 解决具有多个季节性模式(如日周期、周周期和年周期)的高频时间序列分解挑战。
- 开发一种计算高效的替代方法,以替代基于预测模型的现有方法(如 TBATS 和 Prophet),这些方法可能牺牲分解准确性。
- 通过按周期长度递增顺序迭代估计季节性成分,将 STL 算法扩展以处理多个季节性。
- 通过按周期长度递增顺序处理周期,减少季节性混叠(即高频季节性模式吸收低频成分)现象。
- 提供一种完全自动化的加法分解框架,使用过去和未来的数据,与基于预测的方法不同。
提出的方法
- MSTL 通过按周期长度递增顺序迭代应用基于 Loess 的分解,从时间序列中提取多个季节性成分。
- 该算法首先识别时间序列中所有不同的季节性周期,然后按周期长度升序排序,以减少季节性混叠。
- 对于每个季节性周期,MSTL 应用 STL 分解以提取季节性成分,使用稳健的平滑参数控制季节性变化的平滑度。
- 通过在去除季节性成分后的残差上应用 STL 分解来估计趋势成分,使用更大的平滑跨度。
- 残差成分通过从原始序列中减去趋势和所有季节性成分后获得。
- 为评估鲁棒性,MSTL 使用移动块自 resampling(MBB)生成原始时间序列的 100 个扰动版本,以保留残差中的时间依赖性。

实验结果
研究问题
- RQ1经过修改的 STL 算法能否在保持计算效率的同时,有效分解具有多个季节性模式的时间序列?
- RQ2MSTL 在真实世界高频时间序列的分解准确性方面,与 STR、TBATS 和 Prophet 相比如何?
- RQ3MSTL 中按周期长度排序的迭代方法是否相比单次遍历分解方法更有效地减少了季节性混叠?
- RQ4在长时序数据上,MSTL 相对于其他最先进分解技术的计算成本如何?
- RQ5MSTL 是否能在扰动的真实世界数据上提供可靠的分解结果,同时保持真实成分结构?
主要发现
- 在扰动的电力需求数据集上,MSTL 在所有分量(趋势、日周期、周周期、残差)中均取得最低的整体 RMSE,分别为 207.6、149.2、180.5 和 312.7。
- MSTL 在估计所有分量方面显著优于 STR、TBATS 和 Prophet,RMSE 差异的 p 值表明具有统计显著性。
- 在 149 天的小时级数据集上,MSTL 的总执行时间最低(7 秒),优于 STL(7 秒)、STR(612 秒)、Prophet(936 秒)和 TBATS(2521 秒)。
- 使用 MBB 进行扰动测试证实,MSTL 在多个自 resampling 时间序列版本中均保持了稳定且准确的分解性能。
- MSTL 的迭代式、按周期长度排序的方法成功最小化了季节性混叠,实现了确定性季节性与随机季节性模式的更清晰分离。
- MSTL 在 R forecast 包中通过 mstl 函数的实现,使得其易于集成到现有时间序列工作流中。

更好的研究,从现在开始
从阅读论文到最终审阅,大幅缩短您的研究时间。
无需绑定信用卡
本解读由 AI 生成,并经人工编辑审核。