在数据挖掘中,异常检测(英语:anomaly detection)对不匹配预期模式或数据集中其他项目的项目、事件或观测值的识别。通常异常项目会转变成银行欺诈、结构缺陷、医疗问题、文本错误等类型的问题。异常也被称为离群值、新奇、噪声、偏差和例外。
特别是在检测滥用与网络入侵时,有趣性对象往往不是罕见对象,但却是超出预料的突发活动。这种模式不遵循通常统计定义中把异常点看作是罕见对象,于是许多异常检测方法(特别是无监督的方法)将对此类数据失效,除非进行了合适的聚集。相反,聚类分析算法可能可以检测出这些模式形成的微聚类。
在假设数据集中大多数实例都是正常的前提下
- 无监督异常检测方法能通过寻找与其他数据最不匹配的实例来检测出未标记测试数据的异常。
- 监督式异常检测方法需要一个已经被标记“正常”与“异常”的数据集,并涉及到训练分类器(与许多其他的统计分类问题的关键区别是异常检测的内在不均衡性)。
- 半监督式异常检测方法根据一个给定的正常训练数据集创建一个表示正常行为的模型,然后检测由学习模型生成的测试实例的可能性。
异常检测技术用于各种领域,如入侵检测、欺诈检测、故障检测、系统健康监测、传感器网络事件检测和生态系统干扰检测等。它通常用于在预处理中删除从数据集的异常数据。在监督式学习中,去除异常数据的数据集往往会在统计上显著提升准确性。
正态分布又名高斯分布,是一个在数学,物理以及工程等领域都非常重要的概率分布。由于这个分布函数有很多漂亮的性质,使得其在诸多设计统计科学离散科学等许多领域都有着重大的影响力。
若随机变量X服从一个位置参数为 μ 尺度参数为 σ 的概率分布,记为:
则其概率密度函数为
若 μ = 0, σ=1 ,这个分布被称为标准正态分布,这个分布可以简化为:
不同参数的正态分布图:
更多基础资料参考WIKI :点击查看
异常点检测(又称为离群点检测)是找出其行为很不同于预期对象的一个检测过程。这些对象被称为异常点或者离群点。异常点检测在很多实际的生产生活中都有着具体的应用,比如信用卡欺诈,工业损毁检测,图像检测等。
异常点(outlier)是一个数据对象,它明显不同于其他的数据对象,就好像它是被不同的机制产生的一样。例如下图红色的点,就明显区别于蓝色的点。相对于蓝色的点而言,红色的点就是异常点。
一般来说,进行异常点检测的方法有很多,最常见的就是基于统计学的方法。
假设有 n 个点 (x1,...,xn),那么可以计算出这 n 个点的均值μ 和方差 σ。均值和方差分别被定义为:
涉及两个或者两个以上变量的数据称为多元数据,很多一元离群点的检测方法都可以扩展到高维空间中,从而处理多元数据。
假设 n 维的数据集合形如x⃗ i=(xi,1,...,xi,n),i∈{ 1,...,m},那么可以计算每个维度的均值和方差μj,σj,j∈{ 1,...,n}. 具体来说,对于j∈{ 1,...,n},可以计算
假设 n 维的数据集合x⃗ =(x1,...,xn) , 可以计算 n 维的均值向量
对于一个多维的数据集合 D,假设a⎯⎯是均值向量,那么对于数据集 D 中的其他对象 a,从 a 到a⎯⎯的 Mahalanobis 距离是
在这里,MDist(a,a⎯⎯) 是数值,可以对这个数值进行排序,如果数值过大,那么就可以认为点 a 是离群点。或者对一元实数集合{ MDist(a,a⎯⎯)|a∈D} 进行离群点检测,如果MDist(a,a⎯⎯) 被检测为异常点,那么就认为 a 在多维的数据集合 D 中就是离群点。
运用 Mahalanobis 距离方法检测到的异常点如图,红色标记为异常点,蓝色表示原始的数据点。
在正态分布的假设下,χ2 统计量可以用来检测多元离群点。对于某个对象 a,χ2 统计量是
运用χ2统计量检测到的异常点如图,红色标记为异常点,蓝色表示原始的数据点。
参考:https://zr9558.com/2016/06/13/outlierdetectionone/