为了账号安全,请及时绑定邮箱和手机立即绑定

时序数据异常检测(2)指数平滑方法

标签:
大数据

上文我们使用LOF-ICAD方法实现了时序数据的异常检测, 这次我们介绍一种更为常见的方法-------指数平滑.

指数平滑的方法, 其原理就是通过拟合出一个近似的模型来对未来进行预测, 我们可以通过这个预测来和实际的值进行比较, 如果差距过大, 我们就可以判定这个点是异常的.

首先我们介绍一下一阶指数平滑的算法

一阶指数平滑算法

这里给出一些符号的定义:

  1. 序列长度记为n, 参数记为α(指数平滑算法只有一个参数)

  2. 时序序列的定义:


    webp

    时序数据序列

  3. 拟合序列的定义:


    webp

    拟合数据序列

对于一阶指数平滑而言


webp

迭代过程

这里我们需要定义一下初始值, 一般来说, 我们可以令初值是前3个数据的平均值:


webp

初始值设置

我们通过这样的设置之后, 便可以利用初始值不断迭代出下一步的拟合值, 也就是通过t0可以不断推到tn的值, 但是这样带来的效果可能会很差, 因为参数α可能是不准确的, 那么迭代下去误差会越来越大, 我们必须解决这个问题, 这里我们先搁置, 讲一讲二阶指数平滑

二阶指数平滑算法

二阶指数平滑相对于一阶指数平滑算法只是增加了迭代的次数, 使得拟合的精度相对提高了

这里我们给出相应的迭代的细节:

webp

迭代细节

对于未来T期的估计

webp

对未来的估计

其中

webp

参数细节

好了, 我们接下来就需要解决α参数的优化问题, 我们需要一种学习算法来使得误差变小, 以往的算法是使用动态规划, 这里我们使用随机梯度下降策略, 给出具体的细节

随机梯度下降法策略

随机梯度下降法, 需要我们去求部分偏导数, 这里我们首先给出初始的梯度计算, 以及一般性的梯度计算


webp

初始梯度计算

webp

一般性梯度计算

定义损失函数:


webp

Loss

根据上述偏导数, 我们就可以给出迭代的具体过程:

webp

具体迭代过程

到此, 我们便给出了一阶和二阶指数平滑的算法以及利用梯度下降来对参数进行优化的方法



作者:Mezereon
链接:https://www.jianshu.com/p/a2dbd47b3f1a


点击查看更多内容
TA 点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
  • 推荐
  • 评论
  • 收藏
  • 共同学习,写下你的评论
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
今天注册有机会得

100积分直接送

付费专栏免费学

大额优惠券免费领

立即参与 放弃机会
意见反馈 帮助中心 APP下载
官方微信

举报

0/150
提交
取消