图神经网络GNN介绍

目录标题

    • 图神经网络基础
      • 图基本模块定义
      • 图的邻接矩阵
      • 点特征的更新(重构)
      • 多层GNN
    • 图卷积GCN模型
      • GCN基本思想
      • 网络层数:
      • 基本计算
    • 图注意力机制graph attention network
      • T-GCN序列图神经网络
    • 图相似度

图神经网络基础

图基本模块定义

三个特征:

  • 点–特征向量表示
  • 边–表示关系(分有向/无向)
  • 图—图向量(全局)

无论事整的多么复杂,我们利用图神经网络的目的就是整合特征,重构特征
目的:做好点特征,边特征,最后做好整体的图特征。借助图结构把这些特征做好(点、边、全局的)embedding
输出结果:对点/边/图 做分类、回归

图的邻接矩阵

邻接矩阵:告诉计算机每个点的邻居都有谁
在这里插入图片描述
有连接关系的标1,无关系的标0.
双向边的邻接矩阵对称的
GNN(A,X)传入模型中,邻接矩阵,点的特征

文本数据也可以表示图的形式,邻接矩阵表示的连接关系
在这里插入图片描述
蓝色表示1,白色表示0,比较稀疏的矩阵。
注:在矩阵中,若数值为0的元素数目远远多于非0元素的数目,并且非0元素分布没有规律时,则称该矩阵为稀疏矩阵

邻接矩阵在代码中传入的一般不是N * N的,而是2 * N
在这里插入图片描述
[source,target]:从。。到。。

点特征的更新(重构)

点的更新,不仅考虑自身信息,也考虑邻居的信息
结合邻居与自身信息:
在这里插入图片描述
sigam激活函数,w权重,可学习的权重参数
聚合操作可以当作全连接层,更新的方法有很多,可以自己设置(求和,求均值,最大,最小)
在这里插入图片描述

多层GNN

GNN也可以有多层:

  • GNN的本质就是更新各部分特征
  • 其中输入是特征,输出也是特征,邻接矩阵也不会变的
    在这里插入图片描述
    原始输入–第一次结果–第二次结果
    图结构与邻接矩阵不变,在变的是点特征

感受野:随着卷积的进行,每个点能感受到的区域越来越大

图卷积GCN模型

图中常见任务:

  • 节点分类,对每个节点进行预测,不同点是否有连接预测
  • 整个图分类,部分图分类等,不同子图是否相似,异常检测等
  • GCN归根到底还是要完成特征提取操作,只不过输入对象不需要是固定格式

通常交给GCN两个东西就行:1.各节点输入特征;2.网络结构图
交给图神经网络,用损失函数去迭代去更新

GCN并不是纯的有监督学习,这个也是GCN优势:不需要全部标签,用少量标签也能训练。
计算损失时只用有标签的(交通预测中,偏远地区没有人工标签数据)
要让某一个点的损失小,那么它的邻居也要损失小,所以适合做半监督问题。

GCN基本思想

针对橙色节点,计算它的特征:平均其邻居特征(包括自身)后传入神经网络:
如何重构/更新黄色点:先聚合综合(平均)— 经过神经网络,即加上可训练参数—得到两维向量
在这里插入图片描述

网络层数:

这个跟卷积类似,GCN也可以做多层,每一层输入的还是节点特征
然后将当前特征与网络结构图继续传入下层就可以不断算下去了
在这里插入图片描述
原邻接矩阵–每个点更新–激活函数RELU— 第二次更新–激活函数RELU—经过图卷积的洗,最后得到每个点对应的向量。

但一般不用做太多层(通过6个人可以认识任何一个人),上图栗子中,做两次就能看到其余所有点。

基本计算

图中基本组成:
G就是咱们的图
A是邻接矩阵
D是各个节点的度
F是每个节点的特征
在这里插入图片描述

特征计算方法:其实就是邻接矩阵与特征矩阵进行乘法操作,表示聚合邻居信息
在这里插入图片描述
问题1:光想着别人,没考虑自己呢。
在这里插入图片描述
在这里插入图片描述
问题2:只考虑了加法,没考虑平均
其实就是对度矩阵乘以度矩阵D的逆矩阵,这样就相当于平均的感觉了
在这里插入图片描述
在这里插入图片描述

这里1/2相当于是对第一行做归一化操作,列也应该做归一化:

