个性推荐②—基于用户协同过滤算法原及优化方案

本文主要介绍了基于用户的协同推荐算法,包括算法步骤、用户相似度计算、兴趣度计算和改进方案。通过余弦相似度计算用户相似度,考虑物品流行度和时间上下文进行优化,以提高推荐系统的准确率和覆盖率。

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

个性推荐系列目录
个性推荐①——系统总结个性化推荐系统
个性推荐③—基于物品的协同过滤算法及优化方案

个性推荐系统常用的有两种:基于领域的推荐算法和基于内容的过滤算法,前者又分为基于用户的协同推荐算法(userCF)和基于物品的协同过滤(itemCF),本篇重点介绍基于用户的协同推荐算法的原理、适用范围及优化方案

一、算法步骤

① 找到和目标用户相似的用户集合
② 找到这个集合中用户喜欢的,且目标用户没有听过或产生过行为的物品,推荐给目标用户

二、用户相似度计算

基于用户历史行为得到用户相似度
以电商为例,如果两人共同购买的物品越多,两人越具有相似度。
以新闻为便,如果两人共同看过的新闻越多,两人越具有相似度
这里的购买,看过,都是用户的历史行为。
而如何量化这种相似度呢?——余弦相似度
给定用户u和用户v,令N(u)表示用户u曾经有过正反馈的物品集合,令N(v)
为用户v曾经有过正反馈的物品集合。W就是两两用户的相似度矩阵
在这里插入图片描述

def UserSimilarity(train): 
 W = dict() 
 for u in train.keys():
for v in train.keys(): 
 if u == v: 
 continue 
 W[u][v] = len(train[u] & train[v]) 
 W[u][v] /= ma
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值