Google 搜索引擎是如何对搜索结果进行排序的?(请用自己的语言描述 PageRank 算法。)
PageRank算法是Google的网页排名算法,通过页面间的链接关系确定页面的等级,如果一个页面被其他页面引用多的话说明页面等级高,一个重要的页面链接到一个等级低的页面,等级低的页面的等级也会相应提高。
如下图所示:
图片20201219164850.png
A的PR值是由B、C、D的链出值决定的,B访问了2个页面,C访问了1个页面,D访问了3个页面,所以A的PR值计算公式如下:
PR(A) = PR(B) / 2 + PR(C) / 1 + PR(D) / 3
互联网中一个网页只有对自己的出链,或者几个网页的出链形成一个循环圈。那么在不断地迭代过程中,这一个或几个网页的PR值将只增不减,为解决这个问题,假设随机浏览网页,会有一定概率跳转到随机网页且概率一致,所以A的PR值计算如下(α为访问到A页面后继续向后浏览的概率):
PR(A) = α(PR(B) / 2 + PR(C) / 1 + PR(D) / 3) + (1 - α) / 4
学习总结
这周继续学习了大数据的相关知识,很多知识之前没有接触过,比较感兴趣的有Flink的使用、PageRank算法、推荐引擎算法、机器学习的相关算法,通过本周的学习拓展了视野,了解了很多互联网优秀的算法及其应用场景,对于以后如果有该类项目的选型的话有很大的帮助。