用XGBoost进行时间序列
效,即使在各种预测建模任务上也表现出色,即使不是最好的,也能在数据科学竞赛的获胜者(例如Kaggle的获奖者)中广受青睐。 XGBoost也可以用于时间序列预测,尽管它要求将时间序列数据集首先转换为有监督的学习问题。它还需要使用一种专门的技术来评估模型,称为前向验证,因为使用k倍交叉验证对模型进行评估会导致乐观的结果。 在本教程中,您将发现如何开发XGBoost模型进行时间序列预测。完成本教程后,您将知道: 1、XGBoost是用于分类和回归的梯度提升集成算法的实现。 2、可以使用滑动窗口表示将时间序列数据集转换为监督学习。 3、如何使用XGBoost模型拟合,评估和进行预测,以进行时间序列预测。 教程概述本教程分为三个部分:他们是: 1、XGBoost集成 2、时间序列数据准备 3、XGBoost用于时间序列预测 XGBoost集成XGBoost是Extreme Gradient Boosting的缩写,是随机梯度提升机器学习算法的有效实现。随机梯度增强算法(也称为梯度增强机或树增强)是一种功能强大的机器学习技术,可在各种具有挑战性的机器学习问题上表现出色,甚至表现最佳。 它是决策树算法的集合,其中新树修复了那些已经属于模型的树的错误。将添加树,直到无法对模型进行进一步的改进为止。XGBoost提供了随机梯度提升算法的高效实现,并提供了一组模型超参数,这些参数旨在提供对模型训练过程的控制。 XGBoost设计用于表格数据集的分类和回归,尽管它可以用于时间序列预测。 首先,必须安装XGBoost库。您可以使用pip进行安装,如下所示:在我们已经熟悉了XGBoost,下面让我们看一下如何为监督学习准备时间序列数据集。 时间序列数据准备
时间序列数据可以表述为监督学习。给定时间序列数据集的数字序列,我们可以将数据重组为看起来像监督学习的问题。我们可以通过使用以前的时间步长作为输入变量,并使用下一个时间步长作为输出变量来做到这一点。让我们通过一个例子来具体说明。假设我们有一个时间序列,如下所示: (编辑:我爱故事小小网_铜陵站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |