机器学习实战:GNN(图神经网络)海豚加速器的FPGA飞凌开发板

2020-10-20 09:56:18 来源:Achronix
1. 概述

得益于大数据的兴起以及算力的快速提升,机器学习技术在日前取得了星际性革命中文版的进化。qt语音官方下载识别,自然语言料理等机器学习任务中。数据为大小非农是什么意思维度确定且平列无序的欧氏距离(Euclidean)数据。越是多的现实微场景中,数据未尝图(Graph)这种复杂性的非欧氏距离数据来表示的。Graph不但包含数据,也包含数据之间的依赖关系,比如社交网络,蛋白质减肥法网络结构翻译,电商平台客户数据等等。数据间离法复杂性度分析的提升,对历史观的机器学习间离法擘画以及其实现技术带来了声色俱厉的求战。在此背景之下,浩繁基于Graph的新型机器学习间离法—GNN(图神经网络),在学术界研究现状什么意思和侨界不断的涌现出来。

GNN对算力和虚拟存储器的需求新鲜高,其间离法的软件实现长法新鲜低效,所以业界对GNN的软件加速有了新鲜迫切的马斯洛需求层次理论。俺们时有所闻历史观的CNN(卷积神经网络网络)软件加速方案一度有新鲜多的飞凌开发板;不过,GNN的软件加速尚未获得充分的议论和研究。在本文撰写之时,Google和百度皆举鼎绝膑查寻到有关GNN软件加速的中文研究。本文的撰写动机,旨意将国外最新的GNN间离法,加速技术研究。以及笔者对GNN的FPGA加速技术的讨论相完婚起来,以全景图的形式展现给读者。

2. GNN 简介

GNN的cpu架构是什么意思在宏观层面有了很多与历史观CNN像样的地方,比如卷积层,Polling,机器学习i7料理器(MLP)和FC层等等模块,都会在GNN中得以采用。下图展示了一个比较点儿的GNNcpu架构是什么意思。
图 1:师表的GNNcpu架构是什么意思(来源:https://arxiv.org/abs/1901.00596)
不过。 GNN中的Graph数据卷积意欲与历史观CNN中的2D卷积意欲是不同的。针对红色目标成品玻璃隔断节点的卷积意欲。其过程如次:
  • Graph卷积:以邻居函数采样普遍成品玻璃隔断节点劳务派遣特征并意欲均值。其邻居成品玻璃隔断节点数据不确定且无序(非欧氏距离数据)。
  • 2D卷积:以卷积核采样普遍成品玻璃隔断节点劳务派遣特征并意欲加权市值,其邻居成品玻璃隔断节点数据确定且无序(欧氏距离数据)。
   
图 2: Graph卷积和2D卷积(来源:https://arxiv.org/abs/1901.00596)
 
3. GraphSAGE间离法简介

学术界研究现状什么意思已对GNN间离法进行了新鲜多的研究议论,并提出了数目可观的创新实现长法。斯坦福大学在2017年提出的GraphSAGE是一种用于预测大型股票中怎么看分时图动态新增茫然无措成品玻璃隔断节点类型的集锦式表征学习间离法,特别针对成品玻璃隔断节点数据巨大。且成品玻璃隔断节点劳务派遣特征丰富的图做了优化。如次图所示,GraphSAGE意欲过程可分成三个主要步调:
图 3:GraphSAGE间离法的视觉表述(来源:http://snap.stanford.edu/graphsage)
  • 邻成品玻璃隔断节点采样:用于降低间离法复杂性度分析,一般性采样2层,每一层采样好多成品玻璃隔断节点
  • 聚合:用于生成目标成品玻璃隔断节点的embedding。即graph的低维向量表征
  • 预测:将embedding作为全连接层的输入,预测目标成品玻璃隔断节点d的标签
为了在FPGA中实招标网现GraphSAGE间离法加速。俺们急需知悉其数学cg模型网,以便将间离法投射到不同的选股系统的逻辑模块中。下图所示的代码阐述了本间离法的数学过程。
 图 4:GraphSAGE间离法的数学cg模型网(来源:http://snap.stanford.edu/graphsage)

对于每一个待料理的目标成品玻璃隔断节点xv,GraphSAGE 执行以下操作:
1)通过邻居采样函数N(v)。采大方向图(subgraph)中的成品玻璃隔断节点
2)聚合被采样的邻成品玻璃隔断节点劳务派遣特征,聚合函数可以为mean(),lstm()或者 polling()等
3)将聚合结果与两学一做上党课次迭代的输入表征合并,并以Wk做卷积
4)卷积结果做非线性编辑软件料理
5)迭代好多次以结束当前第k层所有邻成品玻璃隔断节点的料理
6)将第k层迭代结果做归一化料理
7)迭代好多次以结束所有K层采样深度的料理
8)末了迭代结果zv即为输入成品玻璃隔断节点xv的嵌入(embedding)

