异常检测Anomaly Detection(三)基于PCA相关方法


本文将会阐述如何用线性方法进行异常检测。

使用线性方法的重要假设为:

  • 假设一:近似线性相关假设。
  • 假设二:子空间假设。子空间假设认为数据是镶嵌在低维子空间中的,线性方法的目的是找到合适的低维子空间使得异常点(o)在其中区别于正常点(n)。

基于此两点假设,在异常检测第一阶段,为了确定特定模型是否适合特定的数据集,对数据进行探索性和可视化分析是非常关键的。

1. 线性回归

关于线性回归的基本概念和方法不再赘述,只列基本点:

  • 模型形式 Y = a X + b Y=aX+b Y=aX+b L o s s = 1 2 ∣ ∣ y ^ − y ∣ ∣ 2 = 1 2 ∣ ∣ a U − y ∣ ∣ 2 , 其 中 U = [ X 1 ] 1 为 截 距 项 b 的 系 数 向 量 Loss=\frac{1}{2}||\hat{y}-y||^2=\frac{1}{2}||aU-y||^2,其中U=[X\quad1]\quad1为截距项b的系数向量 Loss=21y^y2=21aUy2,U=[X1]1b是a的凸函数,最小值是 ∂ l o s s ∂ a = 0 \frac{\partial{loss}}{\partial{a}}=0 aloss=0。常用解法有最小二乘梯度下降两种。
  • 最小二乘法是直接求得解析解,最优解为
    a ∗ = ( U T U ) − 1 ( U T y ) a^*=(U^TU)^{-1}(U^Ty) a=(UTU)1(UTy) 很明显,最小二乘的要求是 U T U U^TU UTU可逆,即 U T U U^TU UTU满秩,即X的列之间(特征间)无线性相关。实际应用中,稠密矩阵求逆过程的复杂度是 O ( n 2 k ) O(n^2k) O(n2k),其中 U k ∗ n U_{k*n} Ukn,k为样本数,n为特征数
  • 梯度下降法是数值解法,可以使用随机梯度下降(mini-batch stochastic gradient descent)。初始化一组模型参数,接下来每次迭代中,先随机均匀采样一个由固定数目训练数据样本所组成的小批量(mini-batch),然后求小批量中数据样本的平均损失和梯度,最后用此结果与预先设定的学习率的乘积作为模型参数在本次迭代的减小量。 在这里插入图片描述

2. 主成分分析

在这里插入图片描述
关于PCA的详细推导,可以见主成分分析(PCA)原理总结https://www.cnblogs.com/pinard/p/6239403.html

归一化问题

当不同维度的尺度差别较大时,使用 有时并不能得到直观有效的结果。例如,考虑一个包含年龄和工资等属性的人口统计数据集。工资属性的范围可能是几万,而年龄属性几乎总是小于100,使用主成分分析会导致主成分被高方差属性所控制。对于一个只包含年龄和工资的二维数据集,最大的特征向量几乎与工资轴平行,这会降低异常点检测过程的有效性。因此,一个自然的解决方案是对数据进行均值为0方差为1的标准化处理。这隐含地导致在主成分分析中使用相关矩阵而不是协方差矩阵。当然,这个问题并不是线性建模所独有的,对于大多数异常检测算法,都需要使用这样的预处理。

回归分析的局限性

回归分析作为检测离群值的工具有一些局限性。这些缺点中最重要的是在本章的一开始就讨论了,其中探讨了回归分析的数据特定性质。特别是,为了使回归分析技术有效,数据需要高度相关,并沿着低维子空间对齐。当数据不相关,但在某些区域高度聚集时,这种方法可能不会有效。另一个相关的问题是,数据中的相关性在本质上可能不是全局性的。子空间相关性可能是特定于数据的特定位置的。在这种情况下,由主成分分析发现的全局子空间对于异常检测是次优的。因此,为了创建更一般的局部子空间模型,有时将线性模型与邻近模型结合起来是有用的。

总结

真实数据中,数据不同属性之间往往具有显著的相关性。在这种情况下,线性建模可以提供一种有效的工具来从底层数据中移除异常值或者进行异常检测。对于其他基于因变量回归的应用,线性建模是一种工具,去除异常值对于提高此类应用的性能是非常重要的。在大多数情况下,主成分分析提供了去除异常值和进行异常检测最有效的方法,因为它对存在少数异常值的数据更有鲁棒性。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值