吴恩达机器学习(十三)异常检测(高斯分布)

目录

0. 前言

1. 高斯分布(Gaussian distribution)

2. 参数估计

3. 异常检测算法(原始模型)

4. 高斯分布异常阈值的选择

5. 多变量高斯分布(多元模型)

6. 原始模型和多元模型的区别


学习完吴恩达老师机器学习课程的异常检测,简单的做个笔记。文中部分描述属于个人消化后的理解,仅供参考。

如果这篇文章对你有一点小小的帮助,请给个关注喔~我会非常开心的~

0. 前言

易知,采集的数据或者数据本身,有可能出现异常,这些数据大部分会集中在一起,而有少部分会分散在周围。

一般地,采集的数据服从某种概率分布模型,例如服从高斯分布(Gaussian distribution),数据大概率的落在正常的区间范围内,而有小概率出现异常落在区间范围外。我们采用高斯分布作为数据的概率模型。

异常检测,则是对新的测试样本进行检测,判断这个样本是否是异常的。如果用概率模型 p(x) 表示,则 p(x_{test})< \varepsilon 表示数据有异常,\varepsilon 为一个很小的常数。

1. 高斯分布(Gaussian distribution)

变量 X 服从高斯分布可表示为 X\sim N(\mu,\sigma^{2}) ,其中 \mu 为均值, \sigma^{2} 为方差,概率分布有如下定义:

\large p(x;\mu,\sigma^{2})=\frac{1}{\sqrt{2\pi}\sigma}exp(-\frac{(x-\mu)^{2}}{2\sigma^{2}})

2. 参数估计

通过已知的样本数据集,估计这些数据分布中的未知参数,就是参数估计。

例如,已知一样本数据集,假设数据服从高斯分布,则需要估计的参数就是 \mu 和 \sigma ,根据统计的思想,可采用下式:

\large \begin{align*} \mu &= \frac{1}{m}\sum_{i=1}^{m}x^{(i)} \\ \sigma^{2} &= \frac{1}{m}\sum_{i=1}^{m}(x^{(i)}-\mu)^{2} \end{align*}

此外,还有极大似然估计、最小二乘法等参数估计方法。

3. 异常检测算法(原始模型)

假设特征间相互独立,且均服从高斯分布,x_{1}\sim N(\mu_{1},\sigma_{1}^{2}),\ x_{2}\sim N(\mu_{2},\sigma_{2}^{2}),\ ...,\ x_{n}\sim N(\mu_{n},\sigma_{n}^{2})。算法步骤如下:

  1. 提取特征
  2. 计算每个特征的均值 \mu 和方差 \sigma^{2}
  3. 建立高斯模型 p(x)=\prod_{j=1}^{n}p(x_{j};\mu_{j},\sigma_{j}^{2})=\prod_{j=1}^{n}\frac{1}{\sqrt{2\pi}\sigma_{j}}exp(-\frac{(x-\mu_{j})^{2}}{2\sigma_{j}^{2}})
  4. 对于新样本 x_{test} ,若 p(x_{test})< \varepsilon,则是异常的

4. 高斯分布异常阈值的选择

对于高斯分布异常阈值 \varepsilon 的选择,如果我们已知数据集中,一部分数据标记为异常,一部分数据标记为正常,可通过如下步骤选择阈值:

  1. 设定一个 \varepsilon ,并划分训练集和测试集
  2. 通过训练集建立概率模型 p(x) ,对测试集进行测试(异常点是否检测为异常点,正常点是否检测为正常点)
  3. 计算评估参数 F1-measure ,不断尝试 \varepsilon ,选择使得 F1-measure 最大的 \varepsilon

注:这与监督学习中,数据分类相似,但是并不相同。异常检测中,异常点不是人为造成的,是属于异常事件,而在监督学习中,数据标记为异常是人为刻意的,因为搭建的模型需对其进行分类。

异常检测监督学习
异常样本非常少异常样本与正常样本数量相当
未来出现的异常可能不相同未来出现的异常比较近似

5. 多变量高斯分布(多元模型)

对于多个特征,向量化计算均值 \mu ,协方差矩阵 \Xi

\large \begin{align*} \mu &= \frac{1}{m}\sum_{i=1}^{m}x^{(i)} \\ \Xi &= \frac{1}{m}\sum_{i=1}^{m}(x^{(i)}-\mu)(x^{(i)}-\mu)^{T} \end{align*}

其中,\mu 为 n*1 的向量,\Xi 为 n*n 的矩阵,概率模型如下表示:

\large p(x;\mu,\Xi)=\frac{1}{(2\pi)^{\frac{n}{2}}\left|\Xi\right|^{\frac{1}{2}}}exp(-\frac{1}{2}(x-\mu)^{T}\Xi^{-1}(x-\mu))

6. 原始模型和多元模型的区别

同样对于多维的数据向量,有两种模型,原始模型和多元模型。

我们已知,在原始模型中,我们假设特征之间是相互独立的,若在多元模型中,协方差矩阵 \Xi=\begin{bmatrix} \sigma_{11}^{2} & &0 \\ &... & \\ 0& & \sigma_{nn}^{2} \end{bmatrix} ,则特征间也是相互独立的,多元模型与原始模型相同。

所以多元模型中,特征间可以不是相互独立的,原始模型特征间相互独立是多元高斯分布的特殊情况

原始模型多元模型
特征间相互独立特征间不相互独立
计算成本低计算成本高
n 很大的计算量也可接受

n 很大计算成本高

且必须满足 m> n(不然协方差矩阵不可逆)


如果这篇文章对你有一点小小的帮助,请给个关注喔~我会非常开心的~

 

 

 

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值