【信息检索与数据挖掘期末笔记】(六)Link Analysis

news2025/1/17 23:01:01

Web图

将Web当做有向图

  • 节点:网页

  • 边:超链接

在这里插入图片描述

PageRank

不同网页的重要性是不同的,在web-graph中,节点之间的连接性有巨大的差异。我们根据链接结果来对网页进行排序

想法:用链接来投票

  • 如果有更多的链接指向一个网页(入链接),那么这个网页就会更重要(链接数目

  • 来源于重要的网页的入链接的权重更大(链接质量

  • 整个计算是一个递归过程

    在这里插入图片描述

每个边的分数都是其源页面的重要性的一部分,每个页面的重要性是入边的投票和

在这里插入图片描述

流模型

我们定义页面 j j j 的得分为 r j r_j rj。该得分来源于所有指向 j j j 的边。 r i r_i ri 是页面 i i i 的重要性分数, d i d_i di 是页面 i i i 出边的数目。

这个指标同时体现了:1.被越多边指,得分越高。2.被重要页面的边指,得分更高

在这里插入图片描述

利用上面的式子,对于下面的图结构,我们可以得到三个方程

在这里插入图片描述

上面方程组,有三个方程,三个未知数,而且没有常数。因此,我们==可以得到无数组解(得到的一组解同乘一个系数仍然成立)。==我们只想要一个解,因此我们给上面的方程组添加约束,强制其只有一个解。

在这里插入图片描述

如果方程组的规模大了,直接求解很麻烦

矩阵方程

我们将上述方程组表示成矩阵形式。如果 i i i j j j 有出边,那么第 i i i 列第 j j j 行,也就是 $M_{ji}=\frac{1}{d_i} \$。否则为0。注意到方程组转化成了 r = M r r = Mr r=Mr,也就是 M r = 1 ⋅ r Mr = 1 \cdot r Mr=1r ,因此, r r r M M M 的特征向量

在这里插入图片描述

  • 注意到, M M M 是列随机矩阵:每一列的和都为 1。这代表该列对应的 page 的所有出边。
  • r i r_i ri 是页面 i i i 的重要性得分,并且我们约束了:所有文档的正确性得分之和为 1

特征向量方程

方程组表示为 r = M r r = Mr r=Mr,因此 r r r M M M 的特征向量。实际上, r r r 是首要的特征向量,其特征值对应为 1

  • 因为 M M M 是列随机矩阵,因此 M M M 最大的特征值为 1

幂迭代法

是一个寻找最显著的特征向量(对应最大特征值的特征向量)的方法

过程

对一个有 N 个节点的 web 图

  • 初始时,假设所有节点的得分相同,都是 1 N \frac{1}{N} N1
  • 使用 M ⋅ r M \cdot r Mr r r r 进行迭代
  • 直到向量 r ( t + 1 ) − r ( t ) r^{(t+1)} - r^{(t)} r(t+1)r(t) 的长度小于一个设定值

在这里插入图片描述

下面得到的这一序列会逐渐接近 M M M 的最显著的特征向量

在这里插入图片描述

PageRank的三个问题

在这里插入图片描述

能收敛吗?能收敛到想要的值吗?结果合理吗?

  • 无法收敛的情况

在这里插入图片描述

  • 收敛到不想要的结果的情况

    在这里插入图片描述

问题

  • 有一些点是死胡同,没有出边。当分数流过来之后就出不去了,这会使分数发生泄露

  • spider trap:有一些点的出边会形成一个循环,这样的话,最终这一个循环中的点会吸取所有的分数

    在这里插入图片描述

解决方法:传送

对 spider trap的解决

增加了随机跳的功能。在每一个时间步,浏览者会有两种选择

在这里插入图片描述

通常 β \beta β 取 0.8到0.9之间的值

  • 对于spider trap,经过几个时间步之后,就能跳出去

    在这里插入图片描述

    • spider trap的结果不是我们想要的,而在有限的步数内可以跳走以保证我们不会陷入 spider trap

对死胡同的解决

以 1.0 的概率从死胡同跳走

在这里插入图片描述

死胡同是个问题,因为这并不满足我们一开始的设想(矩阵 M M M 是列随机矩阵,每一列的和都是 1)。我们在一个点是死胡同时,通过传送让矩阵 M M M 变成列随机矩阵

随机传送的式子

每一个时间步都有两种选择

这假设了没有死胡同。我们可以通过预处理来消除所有死胡同,或者显式地遵循死胡同的概率为1.0的随机传送链接。

在这里插入图片描述

写成矩阵形式。在计算时我们将 M M M 替换成 A A A

在这里插入图片描述

例子

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/117052.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Linux Shell 编程,Shell 变量详解

Linux Shell 编程,Shell 变量详解1.第一个shell脚本2.Shell 变量初探3.位置参数变量4.预定义变量1.第一个shell脚本 打开文本编辑器(可以使用 vi/vim 命令来创建文件),新建一个文件 hello.sh,扩展名为 sh(sh代表shell&#xff09…

【算法】面试题 - 链表(附讲解视频)

链表相关面试题876. 链表的中间结点206. 反转链表86. 分隔链表160. 相交链表141. 环形链表问题:快慢指针为什么一定会相遇142. 环形链表 II问题:如何确认入口237. 删除链表中的节点19. 删除链表的倒数第 N 个结点21. 合并两个有序链表23. 合并K个升序链表…

【记忆增强深度条件展开网络】

Memory-augmented Deep Conditional Unfolding Network for Pan-sharpening (面向全色锐化的记忆增强深度条件展开网络) 全色锐化旨在为遥感系统获取高分辨率的多光谱图像,基于深度学习的方法已经取得了显著的成功。然而,大多数…

使用iServer rest api如何实现构建巷道效果

作者:刘大 背景 在实际生产环境中,特别是在采矿,公路建设项目上,我们往往会接触下图所示的巷道,那么在Web端如何快速通过线数据构建巷道模型呢?下面我们来详细说下 使用方式 第一步: 在iServe…

反垃圾邮件系统|基于Springboot+vue 实现反垃圾邮件系统

作者主页:编程指南针 作者简介:Java领域优质创作者、CSDN博客专家 、掘金特邀作者、多年架构师设计经验、腾讯课堂常驻讲师 主要内容:Java项目、毕业设计、简历模板、学习资料、面试题库、技术互助 收藏点赞不迷路 关注作者有好处 文末获取源…

servlet(二)文件的上传

servlet实现文件的上传 文件上传是一个web应用常见的功能 比如:QQ头像,就使用了上传。 邮箱中也有附件的上传和下载功能。 OA系统中审批有附件材料的上传。 1.1前端需要有个form表单标签 methodpost请求 (因为post请求是没有长度限制,get…

Computer Graphics From Scratch - Chapter 7

系列文章目录 简介:Computer Graphics From Scratch-《从零开始的计算机图形学》简介 第一章: Computer Graphics From Scratch - Chapter 1 介绍性概念 第二章:Computer Graphics From Scratch - Chapter 2 基本光线追踪 第三章:Computer Gr…

新生儿喝奶后不要马上放回床上睡觉,为宝宝健康着想,先做1件事

看到一个问题,题主问,新生儿喝完奶能马上放回床上睡觉吗?可以吗?也许每个人都认为照顾新生儿是一件非常简单的事情,因为新生儿几乎整天都在睡觉。当他们饿的时候,他们会让他们的宝宝吃牛奶。他们吃饱了就要…

博客搭建教程(一):静态博客 GitHub + Gridea

同步blog文章 注册一个 Github 账号并创建仓库 注册Github账号 如果你没有 Github 的账号,那么可以进入 官网 开始注册(注意一下用户名的填写,如果不使用自定义域名,用户名将会是你的 Github 分配给你的域名,例如你的…

D. George and Interesting Graph(最大匹配)

Problem - 387D - Codeforces 乔治喜欢图表。最重要的是,他喜欢有趣的图。我们将假设一个有向图是有趣的,如果它符合以下标准。 该图不包含任何多弧。 有一个顶点v(我们称她为中心),这样对于图形u的任何顶点&#xff…

信息网络传播视听节目服务单位的设立与经营

一、行业准入 (一)网络视听业务准入范围 利用公共互联网(含移动互联网)向计算机、手机用户提供视听节目服务(不含交互式网络电视(IPTV)、互联网电视、专网手机电视业务)业务的&…

几个小设置让 mac 更好用

今天在 youtube 上看到一个视频[1],讲新 mac 到手后一定要做的几个设置,有几个之前我不知道的小设置,非常好用,看完马上就用上了。一些常用的就不列了,比如说设置点按、三指拖拽,不知道的可以去搜索了解&am…

【Python数据可视化】使用geoplotlib绘制地理空间数据

geoplotlib前言一、安装geoplotlib包二、读取csv数据使用1.点密度可视化2.直方图3. Voronoi图总结前言 ❤️❤️希望大家能多多点赞。❤️❤️ 需要数据集的可以评论。 Geoplotlib 是地理空间数据可视化的开源Python库,包含了大量的地理空间可视化操作&#xff0c…

131. 分割回文串

131. 分割回文串 给你一个字符串 s,请你将 s 分割成一些子串,使每个子串都是 回文串 。返回 s 所有可能的分割方案。 回文串 是正着读和反着读都一样的字符串。 示例 1: 输入:s “aab” 输出:[[“a”,“a”,“b”]…

青少年等级考试【Python通关干货】(二级)

青少年等级考试【Python通关干货】(二级)1.列表类型的概念 2.序列的通用操作 3.可变序列及列表的通用操作 4.列表的特有操作 5.元组类型的概念与操作

激活学习:一种挑战反向传播的生物启发算法

激活学习(activation learning)是一种生物启发的简单本地学习规则构建的前向无监督通用模型,它的核心是构建多层神经网络使得网络输出激活强度能反映输入的相对概率大小。并且,它在一些任务上达到并超过反向传播的表现。激活学习的概念由山东大学教授周洪…

C++11标准模板(STL)- 算法(std::adjacent_difference)

定义于头文件 <algorithm> 算法库提供大量用途的函数&#xff08;例如查找、排序、计数、操作&#xff09;&#xff0c;它们在元素范围上操作。注意范围定义为 [first, last) &#xff0c;其中 last 指代要查询或修改的最后元素的后一个元素。 计算范围内各相邻元素之间…

MyBatis 配置文件解析

MyBatis 的核心配置文件是 mybatis-config.xml。注意配置文件中节点的顺序有要求&#xff0c;必须按照下面的顺序填写节点信息&#xff1a; (properties,settings,typeAliases,typeHandlers,objectFactory,objectWrapperFactory,reflectorFactory,plugins,environments,databa…

Odoo丨如何在Odoo中修改HTML编辑工具栏?

文章目录一、前言二、渲染原理三、修改方法一、前言 在odoo中&#xff0c;当我们在页面上使用Html类型或者html的小组件的时候&#xff0c;页面渲染成如下格式&#xff0c;供用户编辑⬇ 上方有一些工具栏如背景颜色&#xff0c;字体颜色&#xff0c;字体大小&#xff0c;插入表…

【Linux04-进程概念下】不愧是操作系统,优美的设计!

前言 上期的分享让我们知道进程大概的模样&#xff0c;本期一样重要&#xff0c;能学到操作系统设计的优美&#xff0c;体会到前辈们的智慧。 #环境变量 是什么 OS提供&#xff0c;往往有特殊功能的全局变量&#xff08;/etc/profile.d是设置环境变量的目录&#xff09; [b…