什么是图神经网络 (GNN)?

article/2025/9/20 9:12:28

图表无处不在。您的社交网络是人和关系的图表。你的家人也一样。您从 A 点到 B 点所走的道路构成了一个图形。将这个网页连接到其他网页的链接形成了一个图表。当您的雇主向您付款时,您的付款会通过金融机构的图表。

基本上,由链接实体组成的任何东西都可以表示为图形。图表是可视化人、对象和概念之间关系的绝佳工具。然而,除了可视化信息之外,图表还可以成为训练机器学习模型以完成复杂任务的良好数据来源。

图神经网络(GNN)是一种机器学习算法,可以从图中提取重要信息并做出有用的预测。随着图变得越来越普遍,信息越来越丰富,人工神经网络变得越来越流行和强大,GNN 已成为许多重要应用的强大工具。

用于神经网络处理的转换图

每个图都由节点和边组成。例如,在社交网络中,节点可以表示用户及其特征(例如,姓名、性别、年龄、城市),而边可以表示用户之间的关系。更复杂的社交图可以包括其他类型的节点,例如城市、运动队、新闻媒体,以及描述用户和这些节点之间关系的边。

不幸的是,图结构不太适合机器学习。神经网络希望以统一的格式接收数据。多层感知器需要固定数量的输入特征。卷积神经网络需要一个网格来表示它们处理的数据的不同维度(例如,图像的宽度、高度和颜色通道)。

图可以有不同的结构和大小,这不符合神经网络所期望的矩形阵列。图还具有其他特征,使其不同于经典神经网络设计的信息类型。例如,图是“排列不变的”,这意味着只要它们的关系保持不变,改变节点的顺序和位置就不会产生影响。相反,改变像素的顺序会产生不同的图像,并将导致处理它们的神经网络表现不同。

为了使图对深度学习算法有用,必须将它们的数据转换为可以由神经网络处理的格式。用于表示图形数据的格式类型可能因图形类型和预期应用而异,但总的来说,关键是将信息表示为一系列矩阵。

例如,考虑一个社交网络图。节点可以表示为用户特征表。节点表中的每一行都包含有关一个实体(例如,用户、客户、银行交易)的信息,是您可以提供给普通神经网络的信息类型。

但是图神经网络也可以从图包含的其他信息中学习。边,即连接节点的线,可以用相同的方式表示,每一行包含用户的 ID 和其他信息,如友谊日期、关系类型等。最后,图的一般连通性可以表示为一个邻接矩阵,显示哪些节点相互连接。

当所有这些信息都提供给神经网络时,它可以提取超出图形各个组件中包含的简单信息的模式和见解。

图嵌入

图形神经网络可以像任何其他神经网络一样创建,使用全连接层、卷积层、池化层等。层的类型和数量取决于图形数据的类型和复杂性以及所需的输出。

GNN 接收格式化的图形数据作为输入,并生成一个数值向量,该向量表示有关节点及其关系的相关信息。

这种向量表示称为“图嵌入”。嵌入通常用于机器学习中,将复杂的信息转换为可以区分和学习的结构。例如,自然语言处理系统使用词嵌入来创建词及其关系的数字表示。

GNN 如何创建图嵌入?当图数据传递到 GNN 时,每个节点的特征与其相邻节点的特征相结合。这称为“消息传递”。如果 GNN 由多个层组成,则后续层重复消息传递操作,从邻居的邻居收集数据并将它们与从前一层获得的值聚合。例如,在社交网络中,GNN 的第一层将用户的数据与其朋友的数据结合起来,下一层将添加来自朋友的朋友的数据等等。最后,GNN 的输出层生成嵌入,它是节点数据及其对图中其他节点的知识的向量表示。

有趣的是,这个过程与卷积神经网络如何从像素数据中提取特征非常相似。因此,一种非常流行的 GNN 架构是图卷积神经网络 (GCN),它使用卷积层来创建图嵌入。

图神经网络的应用

 

一旦你有了一个可以学习图嵌入的神经网络,你就可以用它来完成不同的任务。

以下是图神经网络的一些应用:

