准确的电话号码和 WhatsApp 号码提供商。 如果您想要电子邮件营销活动列表或短信营销活动,那么您可以联系我们的团队。 电报: @latestdbs

操作方法 使用 XG Boost 和 InfluxDB 预测时间序列

XGBoost 是一个开源机器学习库,它实现了优化的分布式梯度提升算法。它使用并行处理来实现快速性能,可以很好地处理缺失值,即使对于小数据集也有效,并且可以防止过度拟合。由于具有上述诸多优点,它被广泛应用于预测等回归问题。

ⓒ 盖蒂图片银行

预测是所有类型的业务任务中的一项重要任务

包括预测分析、预测维护、产品规 黎巴嫩电话号码数据 划和预算。许多预测问题都使用时间序列数据,这就是为什么 XGBoost 通常与开源时间序列数据库 InfluxDB 结合使用。

在这里,我们将了解如何使用XG Boost的 Python 包来预测 InfluxDB 时间序列数据库中的数据。此外,InfluxDB Python客户端库用于查询InfluxDB中的数据并将这些数据转换为Pandas DataFrame ,以使时间序列数据更易于处理。然后进行预测。我们还详细介绍了 XG Boost 的优势。

要求
在这里,它在通过 Homebrew 安装了 Python 3 的Mac OS 系统上运行。为了简化 Python 和客户端安装,我们建议安装其他工具,例如virtualenv、pyenv和conda-env 。完整的其他要求如下:

influxdb-客户端 = 1.30.0
熊猫=1.4.3
xgboost >= 1.7.3
influxdb-客户端 >= 1.30.0
熊猫 >= 1.4.3
matplotlib >= 3.5.2
sklearn >= 1.1.1

此外 这假设您有一个免费层 InfluxDB 云帐户并且您已经

电话号码 数据

创建了一个存储桶和  储 数字列表 桶可以被认为是数据库或 InfluxDB 中数据组织的最高层。这里我们创建一个名为 NOAA 的存储桶。

决策树、随机森林、梯度提升
要了解 XGBoost 是什么,您需要了解决策树、随机森林和梯度提升。决策树是一种监督学习方法,由一系列特征测试组成。每个节点都是一个测试,所有节点都以流程图的形式构建。分支表示最终确定将哪个叶或类标签分配给输入数据的条件。

确定是否会下雨的决策树 ⓒ 亚达夫王子

决策树、随机森林和梯度提升的基本原理是一组“弱学习器”或分类器共同做出强预测。随机森林包括多个决策树。如果决策树中的每个节点都被视为弱学习器,则森林中的每个决策树都被视为随机森林模型中的多个弱学习器之一。通常,所有数据被随机分成子集并通过各种决策树。

使用决策树和赎金森林的梯度提升很相似,但它们的结构不同。梯度提升树还包括决策树森林,但这些树是附加构建的,所有数据都通过决策树集合传递(下一节将详细介绍)。梯度提升树可以包含一组分类或回归树。分类树用于单个值,例如猫或狗,回归树用于连续值,例如 0 到 100。

什么是 XG Boost?
梯度提升是一种用于分类和预测的机器学习算法。XG Boost 是一种极端类型的梯度提升。通过并行处理可以更有效地执行梯度提升。下图取自 XGBoost 文档,显示了如何使用梯度提升来预测个人是否喜欢视频游戏。

我们使用两棵树来确定一个人是否可能喜欢视频游戏。将两棵树的叶子分数相加,以确定哪个个体最有可能喜欢视频游戏。ⓒ xgboost 开发者

您可以参考XGBoost文档中的Boost Trees简介来了解更多关于梯度Boost树和XGBoost的操作 。

XG Boost 的优点如下。

相对容易理解。
它适用于少量特征较少的结构化通用数据。

XG Boost 的缺点如下。

过拟合很容易发生,并且对异常值很敏感。对于使用 XGBoost 进行预测,建议使用时间序列数据的物化视图。
对于稀疏和无监督的数据来说效果较差。

使用 XGBoost 进行时间序列预测
在这里,我们使用 Influx DB 提供的空气传感器样本数据。该数据集包括来自多个传感器的温度数据。让我们生成一个传感器的温度预测。数据如下:

ⓒ 涌入数据

使用以下 Flux 代码获取数据集并将其过滤为单个时间序列(Flux 是 InfluxDB 的查询语言。

发表评论

您的电子邮箱地址不会被公开。 必填项已用*标注