一、什么是PageRank?
—— PageRank是Google提出的算法,用于衡量特定网页相对于搜索引擎索引中的其他网页而言的重要程度。
—— 是Google创始人拉里·佩奇和谢尔盖·布林于1997年创造的
—— PageRank实现了将链接价值概念作为排名因素。
二、计算环境
—— Hadoop-2.5.2
—— 四台主机
—— 两台NN的HA
—— 两台RM的HA
—— 离线计算框架MapReduce
三、计算原理(1)
思考超链接在互联网中的作用?
☆ 入链 ====投票
· PageRank让链接来“投票“,到一个页面的超链接相当于对该页投一票。
☆ 入链数量
· 如果一个页面节点接收到的其他网页指向的入链数量越多,那么这个页面越重要。
☆ 入链质量
· 指向页面A的入链质量不同,质量高的页面会通过链接向其他页面传递更多的权重。所以越是质量高的页面指向页面A,则页面A越重要。
网络上各个页面的链接图
网络上各个页面的链接图· 站在A的角度:
— 需要将自己的PR值分给B,D
· 站在B的角度:
— 收到来自A,C,D的PR值
· PR需要迭代计算
· 其PR值会趋于稳定
四、算法原理(2)
☆ 初始值
· Google的每个页面设置相同的PR值
· pagerank算法给每个页面的PR初始值为1。
☆ 迭代计算(收敛)
· Google不断的重复计算每个页面的PageRank。那么经过不断的重复计算,这些页面的PR值会趋向于稳定,也就是收敛的状态。
· 在具体企业应用中怎么样确定收敛标准?
— 1、每个页面的PR值和上一次计算的PR相等
— 2、设定一个差值指标(0.0001)。当所有页面和上一次计算的PR差值平均小于该标准时,则收敛。
— 3、设定一个百分比(99%),当99%的页面和上一次计算的PR相等
五、计算原理(3)
☆ 站在互联网的角度:
· 只出,不入:PR会为0
· 只入,不出:PR会很高
· 直接访问网页
☆ 修正PageRank计算公式:增加阻尼系数
· 在简单公式的基础上增加了阻尼系数(damping factor)d
· 一般取值d=0.85。
☆ 完整PageRank计算公式
· d:阻尼系数
· M(i):指向i的页面集合
· L(j):页面的出链数
· PR(pj):j页面的PR值
· n:所有页面数
完整PageRank计算公式现在为口碑活动积累阶段,需要java、框架、大数据、java架构师、Python等资料的朋友们,可再下方评论后私信小编,小编发你网盘链接,手慢则无!
给大家推荐一个大数据学习路线,当然,要有点编程基础才可以学习的。看图需要资料的留言评论哦!想要直接上直播课程【完全免费】的朋友们,可直接点击左下方“了解更多”!
感谢大家的支持!
本作品为原创作品!禁止转载!若想转载。请联系作者!!!
网友评论