基于二部图的推荐
2015-12-03 19:54
639 查看
用户-项目评分矩阵可以用来建立一个二分图(Bipartite Graph),图中节点分别表示用户和项目,边的权重为用户对项目的评分。可以分析二分图的结构,进而得出对用户的项目推荐。
![](http://images2015.cnblogs.com/blog/387014/201512/387014-20151203194209986-873629532.png)
用户和项目是推荐系统的两个最重要的基本组成部分,可以设用户集为U,项目集为I。 下面依托上表 2.1 所示的用户-项目评分矩阵总结一下基于图结构的推荐算法的四个大致步骤:
1. 建立二分图。由于推荐系统包含m个用户和n个项目,因此二分图有m+n个节点,二分图边的权重为用户对项目的评分。依据表所建立的二分图如下图示,图中有7 个节点。
![](http://images2015.cnblogs.com/blog/387014/201512/387014-20151203195156189-1015438376.png)
2. 计算资源分配矩阵。设资源分配矩阵为w,资源分配有两个阶段,首先由项目到用户;然后回到项目。由此,项目p到项目q的资源分配权重Wpq可以表示为如下:
![](http://images2015.cnblogs.com/blog/387014/201512/387014-20151203195207471-385149937.png)
![](http://images2015.cnblogs.com/blog/387014/201512/387014-20151203195216533-1422948126.png)
![](http://images2015.cnblogs.com/blog/387014/201512/387014-20151203195225455-1843045577.png)
实验结果表明,采用公式(2-18)式产生的推荐集倾向于向用户推荐热门项目,注重推荐的准确性,而采用公式(2-19)式产生的推荐集倾向于向用户推荐与众不同的项目,注重多样性。 文献指出,给出了融合公式(2-18)和(2-19)的兼顾准确性和多样性的资源分配权重计算方法:
![](http://images2015.cnblogs.com/blog/387014/201512/387014-20151203195235143-1071270743.png)
3. 对用户重新分配资源。用下面公式(2-21)计算项目的新资源。
![](http://images2015.cnblogs.com/blog/387014/201512/387014-20151203195245799-1249830170.png)
4. 产生推荐列表。
![](http://images2015.cnblogs.com/blog/387014/201512/387014-20151203194209986-873629532.png)
用户和项目是推荐系统的两个最重要的基本组成部分,可以设用户集为U,项目集为I。 下面依托上表 2.1 所示的用户-项目评分矩阵总结一下基于图结构的推荐算法的四个大致步骤:
1. 建立二分图。由于推荐系统包含m个用户和n个项目,因此二分图有m+n个节点,二分图边的权重为用户对项目的评分。依据表所建立的二分图如下图示,图中有7 个节点。
![](http://images2015.cnblogs.com/blog/387014/201512/387014-20151203195156189-1015438376.png)
2. 计算资源分配矩阵。设资源分配矩阵为w,资源分配有两个阶段,首先由项目到用户;然后回到项目。由此,项目p到项目q的资源分配权重Wpq可以表示为如下:
![](http://images2015.cnblogs.com/blog/387014/201512/387014-20151203195207471-385149937.png)
![](http://images2015.cnblogs.com/blog/387014/201512/387014-20151203195216533-1422948126.png)
![](http://images2015.cnblogs.com/blog/387014/201512/387014-20151203195225455-1843045577.png)
实验结果表明,采用公式(2-18)式产生的推荐集倾向于向用户推荐热门项目,注重推荐的准确性,而采用公式(2-19)式产生的推荐集倾向于向用户推荐与众不同的项目,注重多样性。 文献指出,给出了融合公式(2-18)和(2-19)的兼顾准确性和多样性的资源分配权重计算方法:
![](http://images2015.cnblogs.com/blog/387014/201512/387014-20151203195235143-1071270743.png)
3. 对用户重新分配资源。用下面公式(2-21)计算项目的新资源。
![](http://images2015.cnblogs.com/blog/387014/201512/387014-20151203195245799-1249830170.png)
4. 产生推荐列表。
相关文章推荐
- QTableWidget点击item之外空间时信号的获取
- 错排公式
- linux下添加tomcat自启动
- ASPxGridView 结合CheckBox实现多选(在后台事件代码控制)
- spring bean的scope
- IE兼容模式下两个小问题,JSON.stringify和SCRIPT70 无权限
- 多播与广播详解(二)
- IntentService 串联 按顺序执行(此次任务执行完才执行下一个任务)
- C plus plus(3)---全局,静态(extern,static相关)
- java 替换字符串中的中括号
- ASPxGridView实现checkbox全选反选(自带的ShowSelectCheckBOx)并获取选中checkbox对应的值集合
- 有(很)穷的自动机
- apache服务器的常用功能及设置
- asp.net 验证码
- javaBean的介绍及其简单应用
- ubuntu下安装pycharm
- apache服务器的常用功能及设置
- 国办:博士后研究人员日常经费提至每人每年8万
- deep learning 模型简介之CNN卷积网络(一)深度解析CNN
- 树链剖分学习笔记