统计学习方法-PageRank算法-读书笔记

统计学习方法-PageRank算法-读书笔记

    • 1、前言
    • 2、PageRank定义
    • 3、PageRank迭代算法
      • 3.1幂法
      • 3.2代数算法

1、前言

PageRank算法是图链接分析的代表算法,属于图数据上的无监督学习方法。
算法的基本思想是在有向图上定义一个随机游走模型,即一阶马尔可夫链,描述随机游走者沿着有向图随机访问各个结点的行为。
PageRank算法表示这个马尔可夫链的平稳分布。

2、PageRank定义

理想定义:有向图需要满足强连通且非周期性的条件。
一般定义:给定一个含有n个结点的任意有向图,在有向图上定义一个一般地随机游走模型,即一阶马尔可夫链。一般地随机游走模型的转移矩阵由两部分的线性组合组成。一部分是有向图的基本转移矩阵M,表示从一个结点到其连出的所有结点的转移概率都是1/n,线性组合系数为阻尼因子d。这个一般随机游走的马尔可夫链存在平稳分布,记作R。定义平稳分布向量R为这个有向图一般PageRank
R = d M R + 1 − d n 1 R=dMR+\frac{1-d}{n}1 R=dMR+n1d1
决定,其中1是所有分量为1的n维向量。

3、PageRank迭代算法

输入:含有n个结点的有向图,转移矩阵M,阻尼因子d,初始向量R0
输出:有向图的PageRank向量R
(1)t=0
(2)计算 R t + 1 = d M R t + 1 − d n 1 R_{t+1}=dMR_t+\frac{1-d}{n}1 Rt+1=dMRt+n1d1
(3)如果 R t + 1 R_{t+1} Rt+1 R t R_t Rt充分接近,停止迭代
(4)否则,t=t+1,跳转到(2)

3.1幂法

幂法是一个常用的PageRank计算方法,通过近似计算矩阵的主特征值和主特征向量求得有向图的一般PageRank。
主特征值是指绝对值最大的特征值,著特征向量是其对应的特征向量。
R = ( d M + 1 − d n E ) R = A R R=(dM+\frac{1-d}{n}E)R=AR R=(dM+n1dE)R=AR
计算一般PageRank的幂法
输入:含有n个结点的有向图,转移矩阵M,阻尼因子d,初始向量x0,计算精度 ϵ \epsilon ϵ
输出:有向图的PageRank向量R
(1)令t=0,选择初始向量x0
(2)计算有向图的一般转移矩阵A
A = d M + 1 − d n E A=dM+\frac{1-d}{n}E A=dM+n1dE
(3)迭代并规范化结果向量
y t + 1 = A x t y_{t+1}=Ax_t yt+1=Axt
x t + 1 = y t + 1 ∣ ∣ y t + 1 ∣ ∣ x_{t+1}=\frac{y_{t+1}}{||y_{t+1}||} xt+1=yt+1yt+1
(4)当 ∣ ∣ x t + 1 − x t ∣ ∣ < ϵ ||x_{t+1}-x_t||<\epsilon xt+1xt<ϵ时,R=xt停止迭代
(5)否则,t=t+1执行(3)
(6)对R进行规范化处理(使其分量和为1),使其表示概率分布。

3.2代数算法

代数算法通过一般转移矩阵的逆矩阵计算求有向图的一般PageRank。
R = d M R + 1 − d n 1 R=dMR+\frac{1-d}{n}1 R=dMR+n1d1
( I − d M ) R = 1 − d n 1 (I-dM)R=\frac{1-d}{n}1 (IdM)R=n1d1
R = ( I − d M ) − 1 1 − d n I R=(I-dM)^{-1}\frac{1-d}{n}I R=(IdM)1n1dI
这里的I是单位矩阵,当0

你可能感兴趣的:(学习笔记)