专栏首页人工智能与演化计算成长与进阶[吴恩达机器学习笔记]16推荐系统1-2基于内容的推荐系统

[吴恩达机器学习笔记]16推荐系统1-2基于内容的推荐系统

16.推荐系统 Recommender System

16.1 问题形式化 Problem Formulation

推荐系统的改善能为公司带来巨大的收益

  • [以下为 Andrew Ng 的原话]第一、仅仅因为它是机器学习中的一个重要的应用。在过去几年,我偶尔访问硅谷不同的技术公司,我常和工作在这儿致力于机器学习应用的人们聊天,我常问他们,最重要的机器学习的应用是什么,或者,你最想改进的机器学习应用有哪些。我最常听到的答案是推荐系统。现在,在硅谷有很多团体试图建立很好的推荐系统。因此,如果你考虑网站像亚马逊,或网飞公司或易趣,或 iTunes Genius,有很多的网站或系统试图推荐新产品给用户。如,亚马逊推荐新书给你,网飞公司试图推荐新电影给你,等等。这些推荐系统,根据浏览你过去买过什么书,或过去评价过什么电影来判断。这些系统会带来很大一部分收入,比如为亚马逊和像网飞这样的公司。因此,对推荐系统性能的改善,将对这些企业的有实质性和直接的影响。
  • 推荐系统是个有趣的问题,在学术机器学习中因此,我们可以去参加一个学术机器学习会议,推荐系统问题实际上受到很少的关注,或者,至少在学术界它占了很小的份额。但是,如果你看正在发生的事情,许多有能力构建这些系统的科技企业,他们似乎在很多企业中占据很高的优先级。 这是我为什么在这节课讨论它的原因之一。

推荐系统中包含有使机器自动学习特征的思想

  • 对机器学习来说,特征是很重要的,你所选择的特征,将对你学习算法的性能有很大的影响。 因此,在机器学习中有一种大思想,它针对一些问题,可能并不是所有的问题,而是一些问题, 有算法可以为你自动学习一套好的特征。 因此,不要试图手动设计,而手写代码这是目前为止我们常干的。有一些设置,你可以有一个算法,仅仅学习其使用的特征,推荐系统就是类型设置的一个例子。还有很多其它的,但是通过推荐系统,我们将领略一小部分特征学习的思想,至少,你将能够了解到这方面的一个例子,我认为,机器学习中的大思想也是这样。因此,让我们开始讨论推荐系统问题形式化。

示例-电影打分

引入标记

  • 代表用户的数量
  • 代表电影的数量
  • 如果用户 i 给电影 j 评过分则 r(i,j)=1
  • )代表用户 i 给电影 j 的评分(只在 r(i,j)=1 时被定义)
  • 代表用户 j 评过分的电影的总数

16.2 基于内容的推荐系统 Content Based Recommendations

  • 假如你有一些用户也有一些电影,每个用户都评价了一些电影,推荐系统要做的就是通过已有的用户评价,预测他们还没有评价过的电影
  • 对于没有评价过的电影如何通过已有的评价预测出用户对电影的可能评价(红色框中问号)
    • 选定两个为电影的属性 n=2,一个是电影的爱情片程度 x1,一个是电影的动作片程度 x2,则可以用一个特征向量表示每一部电影(加上截距向量 x0=1),则第一部电影可表示为

使用线性回归构建推荐系统

  • 下面我们要基于这些特征来构建一个推荐系统算法。假设我们采用 线性回归模型 ,我们可以针对 每一个用户 都训练一个线性回归模型,如 θ 是第一个用户的模型的参数。于是,我们有:
    • θ 表示用户 j 的参数向量,考虑到截距项,所以参数维度为(n+1),,即
    • 表示电影 i 的特征向量,考虑到截距项,所以参数维度为(n+1),,即
    • 对于用户 j 和电影 i,我们预测评分为:θ
    • 示例 假设通过学习已经得到 ,则对于 Alice 评价 Movie《Cute puppies of love》,其值为

推荐系统线性回归代价函数

  • 针对用户 j,该线性回归模型的代价为预测误差的平方和,加上正则化项:
  • 其中 i:r(i,j)表示我们只计算那些用户 j 评过分的电影(即只计算 r(i,j)=1 的项目)。在一般的线性回归模型中,误差项和正则项应该都是乘以 1/2m,在这里我们将 m 去掉。并且我们不对方差项 (即截距项) 进行正则化处理。
  • 上面的代价函数只是针对一个用户的,为了学习所有用户,我们将所有用户的代价函数求和 :
  • 梯度下降公式 计算代价函数的偏导数后得到梯度下降的更新公式如下:其中 表示学习率, 表示正则化系数,k=0 和 k=1 时,梯度下降算法是不一样的,因为 k=0, 为定值,梯度为 0。

参考资料

[1]

吴恩达老师课程原地址: https://study.163.com/course/courseMain.htm?courseId=1004570029

本文分享自微信公众号 - DrawSky(wustcsken),作者:CloudXu

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2020-06-09

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • [吴恩达机器学习笔记]16推荐系统3-4协同过滤算法

    和这个用户对此影片的评价,理论上我们能够通过用户对电影类型的喜好,和用户对此电影的评价来推断出电影的特征向量的

    DrawSky
  • ​多目标优化拥挤距离计算

    [1]支配关系: https://blog.csdn.net/u013555719/article/details/91356078

    DrawSky
  • [吴恩达机器学习笔记]16推荐系统5-6协同过滤算法/低秩矩阵分解/均值归一化

    对推荐的结果进行预测,得到一个预测值的矩阵,这个矩阵的预测结果和用户评分数据矩阵 Y 中数据一一对应:

    DrawSky
  • 前沿 | BAIR展示新型模仿学习,学会「像人」那样执行任务

    通过观察另一个人来学习新技能的模仿能力,是体现人类和动物智能的关键部分。我们是否可以让一个机器人做同样的事情?通过观察人类操作物体进而学会操作一个新的物体,就像...

    机器之心
  • 新手必看:深度学习是什么?它的工作原理是什么?

    我们都熟悉“人工智能”这个词。但你最近可能听说过“机器学习” ( Machine Learning )和“深度学习” ( Deep Learning ) 等其他...

    AI研习社
  • 刘建明:大数据助力国家电网网络安全管理

    电力涉及到各行各业,电力安全涉及到每一个人。在2015中国互联网安全大会(ISC)上,国家电网公司科技领军人才原国家电网公司科技部主任刘建明发表了主题为“基于...

    灯塔大数据
  • Security and Privacy on Blockchain

    Snow White是第一个被证明是安全的,稳定可重构的PoS协议,其涉众分布不断增加。该协议提出了一种保证安全的腐败延迟机制,即、在零星参与下的稳健性,以及在...

    安包
  • OpenTracing项目

    说明:通过为普遍的平台提供一致的、有表现力的和供应商中立的API,OpenTracing使开发者能够轻松地通过O(1)配置更改添加(或切换)跟踪实现。OpenT...

    CNCF
  • RCurl爬虫和Shiny包在游戏行业的应用(附PDF下载)

    PDF链接:http://www.ppvke.com/Answer/file/download/file_name-UkN1cmzniKzomavlkoxTaG...

    小莹莹
  • 机器学习的脉络,一张概括图告诉你

    经济基础决定上层建筑,这句话不论怎么看都是合适的,同样也是用于机器学习领域,基础决定深度。本文是入门级的统计学习(统计机器学习)的概要和统计学习全部内容的基础

    机器人网

扫码关注云+社区

领取腾讯云代金券