一种SimRank迭代删点框架的上界计算方法技术

技术编号:13776399 阅读:70 留言:0更新日期:2016-09-30 23:37
一种SimRank迭代删点框架的上界计算方法,其特征在于,包括:(1)通过先验信息,建立超点,使得每个点与超点的相似度值不小于此点和其他点的相似度值;(2)通过以上特性,预估每个点与超点的相似度作为该点上界,在每次迭代中,预估值会不断减小,上界收敛。本发明专利技术方法snbUB的效果比现有技术geoUB的效果持续时间长,每轮迭代snbUB都能保持删点,并且snbUB的删点力度比geoUB的删点力度更大。本发明专利技术的上界不仅易于计算且十分逼近真实值。本发明专利技术可广泛应用于竞价搜索排名、网络垃圾监测和模式匹配等网络结构中结点相似度计算领域。

【技术实现步骤摘要】

本专利技术涉及SimRank计算领域,尤其涉及在SimRank迭代批量删点框架的上界计算方法。
技术介绍
SimRank是一种普适的网络节点结构相似度度量模型,广泛应用于竞价搜索排名、网络垃圾监测和模式匹配等领域。其基本思想可以概括为两个节点的邻居越相似,这两个节点越相似;即两个节点的相似度由其邻居节点的相似度决定。SimRank可以被广泛应用于具有一定关联的、可以被抽象化为网络模型的领域中:例如在社交网络中,SimRank可以被用于相似用户识别和朋友推荐,进而辅助链路预测和跟踪信息传播等。因其重要的作用,SimRank的计算一直是研究的热点问题之一。起初的研究焦点集中在SimRank的全匹配问题。给定一个含有n个节点,平均度为d的网络G,SimRank全匹配问题需要计算出网络中所有点对,即n×n对的SimRank值。SimRank的提出者Glen Jeh和Jennifer Widom教授设计了首个基于迭代的SimRank全匹配算法(文献:G.Jeh and J.Widom.SimRank:a measure of structural-context similarity.In Proceedings of the Eighth ACM SIGKDD International Conference onKnowledge Discovery and Data Mining,July 23-26,2002,Edmonton,Alberta,Canada,pages 538–543,2002)。该算法在处理SimRank全匹配问题上的时空开销分别为O(kd2n2)和O(n2),其中k是迭代次数。D.Lizorkin等人通过部分中间值记录的方式改进了算法,其时间开销为O(kdn2)(文献:D.Lizorkin,P.Velikhov,M.N.Grinev,and D.Turdakov.Accuracy estimateand optimization techniques for SimRank computation.Very Large DataBases Journal,19(1):45–66,2010)。(文献W.Yu,X.Lin,and W.Zhang.Towards efficient SimRank computation onlarge networks.In 29th IEEE International Conference on Data Engineering,2013,Brisbane,Australia,April 8-12,2013,pages 601–612,2013)利用更精细的记录进一步加快了计算速度。然而随着现实世界数据量的激增,SimRank的全匹配计算在时间和空间上的开销都过于巨大而无法满足现实应用。因此,对SimRank的研究转移到了计算前K个最相似的点对上来,即Top-k匹配问题。大部分Top-k匹配算法首先需要用户自定义阈值,然后将SimRank值大于该阈值的点对作为结果返回。然而现实中选定一个合适的、满足尽可能包含所需最相似点对,又最大程度排除非相似点对的阈值是非常困难的。最近,文献W.Tao,M.Yu,and G.Li.Efficient top-k SimRank-based similarity join.The Proceedings of the VLDB Endowment,8(3):317–328,2014提出了一种不需要阈值的Top-k算法SRK-JOIN。该算法首先定义了二次相遇概率:从某点同时出发的两条随机路径再次相遇的概率。利用二次相遇概率,每个点可以被编码成一个多维的向量,而两点之间的SimRank值即为相应的两个向量的点积。为了得到Top-k点对,SRK-JOIN需要对相应点的所有路径进行两次扫描:第一次筛选出含有2k个不同候选点的点集,第二次得到Top-k点对。尽管SRK-JOIN比原先的算法在效率上优化了许多,我们仍然发现了很多尚未完善、有待改进的地方:(1)为了将每个点编码为向量,SRK-JOIN需要对每个点都计算二次相遇概率,然而在实验中我们发现对具有较高入度的点计算二次相遇概率是非常耗时的,因为这一过程的时间复杂度和点入度的k指数幂程正比关系;(2)在得到了候选点后,SRK-JOIN需要对候选点的所有路径再次进行扫描,两次扫描之间含有较大的计算冗余:一些在第一次扫描中计算出的中间量可以被用于辅助第二次扫描。
技术实现思路
本专利技术基于一种SimRank的迭代批量删点框架,该框架将SimRank的计算过程以不同步数拆分,并在每步计算中找出每个点可达的最大上界的估计值,以此来判断非候选点。该框架的特点在于每次针对单点进行判断,而非点对,这样做的好处是一旦某点被判定为非候选点后,由该点组成的所有点对即可终止计算,节省了时间。建立迭代批量删点框架包括以下步骤:(1)初始化各变量,并将步长控制变量i设为0;(2)开始迭代,首先判断i是否达到规定步数;若没有,则i增加1,计算每个点与其它点的i步内SimRank值;(3)当所有点的i步内SimRank值完成计算后,保存前k个i步内SimRank值及其对应点对,选取第k个i步内SimRank值作为阈值;(4)计算每个点的上界,并与阈值比较:若小于或等于阈值,则作为非候选点删除,反之,进入下一轮迭代;其中,每个点的上界计算公式为: U B ( v ) = m a x { S l ( v , * )本文档来自技高网
...

【技术保护点】
一种SimRank迭代删点框架的上界计算方法,其特征在于,包括以下步骤:(1)通过先验信息,建立超点,使得每个点与超点的相似度值不小于此点和其他点的相似度值;给定一个点集R和其中某点v,此节点v的超点Vs是一个虚拟的点,满足Vs到达某点x的概率是是网络上除v以外的其他点到以相同步数到达该点的最大值,即:其中Rv代表点集R中除v以外的点,代表从点u出发走l步到达点x的概率;以S(v,u)表示点相似度v和点u的相似度,则对于点v和其超点Vs的相似度不小于点v和其他点的相似度,即如下不等式成立:S(v,Vs)≥S(v,u),u∈Rv=R\{v}.(2)通过以上特性,预估每个点与超点的相似度作为该点上界,在每次迭代中,预估值会不断减小,上界因此收敛;上界的计算公式为:其中ρ(y,i)为二次相遇概率,代表了从点y出发走i步的两条随机路径再次相遇的概率,T代表了已经被计算出的二次相遇概率,凡是代表上界的地方用Snb表示,snbUB(v,u)是S(v,u)的一个估计。

【技术特征摘要】
1.一种SimRank迭代删点框架的上界计算方法,其特征在于,包括以下步骤:(1)通过先验信息,建立超点,使得每个点与超点的相似度值不小于此点和其他点的相似度值;给定一个点集R和其中某点v,此节点v的超点Vs是一个虚拟的点,满足Vs到达某点x的概率是是网络上除v以外的其他点...

【专利技术属性】
技术研发人员:李瑞琪赵翔唐九阳陈一帆肖卫东
申请(专利权)人:中国人民解放军国防科学技术大学
类型:发明
国别省市:湖南;43

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1