《Data Algorithm》读书笔记之十 —— 基于内容的电影推荐

本文深入探讨了基于内容的电影推荐系统,介绍了如何通过计算不同电影之间的关联度来实现个性化推荐。利用用户对电影的评分数据,采用MapReduce进行大规模数据处理,计算电影间的相似度,包括皮尔逊积矩相关系数、杰卡德相似系数和余弦相似系数等。通过这些度量方法,系统能够推荐与用户已观看电影最相关的影片。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Data Algorithm》读书笔记之十 —— 基于内容的电影推荐

Edwin Chen blog

关联度
1.对于每一个电影A 和B,找出同时对A 和B 评分的所有人。
2.用评分建立一个电影A向量和一个电影B向量
3.计算这两个向量之间的关联度(关联度是一种度量两个电影关联或相关程度的方法)
4.只要一个人看过一个电影,就可以推荐与这个电影关联度最高的电影

MapReduce step 1的输出:
User1 movie1 1 10
User1 movie2 2 20
User1 movie3 3 30

MapReduce step 2的输出:
01.Mapper的输出
User1 <movie1 1 10>
User1 <movie2 2 20>
User1 <movie3 3 30>

02.Reducer的输入
User1 [<movie1 1 10>
,<movie2 2 20>
,<movie3 3 30>]

<movie1,movie2> <1 10 2 20 2 1 4>
<movie1,movie3> <1 10 3 30 3 1 9>
<movie2,movie2> <2 20 3 30 6 4 9>

MapReduce step 3
01.Mapper
输入的数据类型: (tuple2,tuple7)
tuple2 = (movie1,movie2)
tuple7 =(rating1,numOfRateS1,rating2,numOfRateS2,ratingProduct,rating1Squared,rating2Squared)
是一个恒等映射器。

所谓恒等映射器就是接收的键值对 和 发出的键值对是一样的

相似度度量
皮尔逊积矩相关系数、杰卡德相似系数和余弦相似系数。
皮尔逊关联度:
correlation(X,Y) = …
相似度度量算法:
正则关联度
欧氏距离
曼哈顿距离

皮尔逊相关系数广泛用于度量两个变量X和Y之间的相关程度,其值介于-1与1之间。

  • 系数的值为1意味着X和Y可以很好的由直线方程来描述,所有的数据点都很好的落在一条直线上,且Y随着X的增加而增加。
  • 系数的值为−1意味着所有的数据点都落在直线上,且 Y 随着 X 的增加而减少。
  • 系数的值为0意味着两个变量之间没有线性关系

相关系数反映的是变量之间的线性关系和相关性的方向,而不是相关性的斜率,也不是各种非线性关系。

皮尔逊系数是对称的:
corr(X,Y) = corr(Y,X)

重要的数学特性:两个变量的位置和尺度的变化并不引起该系数的改变。即我们如果把 移动到 和把Y移动到 ,其中a、b、c和d是常数,并不会改变两个变量的相关系数(该结论在总体和样本皮尔逊相关系数中都成立)。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

说文科技

看书人不妨赏个酒钱?

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值