https://mp.weixin.qq.com/s/9h-hOt630W6k077Rupc9CA
流量异常检测主要有以下三个难点:
- 流量的大小会随着用户行为发生变化。对于大部分百度云上的业务,白天的访问流量较高,深夜的访问流量较低。这使得流量水位值存在上下文相关性,白天水位高,夜晚水位低,不断波动变化。这就需要算法能够区分流量的正常波动变化与异常波动变化,准确的检测异常流量。
- 对于所有百度云上用户而言,运维工程师关心系统本身的故障,需要及时检测到流量的突降异常,而安全工程师关心攻击、抓取和爬虫,更多地关心流量是否存在突升异常。这就要求算法有能力区分当前流量的异常类型,精准地给出流量的预测值。
- 流量也会受到业务逻辑调整的影响,流量水位会出现上涨或者下跌后不恢复的现象。需要算法能够及时适应这种变化,否则就会导致持续的误报。
预测
移动平均算法使用当前窗口内w个数据的均值作为窗口内最后一个点的预测值,即。
线性回归的方法预测流量值
对于窗口内n个数据点使用最小二乘法来最小化损失函数
由于线性回归的损失函数