阿里云「飞天发布时刻」2024来啦!新产品、新特性、新能力、新方案,等你来探~ 了解详情
写点什么

数据库 +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:22705

评论

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

Flutter动画 3 - Animation动画组,android物联网开发李天祥

android 程序员 移动开发

Flutter图片加载原理与缓存,安卓高级开发工程师面试题

android 程序员 移动开发

Flutter学习之事件循环机制、数据库、网络请求,kotlin开源项目实战

android 程序员 移动开发

Redis 高可用篇:主从架构数据同步一致性原理

码哥字节

数据库 redis NoSQL 数据库 11月日更

WorkPlus政企消息协作解决方案:一站式处理、安全可靠

WorkPlus

Flutter完整开发实战详解(四、 Redux、主题,某大厂开发者对于Android多线程的总结

android 程序员 移动开发

Fragment中调用startActivityForResult的那些坑,安卓面试题目2019

android 程序员 移动开发

FrameWork内核解析之PackageMS启动(一)下篇,android开发电子书

android 程序员 移动开发

Flutter混合开发(二):iOS项目集成Flutter模块详细指南

android 程序员 移动开发

Flutter嵌套深?扩展函数了解一下,面试字节跳动Android工程师该怎么准备

android 程序员 移动开发

Flutter开发桌面应用-第一个windwos桌面应用,android游戏开发框架

android 程序员 移动开发

Flutter版 WanAndroid App,深入解析Android-AutoLayout

android 程序员 移动开发

Framework学习(十一)WindowManager体系,学习指南

android 程序员 移动开发

Fedora又一次哑了,又如何?

DisonTangor

fedora

Flutter如何和Native通信-Android视角,首发10万字Android开发实战文档

android 程序员 移动开发

Flutter实战详解--高仿好奇心日报,kotlin核心编程

android 程序员 移动开发

Flutter实战(三)检验Flutter的跨平台能力,flutter菜鸟教程

android 程序员 移动开发

Gbox开源:比RN和WebView更轻的高性能动态化业务容器,解决首页动态化的痛点

android 程序员 移动开发

GDP大跳水,“溢价阶层,kotlinandroid开发教程

android 程序员 移动开发

架构实战营毕业总结

蔸蔸

Flutter这么火为什么不了解一下呢?(上,这份333页关于性能优化知识点的PDF你不能不看

android 程序员 移动开发

Framework学习(七)AMS家族,kotlin开发思维

android 程序员 移动开发

Framework学习(十)Content Provider启动过程,android快速开发

android 程序员 移动开发

Fresco实践总结,阿里P7大牛亲自教你

android 程序员 移动开发

Flutter图表库fl_chart的使用解析(二)-折线图,Android最牛教材

android 程序员 移动开发

Flutter集成高德定位和地图功能,精通android游戏开发pdf

android 程序员 移动开发

Fragment极度懒加载-+-Layout子线程预加载,奇妙的APP启动速度优化思路

android 程序员 移动开发

Framework掌握不熟?字节跳动大牛带你系统化学习,小白以及计算机类学生的福音

android 程序员 移动开发

Flutter完整开发实战详解(三、 打包与填坑篇)_ 掘金技术征文

android 程序员 移动开发

模块二

侠客行

架构实战营 「架构实战营」

移动端1px解决方案

CRMEB

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