pagerank算法实验报告
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
PageRank算法实验报告
一、算法介绍
PageRank是Google专有的算法,用于衡量特定网页相对于搜索引擎索引中的其他网页而言的重要程度。它由Larry Page 和Sergey Brin在20世纪90年代后期发明。PageRank实现了将链接价值概念作为排名因素。
PageRank的核心思想有2点:
1.如果一个网页被很多其他网页链接到的话说明这个网页比较重要,也就是pagerank值会相对较高;
2.如果一个pagerank值很高的网页链接到一个其他的网页,那么被链接到的网页的pagerank值会相应地因此而提高。
若页面表示有向图的顶点,有向边表示链接,w(i,j)=1表示页面i存在指向页面j的超链接,否则w(i,j)=0。如果页面A存在指向其他页面的超链接,就将A 的PageRank的份额平均地分给其所指向的所有页面,一次类推。虽然PageRank 会一直传递,但总的来说PageRank的计算是收敛的。
实际应用中可以采用幂法来计算PageRank,假如总共有m个页面,计算如公式所示:
r=A*x
其中A=d*P+(1-d)*(e*e'/m)
r表示当前迭代后的PageRank,它是一个m行的列向量,x是所有页面的PageRank初始值。
P由有向图的邻接矩阵变化而来,P'为邻接矩阵的每个元素除以每行元素之和得到。
e是m行的元素都为1的列向量。
二、算法代码实现
三、心得体会
在完成算法的过程中,我有以下几点体会:
1、在动手实现的过程中,先将算法的思想和思路理解清楚,对于后续动手实现
有很大帮助。
2、在实现之前,对于每步要做什么要有概念,然后对于不会实现的部分代码先
查找相应的用法,在进行整体编写。
3、在实现算法后,在寻找数据验证算法的过程中比较困难。作为初学者,对于
数据量大的数据的处理存在难度,但数据量的数据很难寻找,所以难以进行实例分析。