异常检测方法

异常检测可谓是一个博大精深的研究方向,在故障检测、欺诈检测、入侵检测领域有着广泛应用。本文只是结合各网络资源对其基础进行简单介绍,涉及到具体的领域和实际应用,还需进行深入研究和尝试。

什么是异常检测

异常检测是检测不符合期望的数据、行为,在实际应用中包括去噪、网络入侵检测、欺诈检测、设备故障检测、机会识别、风险识别、特殊群体识别、患病诊断、视频监测等。异常检测通过对输入数据进行分析,检测异常状态。输入数据类型包括:连续型、二值型、类别型、图、时空数据、图像、音频等,输出异常事件或者异常概率。在选择异常检测方法时既要考虑解决的问题,也要考虑数据状态,如数据类型、数据分布、数据标记、数据量等。

异常检测面临的挑战

 正常状态不能明确定义
 在某些领域正常和异常并没有明确的界限
 数据本身存在噪声,噪声和异常难以区分
 正常行为并不是一成不变的,也会随时时间演化
 标记数据获取难,标记数据量少

异常检测方法

异常检测方法主要包括分类、聚类、统计分析、信息熵、信号分析;

信号分析主要应用于联系时域信号的异常检测,常用的方法包括小波分析、谱分析,经常应用于震动信号、音频信号的异常检测。该方法属于无监督方法,优点是不需要标记的样本,面临的问题是对于正常和异常的边界难以明确定义。

信息熵衡量分布无序程度的一个很好的指标,当信息熵越大,则表示分布越无序,许多研究人员应用信息熵对网络流量异常进行检测。该方法属于无监督方法,优点是不需要标记的样本,但是需要一个严谨的信息论方法进行异常检测。

统计分析方法是基于数据的经验分布进行异常检测,该方法的优点是可以对任意分布的数据进行异常检测,属于无监督学习方法,不需要标记的样本,面临的问题是现实中的数据并不一定符合某种分布。统计分析方法还分为参数方法和非参数方法,参数方法假设数据服从某种分布,基于现有数据对分布进行参数估计,得到参数模型,检验数据是否服从分布来检测异常;非参数方法并不假设数据服从某种分布,而直接估计概率密度,来检测异常。
统计分析参数方法常用的方法包括:一元正态(高斯)分布、多元正态(高斯)分布,Stanford机器学习课程对应用这两种异常检测方法进行了详细介绍,有的课程翻译博客将多元高斯分布和混合高斯分布混淆了,这两种分布是不同的,直接看公式,一目了然。混合高斯分布和一元高斯分布都是单变量的分布,而多元高斯分布是多变量分布,大家注意区分。
另一种常用的多元统计分析方法是基于PCA降维,计算降维后变量的统计量和统计量控制限,在线检测时,统计量超过控制限,则存在故障。这种方法同样要求数据服从正态分布,该方法应用前需要对数据进行正态性检验,统计量其实是变换后数据的特征,和机器学习中特征提取的特征类似,该方法的缺点是对数据分布的要求和统计量种类有限,及特征种类有限,适用场景和范围也就有限,在这个体系下的研究还有很多,包括数据映射方法、线性非线性、高斯非高斯、多时段、多模态等等。
非参数方法以k最近邻为例,某个样本的类别为离这个样本最近的k个样本中数量最多的样本的类别,通过距离来度量样本间的相似度。

聚类方法假设远离正常样本的数据为异常样本(基于距离),稀疏的样本为异常样本(基于密度)。聚类方法可以分为非监督学习方法和半监督学习方法。非监督学习方法对样本进行聚类,设定邻域半径,离样本中心大于邻域半径的点认为是异常点。半监督学习方法运用正常样本点进行建模,如果样本点不属于建模类别即为异常点。该方法的缺点是,计算密集,在正常样本类别数据稀疏时并不适用。

分类方法通过对标记样本建立分类模型进行异常检测,分类方法分为监督和半监督方法。监督方法需要均衡的正常样本和异常样本,而且只能识别已知标记的种类,它的优点是识别的精度较高。半监督方法只需要标记的正常样本,对正常样本建立模型检测与正常偏离的异常行为,缺点是对于未搜集到的正常样本会产生误报。分类是机器学习研究的一大主题,包含不同种类不同适用场景的方法,后续再总结。

上述异常检测方法只是一个概述,具体方法在实践中的选择,数据的处理将通过案例的方式进行总结。

写博客的目的是学习的总结和知识的共享,如有侵权,请与我联系,我将尽快处理

扫描二维码关注公众号,回复: 1563102 查看本文章

猜你喜欢

转载自blog.csdn.net/weixin_37801695/article/details/78713315