吴恩达机器学习笔记(十) —— 推荐系统

 

 

主要内容:

一.推荐系统简介

二.Content-based recommendations

三.Collaborative filtering algorithm

四.预测结果向量化

五.mean normalization

 

 

一.推荐系统简介

推荐系统,即利用已有的数据,从中提取出可能有用的特征,然后训练出参数。得到参数后,就可以用于预测未发生的事件,并可从中找到最优的事件,或者说最迎合用户的东西,然后推荐给用户。

以下都以电影评分为例子:

以下是一些变量的含义:

 

 

二.Content-based recommendations4

此算法适用于每一部电影的特征的值(即X)已知。之后可以利用梯度下降求出每一位用户的参数Theta。

假如已经求得客户1的参数θ(1),并且已知电影3的特征为X(3),则客户1对电影3的评价可估计为θ(1)' * X(3):

代价函数及梯度下降:

 

 

三.Collaborative filtering algorithm

此算法适用于电影的特征的值(即X)未知:

然后可以通过交替更新θ和X使得代价函数最小,从而得到最优条件下的θ:

即:

 

然而,可以将两个过程合并在一起,以避免交替过程的麻烦,做法就是两者相加:

即:

梯度下降就变为了(好像没有变):

 

 

四.预测结果向量化

 

 

五.mean normalization

假如此时新增一个客户(该客户从没有对任何一部电影进行评分),则直接求其参数θ,θ = 0。

这样新客户对每一部电影的评分都预测为0显然是不合理的,因此需要mean normalization,即每个特征减去其均值,在求解完之后再加回来:

如此一来,新用户对每一部电影评分都预测为该部电影的评分的均值,这是符合常理的。

 

posted on 2018-07-27 15:45  h_z_cong  阅读(348)  评论(0编辑  收藏  举报

导航