图神经网络07-PageRank算法

简介: 在本节中,我们将探讨PageRank算法,其实这是一个老生常谈的概念或者算法,在这里我们重新温故下这个经典算法。这是一种使用Web Graph中的链接结构按重要性对网页进行排名的方法,这也是Google普及的网络搜索常用算法。 在讨论PageRank之前,让我们先将Web概念化为图,然后尝试使用图论语言来研究其结构。

将Web看做Graph


我们可以将万维网是将网页看成节点,网页之间的超链接看做成边组成的Graph,同时我们可以一下假设:

  • 仅考虑静态网页
    忽略网络上的暗网(即无法访问的网页,防火墙保护的页面) 所有链接都是可导航的。不考虑交易或者行为链接(例如:喜欢,购买,关注等)。

通过上述方式将万维网概念化为Graph之后,我们看看当前流行的搜索引擎如何使用它。 例如,Google使用爬虫为网页编制索引,这些爬虫通过按广度优先遍历访问链接来浏览网络。 可以通过这种方式遍历的图的还有很多其他例子,比如:科学研究论文之间的引文图,我们写论文的时候参考文献引用;百科全书中的参考文献。


万维网的Graph到底长什么样子



在2000年,AltaVista的创始人进行了一项实验[Graph structure in the Web - ScienceDirect

],以探索Web的形状。论文抛出了一个问题:给定一个节点,这个节点可以到达哪些节点;有哪些其他节点可以访问到这个节点

这样会就产出两种类型的节点:

上面两个集合可以通过运行简单的BFS来遍历得到。例如,在下图中


79.png



有向图的更多细节



有向图有两种类型:

  • 强连通图:任何节点都可以访问到任何其他节点的图。
  • 有向无环图(DAG):在图论中,如果一个有向图从任意顶点出发无法经过若干条边回到该点,则这个图是一个有向无环图(DAG, Directed Acyclic Graph)。

任何有向图都可以表示为这两种类型的组合,可以通过以下两个步骤实现:

** 获取有向图中的强连通图**


将SCC合并到超节点中,创建一个新图形G’


80.png


相关文章
|
10天前
|
机器学习/深度学习 人工智能 算法
海洋生物识别系统+图像识别+Python+人工智能课设+深度学习+卷积神经网络算法+TensorFlow
海洋生物识别系统。以Python作为主要编程语言,通过TensorFlow搭建ResNet50卷积神经网络算法,通过对22种常见的海洋生物('蛤蜊', '珊瑚', '螃蟹', '海豚', '鳗鱼', '水母', '龙虾', '海蛞蝓', '章鱼', '水獭', '企鹅', '河豚', '魔鬼鱼', '海胆', '海马', '海豹', '鲨鱼', '虾', '鱿鱼', '海星', '海龟', '鲸鱼')数据集进行训练,得到一个识别精度较高的模型文件,然后使用Django开发一个Web网页平台操作界面,实现用户上传一张海洋生物图片识别其名称。
92 7
海洋生物识别系统+图像识别+Python+人工智能课设+深度学习+卷积神经网络算法+TensorFlow
|
4天前
|
机器学习/深度学习 人工智能 自然语言处理
Transformer 能代替图神经网络吗?
Transformer模型的革新性在于其自注意力机制,广泛应用于多种任务,包括非原始设计领域。近期研究专注于Transformer的推理能力,特别是在图神经网络(GNN)上下文中。
16 5
|
2天前
|
存储 算法 安全
网络安全中的加密技术与解密算法:保障数据安全的基石
【7月更文挑战第1天】网络安全依赖加密技术与解密算法确保数据安全。本文探讨加密原理、对称与非对称加密(如AES、DES、RSA、ECC)及它们在数据传输、存储安全和身份验证中的应用。加密是数据保密的核心,面对不断升级的网络威胁,加密技术将持续进化以适应新挑战。
|
1天前
|
机器学习/深度学习 编解码 数据可视化
图神经网络版本的Kolmogorov Arnold(KAN)代码实现和效果对比
目前我们看到有很多使用KAN替代MLP的实验,但是目前来说对于图神经网络来说还没有类似的实验,今天我们就来使用KAN创建一个图神经网络Graph Kolmogorov Arnold(GKAN),来测试下KAN是否可以在图神经网络方面有所作为。
8 0
|
5天前
|
机器学习/深度学习 算法
**反向传播算法**在多层神经网络训练中至关重要,它包括**前向传播**、**计算损失**、**反向传播误差**和**权重更新**。
【6月更文挑战第28天】**反向传播算法**在多层神经网络训练中至关重要,它包括**前向传播**、**计算损失**、**反向传播误差**和**权重更新**。数据从输入层流经隐藏层到输出层,计算预测值。接着,比较预测与真实值计算损失。然后,从输出层开始,利用链式法则反向计算误差和梯度,更新权重以减小损失。此过程迭代进行,直到损失收敛或达到训练次数,优化模型性能。反向传播实现了自动微分,使模型能适应训练数据并泛化到新数据。
14 2
|
5天前
|
机器学习/深度学习 存储 算法
基于SFLA算法的神经网络优化matlab仿真
**摘要:** 使用MATLAB2022a,基于SFLA算法优化神经网络,降低训练误差。程序创建12个神经元的前馈网络,训练后计算性能。SFLA算法寻找最优权重和偏置,更新网络并展示训练与测试集的预测效果,以及误差对比。SFLA融合蛙跳与遗传算法,通过迭代和局部全局搜索改善网络性能。通过调整算法参数和与其他优化算法结合,可进一步提升模型预测精度。
|
7天前
|
机器学习/深度学习 人工智能 自然语言处理
机器学习算法入门:从K-means到神经网络
【6月更文挑战第26天】机器学习入门:从K-means到神经网络。文章涵盖了K-means聚类、逻辑回归、决策树和神经网络的基础原理及应用场景。K-means用于数据分组,逻辑回归适用于二分类,决策树通过特征划分做决策,神经网络则在复杂任务如图像和语言处理中大显身手。是初学者的算法导览。
|
7天前
|
机器学习/深度学习 数据采集 TensorFlow
使用Python实现深度学习模型:图神经网络(GNN)
使用Python实现深度学习模型:图神经网络(GNN)
15 1
|
1天前
|
机器学习/深度学习 人工智能 算法
|
5天前
|
机器学习/深度学习 算法 数据可视化
基于googlenet深度学习网络的睁眼闭眼识别算法matlab仿真
**算法预览图展示睁眼闭眼识别效果;使用Matlab2022a,基于GoogLeNet的CNN模型,对图像进行分类预测并可视化。核心代码包括图像分类及随机样本显示。理论概述中,GoogLeNet以高效Inception模块实现眼部状态的深度学习识别,确保准确性与计算效率。附带三张相关图像。**