写点什么

数据库 +AI 是如何预测未来的?

  • 2019-10-29
  • 本文字数:1274 字

    阅读完需:约 4 分钟

数据库+AI是如何预测未来的?

我们生活中很多数据是有时间维度的。比如说天气或者股票价格。对于这种带有时序的数据,有一种基于时间序列的预测模型—Prophet。


这里是项目的地址,需要的小伙伴可以去上面一看究竟。而我主要做的是通过该模型来预测腾讯云数据库存储量变化的未来趋势。下来就来看看 Prophet 的强大之处吧。


前面说到 Prophet 是基于时间序列的模型,所以说时间是里面最重要的一个维度(如果您需要预测自己的数据,那么必须是 pandas 固定的时间格式)。现在就开始直接看下结果吧。



纵轴是腾讯云某类型数据库的购买总量,可以看到随着时间的增长,数据库的购买总量还是在不断增长的。而 Prophet 所要做的就是根据数据的历史表现来估计数据未来的走势。


实验中我选取了 2018 年 1 月到 6 月的数据作为测试集。黑点为真实值,蓝色区域为模型预测的估计值,可以看到随着时间的推移,总体估计容量的趋势是增长的,但是随着时间的推移,不确定性区域越来越大(图中蓝色区域),也可以认为是随着时间的推移,不确定性越来越大。下面来看看真实值与模型预测值是否准确:



图中 6 月份以后的数值是对模型的测试集,红色区域就是模型未见过的数值与估计值的相对情况。可以明显的看到,该模型估计还是相当准确的呀。可能有很多小伙伴要问了,为啥 4 月末会出现一个阶段式的跳跃呢?就是我们腾讯云的一个大客户拼多多最近有比较大的手笔。


当然该模型不仅仅可以估计进几个月,也可以估计更长的时间,但是随着时间的推移,可能就更不准确了。


重点来了!!!这东西就是预测一个容量那么简单么?当然不是了。。主要分两大方面:


1.可以为我们自己提供服务:


(1)可以为我们提供潜在客户的估计。(比如明显可以看到某个公司近几个月飞速购买数据库服务,但是该公司不是我们的大客户。所以很难通过简单的容量排行榜找到他。但是 Prophet 可以估计出谁可能在后面变成大客户,这样就可以告诉架构师谁是我们的潜在客户。)


(2)还可以通过对我们数据库的总量或者单个客户的数据库总量进行估计,告诉大概什么时候客户需要扩容了,让我们对自己的服务有更好的准备。


2.也可以为我们的客户服务:


(1)客户可以通过对自习所选的维度进行分析,相当于一个 saas 服务。


(2)客户还可以对自己所买的 CVM 相关的用量进行分析,以便选择最合理的配置。


最后简单说下模型内部结构。


Prophet 是一个累加回归模型(additiveregressionmodel)模型的整体构建如下:


y(t) = g(t)+s(t)+h(t)+et
复制代码


主要有三部分组成:growth(增长趋势)、seasonality(季节趋势)以及 holidays(节假日对预测值的影响)。其中 g(t)表示增长函数,用来拟合时间序列中预测值的非周期变化。用分段线性或逻辑增长曲线拟合的趋势成分。Prophet 会从数据中找出转折点,自动检测趋势变化 s(t)用来表示周期性变化,比如每周、每年中的季节等。用傅里叶级数建模的季节成分,以年为单位。用虚拟变量表示的季节成分,以周为单位 h(t)表示时间序列中那些潜在的具有非固定周期的节假日对预测值造成的影响。et 为噪声项。


本文转载自公众号云加社区(ID:QcloudCommunity)。


原文链接:


https://mp.weixin.qq.com/s/NLVo9IF6Kfu1X7Pz-RvwdQ


2019-10-29 19:22999

评论

发布
暂无评论
发现更多内容

架构师训练营第十章总结

叮叮董董

远程办公暴露过程管理的不足

持续交付实践指南

管理 软件工程 远程办公

Week 10

一叶知秋

一文读懂GaussDB(for Mongo)的计算存储分离架构

华为云开发者联盟

数据库 mongodb 数据 GaussDB 存储分离

第十周命题作业

赵龙

Go make 和 new 的区别

曲镇

make Go 语言

我期待,这是个多彩的世界

瓜藤老祖

大三儿 乐队的夏天 九连真人

socket通信,你还会实现么?

小隐乐乐

炸裂!40+图万字长文拿下HTTP

我是程序员小贱

计算机网络

微服务与DDD学习总结

qihuajun

有意思:Go函数的闭包

申屠鹏会

闭包 函数 Go 语言

Newbe.Claptrap 框架如何实现 Claptrap 的多样性?

newbe36524

容器 微服务 .net core ASP.NET Core

[翻译]分布式系统的模式-综述

流沙

架构 分布式系统

第十周学习总结

赵龙

芯片破壁者(十一):回看日本半导体的倾塌

脑极体

架构师训练营--第10周作业

Just顾

Code Review 失败后总结的几个实践技巧

Phoenix

团队管理 团队协作 技术人 代码质量

热乎的宇宙条总部面经,已拿offer,速来围观

我是程序员小贱

腾讯一面面试官让我关闭连接

我是程序员小贱

可读代码编写炸鸡十 - 保持单纯

多选参数

代码质量 代码 代码优化 可读代码编写 可读代码

六张图从HTTP/0.9进化到HTTP3.0

执鸢者

大前端 网络 HTTP

40张图入门Linux——(前端够用,运维入门)

执鸢者

Linux 大前端

Dubbo源码分析--dubbo-config配置层的套路

jason

招银网络问了啥?这么尬?妥妥的安排

我是程序员小贱

架构师训练营第十章作业

叮叮董董

链表应用之设计高性能访客记录系统

架构师修行之路

数据结构 链表 架构师

关于微服务架构(中台架构、领域驱动设计、组件设计原则)的一点思考

jason

架构师训练营第十周作业

qihuajun

troubleshoot之:使用JFR解决内存泄露

程序那些事

Java 内存泄露 性能调优

如何优雅的编写GO程序?

八两

优雅 语法 Go 语言

环信助力OFashion迷橙开辟海外直播带货新通路

DT极客

数据库+AI是如何预测未来的?_数据库_邵宗文_InfoQ精选文章