在这里插入图片描述在这里插入图片描述
这样相当于归一化了两次,数导致更小了,应该开一个根号:
在这里插入图片描述
为什么这样做:
下面的小红和小绿,A和B两个人的度都要考虑进来,
在这里插入图片描述
在这里插入图片描述
因为小绿的度大会把其关系的权重变的很小,造成对小红的影响没有那么大。

最终公式:
例如完成一个十分类任务的,F就为10表示输出层

在这里插入图片描述
第一层:邻接矩阵,重新组合特征X,做一组预设乘上权重参数,套上激活函数relu
第二层:一样的

其中邻居矩阵是更新过的,
在这里插入图片描述

GCN的层数:
理论上来说肯定越大越好
但是实际的图中可能不需要那么多
在社交网络中,只需6个人你可以认识全世界
所以一般的GCN层数不会特别多
经过实验:在多个图数据集中,都发现两三层的比较合适,多了反而变差

图注意力机制graph attention network

哪个节点影响大,哪个节点影响小,需要权重来区分
栗子:5个点,每个点是四维数据。
通过权重来区分影响大小,2,3点对1的影响是否应该一样?
在这里插入图片描述
在这里插入图片描述
邻接矩阵[5×5] :N×N
特征矩阵[5×4] :5个点,每个点是四维数据。
可训练权重参数w[4×8]
聚合更新:[5,8]

这是前面的内容,这一节主要是引入一个权重项
在这里插入图片描述
公式:
在这里插入图片描述
hi,hj:点i与点j的特征
w:可训练的权重参数,先进行维度映射
拿到两个特征后,做内积—来体现权重值
a:指attention
在这里插入图片描述softmax:归一化,2对1的权重和3对1的权重,之和要为1
exp(eij):指对eij做ex 的幂次映射,让结果差异大一些

残留问题:a的计算

1×5维特征向量,称上一个5×8的向量,变成8维向量。并拼接
加入一个可训练可学习的权重参数矩阵
再称一个16×1的矩阵,得到一个值,作为我们的权重.
因为权重要为正值,加上relu激活函数,
最后归一化一下
在这里插入图片描述
attention其实就是对邻接矩阵进行了加权,多加了一次处理
1对2的权重e12,其实改的就是邻接矩阵中a12处的数值。

T-GCN序列图神经网络

有些图随时间变化而变化
1,随着时间变化,点的特征在变
2,随着时间变化,点的特征在变,图结构也在变
套进RNN中
应用:疫情蔓延图,交通流量随时间变化

图相似度

论文链接

输入:两个/多个图结构
输入到图神经网络
输出:进行匹配相似度,输出得分

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

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

图神经网络(GNN)模型原理及应用综述

从数据结构到算法:图网络方法初探论文《Graph Neural Networks: A Review of Methods and Applications》木牛马论文阅读笔记https://www.cnblogs.com/ydcode/p/11050417.htmlhttps://zhuanlan.zhihu.com/p/102994627?utm_sourcewechat_session 文章目录 图神经网络…

图神经网络GAT最详细讲解(图解版)

前言 大家好,我是阿光。 本专栏整理了《图神经网络》,内包含了不同图神经网络的原理以及相关代码实现,详细讲解图神经网络,理论与实践相结合,如GCN、GraphSAGE、GAT等经典图网络,每一个代码实例都附带有完…

图神经网络(GNN)的简介

近年来,图神经网络(GNN)在社交网络、知识图、推荐系统甚至生命科学等各个领域得到了越来越广泛的应用。GNN在对图节点之间依赖关系进行建模的强大功能,使得与图分析相关的研究领域取得了突破。本文介绍了图神经网络的基本原理,以及两种高级的…

什么是图神经网络GNN?

一、什么是GNN 一句话概括图神经网络(Graphic Nuaral Network,GNN):将一个数据(一个图)输入到网络(GNN)中,会得到一个输出数据(同样是图)&#xf…

图神经网络简介,什么是图神经网络,GNN

目录 什么是图? 二、怎么把一些内容表示成图 2.1 怎么把图片表示成图 2.2 将一句话表示成图 2.3 其他信息转换成图的例子 2.3.1 分子结构表示成图 2.3.2 社会人物关系表示成图 2.3.3 其他可以表示成图的信息 三、哪些类型的问题有图结构数据 3.1 图层面的任务…

ChatGPT 火爆了,为什么不被开发者所欢迎?

