图神经网络
文章平均质量分 89
hifuture_
这个作者很懒,什么都没留下…
展开
-
图神经网络_08-总结
图神经网络总结经过前面几节的学习,我们再来回顾一下图神经网络。图神经网络作用图神经网络是人们通过在深度学习的研究中在图上扩展出来的新的神经网络,通过借鉴卷积神经网络、循环神经网络的思想,设计了用于处理图数据的神经网络结构。目前图神经网络中相关的研究热点方向包括了以下三种:数据具有明确关系的结构场景,如物理系统,分子结构和知识图。非结构性场景,关系结构不明确,包括图像、文本等。其他应用场景,如生成模型和组合优化问题。图神经网络种类图神经网络发展也很丰富,主要有这几种:图卷积网络(Graph原创 2021-07-10 21:44:22 · 212 阅读 · 0 评论 -
图神经网络_07-图预测任务
图预测任务自定义数据集要完成一个完整的图预测任务,首先我们来创建一个自己的数据集。我们通过继承torch_geometric.data.Dataset基类来自定义一个按需加载样本到内存的数据集类。import os.path as ospimport torchfrom torch_geometric.data import Dataset, download_urlclass MyOwnDataset(Dataset): def __init__(self, root, transf原创 2021-07-10 00:10:46 · 1008 阅读 · 0 评论 -
图神经网络_06-基于图神经网络的图表征学习方法
基于图神经网络的图表征学习方法图表征学习要求根据节点属性、边和边的属性(如果存在)生成一个向量作为图的表征,基于图表征可以做图的预测。基于图同构网络GIN(Graph Isomorphism Network)的图表征网络是当前最经典的图表征学习网络。基于图同构网络(GIN)的图表征网络的实现过程基于图同构网络的图表征学习主要包含以下两个过程:首先计算得到节点表征;对图上各个节点的表征做图池化(Graph Pooling),或者称为图读出(Graph Readout),得到图的表征(Graph R原创 2021-07-05 22:22:29 · 476 阅读 · 0 评论 -
图神经网络_05-超大图上的节点表征学习
超大图上的节点表征学习我们使用内存数据集将图神经网络应用于许多节点或边的预测任务,然而在实际的工作中面临着超大图上进行图神经网络的训练,巨大的内存(显存)消耗问题。论文Cluster-GCN: An Efficient Algorithm for Training Deep and Large Graph Convolutional Network提出了一种新的图神经网络的训练方法。Cluster-GCN方法简介为了解决普通训练方法无法训练超大图的问题,Cluster-GCN论文提出:利用图节点聚原创 2021-07-01 21:26:36 · 131 阅读 · 0 评论 -
图神经网络_04-数据完整存储与内存的数据集类+节点预测与边预测任务实践
数据完整存储与内存的数据集类使用数据集的一般过程PyG使用数据的一般过程:从网络上下载数据原始文件;对原始数据文件做处理,为每一个图样本生成一个Data对象;对每一个Data对象执行数据处理,使其转换成新的Data对象;过滤Data对象;保存Data对象到文件;获取Data对象,在每一次获取Data对象时,都先对Data对象做数据变换,所以获取到的是数据变换后的Data对象)。实际中并非需要严格执行每一个步骤占用内存较小的数据集,我们可以将整个数据集的数据都存储到内存里。PyG提供数原创 2021-06-27 17:34:03 · 1004 阅读 · 1 评论 -
图神经网络_03-基于图神经网络的节点表征学习
基于图神经网络的节点表征学习图节点预测或边预测任务过程:使用图神经网络来生成节点表征,并通过基于监督学习的对图神经网络的训练,使得图神经网络学会产生高质量的节点表征。高质量的节点表征能够用于衡量节点的相似性,同时高质量的节点表征也是准确分类节点的前提。Cora数据集Cora是一个论文引用网络,节点代表论文,如果两篇论文存在引用关系,则对应的两个节点之间存在边,各节点的属性都是一个1433维的词包特征向量。获取并分析数据集from torch_geometric.datasets import P原创 2021-06-24 00:21:03 · 566 阅读 · 0 评论 -
图神经网络_02-消息传递范式
消息传递范式在图神经网络中,为节点生成节点表征是图计算任务成功的关键。在此小节,本节学习基于神经网络的生成节点表征的范式——消息传递范式。消息传递范式是一种聚合邻接节点信息来更新中心节点信息的范式,它将卷积算子推广到了不规则数据领域,实现了图与神经网络的连接。消息传递范式包含三个步骤:邻接节点信息变换邻接节点信息聚合到中心节点聚合信息变换神经网络的生成节点表征的操作可称为节点嵌入(Node Embedding),节点表征也可以称为节点嵌入。下图展示了基于消息传递范式的生成节点表征的过程:原创 2021-06-19 17:20:01 · 388 阅读 · 0 评论 -
图神经网络_环境配置与PyG的使用
环境配置与PyG的使用PyTorch Geometric (PyG)是面向几何深度学习的PyTorch的扩展库,几何深度学习指的是应用于图和其他不规则、非结构化数据的深度学习。基于PyG库,我们可以轻松地根据数据生成一个图对象,然后很方便的使用它;我们也可以容易地为一个图数据集构造一个数据集类,然后很方便的将它用于神经网络。环境配置使用nvidia-smi命令查询显卡驱动是否正确安装安装正确版本的pytorch和cudatoolkit,此处安装1.8.1版本的pytorch和11.1版本的cud原创 2021-06-16 23:51:59 · 565 阅读 · 1 评论 -
图神经网络_01-图结构数据的认识
图数据结构的认识图的定义一个图被记为G={V,E}\mathcal{G}=\{\mathcal{V}, \mathcal{E}\}G={V,E},其中 V={v1,…,vN}\mathcal{V}=\left\{v_{1}, \ldots, v_{N}\right\}V={v1,…,vN}是数量为NNN的结点的集合, E={e1,…,eM}\mathcal{E}=\left\{e_{1}, \ldots, e_{M}\right\}E={e1,…,eM} 是数量为 MMM 的边的集合。图用节原创 2021-06-15 22:22:34 · 665 阅读 · 0 评论