[论文解读] Forecast Evaluation for Data Scientists: Common Pitfalls and Best Practices
本文为数据科学家提供了时间序列预测评估的全面指南,解决了常见陷阱,如不恰当的数据划分、对MAPE等误差度量的误用,以及时间序列中的数据泄露问题。文章倡导最佳实践,包括滚动原点验证、根据数据特征选择合适的误差度量,以及多度量评估,以确保机器学习驱动的预测中模型比较的稳健性和意义性。
Machine Learning (ML) and Deep Learning (DL) methods are increasingly replacing traditional methods in many domains involved with important decision making activities. DL techniques tailor-made for specific tasks such as image recognition, signal processing, or speech analysis are being introduced at a fast pace with many improvements. However, for the domain of forecasting, the current state in the ML community is perhaps where other domains such as Natural Language Processing and Computer Vision were at several years ago. The field of forecasting has mainly been fostered by statisticians/econometricians; consequently the related concepts are not the mainstream knowledge among general ML practitioners. The different non-stationarities associated with time series challenge the data-driven ML models. Nevertheless, recent trends in the domain have shown that with the availability of massive amounts of time series, ML techniques are quite competent in forecasting, when related pitfalls are properly handled. Therefore, in this work we provide a tutorial-like compilation of the details of one of the most important steps in the overall forecasting process, namely the evaluation. This way, we intend to impart the information of forecast evaluation to fit the context of ML, as means of bridging the knowledge gap between traditional methods of forecasting and state-of-the-art ML techniques. We elaborate on the different problematic characteristics of time series such as non-normalities and non-stationarities and how they are associated with common pitfalls in forecast evaluation. Best practices in forecast evaluation are outlined with respect to the different steps such as data partitioning, error calculation, statistical testing, and others. Further guidelines are also provided along selecting valid and suitable error measures depending on the specific characteristics of the dataset at hand.
研究动机与目标
- 弥合传统预测方法与现代机器学习(ML)实践在时间序列预测中的日益扩大的差距。
- 识别预测评估中的常见陷阱,如错误的数据划分、不适当的误差度量和数据泄露,这些都会损害模型比较和泛化能力。
- 为机器学习从业者提供一套系统化、教程式的预测评估指南,重点强调数据划分、误差计算、统计检验和度量选择。
- 推动标准化、可复现且有意义的评估实践,以提升基于机器学习的预测模型的可信度和竞争力。
提出的方法
- 提出一种结构化的预测评估框架,包括滚动原点和时间序列交叉验证(tsCV)等数据划分策略,并根据数据长度和模型类型提出建议。
- 倡导使用基准模型(如朴素预测和季节性朴素预测)作为模型性能评估的关键参考点。
- 提出一个决策指南(表1),根据数据特征(如尺度、非正态性、非平稳性)选择误差度量。
- 建议使用多种误差度量(如MAE、RMSE、MASE)进行评估,以确保稳健性并进行合理性检验,同时指定一个作为主要评估标准。
- 强调在平滑、分解和归一化等预处理步骤中避免数据泄露的重要性,尤其是在时间序列工作流中。
- 建议在模型差异性分析中进行统计检验,需谨慎考虑模型多样性与数据可用性,以避免得出虚假结论。
实验结果
研究问题
- RQ1机器学习从业者在处理时间序列数据时,预测评估中最常见的陷阱是什么?
- RQ2哪些数据划分策略(如k折交叉验证、tsCV、滚动原点)最适合不同类型的时间序列和模型架构?
- RQ3如何根据时间序列的特征(如尺度、非正态性、非平稳性)选择误差度量?
- RQ4数据泄露以何种方式会损害预测评估?在预处理和验证过程中如何预防?
- RQ5如何有效使用统计检验比较模型性能,同时避免因模型相似性或数据不足导致的偏差?
主要发现
- 当时间序列值位于[-1, 1]范围内时,使用MAPE是根本错误且具有误导性的,因为在此条件下MAPE可能未定义或不稳定。
- 对于AR类模型,若残差通过序列相关性检验(如Ljung-Box检验),k折交叉验证可作为tsCV的合理且数据高效的替代方案,尤其适用于短时间序列。
- 时间序列交叉验证(tsCV)是具有连续状态动态的模型(如RNN和ETS)的首选验证方法,因为时间顺序至关重要。
- 没有一种误差度量是普遍最优的;选择应基于数据特征、业务背景和尺度——例如,当与业务效用(如价格/销量)一致时,尺度相关度量具有重要价值。
- 使用多种误差度量评估模型可增强结果信心,但模型必须针对单一主要度量进行优化,以避免目标冲突。
- 模型差异的统计检验应平衡模型多样性和数据可用性,以避免因过拟合或样本量不足而检测到虚假差异。
更好的研究,从现在开始
从阅读论文到最终审阅,大幅缩短您的研究时间。
无需绑定信用卡
本解读由 AI 生成,并经人工编辑审核。