吴恩达《机器学*》第十六章:推荐系统

发布于:2021-09-28 00:56:32



文章目录
十六、推荐系统16.1 问题形式化16.2 基于内容的推荐系统16.3 协同过滤16.4 协同过滤算法16.5 向量化实现16.6 均值归一化



十六、推荐系统

最重要的机器学*应用领域之一 ??推荐系统;
推荐系统其实即使自动的特征学*


16.1 问题形式化


给出 r(i,j) 和 y(i,j) 预测上图中的?,预测用户喜欢的类型,并将其没看过的属于喜欢的类型的电影推荐过去;


16.2 基于内容的推荐系统

假设:假设我们得到了电影的特征;

这个θ(1)是假设出来的,实际上要通过训练得到;


参数θ的训练:跟线性回归有点像


优化目标函数和梯度下降更新:

最终得到不同用户对不同电影的评级;


16.3 协同过滤

本节问题


了解协同过滤算法的基本原理;对比于基于内容的推荐算法,有何改进之处;

协同过滤的特性之一:特征学*,feature learning;
它不用基于上面方法的假设;


假设我们先得到θ,即用户喜欢某类电影的程度,;


基于内容的推荐算法 vs 协同过滤:


前者通过 电影特征+用户对电影的评分 = > 训练出用户对不同类电影的喜好程度 + 推测出用户对其它电影的评分;后者可以不给出θ,同样可以学*出特征值,然后根据特征值改进θ:
step1:随机初始化θ,通过协同过滤学*并预测电影特征值;step2:通过电影特征值学*并预测更好的θ回到step1,往复循环。。。。。。最终算法收敛到合适的电影特征值和θ; 用户对电影的评分 = > 训练出电影的特征 + 用户对各类型电影的喜好程度 +推测出用户对其它电影的评分;即用参与评价的用户来帮助特征学*;
16.4 协同过滤算法

协同过滤的这一算法能直接将θ和电影特征解出来,避免往复迭代:
即把两个优化目标函数结合;

不包括θ0和X0这里学*的都是n维;


协同过滤算法步骤:


16.5 向量化实现

解决这个问题:用户A一直在找商品B,你能不能想办法推荐给A一些类似于B的商品;


低秩矩阵分解

T为低秩;
由于电影特征个数的不确定,如何保证XθT后的矩阵维数???
在这里,电影分多少类,说明每一步电影就有多少特征值,保证θ(i)和x(j)的维数一致应该就行了;

两部电影的特征向量之间的距离越小,越相似;


16.6 均值归一化

本节问题


对于一个对任何电影都没评分的用户,如何预测他对其他电影的评分;

如何解决?
第5个用户就取每个电影的*均得分(这里吴恩达老师用均值归一化进行处理,不过最后仍是用的均值)

相关推荐

最新更新

猜你喜欢