1.背景
1.1如何了解用户的兴趣和需求:通过用户留下的行为和文字的方式了解
1.2现行了解用户需求的方法
(1)主动
用户在注册的时候主动告诉我们喜欢什么
缺点:我们可能对用户的描述语言存在歧义、用户的兴趣会发生变化、用户无法精准的描述自己的兴趣
(2)被动
利用算法自动挖掘用户行为数据,推测出用户喜欢什么
由于用户的行为的行为非随机,通过用户与网站的互动,用户自身的推荐列表能够不断更新,过滤掉自己不喜欢的物品,从而满足自己的需求
2.用户行为数据简介
用户行为数据是用户在产品上的各种操作行为,比如浏览、点击、播放、购买、搜索、收藏、点赞、评论、转发、加购物车、甚至滑动、暂定、快进快退等等一切操作行为。用户在产品上的操作行为为我们了解用户提供了线索,用户的操作行为也是用户真实意图的反馈。通过挖掘用户行为,我们可以获得对用户兴趣偏好的深刻洞察。
2.1.按照反馈的明确性可以分为
2.1.1.显性反馈行为
明确表示对物品喜好,主要方式为评分以及喜欢/不喜欢
2.1.2.隐形反馈行为
无法明确反应用户的喜好和行为:具有代表性的行为就是用户的页面浏览行为
2.2.按照反馈的方向可以分为
正反馈:用户的行为倾向于用户喜欢该商品
负反馈:用户的行为倾向于用户不喜欢该商品
3.用户行为分析
3.1用户活跃度和物品流行度的分布
物品流行度和用户活跃度均满足长尾分布,越活跃的用户单个的值虽然极低,但是这个长长的尾巴,总和不可小觑
3.2用户活跃度和物品流行度的关系
新用户会倾向于热门物品,老用户会逐渐开始浏览冷门的物品。用户越活跃越倾向于浏览冷门物品(新用户会倾向于热门物品, 老用户会逐渐开始浏览冷门的物品)
仅仅基于用户行为数据设计的推荐算法一般称为协同过滤算法
4、实验设计和算法评测
4.1.数据集:会被分为训练集和测试集
4.2.实验方法
将用户行为数据集按均匀分布随机分成M份,挑一份作为数据集,其他作为测试集;在训练集上建立用户兴趣模型,并在测试集上对用户行为进行预测,统计相应的评价指标;为了防止过度拟合,需要在进行M次实验,并且每次都使用不同的测试集;将M次实验测出的评测指标的平均值作为最终评价指标
4.3.评测指标
5.基于邻域的算法
5.1.基于用户的协同过滤算法 (UserCF)
基本思想:在一个在线个性化推荐系统中,当一个用户A需要个性化推荐时,可以先找到和他有相似兴趣的其他用户,然后把那些用户喜欢的、而用户A没有听说过的物品推荐给A
具体步骤:1)找到和目标用户兴趣相似的用户集合。2)找到这个集合中的用户喜欢的,且目标用户没有听说过的物品推荐给目标用户。
关键是计算两个用户的兴趣相似度,对两个用户喜欢物品的集合做交集(找到和目标用户兴趣相似的用户集合。)
5.1.1计算用户兴趣相似度
利用Jaccard(杰卡德)公式计算或者余弦相似度
5.1.2 User-IIF 考虑到了物品的热门程度(User-IIF)
两个用户对冷门物品采取过同样的行为更能说明他们兴趣的相似
5.2基于物品的协同过滤的算法(ItemCF)
根据物品的相似度和历史行为给用户生成推荐列表
为什么有了用户协同过滤的算法还需要基于物品协同过滤的算法呢?
1、用户数目的增加导致了兴趣相似度矩阵计算的困难
2、基于用户的协同过滤算法河南队推荐结果做出解释。
5.2.1.核心思想
计算物品之间的相似度,根据物品的相似度和用户的历史行为给用户生成推荐列表
5.2.2.itemIUF 考虑到了用户的活跃度(itemIUF)
认为活跃用户对物品相似度的贡献应小于不活跃用户
通过增加IUF(用户活跃度对数的倒数)参数在来修正物品相似度
6.几个指标的解释
6.1准确率Precision
推荐中的正确数据(与真实数据相同的数据)与推荐数据之比。代表推荐数据中有多少是准确的。查准。
6.2召回率Recall
推荐中的正确数据(与真实数据相同的数据)与真实数据之比。代表所有真实数据中,有多少被推荐出来了。查全。
准确率和召回率有时候两者是相冲突的(准确率Precision, 召回率Recall)如果只推荐了一个结果,且是准确的,则准确率100%,但召回率很低。如果推荐了所有的准确结果,召回率100%,准确率就有可能很低。
6.3.覆盖率Coverage
覆盖率只说明了有多少物品被推荐了,并不能展示出被推荐的次数
例如,100个用户,100个物品。其中有99个物品都只推荐给了1个人,只有1个物品推荐给了所有人。覆盖是100%,但这种推荐系统绝不是大家想要的。
6.4.流行度
就是有多少用户与此物品发生了关系,这个物品被推荐给了多少用户,或者多少用户点击了这个物品。也就是物品出现在推荐列表中的概率。
比如:同样是100个物品,100个用户,如果所有物品都出现在了推荐列表中,且推荐给了所有人,则物品流行度的分布曲线就是平的,效果好。反之如覆盖率一节所举的例子,其曲线就比较陡,效果并不好。