可以说,ChatGPT是近几个月最受欢迎的话题之一,毕竟这个聊天机器人比它的前辈们“聪明”了很多,除了聊天之外,还会打草稿和编写代码,在某种程度上也能提高生产力。 记得 ChatGPT 最开始上线不久的时候,看到…

不需要等待列表,也不用魔法上网的Claude,能否比肩ChatGPT?

近期,国外Anthropic公司发布了Claude聊天机器人,堪比ChatGPT的最大竞争对手。一经推出,市场上就经常拿它俩来对比,因为推出Claude产品的Anthropic 公司是由多位前OpenAI前员工组成,两家公司,以及他们推出的…

漫画:骚操作系列(一文让你学会如何用代码判断“24“点)

“24点”是一种数学游戏,正如象棋、围棋一样是一种人们喜闻乐见的娱乐活动。它始于何年何月已无从考究,但它以自己独具的数学魅力和丰富的内涵正逐渐被越来越多的人们所接受。今天就为大家分享一道关于“24点”的算法题目。 话不多说,直接看题…

修改Discuz首页四格列表

优化经典四格版式下的用户界面 CSS,增加了表格间的分割线显示,使页面 UI 更为整齐 效果图: 修改步骤: 1.打开文件:template/default/style/t5/style.css 2.尾部新增样式: .category_newlist {padding: 0…

卡方检验四格表怎么做_SPSS案例实践:2*2四格表卡方检验

在某项调查研究中,所有受访家庭按照家庭收入被分为低收入家庭和中高收入家庭两类,现希望考察不同收入级别的家庭其轿车拥有率是否相同。 SPSS数据如下: 家庭是否拥有轿车是一个二结局的分类变量,要么有要么没有,互斥,所以该问题是一个典型的两个率的差异比较。 01 频数资…

AI漫画生成

文章目录 前言一、漫画生成怎么搞?二、White-box Cartoon Representations1.网络结构2.代码 附 前言 提示:这里可以添加本文要记录的大概内容: 例如:随着人工智能的不断发展,机器学习这门技术也越来越重要&#xff0c…

[四格漫画] 第523话 电脑的买法

翻译至:http://www.atmarkit.co.jp/ait/articles/1610/04/news018.html

四格漫画《MUXing》——发版后……

产品发版上线后,工作并没有结束…… 【本文首发于:百度MUX】http://mux.baidu.com/?p2736 【 关注百度技术沙龙】 本文转自百度技术51CTO博客,原文链接: http://blog.51cto.com/baidutech/770299 ,如需转载请自行联系…

四格漫画《MUXing》——度姐传说

MUXING用户研究工程师们热情、专业且富有亲和力。同时,他们也是群有故事的人…… 【本文首发于: 百度用户体验部】 http://mux.baidu.com/?p1169 【 关注百度技术沙龙】 本文转自百度技术51CTO博客,原文链接:http://blog.51cto.c…

四格漫画《MUXing》——请客记

年关将近,聚会增多,请客?还是被请?这是个问题…… 【本文首发于: 百度用户体验部】 http://mux.baidu.com/?p675 【 关注百度技术沙龙】 本文转自百度技术51CTO博客,原文链接:http://blog.51ct…

四格漫画《MUXing》——龙年大吉

2012世界末日就要来了!MUXING要集齐龙珠,唤出神龙,拯救世界!龙年必须要大吉! 【本文首发于:百度MUX】http://mux.baidu.com/?p2866 【 关注百度技术沙龙 本文转自百度技术51CTO博客,原文链接&a…

四格漫画《MUXing》——他们在干什么

黑夜给了我一双黑色的眼睛,我用它来追逐光明,但……他们在干什么? 【本文首发于: 百度用户体验部】 http://mux.baidu.com/?p1859 【 关注百度技术沙龙】 本文转自百度技术51CTO博客,原文链接:http://bl…

四格漫画《MUXing》——MUX诞生记

MUXING 是谁??!!据说与外星生物有关……是神秘的…… 木星(muxing),为太阳系八大行星之一,距太阳(由近及远)顺序为第五,亦为太阳系体积最大、自转…

[四格漫画] 第504话 网络相机

本文翻译至:http://www.atmarkit.co.jp/ait/articles/1604/26/news026.html

四格漫画《MUXing》——一场大雪

飞 花厚一尺,和月照三更。 【本文首发于: 百度用户体验部】 http://mux.baidu.com/?p758 【 关注百度技术沙龙】 本文转自百度技术51CTO博客,原文链接:http://blog.51cto.com/baidutech/747677,如需转载请自行联系原作…