Stanford 机器学习笔记 Week9 Anomaly Detection

Density Estimation

Problem Motivation

这个算法的目的是发现一个training set中的不规则点。给定一个training set ,如果我们能设计一个模型p,使得p(test) 等于该点是常规点的概率。那么我们就能通过判断p(test)< ε 来确定test是一个不规则点。
显然越接近原training set的中心p(test)越大。

该算法可用于质量检测等许多领域,因为一个不规则点出问题了的可能性很大。

Gaussian Distribution

首先复习一下正态分布
正态分布 N(μ, σ2 ) :
这里写图片描述

μ为平均值, σ2 为方差,函数曲线和x轴间面积恒等于1

parameter estimate指的是给定接近正态分布的数据集,找出最适合的μ和 σ2
方法是u = mean(X), σ2 = 1/m * sum( (Xu)2 )

Algorithm

使用正态分布来构造模型p:
这里写图片描述

给定training set X,对于X中的每个属性计算出对应的μ和 σ2 。再使用上面的公式计算。

Building an Anomaly Detection System

Developing and Evaluating an Anomaly Detection System

本节主要讲述如何评价一个异常检测算法的好坏。

上一节把每个数据点视为无label的,本节给每个数据点分类,normal的为0,anomalous的为1
同样使用Training,CV,Test的方法把数据分类。比例如下:
这里写图片描述

只有CV,Test包含anomalous。
接下来的步骤是:
这里写图片描述
使用Training Set得到model,然后使用model在CV/Test上做分类,计算上述属性。

回顾:
Precision = true positive / predicted positive = true positive / ( true positive + false positive)
Recall = true positive / actual positive = true positive / (true positive + false negative)

使用这个模型在倾斜(某种分类占据绝大部分)的数据集上有很好的效果。

用这个方法同样可以求得最优ε

Anomaly Detection vs. Supervised Learning

异常检测本质上也是一个分类算法,那么为什么不用之前的监督式算法,比如神经网络或逻辑回归呢?这取决于数据的分布。

适合异常检测的:
如果数据positive examples(比如anomalous点)的数量很少,那么最好使用异常检测。因为anomalous的种类很多而且数量很少,无法提供足够的信息共算法做分类。而且以后出现的anomalous种类可能和之前的都不一样。

适合监督学习的:
如果positive 和negative examples的数量都很多,最好使用监督算法,因为可以提供足够信息,而且之后出现的positive点有很大概率和之前的positive点一样。

Choosing What Features to Use

当某个属性的分布不接近正态分布时,虽然实际上对结果没有太大影响,但是如果能把这个数据处理成更符合正态分布的,将会得到更好的效果。常见方法是取log和开方。

当模型对anomalous和非anomalous点都预测很大的p()值时,说明模型有错误。做错误分析时,可以使用在监督学习中一样的方法。对于算法错误预测的一个个例,人工分析这个个例是否有某个属性是异于其他例子的,然后提取出这个属性假如到模型中。

Multivariate Gaussian Distribution (Optional)

Multivariate Gaussian Distribution

之前版本的anomaly detect有一个问题:
这里写图片描述
因为把每个属性分开考虑了,所以没有考虑各个属性之间的位置关系。如上图所示,N点应该是一个异常点,但是N点两个属性的值却都在正常范围以内。这种预测方法得到的样本分布是以样本中心为圆心的一个以x,y轴方向为半径的一个椭圆,这就没有考虑样本分布的形状问题。

引入新的模型:
这里写图片描述
这个模型中,u控制样本中心, Σ (covarience matrix)控制样本分布的形状。

Anomaly Detection using the Multivariate Gaussian Distribution

上节公式中的u和 Σ 一般使用:
这里写图片描述

Original model是Multivariate model的一种特例,即预测分布是关于x,y轴方向对称的一个椭圆,因此 Σ 主对角线值为:
这里写图片描述

除主对角线外的位置是表示属性间关系的,因此均为0。

Original和Multivariate Model的应用区别:

Original Model:
1.可以通过手动添加新属性的方法来表示属性间关系,比如添加x3 = x1/x2
2.Original Model的计算速度很快,因为不用计算矩阵的逆
3.当样本数量很少的时候也可以使用,而Multivariate Model对此有要求

Multivariate Model:
1.自动处理属性间关系
2.要求m>n,否则 Σ 无逆(最好m>= 10 * n)

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值