论文部分内容阅读
如今社交网络已渗透到人们生活的方方面面,对社交网络的研究也一直是学者们关注的热点。随着社交网络的发展,线上活动越来越满足不了人们的需求,线下活动越来越受人们的欢迎。为了提高线下活动的举办成功率,举办者可以对活动附近社区中的用户进行针对性的活动推荐。然而随着人们自我隐私保护意识的增强,从社交网络中很难得到完整的用户位置信息。本文在国内外用户位置预测和社区发现算法的基础之上,针对原有用户位置预测中没有考虑用户参与线下活动,以及社区发现中没有考虑用户位置因素等问题,提出了更准确的位置预测算法以及更有效的社区发现算法。针对面向社区发现的用户位置预测问题,在对标签传播算法进行深入研究分析后,发现在其算法迭代过程中会出现位置标签“逆流”现象,且节点位置标签更新具有随机性等问题,针对这些问题在标签传播算法基础上,提出一种基于标签传播的位置预测算法(Label Propagation Algorithm-Location Prediction,LPA-LP)。首先,通过计算社交网络图中任意两点的k-跳公共邻居,将其具有最大相似性的节点及其k-跳邻居作为标签传播的初始集合,并计算不在这些集合中的节点与这些集合的度;在每次迭代过程中,节点采用异步更新的策略,并选择度最大的节点进行位置标签更新,避免位置标签的“逆流”现象和降低随机性更新位置标签的问题,提高算法的效率及预测的准确性。实验证明了改进后的算法提高了位置预测的准确性,而且也降低了算法的时间开销。针对基于用户位置预测的社区发现问题,鉴于考虑社区发现问题的背景不同,本文提出一种基于用户位置预测的社区发现算法(Community Detection Based on Location,CDBL)。本文首先根据线下活动位置来进行一次初步分类,再利用图的广度优先搜索算法根据用户位置来聚集用户邻居并把其作为初始的社区子图,然后根据用户的位置概率计算对初始社区子图的期望稠密度,根据目标函数计算社区子图的稠密度,只把满足大于社区预定的阈值的社区子图作为符合本文定义的社区输出。发现的社区具有的特点是:处于同一社区的用户不仅在社交网络上联系紧密,而且在实际的物理位置上相距不远。实验证明了提出的CDBL算法不仅适用于处理大规模的数据集,而且其发现社区的准确性也较高,这验证了算法的有效性。