统计学习方法学习笔记:第二十一章.PageRank算法

第二十一章:PageRank算法

PageRank的定义:网页重要度的计算方法

  • 假设互联网是一个有向图,在其基础上定义随机游走模型,即一阶马尔可夫链。假设浏览者在每个网页依照链接出去的超链接以等概率跳转到下一个网页,并在网上持续不断的进行这样的随机跳转,这个过程形成一阶马尔可夫链。 P a g e R a n k 表 示 这 个 马 尔 可 夫 链 的 平 稳 分 布 \color{red}{PageRank表示这个马尔可夫链的平稳分布} PageRank

  • 这个马尔可夫链的转移矩阵 M = [ m i j ] n × n M=[m_{ij}]_{n\times{n}} M=[mij]n×n定义如下:
    m i j : m_{ij}: mij:如果结点 j j j有 k 个有向边连出,并且结点 i 是其连出的一个结点,则 m i j = 1 k ; 否 则 m i j = 0 ; m_{ij}=\frac{1}{k};否则m_{ij}=0; mij=k1;mij=0;

  • 由上述定义可知, M 是 一 个 随 机 矩 阵 m i j ≥ 0 , ∑ i = 1 n m i j = 1 \color{red}{M是一个随机矩阵m_{ij}\geq0,\displaystyle\sum_{i=1}^nm_{ij}=1} Mmij0,i=1nmij=1

P a g e R a n k 值 依 赖 网 络 的 拓 扑 结 构 , 一 旦 网 络 的 拓 扑 结 构 ( 连 接 关 系 ) 确 定 , P a g e R a n k 值 就 确 定 \color{red}{PageRank值依赖网络的拓扑结构,一旦网络的拓扑结构(连接关系)确定,PageRank值就确定} PageRankPageRank

若把在某个时刻访问各个结点的概率用一个列向量 R 表示,则马尔可夫游走过程可以表示为:

R t + 1 = M R t \color{red}{R_{t+1}=MR_t} Rt+1=MRt

基本定义(理想)

给定一个包含 n 个结点的 强 连 通 且 非 周 期 \color{red}{强连通且非周期} 的有向图,在有向图上定义随机游走模型,即一阶马尔可夫链,随机游走的特点是从一个结点到有向边连出的所有结点的转移概率相等,对于这个有向图的平稳分布R(即PageRank),R 的各个分量称为各结点的 PageRank值,有下列特点:
P R ( v i ) ≥ 0 ; \color{red}{PR(v_i})\geq0; PR(vi)0;
∑ i = 1 n P R ( v i ) = 1 ; \color{red}{\displaystyle\sum_{i=1}^nPR(v_i)=1;} i=1nPR(vi)=1;
P R ( v i ) = ∑ v j ∈ M ( v i ) P R ( v j ) L ( v j ) , i = 1 , 2 , ⋯   , n \color{red}{PR(v_i)=\displaystyle\sum_{v_j\in{M(v_i)}}\frac{PR(v_j)}{L(v_j)},i=1,2,\cdots,n} PR(vi)=vjM(vi)L(vj)PR(vj),i=1,2,,n

上式中, M ( v i ) M(v_i) M(vi)表示指向结点 v i v_i vi的结点集合, L ( v j ) L(v_j) L(vj)表示结点 v j v_j vj连出的有向边的个数;

所以求解PageRank就是求解网络拓扑结构的马尔可夫链的平稳分布;

问 题 : \color{red}{问题:} 在互联网中,大部分网页没有连接出去的超链接,也就是说从这些网页无法跳转到其他网页,也就不满足强连通性,这样基本定义就不再适用,需要引入更一般的定义;

一般定义(现实)

R = d M R + 1 − d n 1 \color{red}{R=dMR+\frac{1-d}{n}1} R=dMR+n1d1
表示,在任意一个网页上,浏览者或者 以 概 率 d 决 定 按 照 超 链 接 随 机 跳 转 \color{red}{以概率d决定按照超链接随机跳转} d,这时以等概率从连接出去的超链接跳转到下一个网页;或者 以 概 率 ( 1 − d ) 决 定 完 全 随 机 跳 转 \color{red}{以概率(1-d)决定完全随机跳转} (1d),这时以概率 1 n \frac{1}{n} n1跳转到任意一个网页;第二个机制保证从没有连接出去的超链接的网页也可以跳转出;

PageRank的计算

PageRank的计算是根据其定义来进行 迭 代 \color{red}{迭代}

  1. 迭代算法:根据 R t + 1 = d M R t + 1 − d n 1 \color{red}{R_{t+1}=dMR_t+\frac{1-d}{n}1} Rt+1=dMRt+n1d1,设置好 阻 尼 因 子 d \color{red}{阻尼因子d} d 初 始 向 量 R 0 \color{red}{初始向量R_0} R0,然后进行迭代;
  2. 幂法:幂法用于计算矩阵的主特征值(绝对值最大的特征值)和主特征向量;根据下式:
    R = ( d M + 1 − d n E ) R = A R \color{red}{R=(dM+\frac{1-d}{n}E)R=AR} R=(dM+n1dE)R=AR进行迭代;
    一般 PageRank的向量R是矩阵A的主特征向量,主特征值为1;(?既然可以直接求特征向量为什么还要进行迭代?)具体步骤如下:
    (1)令 t = 0 ,选择初始向量 x 0 x_0 x0
    (2)计算有向图的一般转移矩阵 A
    A = d M + 1 − d n E \color{red}{A=dM+\frac{1-d}{n}E} A=dM+n1dE
    (3)迭代并规范化(这里的范数是无穷范数,即向量个分量的绝对值的最大值)结果向量:
    y t + 1 = A x t ; x t + 1 = y t + 1 ∣ ∣ y t + 1 ∣ ∣ \color{red}{y_{t+1}=Ax_t;x_{t+1}=\frac{y_{t+1}}{||y_{t+1}||}} yt+1=Axt;xt+1=yt+1yt+1
    (4)当 ∣ ∣ x t + 1 − x t ∣ ∣ < ϵ 时 , 令 R = x t , 停 止 迭 代 ||x_{t+1}-x_t||<\epsilon时,令R=x_t,停止迭代 xt+1xt<ϵR=xt,
    (5)否则,令 t = t + 1,返回(3)
    (6)对 R 进行规范化处理,使其表示概率分布
  3. 代数算法:通过一般转移矩阵的逆矩阵求解有向图的一般 PageRank
    R = ( I − d M ) − 1 1 − d n 1 , I \color{red}{R=(I-dM)}^{-1}\frac{1-d}{n}1,I R=(IdM)1n1d1,I是单位矩阵,当 0<d<1时,这个式子表示的线性方程组有唯一的解;
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值