用户-项目评分矩阵可以用来建立一个二分图(Bipartite Graph),图中节点分别表示用户和项目,边的权重为用户对项目的评分。可以分析二分图的结构,进而得出对用户的项目推荐。
用户和项目是推荐系统的两个最重要的基本组成部分,可以设用户集为U,项目集为I。 下面依托上表 2.1 所示的用户-项目评分矩阵总结一下基于图结构的推荐算法的四个大致步骤:
1. 建立二分图。由于推荐系统包含m个用户和n个项目,因此二分图有m+n个节点,二分图边的权重为用户对项目的评分。依据表所建立的二分图如下图示,图中有7 个节点。
2. 计算资源分配矩阵。设资源分配矩阵为w,资源分配有两个阶段,首先由项目到用户;然后回到项目。由此,项目p到项目q的资源分配权重Wpq可以表示为如下:
实验结果表明,采用公式(2-18)式产生的推荐集倾向于向用户推荐热门项目,注重推荐的准确性,而采用公式(2-19)式产生的推荐集倾向于向用户推荐与众不同的项目,注重多样性。 文献指出,给出了融合公式(2-18)和(2-19)的兼顾准确性和多样性的资源分配权重计算方法:
3. 对用户重新分配资源。用下面公式(2-21)计算项目的新资源。
4. 产生推荐列表。