CN104504251A - 一种基于PageRank算法的社区划分方法 - Google Patents
一种基于PageRank算法的社区划分方法 Download PDFInfo
- Publication number
- CN104504251A CN104504251A CN201410754171.3A CN201410754171A CN104504251A CN 104504251 A CN104504251 A CN 104504251A CN 201410754171 A CN201410754171 A CN 201410754171A CN 104504251 A CN104504251 A CN 104504251A
- Authority
- CN
- China
- Prior art keywords
- summit
- row
- community
- matrix
- energy
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Mobile Radio Communication Systems (AREA)
Abstract
本发明提供了一种基于PageRank算法的社区划分方法,属于复杂网络社区划分技术领域,该发明将PageRank算法的随机游走性质,量化为顶点间关系程度矩阵,将PR值迭代向量升维至能量分布矩阵,进而由顶点间关系程度来划分社区。具有记录内容详细、运算简便等优点,在网络结构分析、邮件鉴别、文档聚类、谣言传播、信值传播等方面有着广泛的应用前景。
Description
技术领域
本发明涉及复杂网络社区划分技术领域,具体涉及一种基于PageRank算法的社区划分方法。
背景技术
所谓社区划分,是人们对网络性质的物理意义和数学含义的深入研究,也就是指网络中的社团结构。对网络进行社区划分,即是将具有相同结构、特征的网络结点归结为一个小团体,使每个团体有着相同的性质。这个划分团体结构的过程,被称为社区的划分。社区划分的目的和意义重大,由于网络中顶点个数繁多,当顶点个数增加到一定量级之后,利用每个顶点的性质来体现整体网络的性质是不可取的,也是不可能的。网络具有与人类社会相同的关系结构,根据不同的分类方式,可将人类群体分为不同种类,通过对每个种类的研究,推演求得整体的性质;同理想要把握网络整体的结构性质,需要将网络划分为一些顶点集,通过对顶点集的研究,来把握整体网络。
PageRank算法是由拉里·佩奇(LarryPage)和谢尔盖·布林(SergeyBrin)为排序网页而提出的算法。算法核心在于提供给网页以分值,利用分值排序网页,为搜索用户甄选出好的网页,以提高使用搜索引擎寻找网页的体验舒适度。PageRank算法基于一种经典的数学统计模型:“随机游走”,它以其优良的数学理论基础和计算速度,成为计算机网络研究人员一直追捧至今的优秀算法之一。
PageRank算法具有里程碑式的成功,对它的后续研究和应用大部分是对PageRank算法在各种条件下的改进和改进后的应用。PageRank算法的应用很广泛,除了作为Google搜索引擎网页排名的主要基础算法,还被应用于同样物理模型的各种网络中,例如谣言网络、病毒传播网络、论文引用网络、引文索引、信任网络、影响力分析、推荐系统、社交网络指标分析、偏好与声望查找、僵尸网络跟踪与分析、信息传播检测等。PageRank也被反向应用于提高企业的网页排名,即是PageRank在SEO方面的相关应用研究。
发明内容
本申请通过提供一种基于PageRank算法的社区划分方法,不仅解决经典的PageRank算法中的迭代向量仅能表示顶点得分情况,无从知晓得分的来源和去处技术问题,还能够丰富目前的社区划分方法。
为解决上述技术问题,本申请采用以下技术方案予以实现:
一种基于PageRank算法的社区划分方法,包括步骤如下:
步骤S1:根据N维原始网络图G的顶点和边的关系,求得原始网络图G的邻接矩阵D,如果从顶点i到顶点j存在边,则Dij=1,否则Dij=0;
步骤S2:根据邻接矩阵D,求得原始网络图G的转移概率矩阵P,其中
步骤S3:初始化能量矩阵A,所述能量矩阵A的第i行是当前时刻顶点i沿出度流出的能量值,第j列是当前时刻从其他点流入顶点j的能量值,初始时刻的能量矩阵为A0;
步骤S4:根据迭代公式An=An-1P,求得第n时刻的能量矩阵An;
步骤S5:将能量矩阵An的对角线元素置零;
步骤S6:利用“出度占比最大法”,在能量矩阵An中找出应当合并的顶点对(i,j),并将顶点对(i,j)按照求解顺序存入序列List中;
步骤S7:利用“行max列avg合并法”,将步骤S6中顶点对(i,j)对应的能量矩阵An中i行j行合并,i列j列合并,使得An降低1个维度;
步骤S8:判断能量矩阵的维度是否为0,如果不为0,则继续执行步骤S6,如果为0,则执行步骤S9;
步骤S9:根据顶点对序列List,建立顶点合并树,并计算每次合并的模块度Q值,其中nc是划分的社区个数,m是原始图中的边总数,lc是某个社区C中顶点间相互连接的边数,dc是C中顶点度数之和;
步骤S10:比较每次合并的Q值,选择Q值最大的合并方案,得到社区划分结果。
其中,步骤S6中出度占比最大法,即若顶点i流出的最大能量流向顶点j,则将i与j合并为顶点对(i,j)。
其中,步骤S7中所述的行max列avg合并法,即针对步骤S6中得到的顶点对(i,j),在行方向上,保留i行与j行的最大值存于i行对应元素中后删掉j行,在列方向上,求得i列与j列的平均值存于i列对应元素中后删除j列,即
与现有技术相比,本申请提供的技术方案,具有的技术效果或优点是:本发明将PageRank算法中原有的PR值向量升维,能够细化初始能量流动情况,从而更好的掌握能量流入流出状态,为社区划分提供良好的网络图信息。在此之上,利用求得的能量矩阵,再根据现实生活中人际网的一般规律和能量值来找出关系紧密的点,以求得社区,具有记录内容详细、运算简便等优点,在网络结构分析、邮件鉴别、文档聚类、谣言传播、信值传播等方面有着广泛的应用前景。
附图说明
图1为本发明的流程图。
具体实施方式
本申请通过提供一种基于PageRank算法的社区划分方法,不仅解决经典的PageRank算法中的迭代向量仅能表示顶点得分情况,无从知晓得分的来源和去处技术问题,还能够丰富目前的社区划分方法。
为了更好的理解上述技术方案,下面将结合说明书附图以及具体的实施方式,对上述技术方案进行详细的说明。
实施例
一种基于PageRank算法的社区划分方法,包括步骤如下:
步骤S1:根据N维原始网络图G的顶点和边的关系,求得原始网络图G的邻接矩阵D,如果从顶点i到顶点j存在边,则Dij=1,否则Dij=0;
步骤S2:根据邻接矩阵D,求得原始网络图G的转移概率矩阵P,其中
步骤S3:初始化能量矩阵A,所述能量矩阵A的第i行是当前时刻顶点i沿出度流出的能量值,第j列是当前时刻从其他点流入顶点j的能量值,初始时刻的能量矩阵为A0;对初始时刻的顶点i的初始能量值赋值为
步骤S4:根据迭代公式An=An-1P,求得第n时刻的能量矩阵An,经过反复迭代后得到的能量矩阵An可以清晰地表示出当前能量流动情况。即,顶点i从初始时刻到第n时刻的初始能量流向哪些顶点,也可以表示顶点i从初始时刻到第n时刻从哪些顶点得到的能量及能量值。
步骤S5:将能量矩阵An的对角线元素置零;因为对角线元素在能量矩阵中表示顶点流向自己的能量,如果顶点流向自己的能量是最多的,那么顶点本身就应该划为一个社区,因此我们在此不考虑顶点流向自己的能量,将对角线元素置零。
步骤S6:利用“出度占比最大法”,在能量矩阵An中找出应当合并的顶点对(i,j),并将顶点对(i,j)按照求解顺序存入序列List中。出度占比最大法,即若顶点i流出的最大能量流向顶点j,则表示顶点i希望与顶点j划分为同一社区,所以将i,j合并为顶点对(i,j)。
步骤S7:利用“行max列avg合并法”,将步骤S6中顶点对(i,j)对应的能量矩阵An中i行j行合并,i列j列合并,使得An降低1个维度。所述的行max列avg合并法,即针对步骤S6中得到的顶点对(i,j),在行方向上,保留i行与j行的最大值存于i行对应元素中后删掉j行,在列方向上,求得i列与j列的平均值存于i列对应元素中后删除j列,即
步骤S8:判断能量矩阵的维度是否为0,如果不为0,则继续执行步骤S6,如果为0,则执行步骤S9;
步骤S9:根据顶点对序列List,建立顶点合并树,并计算每次合并的模块度Q值,其中nc是划分的社区个数,m是原始图中的边总数,lc是某个社区C中顶点间相互连接的边数,dc是C中顶点度数之和;模块度Q值可以计算每个社区的紧密程度,Q∈[0,1]。Q值越接近于1,表示社区划分方法越好,换句话说,这种社区划分方法划分出来的社区结构很明显。不过,通常情况下,当Q∈(0.3,0.7)时,已经具有明显的社区结构。
步骤S10:比较每次合并的Q值,选择Q值最大的合并方案,得到社区划分结果。
本申请的上述实施例中,提供一种基于PageRank算法的社区划分算法,将PageRank算法中原有的PR值向量升维,能够细化初始能量流动情况,从而更好的掌握能量流入流出状态,为社区划分提供良好的网络图信息。在此之上,利用求得的能量矩阵,再根据现实生活中人际网的一般规律和能量值来找出关系紧密的点,以求得社区,具有记录内容详细、运算简便等优点,在网络结构分析、邮件鉴别、文档聚类、谣言传播、信值传播等方面有着广泛的应用前景。
应当指出的是,上述说明并非是对本发明的限制,本发明也并不仅限于上述举例,本技术领域的普通技术人员在本发明的实质范围内所做出的变化、改性、添加或替换,也应属于本发明的保护范围。
Claims (3)
1.一种基于PageRank算法的社区划分方法,包括步骤如下:
步骤S1:根据N维原始网络图G的顶点和边的关系,求得原始网络图G的邻接矩阵D,如果从顶点i到顶点j存在边,则Dij=1,否则Dij=0;
步骤S2:根据邻接矩阵D,求得原始网络图G的转移概率矩阵P,其中
步骤S3:初始化能量矩阵A,所述能量矩阵A的第i行是当前时刻顶点i沿出度流出的能量值,第j列是当前时刻从其他点流入顶点j的能量值,初始时刻的能量矩阵为A0;
步骤S4:根据迭代公式An=An-1P,求得第n时刻的能量矩阵An;
步骤S5:将能量矩阵An的对角线元素置零;
步骤S6:利用“出度占比最大法”,在能量矩阵An中找出应当合并的顶点对(i,j),并将顶点对(i,j)按照求解顺序存入序列List中;
步骤S7:利用“行max列avg合并法”,将步骤S6中顶点对(i,j)对应的能量矩阵An中i行j行合并,i列j列合并,使得An降低1个维度;
步骤S8:判断能量矩阵的维度是否为0,如果不为0,则继续执行步骤S6,如果为0,则执行步骤S9;
步骤S9:根据顶点对序列List,建立顶点合并树,并计算每次合并的模块度Q值,其中nc是划分的社区个数,m是原始图中的边总数,lc是某个社区C中顶点间相互连接的边数,dc是C中顶点度数之和;
步骤S10:比较每次合并的Q值,选择Q值最大的合并方案,得到社区划分结果。
2.根据权利要求1所述的基于PageRank算法的社区划分方法,其特征在于,步骤S6中出度占比最大法,即若顶点i流出的最大能量流向顶点j,则将i与j合并为顶点对(i,j)。
3.根据权利要求1所述的基于PageRank算法的社区划分方法,其特征在于,步骤S7中所述的行max列avg合并法,即针对步骤S6中得到的顶点对(i,j),在行方向上,保留i行与j行的最大值存于i行对应元素中后删掉j行,在列方向上,求得i列与j列的平均值存于i列对应元素中后删除j列,即
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410754171.3A CN104504251B (zh) | 2014-12-10 | 2014-12-10 | 一种基于PageRank算法的社区划分方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410754171.3A CN104504251B (zh) | 2014-12-10 | 2014-12-10 | 一种基于PageRank算法的社区划分方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104504251A true CN104504251A (zh) | 2015-04-08 |
CN104504251B CN104504251B (zh) | 2017-12-15 |
Family
ID=52945648
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410754171.3A Expired - Fee Related CN104504251B (zh) | 2014-12-10 | 2014-12-10 | 一种基于PageRank算法的社区划分方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104504251B (zh) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106960390A (zh) * | 2017-01-03 | 2017-07-18 | 上海大学 | 基于节点聚合度的重叠社区划分方法 |
CN107240029A (zh) * | 2017-05-11 | 2017-10-10 | 腾讯科技(深圳)有限公司 | 一种数据处理方法及装置 |
CN108764546A (zh) * | 2018-05-17 | 2018-11-06 | 鞍山师范学院 | 一种基于学术大数据的论文影响力预测方法 |
CN109493592A (zh) * | 2017-09-11 | 2019-03-19 | 腾讯科技(深圳)有限公司 | 路径推荐方法及装置 |
CN109726297A (zh) * | 2018-12-28 | 2019-05-07 | 沈阳航空航天大学 | 一种基于互斥策略的二分网络节点预测算法 |
CN113763167A (zh) * | 2021-08-11 | 2021-12-07 | 杭州盈火网络科技有限公司 | 一种基于复杂网络的黑名单挖掘方法 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20080243812A1 (en) * | 2007-03-30 | 2008-10-02 | Microsoft Corporation | Ranking method using hyperlinks in blogs |
US7624104B2 (en) * | 2006-06-22 | 2009-11-24 | Yahoo! Inc. | User-sensitive pagerank |
CN102253971A (zh) * | 2011-06-14 | 2011-11-23 | 南京信息工程大学 | 基于快速相似度的PageRank方法 |
CN102799671A (zh) * | 2012-07-17 | 2012-11-28 | 西安电子科技大学 | 基于PageRank算法的网络个性化推荐方法 |
US20130282713A1 (en) * | 2003-09-30 | 2013-10-24 | Stephen R. Lawrence | Personalization of Web Search Results Using Term, Category, and Link-Based User Profiles |
CN103530402A (zh) * | 2013-10-23 | 2014-01-22 | 北京航空航天大学 | 一种基于改进的PageRank的微博关键用户识别方法 |
-
2014
- 2014-12-10 CN CN201410754171.3A patent/CN104504251B/zh not_active Expired - Fee Related
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20130282713A1 (en) * | 2003-09-30 | 2013-10-24 | Stephen R. Lawrence | Personalization of Web Search Results Using Term, Category, and Link-Based User Profiles |
US7624104B2 (en) * | 2006-06-22 | 2009-11-24 | Yahoo! Inc. | User-sensitive pagerank |
US20080243812A1 (en) * | 2007-03-30 | 2008-10-02 | Microsoft Corporation | Ranking method using hyperlinks in blogs |
CN102253971A (zh) * | 2011-06-14 | 2011-11-23 | 南京信息工程大学 | 基于快速相似度的PageRank方法 |
CN102799671A (zh) * | 2012-07-17 | 2012-11-28 | 西安电子科技大学 | 基于PageRank算法的网络个性化推荐方法 |
CN103530402A (zh) * | 2013-10-23 | 2014-01-22 | 北京航空航天大学 | 一种基于改进的PageRank的微博关键用户识别方法 |
Non-Patent Citations (7)
Title |
---|
ALI CEVAHIR等: "site-based partitioning and repartitioning techniques for parallel pagerank computation", 《IEEE TRANSACTIONS ON PARALLEL AND DISTRIBUTED SYSTEMSS》 * |
M.E.J.NEWMAN等: "finding and evaluating community structure in networks", 《PHYSICAL REVIEW E STAT NONLIN SOFT MATTER PHYS》 * |
YIFEI ZHANG等: "utilizting community centers to answer reachability queries for large graphs", 《WEB INFORMATION SYSTEM AND APPLICATION CONFERENCE(WISH),2013 10TH》 * |
平卫芳: "web数据挖掘中pagerank算法的研究与改进", 《中国优秀硕士学位论文全文数据库 信息科技辑》 * |
张恩德等: "基于非负矩阵分解的用户话题兴趣度算法", 《计算机与数字工程》 * |
张永强: "基于转移概率的pagerank算法研究", 《中国优秀硕士学位论文全文数据库 基础科学辑》 * |
邵晶晶: "基于pagerank排序算法改进的若干研究", 《中国优秀硕士学位论文全文数据库 信息科技辑》 * |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106960390A (zh) * | 2017-01-03 | 2017-07-18 | 上海大学 | 基于节点聚合度的重叠社区划分方法 |
CN107240029A (zh) * | 2017-05-11 | 2017-10-10 | 腾讯科技(深圳)有限公司 | 一种数据处理方法及装置 |
CN109493592A (zh) * | 2017-09-11 | 2019-03-19 | 腾讯科技(深圳)有限公司 | 路径推荐方法及装置 |
CN108764546A (zh) * | 2018-05-17 | 2018-11-06 | 鞍山师范学院 | 一种基于学术大数据的论文影响力预测方法 |
CN108764546B (zh) * | 2018-05-17 | 2021-04-13 | 鞍山师范学院 | 一种基于学术大数据的论文影响力预测方法 |
CN109726297A (zh) * | 2018-12-28 | 2019-05-07 | 沈阳航空航天大学 | 一种基于互斥策略的二分网络节点预测算法 |
CN109726297B (zh) * | 2018-12-28 | 2022-12-23 | 沈阳航空航天大学 | 一种基于互斥策略的二分网络节点预测算法 |
CN113763167A (zh) * | 2021-08-11 | 2021-12-07 | 杭州盈火网络科技有限公司 | 一种基于复杂网络的黑名单挖掘方法 |
CN113763167B (zh) * | 2021-08-11 | 2023-11-17 | 杭州盈火网络科技有限公司 | 一种基于复杂网络的黑名单挖掘方法 |
Also Published As
Publication number | Publication date |
---|---|
CN104504251B (zh) | 2017-12-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104504251A (zh) | 一种基于PageRank算法的社区划分方法 | |
CN104156436B (zh) | 一种社交云媒体协同过滤推荐方法 | |
Jin et al. | A highway-centric labeling approach for answering distance queries on large sparse graphs | |
CN102799671B (zh) | 基于PageRank算法的网络个性化推荐方法 | |
CN103324664B (zh) | 一种基于傅里叶变换的文档相似判别方法 | |
CN107145523B (zh) | 基于迭代匹配的大型异构知识库对齐方法 | |
Zhang | Language in our time: An empirical analysis of hashtags | |
Carrillo et al. | Explicit equilibrium solutions for the aggregation equation with power-law potentials | |
CN103853831A (zh) | 一种基于用户兴趣的个性化搜索实现方法 | |
CN106844786A (zh) | 一种基于文本相似度的舆情地域热点发现方法 | |
Liao et al. | POI recommendation of location-based social networks using tensor factorization | |
CN103020163A (zh) | 一种网络中基于节点相似度的网络社区划分方法 | |
Zhou et al. | Prre: Personalized relation ranking embedding for attributed networks | |
CN105721279A (zh) | 一种电信网络用户的交往圈挖掘方法及系统 | |
CN103729467A (zh) | 一种社交网络中的社区结构发现方法 | |
CN104317904A (zh) | 一种带权重社会网络的泛化方法 | |
Zou et al. | Dynamic skyline queries in large graphs | |
Zhiyuli et al. | Modeling large-scale dynamic social networks via node embeddings | |
Barbosa et al. | Returners and explorers dichotomy in web browsing behavior—a human mobility approach | |
CN110727958B (zh) | 一种基于前缀树的差分隐私轨迹数据保护方法 | |
CN107169114A (zh) | 一种海量数据多维排序搜索方法 | |
Fomenko | Functionals strictly subjected to convergent series and search for singularities of mappings | |
CN103699568A (zh) | 一种从维基中抽取领域术语间上下位关系的方法 | |
CN104331483B (zh) | 基于短文本数据的区域事件检测方法和设备 | |
CN107018074B (zh) | 一种基于扁平化的网络连通路径快速搜索方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20171215 Termination date: 20181210 |