图神经网络模型 The Graph Neural Network Model

2024-06-16 19:38

本文主要是介绍图神经网络模型 The Graph Neural Network Model,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

图神经网络模型

  • 摘要
  • 引言
  • 图神经网络模型
    • 符号
    • 模型
    • 状态值的计算
    • 学习算法
    • 变换和输出函数实现
      • Linear GNN
      • Nonlinear GNN
  • 实验结果
    • The Mutagenesis Problem
  • 计算复杂性

The Graph Neural Network Model

摘要

数据包含许多潜在关系可以表示为图,这些数据存在于科学和工程的众多领域,比如计算机视觉、分子化学、分子生物、模式识别以及数据挖掘。本文提出了一种新型的神经网络模型,称为图神经网络(GNN)模型,对现有的神经网络模型进行了拓展,适用于处理可以表示为图的数据。GNN模型通过一个函数 τ ( G , n ) ∈ R m \tau(G,n) \in \mathbb{R}^m τ(G,n)Rm将图 G G G和其中的一个顶点 n n n映射到一个 m − m- m维欧式空间,可以直接处理众多实用类型的图,比如无环图,圈,有向和无向图等。通过一个监督学习算法对GNN模型的参数进行评估,并考虑了算法的计算成本。实验的结果证实了算法的有效性和泛化能力。

I n d e x Index Index T e r m s Terms Terms: 图神经网络,图处理,递归神经网络

引言

在许多领域数据可以自然的转化为图结构,比如蛋白质组学、图像分析、软件工程和自然语言处理等。最简单的图结构类型有单点和序列。信息可以被表示为树、无环图等更为复杂的图结构。传统上地数据关系挖掘作为通信领域中演绎逻辑设计的子项目,最近由于统计中的相关概念和神经网络在该领域的应用产生了一些新的研究方向。

在机器学习中,结构化的数据通常与从样本中学习一个函数 τ \tau τ 的目标相关联,这个函数 τ ( G , n ) ∈ R m \tau(G,n) \in \mathbb{R}^m τ(G,n)Rm 将图 G G G 和其中的一个顶点 n n n 映射到实向量。

关于图的应用一般可以分为两类,在本文中分别称为 g r a p h graph graph- f o c u s e d focused focused n o d e node node- f o c u s e d focused focused 应用。 g r a p h graph graph- f o c u s e d focused focused 应用,函数与顶点相互独立,对图结构实现一个分类器或者回归任务。比如化学中的化合物可以通过图进行建模,每个顶点表示原子或者化学基团,边表示化学键。映射可以用来评估被评测化合物是否能导致某一特定的疾病。

n o d e node node- f o c u s e d focused focused 应用,映射依赖于顶点,因此分类或者回归任务依赖于每个顶点的性质,例如目标检测问题,检测图像中是否包含特定的目标,并进行定位。

在这里插入图片描述

传统的机器学习应用,在于处理阶段将图结构信息映射为简单的表示,比如实向量,即将图结构数据进行压缩,然后使用list-based技术处理被压缩的数据。了也正因此,一些重要的信息可能会丢失,例如节点间的拓扑信息依赖。

本文提出监督类型的神经网络模型,图神经网络(GNN),适用于面向图和顶点的应用方向。
GNNs 基于信息扩散机制。对于给定的图通过一组unit进行处理,每个unit和图的一个顶点对应。这些unit相互间进行信息交互并更新各自的状态直到一个稳定状态。根据每个unit的状态,GNN完成最后的输出。同时,引进了相应的学习算法,用来对GNN中的参数进行估计。

图神经网络模型

符号

G = ( N , E ) G=(N,E) G=(N,E),其中 N N N 表示顶点集, E E E 边集合, n e [ n ] ne[n] ne[n] 表示顶点 n n n的邻接顶点, c o [ n ] co[n] co[n] 关联顶点 n n n 的边,于顶点 n n n,和边 ( n 1 , n 2 ) (n_1,n_2) (n1,n2) 相对应的属性表示为 l n ∈ R l N l_n \in \mathbb{R}^{l_N} lnRlN l ( n 1 , n 2 ) ∈ R l E l_{(n_1,n_2)}\in \mathbb{R}^{l_E} l(n1,n2)RlE l l l表示将图中所有的属性堆积构成的张量。

