机器学习之异常检测

只利用输入样本的无监督异常检测方法:

  • 局部异常因子
  • 支持向量机异常检测
  • 基于密度比的异常检测

1.局部异常因子:

概念:指对偏离大部分数据的异常数据进行检测的方法。

步骤:

可达距离:

RD_{K} (x,x{}') = max(\left \| x-x^{k}\right \|,\left \| x-x{}' \right \|)

x^{k}表示训练样本中距离x的第k近的样本。

局部可达密度:

LRD_{k}(x) = (1/k \cdot\sum RD_{K}(x^{(i)},x) )^{-1}i = 1....k

当x的训练样本密度值很高的时候,局部可达密度的值也较大。

局部异常因子

LOF_{k}(x) = (1/k)\cdot \sum LRD_{k}(x^{(i)})/LRD_{k}(x),i=1...k

值越大,x的异常度就越大。

个人理解:与K近邻方法类似,寻求与目标点距离近的的K个点中的最大值。当K值固定,如果距离其他点越远,就说明这个点与其他点在的位置越不一样,也就是越异常。

2.支持向量机异常检测

支持向量机异常检测器:在无监督学习的异常检测中引入学习要素。

核心:求出几乎包含所有训练样本的超球,并将没有包含在超球内的训练样本看作是异常值。

步骤:

求解最优化问题:

min [R^{2} + C\sum \xi _{i}] , i = 1...n 

s.t. \left \| x_{i} - c \right \|^{2} \leqslant R^{2} + \xi _{i} , \xi _{i} \geqslant 0,i = 1..n

求解 :

 c,R,\xi

3.基于密度比的异常检测

弱监督异常值检测:在给定已知是正常值的样本情况下,如何找到测试样本中包含的异常值。

步骤:

计算密度比:

w(x) = p{}'(x) / p(x) , 其中p(x)是正常样本的概率密度p(x)​​​​​​是测试样本的概率密度

密度比,对于正常样本会输出接近1的值,对于异常样本则会输出和1相差较大的值。

然而,当分母较小的时候,分子的误差会相应的增加。

对此,需要不计算概率密度而直接进行密度比估计的KL散度密度比估计法

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值