4. GNN海豚加速器擘画求战

GNN的间离法中涉及到巨额的矩阵意欲和内存访问操作,在历史观的x86cpu架构是什么意思的监听器上运行此间离法是新鲜低效的,表现在速度慢,能耗高级方面。

新型GPU的采用,可以为GNN的演算速度和空调能效比带来显著收益。然而GPU内存可扩展性工控机的短板,使其举鼎绝膑胜任海量成品玻璃隔断节点Graph的料理;GPU的死亡不掉落指令执行长法,也造成了意欲推迟过大还要不足确定,举鼎绝膑胜任急需及时意欲Graph的微场景。

如上所言种种擘画求战的存在。使得业界急需一种可以支持高度产出及时意欲,巨大内存容量和带宽,以及在数据中心范围可扩展的GNN加速飞凌开发板。

5. GNN海豚加速器的FPGA擘画方案

Achronix 公司推出的 Speedster7t系列高性能FPGA,专门针对数据中心和机器学习工作载荷进行了优化,消除了CPUGPU以及历史观 FPGA 存在的好多性能瓶颈。Speedster7t FPGA 基于台积电的 7nm FinFET 工艺,其cpu架构是什么意思行使星际性革命中文版的新型 2D 片上网络 (NoC),独创的机器学习i7料理器矩阵 (MLP),并利用高带宽 GDDR6 水位控制器,400G 以太网受限和 PCI Express Gen5 禁用usb接口软件,在护卫ASIC 级别性能的同时,为用户提供了灵活的软件可编程能力。下图展示了Speedster7t1500高性能FPGA的cpu架构是什么意思。

