吴恩达-机器学习(9)-异常检测、协同过滤

Density Estimation

Problem Motivation

异常检测:给定m个假定正常的数据集,对x的分布概率建模,建立概率模型之后,对于新的数据概率低于阈值就是异常的

异常检测的应用:

  • 欺诈检测
  • 产品的质量控制
  • 数据中心的计算机监测
Gaussian Distribution

样本出现的概率符合下列公式就是高斯分布,其中 σ \sigma σ是标准差, μ \mu μ是均值

p ( x ) = 1 2 π σ exp ⁡ ( − ( x − μ ) 2 2 σ 2 ) p(x) = \frac{1}{\sqrt{2\pi}\sigma}\exp\left(-\frac{(x-\mu)^2}{2\sigma^2}\right) p(x)=2π σ1exp(2σ2(xμ)2)

Algorithm

独立分布的概率,等于概率的乘积
在异常检测算法中,即使独立的假设不成立,该算法的效果也还可以

异常检测算法步骤:

Building an Anomaly Detection System
Developing and Evaluating an Anomaly Detection System

与监督学习一样,将样本分为三个部分训练集、交叉验证集、测试集,
不同之处在于训练集是无标签的,都是正常的数据,交叉验证集和测试集是有标签的正常的数据和异常的数据均包含

下图就是数据集的分割,第二种方法也可行但不推荐

由于数据样本的不均衡,所以要使用召回率和置信度进行评价算法

Anomaly Detection vs. Supervised Learning

异常检测和监督学习的对比

Anomaly DetectionSupervised Learning
数据具有倾斜性,正的数据较少, 负的数据较多大量的正的和负的数据
很多不同种类的异常数据,任何算法都很难从假设的例子中了解异常是什么样子的,出现的异常可能并没有出现过充足的正的数据可以让算法了解正的样本是什么样的,未来出现的正的样本很可能是训练集中的

异常检测和监督学习的应用对比

Anomaly DetectionSupervised Learning
欺诈检测垃圾邮件分类
生产检测天气预测
数据中心监测机器癌症检测
Choosing What Features to Use

异常检测是使用高斯模型对特征向量建模,但有些特征不符合高斯分布,虽然算法可以正常运行,但如果对这些
特征进行处理使其符合高斯分布,算法表现会更加好,处理的方法有取对数、开方等

选择特征要选择异常情况下非常大或非常小的特征向量

Multivariate Gaussian Distribution

Multivariate Gaussian Distribution

对于计算机监测的例子:当低CPU占用,高内存占用时,使用上述的异常检测可能将该情况作为正常情况,上述
的异常检测是圆形的,在同一个圆上认为是同一概率,所以要使用多元高斯分布

多元高斯分布不是将特征独立的建模

多元高斯分布的例子
协方差相同,相互独立,与普通高斯分布相同

协方差不同,特征相关

正相关

负相关

Anomaly detection using the multivariate Gaussian Distribution

使用多元高斯模型建模

传统高斯模型和多元高斯分布模型的关系协方差矩阵对角线上的值其实就是方差

高斯分布和多元高斯分布对比

Original modelMultivariate Gaussian
当特征相关时需要手动的创建新特征去捕获这种情况自动寻找特征间的相关性
所需的计算资源少所需的计算资源多
训练集的数量可以很小训练集的数量必须大于特征数

Predicting Movie Ratings

Problem Formulation

电影评分数据

Content Based Recommendations

符号说明


线性回归

梯度下降

使用线性回归进行预测,需要收集电影的特征数据,这是非常困难的,所以下一节介绍协同过滤

Collaborative Filtering

Collaborative Filtering

对于每个电影我们要知道该电影的动作指数是多少浪漫指数是多少,这件事是很难的,但我们可以很容易的知道
用户喜欢什么类型的电影

优化目标

Collaborative Filtering Algorithm

如果给你几个特征去表示电影,我们可以使用这些特征去获取用户的参数数据
如果给你用户的参数数据,你可以使用这些资料去获得电影的特征
将两者合一就是协同过滤算法

同时进行梯度下降

Low Rank Matrix Factorization

Vectorization: Low Rank Matrix Factorization

协同过滤的向量实现

对于每个电影已经得到了特征,就可以寻找相关的电影

Implementational Detail: Mean Normalization

当用户没有给任何电影评分时,所以r(i,j)=0,对参数影响的只有正则化项,为了最小化代价函数,所以最后参数均
为0,所以预测结果均为0,这对于推荐是没有任何意义的

均值归一化就是为了解决上述问题,计算每个电影的平均分,将每个评分减去平均分
如果电影没有评分对列进行均值归一化

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值