本文中考虑的domain是图和顶点构成的集合 D = G × N \mathcal{D}=\mathcal{G}\times \mathcal{N} D=G×N,其中 G \mathcal{G} G 图集合, N \mathcal{N} N 顶点集合。监督学习框架的学习集合
L = { ( G i , n i , j , t i , j ) ∣ G i = ( N i , E i ) ∈ G ; n i , j ∈ N i ; t i , j ∈ R m , 1 ≤ i ≤ p , 1 ≤ j ≤ q i } \mathcal{L}=\{(G_i,n_{i,j},t_{i,j})|G_i=(N_i,E_i)\in \mathcal{G}; n_{i,j}\in N_i; t_{i,j}\in \mathbb{R}^m, 1\leq i \leq p, 1\leq j\leq q_i\} L={(Gi,ni,j,ti,j)Gi=(Ni,Ei)G;ni,jNi;ti,jRm,1ip,1jqi}其中 t i , j t_{i,j} ti,j表示顶点 n i , j n_{i,j} ni,j所对应的期望目标值。

模型

一个直观的想法是将图中的顶点视为目标或者concept,边表示顶点间关系。每个concept 都自然的通过各自的特征和关联concepts的特征定义。然后通过顶点包含的信息以及其邻域的信息,给每个顶点 n n n一个状态向量 x n ∈ R s x_n\in \mathbb{R}^s xnRs,如Fig.2所示。
在这里插入图片描述

参数函数 f w f_w fw 称为局部变换函数,描述了顶点 n n n和其邻域的依赖性。 g w g_w gw 称为局部输出函数,刻画了输出值的生成过程。
x n = f w ( l n , l c o [ n ] , x n e [ n ] , l n e [ n ] ) x_n = f_w(l_n,l_{co[n]},x_{ne[n]},l_{ne[n]}) xn=fw(ln,lco[n],xne[n],lne[n]) o n = g w ( x n , l n ) ( 1 ) o_n=g_w(x_n,l_n) ~~~~~~~~~~~~~~~~~~(1) on=gw(xn,ln)                  (1)其中 l n , l c o [ n ] , x n e [ n ] , l n e [ n ] l_n,l_{co[n]},x_{ne[n]},l_{ne[n]} ln,lco[n],xne[n],lne[n]分别表示顶点 n n n的属性,关联边的属性,邻接顶点的状态和属性。

R e m a r k : Remark: Remark:

  • 邻域的定义可以根据实际情况自由设定。
  • 变换函数和输出函数的参数可能依赖于不同给顶点 n n n。本文考虑相同的参数设置。

整合所有的状态,属性以及输出等式(1),可以表示为 x = F w ( x , l ) x=F_w(x,l)~~~~~~~~~~~~~~~~~~~~~~~~~ x=Fw(x,l)                          o = G w ( x , l N ) ( 2 ) o=G_w(x,l_N)~~~~~~~~~~~~~~~~~(2) o=Gw(x,lN)                 (2)其中 F w F_w Fw全局变换函数, G w G_w Gw全局输出函数。

实际上等式(2)定义了一个映射 φ w : D → R m \varphi_w:\mathcal{D}\rightarrow \mathbb{R}^m φw:DRm,以一个图为输入,图的每个顶点输出一个向量 o n o_n on
这里假设 F w F_w Fw是压缩映射,即对 ∀ x , y \forall x,y x,y ∣ ∣ F w ( x , l ) − F w ( y , l ) ∣ ∣ ≤ μ ∣ ∣ x − y ∣ ∣ ||F_w(x,l)-F_w(y,l)||\leq\mu||x-y|| Fw(x,l)Fw(y,l)μxy

