为了方便,本文的算法展示采用networkx, 接下来的文章主要以networkx为基础,说明图算法的应用
Page Rank is a well-known algorithm developed by Larry Page and Sergey Brin in 1996.
声明:由于原文写的比较好,本文基本ref[1]的文章翻译
1. 基本假设及其定义
1.1 random walk
- 某个人会从图中任意一个节点开始行走
- 在任意一次迭代中,行走者有可能走向他指向的某个节点(概率是p),也可能
跳转
到其他节点(概率1-p) - random walk 假设行走者在某个时刻会停止;也就是找到了他想要的网页。假设行走者在任意一个step时
刻停止的概率是α,称之为阻尼系数。
1.2 数学定义
- Page Rank中的random walk 是时不变马尔可夫链(stationary measure of the Markov Chain )
![](https://i-blog.csdnimg.cn/blog_migrate/0f10b641c40052ac4f85dacc72455602.gif)
2. networkx 模拟诈骗网站
2.1 Page Rank现实意义
- . 实际上,Page Rank 的结果表达了节点在网络节点中的重要程度。个性化的网页排名提供了一组特定节点的角度观察图形。
- 这种操作实际上给网络诈骗(风险网页)提供了便利
2.2 规则
- 为了实现诈骗,random walk需要满足:
- walker 只能从一组特定的节点集(F)开始
- walker 发生跳跃时,只能跳到特定的一组节点集(F)中
例如下图中的a
,e
组成的F集
![](https://i-blog.csdnimg.cn/blog_migrate/93baed67bb86bc0f3f6df856890100a2.gif)
对上图进行 Page Rank得到结果每个节点的重要程度如下