在现实生活中,人们的交互行为越来越趋向于社区化,即具有相同兴趣的人更容易聚集在一起形成一个社区。社区的研究在最近几年来一直受到人们的广泛关注,目前大多数的工作都几种在研究社区的形成,演化,以及社区的划分。划分社区的方法有很多种,但是大部分都是利用网络的拓扑结构,本文通过利用节点的属性,例如tag等,来划分社区。另外本文也讨论了社区的演化等内容。

方法:

首先本文定义了如下变量

个性化推荐引擎:网络的社区结构分析

A是某种属性,例如给定一个颜色集合{red, blue, black},如果属于red,那么对应的Ared=1等。在此基础上,可以定义true positive rate (tpr)

个性化推荐引擎:网络的社区结构分析

和false positive rate (fpr)

个性化推荐引擎:网络的社区结构分析

第一种方法AGP就是把所有的tpr进行累加

个性化推荐引擎:网络的社区结构分析

第二种方法DGP是考虑group内和group外节点tpr和fpr的差异

个性化推荐引擎:网络的社区结构分析

第三种方法EDGP是基于第二种方法,第二种方法在考虑差异性的时候,计算一个group的节点和其余所有节点的差异性,而EDGP只考虑与该group相关的节点,例如下图所示:

个性化推荐引擎:网络的社区结构分析

第三种方法只考虑粉红色节点,而绿色部分的节点就不再考虑。

实验:

本文在两个数据集BlogCatalog和LiveJournal上做了实验,下表是相关的统计特征

个性化推荐引擎:网络的社区结构分析

个性化推荐引擎:网络的社区结构分析

一些group的统计特性:

个性化推荐引擎:网络的社区结构分析

算法对比:

个性化推荐引擎:网络的社区结构分析

个性化推荐引擎:网络的社区结构分析

从上面两个图可以看出,DGP和EDGP的准确率比较接近,并且要远远好于AGP。这个结果在基于tag和post两种情况都符合。

个性化推荐引擎:网络的社区结构分析

上表显示了预测health这个group的时候,三个方法的预测结果,从表中可以看出,DGP和EDGP两个方法预测出的结果比较类似,与AGP有很大的区别。

来源:百分点 个性化时代


文章TAG:个性化推荐引擎  百分点  准确率  个性化推荐  结构  
下一篇