78 - ES使用机器学习检测异常

异常检测所解决的问题

  • 解决一些基于规则或者Dashboard难以实时发现的问题
  • IT运维
    • 如何知道系统正常运行 / 如何调节阈值触发合适的报警 / 如何进行归因分析
  • 信息安全
    • 哪些用户构成了内部威胁 / 系统是否感染了病毒
  • 物联网 / 数据采集监控
    • 工厂和设备是否正常运营

什么是正常

  • 随着时间的推移,某个个体一直表现出一致的行为
  • 某个个体和他的同类比较,一直表现出和其他个体一致的行为

什么是异常

  • 和自己比:个体的行为发生了急剧的变化
  • 和他人比:个体明显区别于其他的个体

相关术语

  • Elastic平台的机器学习功能
    • Elastic的ML,主要针对时序数据库的异常检测和预测
  • 非监督机器学习
    • 不需要使用人工标签的数据来学习,仅仅依靠历史数据自动学习
  • 贝叶斯统计
    • 一种概率计算方法,使用先验结果来计算现值或者预测未来的数据
  • 异常检测
    • 异常代表的是不同的,但未必代表的是坏的
    • 定义异常需要一些指导,从哪个方面去看

如何学习“正常”

  • 观察不同的人每天走的步数,由此预测明天他会走多少步
  • 需要观察不同的人,需要观察多久?
    • 一天 / 一周 / 一个月 / 一年 / 十年
  • 直觉:观察的数据多,你的预测越准确
  • 使用这些观察来创建一个模型
    • 概率分布函数:使用这个模型找出什么事几乎不可能的事件

机器学习帮你自动挑选模型

  • 使用成熟的机器学习技术,挑选合适数据的正确的统计模型
  • 更好的模型 = 更好的异常检测 = 更少的误报和漏报
  • 出现在低概率区域,发现异常

模型与需要考虑任何的周期

  • 周期选择
    • 需要一定周期的学习,才能使的置信区间的范围更小
    • 时间太长:影响因素太多,导致随机分布
    • 时间太短:完全是随机波动
周期学习

ES ML:单指标 / 多指标 / 种群分析

es ml

DEMO

  • 新建分析数据index pattern
  • 选择machine learning,选择index
  • 选择单指标分析、多指标类型,进行配置
  • 创建job,进行分析
  • View result 查看结果
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容