异常检测所解决的问题
- 解决一些基于规则或者Dashboard难以实时发现的问题
- IT运维
- 如何知道系统正常运行 / 如何调节阈值触发合适的报警 / 如何进行归因分析
- 信息安全
- 哪些用户构成了内部威胁 / 系统是否感染了病毒
- 物联网 / 数据采集监控
- 工厂和设备是否正常运营
什么是正常
- 随着时间的推移,某个个体一直表现出一致的行为
- 某个个体和他的同类比较,一直表现出和其他个体一致的行为
什么是异常
- 和自己比:个体的行为发生了急剧的变化
- 和他人比:个体明显区别于其他的个体
相关术语
- Elastic平台的机器学习功能
- Elastic的ML,主要针对时序数据库的异常检测和预测
- 非监督机器学习
- 不需要使用人工标签的数据来学习,仅仅依靠历史数据自动学习
- 贝叶斯统计
- 一种概率计算方法,使用先验结果来计算现值或者预测未来的数据
- 异常检测
- 异常代表的是不同的,但未必代表的是坏的
- 定义异常需要一些指导,从哪个方面去看
如何学习“正常”
- 观察不同的人每天走的步数,由此预测明天他会走多少步
- 需要观察不同的人,需要观察多久?
- 一天 / 一周 / 一个月 / 一年 / 十年
- 直觉:观察的数据多,你的预测越准确
- 使用这些观察来创建一个模型
- 概率分布函数:使用这个模型找出什么事几乎不可能的事件
机器学习帮你自动挑选模型
- 使用成熟的机器学习技术,挑选合适数据的正确的统计模型
- 更好的模型 = 更好的异常检测 = 更少的误报和漏报
- 出现在低概率区域,发现异常
模型与需要考虑任何的周期
- 周期选择
- 需要一定周期的学习,才能使的置信区间的范围更小
- 时间太长:影响因素太多,导致随机分布
- 时间太短:完全是随机波动
ES ML:单指标 / 多指标 / 种群分析
DEMO
- 新建分析数据index pattern
- 选择machine learning,选择index
- 选择单指标分析、多指标类型,进行配置
- 创建job,进行分析
- View result 查看结果