PageRank 算法初步了解

本文介绍了PageRank算法,它是Google搜索引擎的网页排名算法。PageRank利用马尔科夫链的思想,通过链接投票来计算网页权重。文章通过举例说明PageRank的计算过程,并指出其与马尔科夫链的关系。在实际计算中,由于可能出现死循环,PageRank引入了阻尼系数d和随机访问概念,防止权重变为0。最后,展示了如何通过C++程序模拟PageRank的计算过程。
摘要由CSDN通过智能技术生成

前言

因为想做一下文本自动摘要,文本自动摘要是NLP的重要应用,搜了一下,有一种TextRank的算法,可以做文本自动摘要。其算法思想来源于Google的PageRank,所以先把PageRank给了解一下。

马尔科夫链

我感觉说到PageRank,应该要提起马尔科夫链,因为PageRank在计算的过程中,和马尔科夫链转移是十分相似的,只是PageRank在马尔科夫链的转移上做了一些改动。

马尔科夫链的维基百科里是这么说的:

马尔可夫链是满足马尔可夫性质的随机变量序列 X 1 , X 2 , X 3 , . . . X_{1}, X_{2}, X_{3}, ... X1,X2,X3,...。即给出当前状态,将来状态和过去状态是相互独立的。从形式上看,如果两边的条件分布有定义(即如果 Pr ⁡ ( X 1 = x 1 , . . . , X n = x n ) > 0 \Pr(X_{1}=x_{1},...,X_{n}=x_{n})>0 Pr(X1=x1,...,Xn=xn)>0 Pr ⁡ ( X n + 1 = x ∣ X 1 = x 1 , X 2 = x 2 , … , X n = x n ) = Pr ⁡ ( X n + 1 = x ∣ X n = x n ) \Pr(X_{ {n+1}}=x\mid X_{1}=x_{1},X_{2}=x_{2},\ldots ,X_{n}=x_{n})=\Pr(X_{ {n+1}}=x\mid X_{n}=x_{n}) Pr(Xn+1=xX1=x1,X2=x2,,Xn=xn)=Pr(Xn+1=xXn=xn)
X i Xi Xi的可能值构成的可数集S叫做该链的“状态空间”。

形式定义好像有点复杂。我这里只想介绍自己所认识的马氏链,一个简单通俗易懂的马氏链。

假设有一个离散型随机变量 w w w,表示的是当前社会中贫穷,中等和富有的人的概率,其初始分布是: w = ( 0.21 , 0.68 , 0.11 ) w=(0.21,0.68,0.11) w=(0.21,0.68,0.11) 表示社会中贫穷的人占28%,中等的人占68%,富有的人占11%,
这是初始状态,可以想象成这是我们所处地球的第一代人 X 1 X_{1} X1(那个时候就有贫富差距了),接下来第一代人要生小孩,形成第二代人 X 2 X_{2} X2,这个叫做状态的转移,从 X 1 X_{1} X1转移到 X 2 X_{2} X2。怎么转移呢,这是有一个概率的:

父代\子代 儿子是穷人 儿子是中等 儿子是富人
父亲是穷人 0.65 0.28 0.07
父亲是中等 0.15 0.67 0.18
父亲是富人 0.12 0.36 0.52

上述表格代表的是,父亲属于哪个阶级,那儿子属于某个阶级的概率。比如父亲是富人,儿子也是富人的概率是 0.52,这表示大概一半的富二代以后都会败光家产。所以根据以上表格,第二代 X 2 X_{2} X2穷人的概率是 0.21 ∗ 0.65 + 0.68 ∗ 0.15 + 0.11 ∗ 0.12 = 0.252 0.21*0.65+0.68*0.15+0.11*0.12=0.252 0.21

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值