节点分类: GNN 的强大应用之一是向节点添加新信息或填补信息缺失的空白。例如,假设您正在运行一个社交网络,并且您发现了一些机器人帐户。现在您想了解您的网络中是否还有其他机器人帐户。您可以训练 GNN 以根据他们的图嵌入与已知机器人的接近程度将社交网络中的其他用户分类为“机器人”或“非机器人”。

边缘预测:使用 GNN 的另一种方法是找到可以为图增加价值的新边缘。回到我们的社交网络,GNN 可以在嵌入空间中找到与您关系密切但还不是您的朋友的用户(节点)(即,没有一条边可以将您彼此连接)。然后可以将这些用户作为朋友推荐介绍给您。

聚类: GNN 可以从图中收集新的结构信息。例如,在每个人都以一种或另一种方式与他人相关的社交网络中(通过朋友或朋友的朋友等),GNN 可以在嵌入空间中找到形成集群的节点。这些集群可以指向具有相似兴趣、活动或其他不显眼特征的用户组,无论他们的关系有多密切。聚类是基于机器学习的营销中使用的主要工具之一。

图神经网络是非常强大的工具。他们已经在路线规划、欺诈检测、网络优化和药物研究等领域找到了强大的应用。只要有相关实体的图,GNN 就可以帮助从现有数据中获得最大价值。

更多技术干货记得关注我们的公众号:普适极客


http://chatgpt.dhexx.cn/article/W0Xoyx4a.shtml

相关文章

图神经网络,这到底是个什么?

摘要:图神经网络是一种基于图结构的深度学习方法。 1、什么是图神经网络 图神经网络(Graph Neu做ral Networks, GNNs)是一种基于图结构的深度学习方法,从其定义中可以看出图神经网络主要由两部分组成,即“图”和“神经…

图学习笔记(三):图神经网络

图学习笔记(三):图与图学习 回顾六. 图神经网络(Graph Neural Networks)一、 什么是图神经网络二、 有哪些图神经网络符号定义1. 图卷积网络(Graph Convolution Networks,GCNs)GCN方…

图神经网络(一):综述