图5: Achronix Speedster7t1500 高性能FPGA cpu架构是什么意思 (来源:http://www.achronix.com

如上所言种种特性,使得Achronix Speedster7t1500 FPGA器件为GNN海豚加速器擘画中所面临的各族求战。提供了完美的飞凌开发板。

表1:GNN擘画求战与Achronix的Speedster7t1500 FPGA飞凌开发板


GNN擘画求战 Speedster7t1500飞凌开发板
高速矩阵演算 MLP机器学习i7料理器矩阵
高带宽低推迟存储 LRAM+BRAM+GDDR6+DDR4
高产出低推迟意欲 FPGA采用可编程选股系统的逻辑电路,在软件层面打包票低高产出推迟意欲
内存扩展 基于4*400Gbps的RDMA。打包票在数据中心范围以极低推迟扩展内存访问
间离法不断多变 FPGA采用可编程选股系统的逻辑电路,在软件层面打包票间离法可升级重配
擘画复杂性 丰富的硬IP核减开发时间和间离法复杂性度分析,NoC简化模块间互连并前行时序

5.1 GNN海豚加速器顶层cpu架构是什么意思

本GNN海豚加速器针对GraphSAGE进行擘画,但其cpu架构是什么意思具有特定的权威性,可以适用于其他像样的GNN间离法加速,其顶层cpu架构是什么意思如次图所示。

图6: GNN海豚加速器顶层cpu架构是什么意思(来源:Achronix原创)
 
股票中怎么看分时图GNN Core为间离法实现的核心部分,其擘画细节描写精彩片段将在下文展开谈论;RoCE-Lite为RDMA协议的最轻量级本子。用于通过高速以太网受限进行短程内存访问,以支持海量成品玻璃隔断节点的Graph意欲,其擘画细节描写精彩片段将在本公众账号号的持续现货原油文章中议论;400GE以太网受限水位控制器用于承载RoCE-Lite协议;GDDR6用于存放GNN料理过程中所需的高速访问数据;DDR4作为合同高容量内存。可以用于存储对立访问频度较低的数据,比如待调质料理的Graph;PCIe Gen5x16提供高速免费虚拟主机禁用usb接口软件,用于与监听器软件相互之间数据;之上所有模块。皆通过NoC片上网络来实现高速互联。

5.2 GNN Core 微cpu架构是什么意思

在开始议论GNN Core 微cpu架构是什么意思之前,俺们先回顾一番本文第3节中的GraphSAGE间离法,其内层循环往复的聚合以及合并(包含卷积)等两个操作占据了间离法的多头意欲和虚拟存储器访问。俺们获得这两个步调的劳务派遣特征如次:
表2:GNN间离法中聚合与合并操作对比(来源:https://arxiv.org/abs/1908.10834


  聚合操作 (Aggregation) 合并操作 (Combination)
虚拟存储器访问模式 颠三倒四 直白访问,规则
数据复用
意欲模式 颠三倒四 中子态,规则
意欲量
性能瓶颈 存储 意欲

聚合操作与合并操作,其对意欲和虚拟存储器访问的马斯洛需求层次理论完全不同。聚合操作中涉及到对邻成品玻璃隔断节点的采样,然而Graph属于非欧氏距离数据类型,其大小非农是什么意思维度不确定且无序,矩阵稀稀落落,成品玻璃隔断节点位置在线随机。所以虚拟存储器访问颠三倒四并难以复用数据;在合并操作中,其输入数据为聚合结果(成品玻璃隔断节点的低维表征)以及权重矩阵,其大小非农是什么意思维度铁定,存储位置在线规则线性,对虚拟存储器访问不存在求战,不过矩阵的意欲量新鲜大。

基于以上分析,俺们决定在GNN Core海豚加速器擘画中用两种不同的软件结构翻译来料理聚合操作与合并操作,黑龙牌多功能下料机框图如次图所示:


图7: GNN Core黑龙牌多功能下料机框图(来源:Achronix原创)
聚合器(Aggregator):通过SIMD(单死亡不掉落指令多数据i7料理器)阵列来对Graph进行邻居成品玻璃隔断节点采样并进行聚合操作。其中的“单死亡不掉落指令”可以厘定义为mean()均值意欲,或者其他适用的聚合函数;“多数据”则表示单次mean()均值意欲中急需多个路由器连接设置邻居成品玻璃隔断节点的劳务派遣特征数据作为输入。而这些数据来自于子图采样器(Subgraph Sampler);SIMD阵列通过调度器Agg Scheduler做载荷均衡;子图采样器通过NoC从GDDR6或DDR4读回的邻接矩阵和成品玻璃隔断节点劳务派遣特征数据h0v,分别缓存在Adjacent List Buffer和Node Feature Buffer当腰;聚合的结果hkN(v)存储在Agg Buffer当腰。

合并器(Combinator):通过脉动矩阵PE来执行聚合结果的卷积操作;卷积核为Wk权重矩阵;卷积结果通过ReLU激活函数做非线性编辑软件料理。同时也存储在Partial Sum Buffer中以方便下盛一轮迭代。

合并的结果通过L2BN归一化料理之后,即为末了的成品玻璃隔断节点表征hkv。
在比较师表的成品玻璃隔断节点分类预测采用中,该成品玻璃隔断节点表征hkv可以通过一个全连接层(FC),以获得该成品玻璃隔断节点的分类标签。此过程属于历史观的机器学习料理方法其一,没有在GraphSAGE论文中映现,此擘画中也没有包含这个黑龙牌多功能下料机。

6. 结论

本文深深的议论了GraphSAGE GNN 间离法的数学原理,并从多个路由器连接设置维度分析了GNN海豚加速器擘画中的技术求战。作者通过分解问题并在cpu架构是什么意思层面各个解决的方法,综合运用Achronix Speedster7t1500 FPGA所提供的市场定位,创设了一个性能极佳且高度可扩展的GNN加速飞凌开发板。


  1. EETOP 官方是什么意思微信

  2. 创芯百姓大讲堂入口 智慧树在线教育

  3. 创芯军字号 超导体快讯

相关现货原油文章

全部评论

  • 最新资讯
  • 最热资讯
X
Baidu