一种基于综合调优的数据库性能趋势预测方法
前几天我看到一篇去年的论文,叫:一种基于综合调优的数据库性能趋势预测方法
点击上面的链接还可以下载,开始看到这个论文,光是名字就觉得很拉风,于是打算下载下来看一下。
结果论文的内容和把大象装进冰箱一样简单,唉,世风日下,真的是什么都能写论文了,作者提到:
结果表明 AutoPA4DB 模型在磁盘使用量、内存使用率、CPU 使用率等部分性能指标趋势性预测中的预测准确度 较高,且预测准确度高于优化前模型和其他对比模 型。 但在 TPS(每秒处理的事物数)及数据库连接 数等指标中,预测效果并不理想。 |
这,这,这,这。。。
总结一下论文内容:
- 以 1 分钟,30 分钟,60 分钟等时间周期对数据采样,然后做数据清洗,清洗包括异常检测与处理,缺失值处理,平滑等操作。
- 建模,基于 Prophet 模型和 ARIMA 模型进行建模。
- 动态调参优化,基于贝叶斯优化 的 Hyperopt 调参技术。
- 模型评估,采用加权的时序预测准确 性作为预测模型的预测准确性度量标准。
- 预测模型优化,基于贝叶斯的自动调参 Hyper 模式与 人工自定义调参 Auto 模式进行融合。
总结下来就是,打开冰箱,放进大象,关门。
整个论文的核心实现依托的fb的prophet,prophet可以完成:
- Saturating Forecasts
- Trend Changepoints
- Seasonality, Holidays Effects
- Multiplicative Seasonality
- Uncertainty Intervals
- Outliers
- Non-Daily Data
- Diagnostics
下面实例中使用的是 佩顿 · 曼宁的维基百科主页 每日访问量的时间序列数据(2007/12/10 - 2016/01/20)。我们使用 R 中的 Wikipediatrend 包获取该数据集。这个数据集具有多季节周期性、不断变化的增长率和可以拟合特定日期(例如佩顿 · 曼宁的决赛和超级碗)的情况等 Prophet 适用的性质,因此可以作为一个不错的例子。(注:佩顿 · 曼宁为前美式橄榄球四分卫)
# Python |
Prophet 遵循 sklearn 库建模的应用程序接口。
预测饱和增长
默认情况下, Prophet 使用线性模型进行预测。当预测增长情况时,通常会存在可到达的最大极限值,例如:总市场规模、总人口数等等。这被称做承载能力(carrying capacity),那么预测时就应当在接近该值时趋于饱和。
Prophet 可使用 logistic 增长 趋势模型进行预测,同时指定承载能力。下面使用 R 语言的维基百科主页 访问量(取对数)的实例来进行说明。
import pandas as pd |
预测饱和减少
logistic增长模型还可以处理饱和最小值,方法与指定最大值的列的方式相同:
# Python |
参考:https://blog.csdn.net/anshuai_aw1/article/details/83412058
扫码手机观看或分享: