一种计算大图节点邻近度的TopPPR方法技术

技术编号:19389162 阅读:22 留言:0更新日期:2018-11-10 02:07
本发明专利技术涉及一种计算大图节点邻近度的TopPPR方法,其特征在于包括以下步骤:1)确定Top‑k节点集和候选集的初始值;2)对当前候选集执行前向搜索,并根据前向搜索结果对当前Top‑k节点集和候选集进行更新;3)以前向搜索得到的所有非零的前向残余值为基础,执行nr次随机游走采样,并对当前Top‑k节点集和候选集进行更新;4)对步骤3)中的候选集执行批量后向搜索,根据后向搜索结果对当前Top‑k节点集和候选集进行更新;5)对Top‑k节点集中的节点数目进行判断,当满足阈值条件时,停止迭代,否则重复步骤2)~4),直到满足阈值条件,得到最终结果。本发明专利技术可广泛应用于大图节点的top‑k查询领域。

A TopPPR method for calculating the proximity of large graph nodes

The present invention relates to a TopPPR method for calculating the proximity of large graph nodes, which is characterized by the following steps: 1) determining the initial value of Top_k node set and candidate set; 2) performing forward search on the current candidate set, and updating the current Top_k node set and candidate set according to the forward search results; 3) obtaining from forward search; All non-zero forward residuals are based on NR random walk sampling and update the current Top_k node set and candidate set; 4) Batch backward search is performed on candidate set in step 3, and the current Top_k node set and candidate set are updated according to the backward search results; 5) Number of nodes in Top_k node set is updated; When the threshold condition is satisfied, the iteration is stopped, otherwise steps 2 to 4 are repeated until the threshold condition is satisfied and the final result is obtained. The invention can be widely applied to the field of top k Query in large graph nodes.

【技术实现步骤摘要】
一种计算大图节点邻近度的TopPPR方法
本专利技术涉及一种大图节点邻近度计算方法,特别是关于一种计算大图节点邻近度的TopPPR方法。
技术介绍
PPR(PersonalizedPageRank)是一种经典的大图邻近度的度量标准,它衡量了有向图中所有节点与某一给定节点的相关度大小。PPR的相关研究中,主要关心三类PPR查询:①点到点查询:计算有向图中源点s到一固定点v的PPR值;②单源查询:计算有向图中源点s到图中所有点的PPR值;③Top-k查询:找到有向图中从源点s出发最大的k个PPR值对应的点集。在上面这几类查询里,Top-kPPR查询尤其重要。目前已有的解决Top-kPPR查询问题的算法有着两大局限性。第一是这些方法应用在大图上面都有着不可接受的空间和时间占用,或者对Top-kPPR的返回结果没有准确率(precision)的保证,这意味着如果想要准确的Top-kPPR结果,也许会漏掉一些。其次,大多数的算法需要对有向图进行一个预处理,这样就使得这些方法无法应用到频繁更新的图上(比如Twitter、Weibo这样的社交网络图)。
技术实现思路
针对上述问题,本专利技术的目的是提供一种计算大图节点邻近度的TopPPR方法,它拥有极高的效率使其可以应用在大图上,同时对准确度还有很强的理论保证。只需初始给定一个准确度参数ρ∈(0,1],TopPPR就会以1-1/n的可能性返回准确度至少为ρ的Top-kPPR结果。为实现上述目的,本专利技术采取以下技术方案:一种计算大图节点邻近度的TopPPR方法,其特征在于包括以下步骤:1)根据给定图的点集V确定Top-k节点集Vk和候选集C的初始值;2)根据预先确定的前向搜索截止阈值以及给定源点对当前候选集C执行前向搜索,并根据得到的各个节点的前向残余值rf(s,u)和前向已确定值πf(s,u),对当前Top-k节点集Vk和候选集C进行更新;3)以前向搜索得到的所有非零的前向残余值为基础,采用CandidateUpdate算法执行nr次随机游走采样,并根据随机游走采样结果对步骤2)中Top-k节点集Vk和候选集C进行更新;4)根据预先确定的后向搜索截止阈值和给定终点对步骤3)中的候选集C执行批量后向搜索,根据批量后向搜索结果建立关于后向残余量和已确定量的倒排表rb和πb,并对当前Top-k节点集Vk以及候选集C进行更新;5)对步骤4)得到的Top-k节点集Vk中的节点数目进行判断,当满足阈值条件时,停止迭代,否则重复步骤2)~4),直到满足阈值条件,此时得到的Top-k节点集Vk即为最终结果。所述步骤2)中,对当前候选集进行前向搜索,并对当前Top-k节点集Vk和候选集C进行更新的方法,包括以下步骤:2.1)确定进行前向搜索的截止阈值前向搜索截止阈值的初始值的计算公式为:式中,m为给定图的边数,n是给定图的节点数;2.2)根据前向搜索截止阈值以及给定源点s对当前候选集C执行前向搜索,对于候选集中的每一个节点u,得到其前向残余值rf(s,u)和前向已确定值πf(s,u),2.3)根据各个节点的前向残余值rf(s,u)和前向已确定值πf(s,u),对Top-k节点集Vk和候选集C进行更新。所述步骤3)中,采用CandidateUpdate算法执行随机游走采样,并对Top-k节点集Vk以及候选集C进行更新的方法,包括以下步骤:3.1)确定进行随机游走采样的次数nr;3.2)根据步骤2)中所有非零的前向残余值rf(s,t)构建Alias结构;3.3)以的概率从构建的Alias结构中随机采样一个点u,从点u出发以α的停止概率执行随机游走,其中,为所有前向残余量之和,即:3.4)假设该随机游走停止在节点v,则在批量后向搜索中形成的倒排表rb中找到所有使得残余量rb(v,t)不为0的点t,并对t的PPR的估计值进行更新;3.5)重复步骤3.2)~3.4),直到完成nr次随机游走采样,nr次随机游走采样结束后,对候选集C中每个节点的PPR的估计值的置信区间β(s,t)进行更新;3.6)根据各个节点t的PPR的估计值和置信区间β(s,t),对各个节点t的PPR的精确值的范围进行估计,并根据估计结果对当前Top-k节点集Vk以及候选集C进行更新。所述步骤3.1)中,随机采样次数nr的初始值的计算公式为:式中,m为给定图的边数,n是给定图的节点数。所述步骤3.4)中,各个节点的PPR的估计值的计算公式为:式中,表示对各节点t的PPR的精确值π(s,t)的估计,s和t分别是给定图中的给定源点和终点,u和v是给定图中的任意节点,πf(s,t)为前向搜索得到的源点s到终点t的已确定值,rf(s,u)为前向搜索得到的源点s到节点u的残余值,πb(v,t)为后向搜索得到的节点v到终点t的已确定值,rb(v,t)为后向搜索得到的节点v到终点t的残余值。所述步骤3.5)中,各个节点的PPR的估计值的置信区间β(s,t)的计算公式为:式中,为经验方差,nr为当前迭代计算种随机游走采样次数,为所有前向残余量之和。所述步骤4)中,采用批量后向搜索方法,对Top-k节点集Vk以及候选集C进行更新的方法,包括以下步骤:4.1)确定候选集C中各节点的后向残余量和后向已确定值的初始值;4.2)确定候选集C中各个节点的后向截止阈值4.3)根据各个节点的后向截止阈值,执行后向搜索,对满足阈值条件的节点进行后向残余量和后向已确定值的更新;4.4)后向搜索结束后,将各节点的(t,rb(v,t))和(t,πb(v,t))添加到倒排表rb和πb中。所述步骤5)中,对当前Top-k节点集Vk中的节点数目进行判断的方法为:当|Vk|≥ρk时,迭代结束,得到最终的Top-kPPR结果;当|Vk|<ρk时,对当前的前向搜索截止阈值和后向搜索截止阈值减半,随机游走采样次数nr翻倍,然后重复步骤2)~4),直到|Vk|≥ρk,此时的Top-k节点集Vk即为最终结果;其中,ρ和k为预先给定的精确度参数以及邻近度参数。本专利技术由于采取以上技术方案,其具有以下优点:1、本专利技术综合了前向搜索、后向搜索和随机游走采样的综合优势,在前向搜索和随机游走基础上,利用后向搜索来减少PPR估计的方差,实现了更高的计算效率。2、本专利技术在批量后向搜索方法中,对候选集中的不同节点设置不同的后向搜索截止阈值,实现了对候选集中不同节点设置不同的搜索深度,进一步提高了计算效率,减小了时间开销。3、本专利技术在各次迭代过程中,通过设置合理的前向搜索截止阈值、后向搜索截止阈值以及随机游走采样次数,使得对准确率及运行时间有良好的理论保证,给大图上的Top-kPPR查询提供了可行的解决方案。4、本专利技术根据有向图进行Top-k查询时,不需要索引所以天然支持动态更新的图,而且在实验下的查询效率、准确度和可扩展性都优于已有的其他算法。因此,本专利技术可以广泛应用于大图节点邻近度的计算领域。附图说明图1是本专利技术TopPPR的逻辑结构。具体实施方式下面结合附图和实施例对本专利技术进行详细的描述。本专利技术中涉及的标识符及其含义如下表1所示。表1标识符及其含义本专利技术首先对PPR的基本定义及其准确度定义进行简单介绍。PPR定义:令G=(V,E)表示一个有向图,V是图中的点集,其点数为n,E是图本文档来自技高网...

【技术保护点】
1.一种计算大图节点邻近度的TopPPR方法,其特征在于包括以下步骤:1)根据给定图的点集V确定Top‑k节点集Vk和候选集C的初始值;2)根据预先确定的前向搜索截止阈值以及给定源点对当前候选集C执行前向搜索,并根据得到的各个节点的前向残余值rf(s,u)和前向已确定值πf(s,u),对当前Top‑k节点集Vk和候选集C进行更新;3)以前向搜索得到的所有非零的前向残余值为基础,采用CandidateUpdate算法执行nr次随机游走采样,并根据随机游走采样结果对步骤2)中Top‑k节点集Vk和候选集C进行更新;4)根据预先确定的后向搜索截止阈值和给定终点对步骤3)中的候选集C执行批量后向搜索,根据批量后向搜索结果建立关于后向残余量和已确定量的倒排表rb和πb,并对当前Top‑k节点集Vk以及候选集C进行更新;5)对步骤4)得到的Top‑k节点集Vk中的节点数目进行判断,当满足阈值条件时,停止迭代,否则重复步骤2)~4),直到满足阈值条件,此时得到的Top‑k节点集Vk即为最终结果。

【技术特征摘要】
1.一种计算大图节点邻近度的TopPPR方法,其特征在于包括以下步骤:1)根据给定图的点集V确定Top-k节点集Vk和候选集C的初始值;2)根据预先确定的前向搜索截止阈值以及给定源点对当前候选集C执行前向搜索,并根据得到的各个节点的前向残余值rf(s,u)和前向已确定值πf(s,u),对当前Top-k节点集Vk和候选集C进行更新;3)以前向搜索得到的所有非零的前向残余值为基础,采用CandidateUpdate算法执行nr次随机游走采样,并根据随机游走采样结果对步骤2)中Top-k节点集Vk和候选集C进行更新;4)根据预先确定的后向搜索截止阈值和给定终点对步骤3)中的候选集C执行批量后向搜索,根据批量后向搜索结果建立关于后向残余量和已确定量的倒排表rb和πb,并对当前Top-k节点集Vk以及候选集C进行更新;5)对步骤4)得到的Top-k节点集Vk中的节点数目进行判断,当满足阈值条件时,停止迭代,否则重复步骤2)~4),直到满足阈值条件,此时得到的Top-k节点集Vk即为最终结果。2.如权利要求1所述的一种计算大图节点邻近度的TopPPR方法,其特征在于:所述步骤2)中,对当前候选集进行前向搜索,并对当前Top-k节点集Vk和候选集C进行更新的方法,包括以下步骤:2.1)确定进行前向搜索的截止阈值前向搜索截止阈值的初始值的计算公式为:式中,m为给定图的边数,n是给定图的节点数;2.2)根据前向搜索截止阈值以及给定源点s对当前候选集C执行前向搜索,对于候选集中的每一个节点u,得到其前向残余值rf(s,u)和前向已确定值πf(s,u),2.3)根据各个节点的前向残余值rf(s,u)和前向已确定值πf(s,u),对Top-k节点集Vk和候选集C进行更新。3.如权利要求1所述的一种计算大图节点邻近度的TopPPR方法,其特征在于:所述步骤3)中,采用CandidateUpdate算法执行随机游走采样,并对Top-k节点集Vk以及候选集C进行更新的方法,包括以下步骤:3.1)确定进行随机游走采样的次数nr;3.2)根据步骤2)中所有非零的前向残余值rf(s,t)构建Alias结构;3.3)以的概率从构建的Alias结构中随机采样一个点u,从点u出发以α的停止概率执行随机游走,其中,为所有前向残余量之和,即:3.4)假设该随机游走停止在节点v,则在批量后向搜索中形成的倒排表rb中找到所有使得残余量rb(v,t)不为0的点t,并对t的PPR的估计值进行更新;3.5)重复步骤3.2)~3.4),直到完...

【专利技术属性】
技术研发人员:魏哲巍何晓东肖小奎王思博商烁文继荣
申请(专利权)人:中国人民大学
类型:发明
国别省市:北京,11

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

1