Elastic:验证机器学习预测的准确性

Elastic Stack 的机器学习为我们的异常检测提供了极大的方便。同时它还有一项很重要的功能,那就是它的预测(forecast)功能。这个在很多的实际应用中也有很大的用处。我有时幻想如果我能依据现有的股票时序数据能准确地预测未来股票的价格,那我会不会发大财啊?关于机器学习预测数据的准确性如何,我们今天讲使用一个例子来进行展示。如果你想了解更多关于 Elastic Stack 的机器学习方面的知识,请阅读我之前的文章 “Elastic:机器学习的原理及实践 - single metric job”。

 

准备数据

在今天的展示中,我将使用 Kibana 自动的数据来进行展示。我将使用 Elastic Stack 7.10 来演示:

点击上面的 Add data 按钮:

这样在 Elasticsearch 中,我们就会发现一个叫做 kibana_sample_data_logs 的索引:

GET _cat/indices
green open .apm-custom-link                TlqC9Q2oTtalPjlA8RqORA 1 0     0  0   208b   208b
green open .kibana_task_manager_1          DmCZ94MVTnGm7-mqX8gvUw 1 0     5 36 80.3kb 80.3kb
green open .apm-agent-configuration        2mv66HmOTi-MNW1JnT6aoA 1 0     0  0   208b   208b
green open kibana_sample_data_logs         j1d0m0AUTwG8nF2qDmNr7A 1 0 14074  0 10.4mb 10.4mb
green open .kibana-event-log-7.10.0-000001 pFPXSgZTRSWPMhDWi7vqZA 1 0     1  0  5.6kb  5.6kb
green open .kibana_1                       f0ve1WLgQUOtF0hZm14J2Q 1 0    59  0 10.9mb 10.9mb

这样我们的数据就准备好了。我们接下来将使用 kibana_sample_data_logs 索引来作为我们验证机器学习预测的准确与否。

 

启动白金功能

机器学习需要我们启动白金功能。如果你想了解更多关于订阅的服务,请阅读链接https://www.elastic.co/cn/subscriptions。我们在安装的 Elastic Stack 中启动30天试用:

这样我们就启动了机器学习的白金功能。

 

创建机器学习任务

接下来,我们来创建一个机器学的任务:

在上面我们先选择 Use full kibana_sample_data_logs data 按钮,然后选择机器学习的终止时间来进行调整时间。我们留下最后7天的数据不用作机器学习的数据:

在上面显示时间系列的最终时间是2021年2月26日。我们选择19日作为机器学习的终止时间。这样我们就可以留下7天的时间作为我们将来可以进行预测的时间范围,并和真实的数据来进行比较。在上面,我选择2月19日。

点击 Create job:

这样我们就创建了一个单指标的机器学习任务。我们点击上面的 Forecast 按钮:

点击上面的 Run。我们可以看到机器学习为我们创建从2月19日以后的数据预测:

从上面我们可以看出来机器学习帮我们预测了从2月19日到2月26日之间的数据。从先前的原始数据中,我们已经知道这个时间真实数据是存在的。我们现在来用这个预测的数据和真实的数据来进行比较。

我们先回到机器学习的管理页面:

 

选中我们的 forecast 任务,并启动 datafeed:

上面显示 datafeed-forecast 已经被成功启动。点击上面的 Single Metric Viewer:

从上面我们可以看出来之前我选择的时间是2月19日。我们把时间修改为2月26日,这样,我们可以继续让当前的任务完成剩下的一个星期的数据:

点击 Update 按钮:

在上面的图中,我们可以看到黄色的线代表的是机器学习在除去最后一个星期的数据后,然后再预测的数据,而那些蓝色曲线的数据是真实的数据。从上面的图中我们可以看出来机器学习预测的数据和真实的数据还是蛮接近的。

评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值