机器学习(Coursera吴恩达)(八 其他)

机器学习(Coursera吴恩达)(八 其他)

标签(空格分隔): 机器学习


异常检测(anomaly detection)

异常检测问题:假设有一个新飞机,引擎有特征变量xtest,异常检测就是我们希望制导这个新的飞机引擎是否有某种异常。
给定数据集x(1),x(2)x(3),...,x(m),假设数据集是正常的,我们希望制导新的数据xtest是不是异常的,即测试数据不属于该组数据的几率。
机器学习(Coursera吴恩达)(八 其他)

这种方式称为密度估计,表达式如下:
if  p(x)<ϵ   anomaly;p(x)>ϵ   normal
欺诈检测:x(i)=i
模型p(x)是其属于一组数据的可能性,通过p(x)<ϵ检测非正常用户。
异常检测主要是用来识别欺骗。

算法

对于给定的数据集x(1),x(2)x(3),...,x(m),我们要针对每一个特征计算μδ2的估计值。

μj=1mi=1mxj(i)

δj2=1mj=1m(x(i)μj)2

一旦我们获得了均值和方差的估计值,给定新的一个训练实例,根据模型计算p(x).
p(x)<ϵ为异常。
机器学习(Coursera吴恩达)(八 其他)

机器学习(Coursera吴恩达)(八 其他)

数据集选择

机器学习(Coursera吴恩达)(八 其他)
还是要用F1选择阈值。判断查准率和查重率。

与监督学习对比

机器学习(Coursera吴恩达)(八 其他)

选择特征

对于异常检测算法,我们使用的特征是至关重要的.
异常检测假设特征服从高斯分布,例如使用对数函数:x=log(x+c),其中c为非负数,或者x=xc, c为0-1之间的一个分数。

目的是让数据特征更接近高斯分布。

推荐系统

引入标记:
* nu代表用户数
* nm代表电影书
* r(i,j)如果用户j给电影i评分,则为1
* yi,j用户j给电影i的评分
* mj用户j评分过电影的综述

基于内容

机器学习(Coursera吴恩达)(八 其他)

  • θ(j)表示用户j的参数。(Rn+1)
  • x(i)电影i的特征
  • 用户j和电影i,我们预测的评分为(θ(j))Tx(i)
  • 代价函数针对用户j:
    机器学习(Coursera吴恩达)(八 其他)

为了学习所有用户,要对所有用户的代价函数求和:
机器学习(Coursera吴恩达)(八 其他)

然后对这个总的代价函数使用梯度下降法求最优解。
机器学习(Coursera吴恩达)(八 其他)

协同过滤

现在,我们如果没有对每一个电影都有评价,也就是没有电影的特征。因为我们很难对每一个电影都设计合适的特征,所以在我们拥有用户评价的情况下,需要对每个电影学习特征。
*协同过滤:是电影特征与用户参数协同学习。前提是我们不知道用户的参数θ也不知道电影的特征x。我们拥有的只有用户对电影的评分。
修改优化目标:
机器学习(Coursera吴恩达)(八 其他)

对代价函数求偏导数:(对θx同时最小化)
机器学习(Coursera吴恩达)(八 其他)

算法步骤:
1. 初始x(1),x(2)x(3),...,x(nm);θ(1),θ(2)θ(3),...,θ(nu)
2. 使用梯度下降法最小化代价函数
3. 在训练完之后,我们预测(θ(j))Tx(i)为用户j对电影i的预测评分。

大规模学习算法

  1. 用学习曲线确定是否我们需要打大训练集。
  2. 随机梯度下降法
    直接用梯度下降,对大规模系统来说每一次迭代都需要对所有数据进行误差进行累加,那么一次的计算量就会特别大。所以要找更快捷的方法,适用于大规模学习。
    机器学习(Coursera吴恩达)(八 其他)
    机器学习(Coursera吴恩达)(八 其他)

  3. 小批量梯度下降(Mini-batch)
    机器学习(Coursera吴恩达)(八 其他)

  4. 随机梯度下降收敛
    机器学习(Coursera吴恩达)(八 其他)

机器学习(Coursera吴恩达)(八 其他)

机器学习(Coursera吴恩达)(八 其他)