不必时时怀念我,也不要指望我回来,我离开以后,你们就是我,
Vive le peuple!
例子
以视频的例子为例
一个航天发动机有两个属性
好的发动机的分布如下图
而我们的任务是,给一个发动机,它的好坏未知,给你它的数据,判断它是否正常
如果发动机正常的概率小于某个阈值,则认为这个发动机异常
异常检测
高斯(正态)分布
图像和公式
不同参数下的高斯函数图像
算法实现
首先求出两个参数
之后将x(i)带入参数进行累乘
如果概率小于阈值,则为异常
实现时要注意的地方
判断算法执行的效能和之前不对称性分类很像
数据也和之前线性回归一样分成三部分
异常检测和监督学习
异常检测适合于那些普通算法很难学习的例子(有可能每个反例的情况不一样),推荐正例远远大于反例时使用
而监督学习的反例的特征都是相近的,推荐正反例数量级差距不大时使用
转化
如果一个数据的图像不符合高斯分布,我们可以通过转化将其转化为高斯分布
如下图就可以取log将其转化为高斯分布图像
如果现有的图像看不出异常点和正常点的区别,可以尝试增加特征进行区别
多变量的高斯分布
引例
这是有两个特征的高斯分布的图像
但是仅靠这三个图像很可能出现对异常点的误判
粉色圈为误判,蓝圈是正确的判断
为了解决这个问题,我们得建立一个统一的模型
公式
这是多元高斯分布的公式
这个玩意是sigma的行列式
其中
不同参数下的二元高斯函数的图像
其中,μ决定高斯函数的最高点在xy的坐标,Σ的对角线的元素决定图像的高度,如果对角线元素不相同则会使图像变形
什么时候需要使用多变量高斯分布
如果特征间的关系小时使用原始的高斯分布即可(适合于大量数据,训练集大小要求可以很小)
若特征间的关系比较大的时候应该使用多变量的高斯分布(适合于少量数据,训练集的数量必须远远大于特征数量,防止矩阵不可逆)