经验首页 前端设计 程序设计 Java相关 移动开发 数据库/运维 软件/图像 大数据/云计算 其他经验
当前位置:技术经验 » 大数据/云/AI » 人工智能基础 » 查看文章
吴恩达机器学习笔记57-基于内容的推荐系统(Content Based Recommendations)
来源:cnblogs  作者:NeoML  时间:2019/3/18 8:43:24  对本文有异议

  假使我们是一个电影供应商,我们有 5 部电影和 4 个用户,我们要求用户为电影打分。

  前三部电影是爱情片,后两部则是动作片,我们可以看出Alice 和Bob 似乎更倾向与爱
情片, 而 Carol 和 Dave 似乎更倾向与动作片。并且没有一个用户给所有的电影都打过分。
我们希望构建一个算法来预测他们每个人可能会给他们没看过的电影打多少分,并以此作为
推荐的依据。

下面引入一些标记:
  ???? 代表用户的数量
  ???? 代表电影的数量
  ??(??, ??) 如果用户 ?? 给电影 ?? 评过分则 ??(??, ??) = 1
  ??(??,??) 代表用户 ?? 给电影 ?? 的评分
  ????代表用户 ?? 评过分的电影的总数

  在一个基于内容的推荐系统算法中,我们假设对于我们希望推荐的东西有一些数据,这
些数据是有关这些东西的特征。假设每部电影都有两个特征,如??1代表电影的浪漫程度,??2代表电影的动作程度。

则每部电影都有一个特征向量,如??(1)是第一部电影的特征向量为[0.9,0]。

  下面我们要基于这些特征来构建一个推荐系统算法。 假设我们采用线性回归模型,我
们可以针对每一个用户都训练一个线性回归模型,如??(1)是第一个用户的模型的参数。 于
是,我们有:

??(??)用户 ?? 的参数向量
??(??)电影 ?? 的特征向量
对于用户 ?? 和电影 ??,我们预测评分为:(??(??))????(??)

代价函数:
针对用户 ??,该线性回归模型的代价为预测误差的平方和,加上正则化项:

其中 ??: ??(??, ??)表示我们只计算那些用户 ?? 评过分的电影。在一般的线性回归模型中,误
差项和正则项应该都是乘以1/2??,在这里我们将??去掉。并且我们不对方差项??0进行正则
化处理。

  上面的代价函数只是针对一个用户的,为了学习所有用户,我们将所有用户的代价函数
求和:

如果我们要用梯度下降法来求解最优解,我们计算代价函数的偏导数后得到梯度下降的
更新公式为:

原文链接:http://www.cnblogs.com/sl0309/p/10545250.html

 友情链接:直通硅谷  点职佳  北美留学生论坛

本站QQ群:前端 618073944 | Java 606181507 | Python 626812652 | C/C++ 612253063 | 微信 634508462 | 苹果 692586424 | C#/.net 182808419 | PHP 305140648 | 运维 608723728

W3xue 的所有内容仅供测试,对任何法律问题及风险不承担任何责任。通过使用本站内容随之而来的风险与本站无关。
关于我们  |  意见建议  |  捐助我们  |  报错有奖  |  广告合作、友情链接(目前9元/月)请联系QQ:27243702 沸活量
皖ICP备17017327号-2 皖公网安备34020702000426号