那曲檬骨新材料有限公司

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

基于FPGA的圖神經網絡加速器解決方案

Achronix ? 來源:Achronix ? 2024-11-15 14:24 ? 次閱讀

得益于大數據的興起和計算能力的快速提升,機器學習技術近年來經歷了革命性的發(fā)展。諸如圖像分類、語音識別和自然語言處理等機器學習任務,都是對具有一定大小、維度和有序排列的歐幾里得數據進行處理。然而,在許多現實場景中,數據是由復雜的非歐幾里得數據(例如圖形)表示的。這些圖形不僅包含數據,還包含數據之間的依賴關系,例如社交網絡、蛋白質分子結構、電子商務平臺中的客戶數據等。數據復雜性的提升給傳統的機器學習算法設計及其實現技術帶來了嚴峻的挑戰(zhàn)。在這種情況下,許多全新的基于圖形的機器學習算法或圖神經網絡(GNN)不斷在學術界和工業(yè)界涌現。

GNN對計算能力和存儲有非常高的要求,而且其算法的軟件實現效率非常低。因此,業(yè)界對GNN的硬件加速有著非常迫切的需求。盡管傳統的卷積神經網絡(CNN)硬件加速有很多種解決方案,但GNN的硬件加速還沒有得到充分的討論和研究。在撰寫本白皮書時,谷歌(Google)和百度(Baidu)都無法搜索到關于GNN硬件加速的中文研究資料。本白皮書的寫作動機是將國外最新的GNN算法、對加速技術的研究以及對基于現場可編程邏輯門陣列(FPGA)的GNN加速技術的探討相結合,并以概述的形式呈現給讀者。

對圖神經網絡(GNN)的介紹

在宏觀層面上,GNN的架構與傳統CNN有很多相似之處,諸如卷積層、池化、激活函數、機器學習處理器(MLP)、全連接層(FC layer)等模塊,這些都可以應用到GNN。下圖展示了一個相對簡單的GNN架構。

wKgZoWc26a6Aa_KaAAJ57QCHZz0377.jpg