对于nonpositional图, 将(1)中的函数 f w f_w fw替换为 x n = ∑ u ∈ n e [ n ] h w ( l n , l ( n , u ) , x u , l u ) , n ∈ N ( 3 ) x_n = \sum_{u\in ne[n]}h_w(l_n,l_{(n,u)},x_u,l_u),~~~~~~n\in N~~~~~~(3) xn=une[n]hw(ln,l(n,u),xu,lu),      nN      (3)

在这里插入图片描述

实现GNN需要如下技术:

  • 求解(1)的方法。
  • 更新 f w f_w fw g w g_w gw的学习算法。
  • f w f_w fw g w g_w gw的实现方案。

状态值的计算

通过经典的迭代方式对状态进行计算:
x ( t + 1 ) = F w ( x ( t ) , l ) ( 4 ) x(t+1)=F_w(x(t),l)~~~~~~(4) x(t+1)=Fw(x(t),l)      (4)其中 x ( t ) x(t) x(t)表示 x x x的第 t t t次迭代值。
因此状态和输出值的迭代计算过程如下:
x n ( t + 1 ) = f w ( l n , l c o [ n ] , x n e [ n ] ) ( t ) , l n e [ n ] ) x_n(t+1)=f_w(l_n,l_{co[n]},x_{ne[n])}(t),l_{ne[n]}) xn(t+1)=fw(ln,lco[n],xne[n])(t),lne[n]) o n ( t ) = g w ( x n ( t ) , l n ) , n ∈ N . ( 5 ) o_n(t)=g_w(x_n(t),l_n),~~~~~~n\in N.~~~~~~~(5) on(t)=gw(xn(t),ln),      nN.       (5)函数 f w f_w fw g w g_w gw可以使用前馈神经网络实现。

学习算法

给定数据集
L = { ( G i , n i , j , t i , j ) ∣ G i = ( N i , E i ) ∈ G ; n i , j ∈ N i ; t i , j ∈ R m , 1 ≤ i ≤ p , 1 ≤ j ≤ q i } \mathcal{L}=\{(G_i,n_{i,j},t_{i,j})|G_i=(N_i,E_i)\in \mathcal{G}; n_{i,j}\in N_i; t_{i,j}\in \mathbb{R}^m, 1\leq i \leq p, 1\leq j\leq q_i\} L={(Gi,ni,j,ti,j)Gi=(Ni,Ei)G;ni,jNi;ti,jRm,1ip,1jqi}学习参数函数 φ w \varphi_w φw。学习任务可以转化为最小化如下损失函数: e w = ∑ i = 1 p ∑ j = 1 q i ( t i , j − φ w ( G i , n i , j ) ) 2 . ( 6 ) e_w=\sum_{i=1}^p\sum_{j=1}^{q_i}(t_{i,j}-\varphi_w(G_i,n_{i,j}))^2.~~~~(6) ew=i=1pj=1qi(ti,jφw(Gi,ni,j))2.    (6)

学习算法,基于梯度下降策略,可以分为下面三步:

  • 迭代更新(5),直到 x ( T ) ≈ x x(T)\approx x x(T)x
  • 计算梯度 ∂ e w ( T ) / ∂ w \partial e_w(T)/\partial w ew(T)/w
  • 更新权重 w w w

定理 1(可微性) F w F_w Fw G w G_w Gw分别是GNN的全局变换和输出函数。如果 F w ( x , l ) F_w(x,l) Fw(x,l) G w ( x , l N ) G_w(x,l_N) Gw(x,lN)对于 x , w x,w x,w是连续可微的,则 φ w \varphi_w φw对于 w w w也是连续可微的。
定理 2(反向传播) F w F_w Fw G w G_w Gw分别是GNN的全局变换和输出函数。假设 F w ( x , l ) F_w(x,l) Fw(x,l) G w ( x , l N ) G_w(x,l_N) Gw(x,lN)对于 x , w x,w x,w是连续可微的。定义
z ( t ) = z ( t + 1 ) ⋅ ∂ F w ∂ x ( x , l ) + ∂ e w ∂ o ⋅ ∂ G w ∂ x ( x , l N ) . ( 7 ) z(t)=z(t+1) \cdot \frac{\partial F_w}{\partial x}(x,l)+\frac{\partial e_w}{\partial o}\cdot \frac{\partial G_w}{\partial x}(x,l_N).~~~~(7) z(t)=z(t+1)xFw(x,l)+oewxGw(x,lN).    (7) z = lim ⁡ t → − ∞ z ( t ) z=\lim_{t\rightarrow-\infty}z(t) z=limtz(t)。进一步有: ∂ e w ∂ w = ∂ e w ∂ o ⋅ ∂ G w ∂ w ( x , l N ) + z ⋅ ∂ F w ∂ w ( x , l ) ( 8 ) \frac{\partial e_w}{\partial w}=\frac{\partial e_w}{\partial o}\cdot \frac{\partial G_w}{\partial w}(x,l_N)+z\cdot \frac{\partial F_w}{\partial w}(x,l)~~~~~~~~~~~~~~~~(8) wew=oewwGw(x,lN)+zwFw(x,l)                (8)其中 x x x是GNN的稳定状态。

