一种基于图神经网络和FPGA的图数据处理方法技术

技术编号:39427023 阅读:11 留言:0更新日期:2023-11-19 16:13
一种基于图神经网络和FPGA的图数据处理方法,属于图数据处理算法领域。现有的主流图神经网络算法在大规模图数据上的应用受到限制。本发明专利技术方法包括:设计外部存储器,用于存储所有图形数据,包括顶点、边和更新;FPGA加速器上的RAM用于缓冲顶点数据的缓冲器,处理逻辑被实现为并行流水线;对于顶点阵列无法适应FPGA加速器上的RAM的大型图,使用基于顶点索引的简单划分方法对图进行划分;设计p个引擎PE,用于并行处理不同的分区;每个引擎PE都有一个单独的间隔缓冲区,用于存储引擎PE正在处理的分区的间隔数据;设计散布

【技术实现步骤摘要】
一种基于图神经网络和FPGA的图数据处理方法


[0001]本专利技术涉及一种图数据处理方法,特别涉及一种基于图神经网络和
FPGA
的图数据处理方法


技术介绍

[0002]将人与人之间的社交网络会构成的图

地铁线路及高铁线路会构成的图

网民购买商品会构成的“网民

商品”图

互联网中网页间的互相链接构成的图

论文的互相引用构成的图理解为图数据

根据这些图的信息可以完成很多任务,例如根据用户和商品的历史交互,预测一个用户是否会购买一个商品或对它感兴趣;而图数据处理由于其内容复杂

表现力强

需要处理的因素多,是计算机科学中最常见的抽象数据类型之一

在当今大数据时代,各种图数据包括大量无效数据,这些数据形成了庞大的图数据资源

在当云计算盛行的环境下,为图数据处理技术的应用提供了更有利的条件,同时带来了技术上的优化,使图数据处理技术的应用效率大大提高,在大规模运营中发挥着更重要的作用,对图数据处理的应用效果越来越好

[0003]目前,图分析任务通常采用图嵌入技术进行解决

通过图嵌入技术,可以将图中的结构及内容等信息用一个低维向量进行表征,该向量可以作为输入用于下游的学习任务中

另外,图嵌入还可以与深度学习技术相结合

例如,基于局部连接与平移不变的假设,可以将图嵌入与卷积神经网络
(Convolutional Neural Network

CNN)
相结合,从而得到图神经网络
(Graph neural network

GNN)。
深度学习领域关于图神经网络
(Graph Neural Networks

GNN)
的研究热情日益高涨,图神经网络已经成为各大深度学习国内外顶会的研究热点
。GNN
处理非结构化数据时的出色能力使其在网络数据分析

推荐系统

物理建模

自然语言处理和图上的组合优化问题方面都取得了新的突破

图神经网络
(GNN)
是一类基于深度学习的处理图域信息的方法,它通过将图广播操作和深度学习算法结合,可以让图的结构信息和顶点属性信息都参与到学习中,在顶点分类

图分类

链接预测等应用中表现出良好的效果和可解释性,已成为一种广泛应用的图分析方法

[0004]近些年来机器学习
(Machine Learning)

AI
领域发展非常快,在机器学习或者模型训练中,平时需要用大量数据去训练模型,其实归根结底是对大量数据汇总或者说统计性的结果

最近人们发现光有统计性结果不够,数据和数据之间的关系也应体现在模型里,所以开始将基于图的数据关系加入到模型训练,把图的结构引入到模型训练里面进行图神经网络的分析

[0005]在处理大容量图形数据的过程中,可以利用虚拟化技术创建一个大容量

低成本的数据处理平台,即大规模容量的存储

计算

应用虚拟实体化

使容量图形数据,网络等资源成为虚拟化的对象,抽象的空闲数据处理资源被转化为完全独立的个体进行应用

首先,可以对图形数据进行参数化和配置,定制相应的处理平台

然后在数据处理后主动配置存储和计算,写入计算进程和资源配置文件,分配计算进程

最后,分布式工具通过网络连接到计算节点,进入计算过程,正确处理大规模图数据

在大规模图数据处理平台中,存储资
源和计算资源的分配和执行是通过代码实现的,相应的实现计算节点启动后,通过网络向其他计算节点发送图数据处理命令,从而实现图形数据的对比

工作流程调度和流程进展为大规模数据处理提供了一个可行

简单且低功耗的平台

[0006]以边缘为中心的图神经网络数据的范式可以灵活地捕获具有不同图形结构