文章目录 1.背景介绍1)图简介2)图神经网络简介 2.GNN 的通用设计流程1) 查找图结构2)明确图类型和规模3)设计损失函数4)构造模型 3.计算模块的实例化3.1 传播模块——卷积算子(convolution operator&#x…

图神经网络(Graph neural networks)综述

论文链接:Graph Neural Networks: A Review of Methods and Applications Abstract:图(Graph)数据包含着十分丰富的关系型信息。从文本、图像这些非结构化数据中进行推理学习,例如句子的依赖树、图像的场景图等&#…

什么是图神经网络?

什么是图神经网络? 更多精彩内容: https://www.nvidia.cn/gtc-global/?ncidref-dev-876561 GNN 将深度学习的预测能力应用于丰富的数据结构,这些数据结构将对象及其关系描述为图中由线连接的点。 当两种技术融合时,它们可以创造出新奇而美…

图神经网络(GNN)简述

目录 一、什么是图(graph) 二、如何将图片(images)表示成图(graph) 三、在机器学习中使用图(graph)的挑战 四、图神经网络(Graph Neural Network, GNN) (I). The simplest GNN (II). 如何做预测 (III).如何将图的结构信息引入GNN (IV).Learning edge representations (V). 为什…

什么是图神经网络

2019年可以说是图神经网络元年。 01 什么是图神经网络? 1. 图和属性图 要了解图神经网络,首先要了解图。图是由节点和边组成的,如下图所示。一般图中的节点表示实体对象(比如一个用户、一件商品、一辆车、一张银行卡等都可以作…

图神经网络初探

介绍 随着图神经网络(Graph Neural Networks,GNN)热潮的出现,了解、掌握图神经网络相关原理以及应用相关技术越来越成来从事人工智能人员的必要条件。本文主要概述图神经网络的概念、相关模型、经典应用,经过本文的学习…

图神经网络的介绍

近年来,深度学习领域关于图神经网络(Graph Neural Networks,GNN)的研究热情日益高涨,图神经网络已经成为各大深度学习顶会的研究热点。GNN处理非结构化数据时的出色能力使其在网络数据分析、推荐系统、物理建模、自然语…

机器学习笔记 - 什么是图神经网络?

一、图神经网络GNN概述 机器学习的力量正在被用来解决一系列不同领域中日益复杂的问题。模型需要识别和理解更抽象的概念和对象,并且在许多情况下做出非线性决策。尽管它们本身很强大,但更传统的机器学习模型类型缺乏准确映射和处理一些最复杂问题的能力。 人工神经网络越来越…

【图神经网络实战】深入浅出地学习图神经网络GNN(下)

文章目录 一、Graph Attention Network1.1 图注意力机制作用与方法1.2 Attention计算1.3 Graph Attention 做了什么 二、序列图神经网络TGCN2.1 序列图神经网络TGCN的应用2.2 序列图神经网络细节(实例:交通流量预测)2.2.1 交通场景示意图2.2.…

【图神经网络实战】深入浅出地学习图神经网络GNN(上)

文章目录 一、图神经网络应用领域1.1 芯片设计1.2 场景分析与问题推理1.3 推荐系统1.4 欺诈检测与风控相关1.5 知识图谱1.6 道路交通的流量预测1.7 自动驾驶(无人机等场景)1.8 化学,医疗等场景1.9 物理模型相关 二、图神经网络基本知识2.1 图…

pytorch开发工具

学习目标: 1、pycharm 安装 2、jupter安装 学习内容: 1、pycharm 安装 官网地址: https://www.jetbrains.com/pycharm/download/#sectionwindows 点击安装 选择环境变量: 验证: 2、jupyter安装 进入pytorch 环…

PyTorch 简介

PyTorch 简介 概述PyTorch 是什么Why? PyTorch安装 概述 PyTorch API 文档 PyTorch 是什么 PyTorch 是一个提供两个高级功能的 python 包: 具有强 GPU 加速度的张量计算 (如 numpy)深层神经网络建立在基于磁带的自动调整系统上 注: PyTorch 中的 Torch 和 TensorFlow 中的…

国内官网下载pytorch(GPU版)

国内官网下载GPU版pytorch 用官网conda下载坑换清华镜像源的坑使用官网pip3下载成功 看完了吴恩达的深度学习,然后去B站看李沐的卷积神经网络的代码实现,由于之前学习阶段搭建的环境有点混乱,想着自己能科学上网就打算直接卸载anaconda中的环…

Python Pytorch

学习基础知识 大多数机器学习工作流程都涉及处理数据、创建模型、优化模型参数和保存经过训练的模型。本教程向您介绍在 PyTorch 中实现的完整 ML 工作流,并提供链接以了解有关每个概念的更多信息。 我们将使用 Fashion MNIST 数据集来训练一个神经网络&#xff0c…

PyTorch教程中文版

原文:Welcome to PyTorch Tutorials — PyTorch Tutorials 1.12.0cu102 documentation​​​​​​ 中文翻译,加个人总结,便于理解与回顾。 前置知识:python、神经网络 目录 基础概念: 张量Tensors: te…

pytorch怎么下载?pytorch在哪里下载?

PyTorch是一个基于Torch的Python开源机器学习库,许多同学表示不知道怎么下载,或者是下载的非常慢,今天来教大家怎么下载PyTorch。 pytorch在哪里下载? 官方下载地址:https://pytorch.org/ PyTorch选择稳定版本&#…

PyTorch中文版官方教程来啦(附下载)

PyTorch 中文版官方教程来了。 PyTorch 是近期最为火爆的深度学习框架之一,然而其中文版官方教程久久不来。近日,一款完整的 PyTorch 中文版官方教程出炉,读者朋友从中可以更好的学习了解 PyTorch 的相关细节了。教程作者来自 pytorchchina.c…

pytorch官方文档(中文版)

https://pytorch123.com/ 教程介绍 PyTorch是一个基于Torch的Python开源机器学习库,用于自然语言处理等应用程序。它主要由Facebookd的人工智能小组开发,不仅能够 实现强大的GPU加速,同时还支持动态神经网络,这一点是现在很多主流…