圖1:典型的GNN架構(來源:https://arxiv.org/abs/1901.00596)

但是,GNN中的圖形數據卷積計算與傳統CNN中的二維卷積計算不同。以下圖為例,紅色目標節(jié)點的卷積計算過程如下所示:

1、圖卷積 - 使用近鄰函數對周圍節(jié)點的特征進行采樣,并計算平均值。相鄰節(jié)點的數量是不確定且無序的(非歐幾里得數據)

2、二維卷積——使用卷積核對周圍節(jié)點的特征進行采樣,并計算加權平均值。相鄰節(jié)點的數量是確定且有序的(歐幾里得數據)

wKgaoWc26a6AHzrfAALEk2Z1mr8305.jpg

圖2:圖卷積和二維卷積(來源:https://arxiv.org/abs/1901.00596)

對GraphSAGE算法的介紹

學術界對GNN算法進行了大量的研究和探討,提出了相當多的創(chuàng)新實現方法。其中,由斯坦福大學(Stanford University)于2017年提出的GraphSAGE是一種歸納表示學習算法,用于預測大規(guī)模圖中動態(tài)的、全新的、未知的節(jié)點類型,還專門針對節(jié)點數量龐大、節(jié)點特征豐富的圖進行了優(yōu)化。如下圖所示,GraphSAGE算法的計算過程可以分為三個主要步驟:

1、相鄰節(jié)點采樣——用于降低復雜性,一般采樣兩層,每層采樣幾個節(jié)點。

2、聚合——用于嵌入目標節(jié)點,即圖的低維向量表示。

3、預測——使用嵌入作為全連接層的輸入,以預測目標節(jié)點d的標簽

wKgZoWc26a6ATiEEAAOLQPfnhu8082.jpg

圖3:GraphSAGE算法的可視化表示(來源:http://snap.stanford.edu/graphsage)

1、樣本鄰域

2、聚合來自鄰域的特征信息

3、利用聚合信息預測圖形情況和標簽

為了在FPGA中實現GraphSAGE算法加速,必須了解其數學模型,以便將算法映射到不同的邏輯模塊。下圖所示的代碼說明了該算法的數學過程。

wKgZoWc26a6AO-VHAAN_vocgJ24855.jpg

圖4:GraphSAGE算法的數學模型(來源:http://snap.stanford.edu/graphsage)

步驟1:使用近鄰函數N[}對子圖節(jié)點進行采樣。

步驟2:聚合相鄰節(jié)點的特征,例如mean[}、lstm[}、polling[}

步驟3:合并聚合的節(jié)點特征。例如卷積[}

步驟4:非線性激活,例如relu[}

步驟5:使用子圖迭代每個鄰域

步驟6:標準化

步驟7:對每個深度搜索進行迭代

步驟8:節(jié)點v的最終節(jié)點嵌入

對于每個要處理的目標節(jié)點xv,GraphSAGE算法都會執(zhí)行以下操作:

1、通過近鄰采樣函數N(v)對子圖中的節(jié)點進行采樣。

2、聚合要采樣的相鄰節(jié)點的特征。聚合函數可以是mean()、lstm()或polling()等。

3、將聚合結果與上一次迭代的輸出表示合并起來,并使用Wk進行卷積。

4、對卷積結果進行非線性處理。

5、多次迭代以結束當前第k層的所有相鄰節(jié)點的處理。

6、對第k層迭代的結果進行標準化處理。

7、多次迭代以結束對所有K層采樣深度的處理。

8、將最終的迭代結果zv嵌入到輸入節(jié)點xv。

GNN加速器設計所面臨的挑戰(zhàn)

GNN算法涉及大量的矩陣計算和存儲訪問操作。在傳統的x86架構服務器上運行這種算法的效率是非常低的,表現為速度慢、能耗高等。

新型圖形處理器(GPU)的應用可以顯著提高GNN的計算速度與能效比。但是,GPU在存儲可擴展性方面存在短板,使其無法處理圖形中的海量節(jié)點。GPU的指令執(zhí)行方式也會導致計算延遲過大和不確定性;因此,它不適用于需要實時計算圖形的場景。

上面提到的各種設計挑戰(zhàn),使得業(yè)界迫切需要一種能夠支持高并發(fā)、實時計算,擁有巨大存儲容量和帶寬,并可擴展到數據中心的GNN加速解決方案。

基于FPGA設計方案的GNN加速器

Achronix的Speedster?7t系列FPGA產品(以及該系列的第一款器件AC7t1500)是針對數據中心和機器學習工作負載進行了優(yōu)化的高性能FPGA器件,消除了基于中央處理器(CPU)、GPU和傳統FPGA的解決方案中存在的若干性能瓶頸。Speedster7t系列FPGA產品采用了臺積電(TSMC)的7nm FinFET工藝,其架構采用了一種革命性的全新二維片上網絡(NoC)、獨創(chuàng)的機器學習處理器矩陣(MLP),并采用高帶寬GDDR6控制器、400G以太網和PCI Express Gen5接口,在確保ASIC級性能的同時,它為用戶提供了靈活的硬件可編程性。

下圖展示了高性能FPGA器件Speedster7t1500的架構。

wKgaoWc26a6AIN-aAANIWaOXKJo952.jpg

圖5:Achronix高性能FPGA器件SpeedsterAC7t1500的架構

上述特點使Achronix Speedster7t1500器件成為應對在GNN加速器設計中面臨的各種挑戰(zhàn)的完美解決方案。

表1:GNN設計面臨的挑戰(zhàn)和Achronix Speedster7t1500 FPGA器件提供的解決方案

GNN設計所面臨的挑戰(zhàn) Speedster AC7t1500器件提供的解決方案
高速矩陣運算 機器學習處理器(MLP)
高帶寬和低延遲存儲 LRAM+BRAM+GDDR6+DDR4。
高并發(fā)和低延遲計算 FPGA使用可編程邏輯電路,以確保在硬件層面進行低并發(fā)和高并發(fā)延遲計算。
存儲擴展 基于4×400 Gbps的RDMA確保在數據中心以極低的延遲擴展存儲訪問。
算法不斷演進 FPGA中的可編程邏輯確保算法可以在硬件層面進行升級和重新配置。
復雜的設計 豐富的硬IP減少開發(fā)時間、降低復雜性,NoC簡化模塊之間的互連并改善時序


聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規(guī)問題,請聯系本站處理。 舉報投訴
  • FPGA
    +關注

    關注

    1630

    文章

    21796

    瀏覽量

    605988
  • 加速器
    +關注

    關注

    2

    文章

    807

    瀏覽量

    38087
  • 神經網絡
    +關注

    關注

    42

    文章

    4779

    瀏覽量

    101166
  • 機器學習
    +關注

    關注

    66

    文章

    8438

    瀏覽量

    133080
  • Achronix
    +關注

    關注

    1

    文章

    76

    瀏覽量

    22568

原文標題:白皮書:一種基于FPGA的圖神經網絡加速器解決方案(WP024)(第一部分)

文章出處:【微信號:Achronix,微信公眾號:Achronix】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    一種基于FPGA神經網絡加速器解決方案

    GNN算法涉及大量的矩陣計算和存儲訪問操作。在傳統的x86架構服務上運行這種算法的效率是非常低的,表現為速度慢、能耗高等。
    發(fā)表于 08-06 15:08 ?4910次閱讀
    一種基于<b class='flag-5'>FPGA</b>的<b class='flag-5'>圖</b><b class='flag-5'>神經網絡</b><b class='flag-5'>加速器</b><b class='flag-5'>解決方案</b>

    超低功耗FPGA解決方案助力機器學習

    (BNN)加速器 ? 軟件工具——從Caffe/TensorFlow到FPGA神經網絡編譯工具、Lattice Radiant?設計軟件和Lattice Diamond?設計軟件
    發(fā)表于 05-23 15:31

    【PYNQ-Z2申請】基于PYNQ的卷積神經網絡加速

    探索整個過程中資源利用的優(yōu)化使整個過程更加節(jié)能高效預計成果:1、在PYNQ上實現卷積神經網絡2、對以往實現結構進行優(yōu)化3、為卷積神經網絡網路在硬件上,特別是在FPGA實現提供一種優(yōu)化思路和方案
    發(fā)表于 12-19 11:37

    機器學習實戰(zhàn):GNN加速器FPGA解決方案

    ,其算法的軟件實現方式非常低效,所以業(yè)界對GNN的硬件加速有著非常迫切的需求。我們知道傳統的CNN(卷積神經網絡網絡)硬件加速方案已經有非常
    發(fā)表于 10-20 09:48

    GNN(神經網絡)硬件加速FPGA實戰(zhàn)解決方案

    算法的軟件實現方式非常低效,所以業(yè)界對GNN的硬件加速有著非常迫切的需求。我們知道傳統的CNN(卷積神經網絡網絡)硬件加速方案已經有非常多的
    發(fā)表于 07-07 08:00

    一種基于FPGA神經網絡加速器解決方案

    。因此,業(yè)界對GNN的硬件加速有著非常迫切的需求。盡管傳統的卷積神經網絡(CNN)硬件加速有很多種解決方案,但GNN的硬件加速還沒有得到充分
    發(fā)表于 09-25 17:20

    FPGA去實現大型神經網絡的設計

    1、加速神經網絡的必備開源項目  到底純FPGA適不適合這種大型神經網絡的設計?這個問題其實我們不適合回答,但是FPGA廠商是的實際操作是很
    發(fā)表于 10-24 16:10

    《 AI加速器架構設計與實現》+第一章卷積神經網絡觀后感

    《 AI加速器架構設計與實現》+第一章卷積神經網絡觀感 ? ?在本書的引言中也提到“一勝千言”,讀完第一章節(jié)后,對其進行了一些歸納(如圖1),第一章對常見的神經網絡結構進行了介紹,
    發(fā)表于 09-11 20:34

    優(yōu)化基于FPGA的深度卷積神經網絡加速器設計

    CNN已經廣泛用于圖像識別,因為它能模仿生物視覺神經的行為獲得很高識別準確率。最近,基于深度學習算法的現代應用高速增長進一步改善了研究和實現。特別地,多種基于FPGA平臺的深度CNN加速器被提出
    發(fā)表于 11-17 13:31 ?8116次閱讀

    Imagination發(fā)布最新神經網絡加速器

    Imagination Technologies宣布推出其面向人工智能(AI)應用的最新神經網絡加速器(NNA)架構PowerVR Series3NX。
    的頭像 發(fā)表于 12-06 16:09 ?3506次閱讀

    多項第一!Imagination神經網絡加速器通過AIIA DNN benchmark評估

    基于端側推斷任務深度神經網絡處理基準測試結果中,Imagination的神經網絡加速器在多個框架測試中成績名列第一!
    的頭像 發(fā)表于 07-12 15:23 ?5315次閱讀

    嵌入式神經網絡加速器的市場需求將持續(xù)增加

    隨著許多嵌入式系開始變得智能且自主,以人工智能(AI)神經網絡為導向的嵌入式系統市場即將起飛,神經網絡加速器大戰(zhàn)一觸發(fā)。
    發(fā)表于 11-22 11:40 ?1048次閱讀

    神經網絡加速器簡述

    神經網絡加速器基本概念。
    發(fā)表于 05-27 15:22 ?13次下載

    基于FPGA的SIMD卷積神經網絡加速器

    一種基于FPGA的SIM卷積神經網絡加速器架構。以YOOV2目標檢測算法為例,介紹了將卷積神經網絡模型映射到FPGA上的完整流程;對
    發(fā)表于 05-28 14:00 ?24次下載

    什么是神經網絡加速器?它有哪些特點?

    神經網絡加速器是一種專門設計用于提高神經網絡計算效率的硬件設備。隨著深度學習技術的快速發(fā)展和廣泛應用,神經網絡模型的復雜度和計算量急劇增加,對計算性能的要求也越來越高。傳統的通用處理
    的頭像 發(fā)表于 07-11 10:40 ?577次閱讀
    百家乐等投注网改单| 鸿运娱乐城| 顶级赌场官网下载| 百家乐博彩破解论坛| 大发888娱乐城游戏下载| 大发888我发财| 寒江博彩堂| 欢乐谷娱乐城信誉| 象棋赌博网| 百家乐官网路单走势图| 百家乐官网网址| 赌场百家乐规则| 百家乐网开服表| 千亿娱乐网站| 棋牌百家乐官网怎么玩| 属马做生意坐向| 赌博百家乐赢不了| 百家乐概率下注法| 百家乐棋牌游戏皇冠网| 龙海市| 太阳城百家乐官网公司| 百家乐赌场破解方法| 大发888娱乐吧| e世博官方网站| 百家乐官网网站源码 | 百家乐官网数学规律| 视频百家乐官网攻略| 百家乐黄金城游戏大厅| 澳门百家乐官网公司| 广发百家乐官网的玩法技巧和规则| 澳门百家乐哪家信誉最好| 奔驰百家乐官网可信吗| 百家乐投注网中国体育| 岐山县| 百家乐官网牡丹娱乐城| 威尼斯人娱乐cheng| 百家乐官网视频游戏平台| 克拉克百家乐试玩| 沙龙国际娱乐网站| 百家乐投注技巧球讯网| 济州岛百家乐的玩法技巧和规则|