利用用户标签数据
2016-05-23 12:58
253 查看
给用户推荐物品的方法中基于物品属性的方法可用隐语义模型得到。一种重要的特征表现方式是标签。打标签的方式有两种,一是专家给物品打标签,另一种是让普通用户给物品打标签(UGC)。当用户对一个物品打上标签时,该标签一方面描述了用户的兴趣,另一方面表示了物品的语义,将用户和物品联系起来。
一、代表应用
1.Delicious:允许用户给每个网页打标签,通过标签重新组织整个互联网。
2.CiteULike:论文书签网站,允许研究人员收藏自己感兴趣的论文并给论文打标签。
3.Last.fm:不进行复杂的音频分析的情况下获得音乐内容信息
4.豆瓣:对图书和电影打标签
5.Hulu:对电视剧和电影进行标记
UGC的优势:可发挥群体的智能,获得对物品内容信息较准确的关键词描述,是提升个性化推荐系统性能的重要资源。
二、标签系统中的推荐问题
1. 用户为何进行标注?
首先是社会维度。给内容上传者使用的,便于上传者组织自己的信息;给广大用户使用的,便于帮助其他用户找到信息。其次是功能维度,便于更好地组织内容,方便用户未来查找。
2. 用户如何打标签?
用户行为数据集中用户活跃度和物品流行度的分布都遵循长尾分布。标签的流行度也呈现非常典型的长尾分布,它的双对数曲线几乎是一条直线。
3.用户打什么样的标签?
表明物品是什么、物品的种类、谁拥有该物品、用户的观点、用户相关的标签(如我最喜欢的、我的评论等)、用户的任务(找工作、即将阅读等)等。
三、基于标签的推荐系统
豆瓣很好地利用了标签数据,将标签系统融入到整个产品线中。如在每本书的页面都提供“豆瓣成员常用标签”的应用。最终的个性化推荐结果里,利用标签将用户的推荐结果做了聚类,显示了不同标签下用户的推荐结果,增加了推荐的多样性和可解释性。
一个用户标签行为的数据集一般由一个三元组的集合表示(u,i,b),表示用户u给物品i打上了标签b。
进行实验时用准确率和召回率、覆盖率、多样性测评个性化推荐算法的精度。
1. 一个最简单的算法
1)统计每个用户最常用的标签
2)对每个标签,统计被打过这个标签次数最多的物品
3)对于一个用户,先找到他常用的标签,再找具有这些标签的最热门的物品推荐给该用户
2. 算法的改进
一、代表应用
1.Delicious:允许用户给每个网页打标签,通过标签重新组织整个互联网。
2.CiteULike:论文书签网站,允许研究人员收藏自己感兴趣的论文并给论文打标签。
3.Last.fm:不进行复杂的音频分析的情况下获得音乐内容信息
4.豆瓣:对图书和电影打标签
5.Hulu:对电视剧和电影进行标记
UGC的优势:可发挥群体的智能,获得对物品内容信息较准确的关键词描述,是提升个性化推荐系统性能的重要资源。
二、标签系统中的推荐问题
1. 用户为何进行标注?
首先是社会维度。给内容上传者使用的,便于上传者组织自己的信息;给广大用户使用的,便于帮助其他用户找到信息。其次是功能维度,便于更好地组织内容,方便用户未来查找。
2. 用户如何打标签?
用户行为数据集中用户活跃度和物品流行度的分布都遵循长尾分布。标签的流行度也呈现非常典型的长尾分布,它的双对数曲线几乎是一条直线。
3.用户打什么样的标签?
表明物品是什么、物品的种类、谁拥有该物品、用户的观点、用户相关的标签(如我最喜欢的、我的评论等)、用户的任务(找工作、即将阅读等)等。
三、基于标签的推荐系统
豆瓣很好地利用了标签数据,将标签系统融入到整个产品线中。如在每本书的页面都提供“豆瓣成员常用标签”的应用。最终的个性化推荐结果里,利用标签将用户的推荐结果做了聚类,显示了不同标签下用户的推荐结果,增加了推荐的多样性和可解释性。
一个用户标签行为的数据集一般由一个三元组的集合表示(u,i,b),表示用户u给物品i打上了标签b。
进行实验时用准确率和召回率、覆盖率、多样性测评个性化推荐算法的精度。
1. 一个最简单的算法
1)统计每个用户最常用的标签
2)对每个标签,统计被打过这个标签次数最多的物品
3)对于一个用户,先找到他常用的标签,再找具有这些标签的最热门的物品推荐给该用户
2. 算法的改进
相关文章推荐
- 学习Linux内核和驱动开发有终南捷径吗?欢迎来辩!(转载,link)
- 学习进度条11
- Android省市区三级联动选择,转载请注明http://blog.csdn.net/wulianghuan/article/details/41549189
- Vungle Android和iOS SDK高级设置——方法和监听含义和对比
- DiskFileItemFactory类
- 第13周-阅读程序(3)
- 负数运算符的重载(2)
- canvas实现的时钟效果
- Android 手机拍照适配攻略
- R语言使用手册
- AJAX实现三级联动
- springMVC+mybatis 框架整合
- Server上 LVM删盘操作
- jQuery取得select选中的值
- React入门实践之TodoList: 添加事件和搜索框
- eetcode 之String to Integer (atoi)(28)
- 获取矩阵的规模(Python、MATLAB、JAVA、C++)
- 利用平台有针对性的解决痛点
- Fresco获取缓存的大小为-1的解决方法
- 兔子与樱花(floyd+打印路径)