数据类型和图形更新功能的各种图形算法

其计算遵循分散

聚集编程模型

处理是迭代的,每次迭代都由一个散射阶段和一个聚集阶段组成

在散射阶段,遍历每条边,以基于边的源顶点生成特定于算法的更新

在聚集阶段,上一个散射阶段生成的所有更新都将应用于相应的目标顶点

以边缘为中心的范例的优点是它以流方式遍历边缘

这使得
FPGA
成为一个理想的加速平台,因为
FPGA
已被广泛用于加速流应用程序

[0007]综上,图神经网络是一类基于深度学习的处理图域信息的方法,它通过将图广播操作和深度学习算法结合,可以让图的结构信息和顶点属性信息都参与到学习中,在顶点分类

图分类

链接预测等应用中表现出良好的效果和可解释性,已成为一种广泛应用的图分析方法

目前已有诸多工作针对图结构的数据特点和图神经网络的计算特点,探索了大规模图神经网络系统的设计和实现方案

然而主流的深度学习框架
(

TensorFlow、PyTorch

)
没有为图神经网络计算提供高效的存储支持和图上的消息传递支持,这限制了图神经网络算法在大规模图数据上的应用

[0008]本专利技术将大规模图数据图神经网络和
FPGA
技术相结合,设计基于
FPGA
的大规模图数据的处理方法,基于图数据处理图神经网络的研究有极其广泛的应用前景和研究意义,通过
FPGA
对算法进行移植,实现对面向大规模图数据处理算法的有效加速


技术实现思路

[0009]本专利技术的目的是为了解决由于现有的主流深度学习框架没有为图神经网络计算提供高效的存储支持和图上的消息传递支持,而导致的图神经网络算法在大规模图数据上的应用受到限制的问题,而提出一种基于图神经网络和
FPGA
的图数据处理方法

[0010]上述目的通过以下的技术方案实现:
[0011]一种基于图神经网络和
FPGA
的图数据处理方法,所述方法通过以下步骤实现:
[0012]步骤一

设计系统构架,包括外部存储器和
FPGA
加速器;其本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.
一种基于图神经网络和
FPGA
的图数据处理方法,其特征在于:所述方法通过以下步骤实现:步骤一

设计系统构架,包括外部存储器和
FPGA
加速器;其中,外部存储器,用于存储所有图形数据,包括顶点

边和更新;
FPGA
加速器,用于处理边缘和更新;
FPGA
加速器上的
RAM
用于缓冲顶点数据的缓冲器,处理逻辑被实现为并行流水线;步骤二

对于顶点阵列无法适应
FPGA
加速器上的
RAM
的大型图,使用基于顶点索引的简单划分方法对图进行划分;步骤三

设计
p
个引擎
PE
,用于并行处理不同的分区;当一个引擎
PE
完成一个分区的处理时,会自动分配另一个分区进行处理;且每个引擎
PE
都有一个单独的间隔缓冲区,由片上
URAM
构成,用于存储引擎
PE
正在处理的分区的间隔数据;步骤四

设计散布

聚集编程模型进行图像处理;包括:在散布阶段,遍历每条边,以基于边的源顶点生成更新;之后,引擎
PE

RAM
读取边缘并将更新写入
RAM
;在聚集阶段,上一个散布阶段中生成的所有更新应用于相应的目标顶点;之后,引擎
PE

RAM
读取更新并将更新的顶点写入
RAM
;步骤五

进行数据映射
。2.
根据权利要求1所述的一种基于图神经网络和
FPGA
的图数据处理方法,其特征在于:所述的外部存储器选用
DRAM。3.
根据权利要求2所述的一种基于图神经网络和
FPGA
的图数据处理方法,其特征在于:所述的步骤四中,在分散阶段,引擎
PE

RAM
读取边缘并将更新写入
RAM
的过程,具体为:在遍历每条边时产生一个更新,产生的更新总数等于边的数量
|E|

|E|
更新在每个分散阶段写入外部存储器;在将更新写入到外部存储器之前,组合具有相同目标顶点的更新;并通过基于目标顶点对每个碎片的边缘进行排序,启用更新组合机制
。4.
根据权利要求3所述的一种基于图神经网络和
FPGA
的图数据处理方法,其特征在于:步骤四所述的设计散布

聚集编程模型进行图像处理的过程,具体为:选用以边缘为中心的范式作为捕获具有不同...

【专利技术属性】
技术研发人员:房国志苑耕晨
申请(专利权)人:哈尔滨理工大学
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1