吴恩达《机器学习》课程总结(16)推荐系统

16.1问题形式化

(1)讲推荐系统的原因主要有以下几点:

1.推荐系统是一个很重要的机器学习的应用,虽然在学术界上占比较低,但是在商业应用中非常的重要,占有很高的优先级。

2.传达机器学习的一个大思想:特性是可以学习而来的,不需要人工去选择。

(2)说明的案例:电影推荐系统

希望创建一个算法来预测每个人可能会给他们没看过的电影打多少分,并以此作为推荐依据。

(3)此外引入一些标记:

nu代表用户的数量,

nm代表电影的数量,

r(i,j)如果用户j给电影i评过分则r(i,j)=1,

y(i,j)代表用户j给电影打的分数,

mj表示用户评分的电影的总数。

16.2基于内容的推荐系统

(1)总结:基于内容其实就是已经有了电影的特征X,然后求拟合的参数θ,后面提到的基于用户,则是已经有了参数θ,来求拟合的电影特征X。

(2)假设每部电影已知特征(基于内容):

参数说明:θ(j)表示用户j的参数,x(i)表示电影i的特征,

对于用户j和电影i,我们预测评分为:(θ(j))Tx(i)

对于单用户的代价函数(省略了样本数m,对θ0不做正则化,只计算有评分的)如下:

故对于所有用户的代价函数为:

梯度下降式的梯度更新方式:

16.3协同过滤

(1)基于用户的(即已知用户的参数θ,求电影特征x),其代价函数为:

(2)协同过滤算法是既不知道特性X,也不知道用户参数θ时同时对二者进行优化。

其代价函数为:

对代价函数求偏导数:

(3)协同过滤的算法步骤:

1.初始化x(1),x(2),……,x(nm)(1)(1),……,θ(nu)为一些随机小值;

2.使用梯度下降算法最小化代价函数;

3.在训练完算法后,我们预测(θ(j))Tx(i)为用户j给电影i的评分。

(4)如何给用户推荐:

1.根据计算出来的评分,把该用户评分高的电影给该用户;

2.如果用户观看某电影,根据计算电影特征间的相似度,推荐相似的电影给该用户。

16.4协同过滤算法

16.5向量化:低秩矩阵分解

将数据集评分存储在矩阵中->通过协同过滤学习得到元素为(θ(j))Tx(i)的预测矩阵->根据电影特征距离求电影间的相似性

16.6推行工作的细节

总结:怎么给新用户推荐电影(会把每部电影的平均分作为该用户的评分)

(1)用户评分数据以及新用户Eve:

(2)对每部电影做均值归一化,然后作为数据来训练模型

(3)预测的值加上该电影的均值为最终对电影的评分:

(4)学习到的模型会把每部电影的平均分作为新用户对电影的评分。

原文地址:https://www.cnblogs.com/ys99/p/9277193.html

时间: 2024-10-10 01:23:37

吴恩达《机器学习》课程总结(16)推荐系统的相关文章

Coursera-AndrewNg(吴恩达)机器学习笔记——第一周

一.初识机器学习 何为机器学习?A computer program is said to learn from experience E with respect to some task T and some performance measure P, if its performance on T, as measured by P, improves with experience E.理解:通过实验E,完成某一项任务T,利用评价标准P对实验结果进行迭代优化! 机器学习主要包括监督学习

吴恩达机器学习3

二分分类 在一个二分分类的问题中间,结果总是离散输出的 比如:账户被黑客入侵(1)或者被盗(0):肿瘤是恶性的(1)还是良性的(0) 举个例子:是不是一个猫 目标是训练分类器,其中输入是一张图片所产生的特征向量,并且预测相应的标签是1还是0.在这种情况下,如果是1则表明是猫的图像,0则表示不是猫的图像 通常情况下,一张图片在电脑里面被存为三色素:红,绿和蓝.这三种颜色分别产生了三个矩阵,这三个矩阵拥有相同的大小.比如说,如果一张图片的大小为64*64,则三个矩阵的大小都是64*64 单元格中的值

吴恩达机器学习4

逻辑回归 逻辑回归是一种用来解决当输出的y全部都是1或者0这种监督学习的机器学习算法.其目标就是最小化预测值和训练集之间的错误. 举个栗子:猫和没有猫 通过以向量x形式给出的一张图片,我们的目标就是判断这张图片中有没有猫 给x,y'=P(y=1|x)  其中 0<=y'<=1 在逻辑回归中我们所需要利用的参数有: 1.输入特征向量:x∈Rnx,其中nx表示特征的数目 2.训练的集合:y∈0,1 3.权值 :W∈Rnx,其中nx表示特征的数目 4.偏值:b∈R 5.输出:y∈σ(WTx+b) 6

