深入理解hierarchicalforecast底层原理从统计模型到代码实现【免费下载链接】hierarchicalforecastProbabilistic Hierarchical forecasting with statistical and econometric methods.项目地址: https://gitcode.com/gh_mirrors/hi/hierarchicalforecasthierarchicalforecast是一个专注于概率层次预测的强大工具库它结合了统计和计量经济学方法帮助用户处理复杂的层次时间序列预测问题。无论是销售数据按地区和产品类别划分还是经济指标按部门和国家层级组织该库都能提供可靠的预测结果。层次预测的核心挑战与解决方案层次预测面临的主要挑战是如何确保不同层级的预测结果保持一致性。例如一个国家的总销售额预测应该等于其所有地区销售额预测的总和。传统的独立预测方法往往无法满足这一约束导致预测结果出现矛盾。hierarchicalforecast通过层级协调算法解决了这一问题。该算法基于线性代数原理通过构建聚合矩阵S矩阵和投影矩阵P矩阵来调整基础预测结果使其满足层级约束。核心公式如下\tilde{\mathbf{y}}_{[a,b],\tau} \mathbf{S}_{[a,b][b]} \mathbf{P}_{[b][a,b]} \hat{\mathbf{y}}_{[a,b],\tau}其中$a$和$b$分别代表聚合层级和底层层级$\mathbf{S}$是聚合矩阵$\mathbf{P}$是投影矩阵$\hat{\mathbf{y}}$是基础预测$\tilde{\mathbf{y}}$是协调后的预测结果。核心算法与实现hierarchicalforecast的核心功能集中在hierarchicalforecast/core.py文件中的HierarchicalReconciliation类。该类提供了reconcile方法实现了层级预测的协调过程。协调方法的代码实现reconcile方法的主要参数包括Y_hat_df: 基础预测数据框tags: 层级标签字典S_df: 聚合矩阵Y_df: 训练数据level: 置信水平intervals_method: 区间预测方法协调过程的核心代码位于hierarchicalforecast/methods.py文件中的_reconcile函数def _reconcile( self, S: np.ndarray, P: np.ndarray, y_hat: np.ndarray, SP: np.ndarray None, level: list[int] | None None, sampler: Normality | PERMBU | Bootstrap | None None, ): # 均值协调 res {mean: (S (P y_hat))} # 概率协调 if (level is not None) and (sampler is not None): # 向量化分位数计算 quantiles np.concatenate( [[(100 - lv) / 200, ((100 - lv) / 200) lv / 100] for lv in level] ) # ... 分位数协调代码 ... return res这段代码首先计算协调后的均值预测然后根据指定的方法如正态分布、bootstrap或permbu计算预测区间实现了概率层次预测的核心功能。损失函数与模型评估层次预测的评估需要考虑不同层级的预测准确性。hierarchicalforecast提供了多种损失函数包括MAE、MAPE、RMSE等帮助用户全面评估模型性能。MAE平均绝对误差的计算公式为MAE(y_\tau, \hat{y}_\tau) \frac{1}{T} \sum_{\tau1}^{T} |y_\tau - \hat{y}_\tau|该损失函数对异常值不敏感适用于大多数预测场景。在hierarchicalforecast/evaluation.py文件中实现了这些损失函数的计算方法。与其他库的性能比较为了验证hierarchicalforecast的性能我们可以参考experiments/libs-comparison/results.png中的实验结果。该实验比较了hierarchicalforecast与其他主流预测库如fable和sktime在多个数据集上的表现。从结果可以看出hierarchicalforecast在大多数情况下表现优异特别是在TourismSmall和Labour数据集上其协调方法如MinT(ols)和MinT(wls_struct)能够显著提高预测准确性。实际应用与扩展hierarchicalforecast不仅提供了丰富的协调方法还支持多种扩展功能如概率预测通过bootstrap_reconcile方法实现基于bootstrap的概率层次预测。时间层次结构支持时间维度上的层级预测如按日、周、月聚合的预测。外部变量允许纳入外部变量以提高预测性能。这些功能使得hierarchicalforecast能够适应各种复杂的预测场景为用户提供灵活而强大的预测工具。总结hierarchicalforecast通过优雅的数学原理和高效的代码实现解决了层次预测中的一致性问题。其核心的层级协调算法基于线性代数能够有效调整基础预测结果确保不同层级间的一致性。同时丰富的损失函数和评估方法帮助用户全面了解模型性能。无论是学术研究还是工业应用hierarchicalforecast都提供了强大而灵活的工具帮助用户应对复杂的层次预测挑战。通过深入理解其底层原理和代码实现我们可以更好地利用这一工具为实际问题提供可靠的预测解决方案。要开始使用hierarchicalforecast您可以通过以下命令克隆仓库git clone https://gitcode.com/gh_mirrors/hi/hierarchicalforecast然后参考nbs/examples/目录中的示例 notebooks快速上手层次预测的实现与应用。【免费下载链接】hierarchicalforecastProbabilistic Hierarchical forecasting with statistical and econometric methods.项目地址: https://gitcode.com/gh_mirrors/hi/hierarchicalforecast创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考