具体学习算法如TABLE 1所示.主程序不断更新权重,直到期望的准确率或是到特定的停机标准。
在这里插入图片描述

变换和输出函数实现

Linear GNN

等式(3)可以自然的用如下函数表示:
h w ( l n , l ( n , u ) , x u , l u ) = A n , u x u + b n ( 12 ) h_w(l_n,l(n,u),x_u,l_u)=A_{n,u}x_u+b_n~~~~~~~~~~~~~(12) hw(ln,l(n,u),xu,lu)=An,uxu+bn             (12)其中 b n ∈ R s b_n\in \mathbb{R}^s bnRs, A n , u ∈ R s × s A_{n,u}\in \mathbb{R}^{s\times s} An,uRs×s由两个神经网络(文中使用FNNs)的输出定义,变换网络 ϕ w : R 2 l N + l E → R s 2 \phi_w:\mathbb{R}^{2l_N+l_E}\rightarrow\mathbb{R}^{s^2} ϕw:R2lN+lERs2, forcing网络 ρ w : R l N → R s \rho_w:\mathbb{R}^{l_N}\rightarrow\mathbb{R}^{s} ρw:RlNRs

Nonlinear GNN

h w h_w hw为多层 FNN。

实验结果

The Mutagenesis Problem

在这里插入图片描述

数据集中每一个分子转化为一个图,顶点表示原子,便表示原子键(ABs)。顶点的属性包括原子类型,能量状态,以及全局属性atom-bond(AB),chemical measurements ( C ), precoded structural (PS)。每个图中有一个监督顶点,AB描述的第一个原子。如果分子发生突变,期望输出为 1, 否则为 -1.

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

计算复杂性

在这里插入图片描述

Scarselli F, Gori M, Tsoi A C, et al. The graph neural network model[J]. IEEE Transactions on Neural Networks, 2009, 20(1): 61-80.

这篇关于图神经网络模型 The Graph Neural Network Model的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1067366

相关文章

Golang的CSP模型简介(最新推荐)

《Golang的CSP模型简介(最新推荐)》Golang采用了CSP(CommunicatingSequentialProcesses,通信顺序进程)并发模型,通过goroutine和channe... 目录前言一、介绍1. 什么是 CSP 模型2. Goroutine3. Channel4. Channe

Python基于火山引擎豆包大模型搭建QQ机器人详细教程(2024年最新)

《Python基于火山引擎豆包大模型搭建QQ机器人详细教程(2024年最新)》:本文主要介绍Python基于火山引擎豆包大模型搭建QQ机器人详细的相关资料,包括开通模型、配置APIKEY鉴权和SD... 目录豆包大模型概述开通模型付费安装 SDK 环境配置 API KEY 鉴权Ark 模型接口Prompt

大模型研发全揭秘:客服工单数据标注的完整攻略

在人工智能(AI)领域,数据标注是模型训练过程中至关重要的一步。无论你是新手还是有经验的从业者,掌握数据标注的技术细节和常见问题的解决方案都能为你的AI项目增添不少价值。在电信运营商的客服系统中,工单数据是客户问题和解决方案的重要记录。通过对这些工单数据进行有效标注,不仅能够帮助提升客服自动化系统的智能化水平,还能优化客户服务流程,提高客户满意度。本文将详细介绍如何在电信运营商客服工单的背景下进行

