图推荐-基于随机游走的personrank算法
转自 http://blog.csdn.net/sinat_33741547/article/details/53002524 一 基本概念 基于图的模型是推荐系统中相当重要的一种方法,以下内容的基本思想是将用户行为数据表示为一系列的二元组,每一个二元组(u,i)代表用户u对物品i产生过行为,这样便可以将这个数据集表示为一个二分图。 假设我们有以下的数据集,只考虑用户喜不喜欢该物品而不考虑用户对物品的喜欢程度, 其中用户user=[A,B,C],物品item=[a,b,c],用户和物品有以下的关系: 上述便是一个典型的二分图,我们用G(V,E)来表示,其中V为用户user和物品item组成的顶点集即[A,B,C,a,b,c],而E则代表每一个二元组(u,i)之间对应的边e(u,i),我们这里不考虑用户对物品的喜爱程度,即默认喜爱则e=1,不喜爱则e=0。 那么我们如何使用上述的二分图模型进行物品的推荐呢?根据用户与物品的相关性,对于相关性高的顶点有如下的定义: (1)两个顶点之间有很多路径相连 (2)连接两个顶点之间的路径长度都比较短 (3)连接两个顶点之间的路径不会经过度比较大的顶点 上面有一个概念需要理解,度,顶点的度是指和该顶点相关联的边数。 基于上述的定义,我们这里使用基于随机游走的PersonalRank 算法 来计算,那么这个算法是什么意思呢? 在解释之前