【吴恩达机器学习】学习笔记——2.1单变量线性回归算法

1 回顾1.1 监督学习定义:给定正确答案的机器学习算法分类:(1)回归算法:预测连续值的输出,如房价的预测(2)分类算法:离散值的输出,如判断患病是否为某种癌症1.2 非监督学习定义:不给定数据的信息的情况下,分析数据之间的关系.聚类算法:将数据集中属性相似的数据点划分为一类. 2 单变量线性回归算法2.1 符号定义m = 训练样本的数量x = 输入变量y = 输出变量2.2 工作方式训练集通过学习算法生成线性回归函数hypothesis  hθ(x) = θ0 + θ1x 原文地址:http

Coursera-AndrewNg(吴恩达)机器学习笔记——第三周

一.逻辑回归问题(分类问题) 生活中存在着许多分类问题,如判断邮件是否为垃圾邮件:判断肿瘤是恶性还是良性等.机器学习中逻辑回归便是解决分类问题的一种方法.二分类:通常表示为y?{0,1},0:"Negative Class",1:"Possitive Class". 逻辑回归的预测函数表达式hθ(x)(hθ(x)>=0 && hθ(x)<=1): 其中g(z)被称为逻辑函数或者Sigmiod函数,其函数图形如下: 理解预测函数hθ(x)的

吴恩达机器学习笔记-第三周

六.逻辑回归 6.1 分类问题 对于二分类问题, 我们一般将结果分为0/1,在理解逻辑回归时可以引入感知机,感知机算是很早的分类器,但因为感知机是分布函数,也就是输出的值小于某一临界值,则分为-1,大于某一临界值,则分为1,但由于其在临界点处不连续,因此在数学上不好处理,而且感知机分类比较粗糙,无法处理线性不可分的情况,因此引入了逻辑回归,逻辑回归相当于用一个逻辑函数来处理回归的值,导致最终输出的值在[0, 1]范围内,输入范围是?∞→+∞,而值域光滑地分布于0和1之间. 小于0.5的分为0类,

线性回归和 逻辑回归 的思考(参考斯坦福 吴恩达的课程)

还是不习惯这种公式的编写,还是直接上word.... 对上面的(7)式取log后并最大化即可得到最小二乘法,即 argmaxθ J(θ) 思考二:线性回归到逻辑回归的转变: 1) 引入逻辑回归,假设用线性回归来做分类问题,设为二分类,即y取0或1. 则会出现如下的情况: 这种情况下是能很好的分类的,但若数据是如下所示呢: 则分类很不好. 思考三:逻辑回归损失函数的得来(解释):     答,也是通过最大似然得到的.y的取值为0,1:则认为这是一个伯努力的分布,也称为两点的分布,则公式表示如下:

【吴恩达机器学习随笔】什么是机器学习?

定义 Tom Mitchell对机器学习定义为"计算机从经验E中学习,解决某一任务T,进行某一度量P,通过P测定在T上的表现因经验E而提高".定义个人觉得大体理解即可,如果扣文咬字去理解会十分痛苦,就不做过多解释了. 原文:A computer program is said to learn from experience E with respect to some class of tasks T and performance measure P, if its perform

吴恩达机器学习课时3:监督学习

一.简介 0.example:假设你要对房价进行预测,横轴是不同房屋的平方英尺数,纵轴是不同房子的价格,单位是千美元.那么现在有了这些数据,假设你现在有一栋150平方英尺的房子,你想把这个房子卖掉,想知道能卖多少钱.那么什么样的学习算法能帮到你呢? 学习算法能做的一件事就是根据数据画一条直线来拟合数据,如下图,基于此看上去,房子大约可以卖15万美元 但这可能不是你可以唯一使用的学习算法,可以有一个更好的算法,除了用直线来进行拟合数据,可以使用二次函数或者二阶多项式,来拟合数据会更好,如果此时在这

吴恩达机器学习记录--Matlab 一些基本操作

1.加减乘除2.真假  "==   ~="3.逻辑与  逻辑或  "&&  ||"4.变量位数长短 format short/format long %0.2f  (小数点后两位数)5.矩阵表示    A = [1 2;3 4;5 6]  (三行两列)     v = [1 2 3]  (行向量) v = [1;2;3] (列向量)6.生成矩阵    (1)   v = 1:0.1:2    v = 1:6   (生成行向量) (2)  ones(2