Andrej Karpathy最新采访:认知核心模型10亿参数就够了,AI会打破教育不公的僵局

夕小瑶科技说 原创  作者 | 海野 AI圈子的红人,AI大神Andrej Karpathy,曾是OpenAI联合创始人之一,特斯拉AI总监。上一次的动态是官宣创办一家名为 Eureka Labs 的人工智能+教育公司 ,宣布将长期致力于AI原生教育。 近日,Andrej Karpathy接受了No Priors(投资博客)的采访,与硅谷知名投资人 Sara Guo 和 Elad G

Retrieval-based-Voice-Conversion-WebUI模型构建指南

一、模型介绍 Retrieval-based-Voice-Conversion-WebUI(简称 RVC)模型是一个基于 VITS(Variational Inference with adversarial learning for end-to-end Text-to-Speech)的简单易用的语音转换框架。 具有以下特点 简单易用:RVC 模型通过简单易用的网页界面,使得用户无需深入了

poj 2349 Arctic Network uva 10369(prim or kruscal最小生成树)

题目很麻烦,因为不熟悉最小生成树的算法调试了好久。 感觉网上的题目解释都没说得很清楚,不适合新手。自己写一个。 题意:给你点的坐标,然后两点间可以有两种方式来通信:第一种是卫星通信,第二种是无线电通信。 卫星通信:任何两个有卫星频道的点间都可以直接建立连接,与点间的距离无关; 无线电通信:两个点之间的距离不能超过D,无线电收发器的功率越大,D越大,越昂贵。 计算无线电收发器D

透彻!驯服大型语言模型(LLMs)的五种方法,及具体方法选择思路

引言 随着时间的发展,大型语言模型不再停留在演示阶段而是逐步面向生产系统的应用,随着人们期望的不断增加,目标也发生了巨大的变化。在短短的几个月的时间里,人们对大模型的认识已经从对其zero-shot能力感到惊讶,转变为考虑改进模型质量、提高模型可用性。 「大语言模型(LLMs)其实就是利用高容量的模型架构(例如Transformer)对海量的、多种多样的数据分布进行建模得到,它包含了大量的先验

图神经网络模型介绍(1)

我们将图神经网络分为基于谱域的模型和基于空域的模型,并按照发展顺序详解每个类别中的重要模型。 1.1基于谱域的图神经网络         谱域上的图卷积在图学习迈向深度学习的发展历程中起到了关键的作用。本节主要介绍三个具有代表性的谱域图神经网络:谱图卷积网络、切比雪夫网络和图卷积网络。 (1)谱图卷积网络 卷积定理:函数卷积的傅里叶变换是函数傅里叶变换的乘积,即F{f*g}

秋招最新大模型算法面试,熬夜都要肝完它

💥大家在面试大模型LLM这个板块的时候,不知道面试完会不会复盘、总结,做笔记的习惯,这份大模型算法岗面试八股笔记也帮助不少人拿到过offer ✨对于面试大模型算法工程师会有一定的帮助,都附有完整答案,熬夜也要看完,祝大家一臂之力 这份《大模型算法工程师面试题》已经上传CSDN,还有完整版的大模型 AI 学习资料,朋友们如果需要可以微信扫描下方CSDN官方认证二维码免费领取【保证100%免费

【生成模型系列(初级)】嵌入(Embedding)方程——自然语言处理的数学灵魂【通俗理解】

【通俗理解】嵌入(Embedding)方程——自然语言处理的数学灵魂 关键词提炼 #嵌入方程 #自然语言处理 #词向量 #机器学习 #神经网络 #向量空间模型 #Siri #Google翻译 #AlexNet 第一节:嵌入方程的类比与核心概念【尽可能通俗】 嵌入方程可以被看作是自然语言处理中的“翻译机”,它将文本中的单词或短语转换成计算机能够理解的数学形式,即向量。 正如翻译机将一种语言