圖神經網路加速器深度調研(上)

摘要
近年來,圖神經網路(Graph Neural Networks,GNNs)因為具有對圖結構資料進行建模和學習的能力,而引起了機器學習領域研究者的廣泛關注。在化學、網路、社交媒體、知識表示等領域,由於資料本身具有複雜的聯絡,通常採用圖(Graph)作為資料結構來表示這種關係。隨著各種GNN演算法變體的發展,給這類可以建模為圖結構資料處理任務的領域,帶來了突破性結果。但是,在目前的研究階段,GNN的高效計算仍然是一個非常開放的問題。最主要的原因來自於GNN的計算圖依賴於同時存在的輸入複雜結構的圖資料,計算密集的操作和稀疏訪存的操作等複雜行為,使得傳統的通用計算架構、平行計算架構,或者是定製的圖處理架構在面對GNN任務時都遇到了一定的困難。為此,出現了一系列軟體框架工作或硬體加速器設計工作,分別希望更加充分地利用現有平行計算器件的能力進行GNN的計算,或設計適應GNN計算任務特點的專用硬體達到更高的速度或能效。
不過,目前的架構設計工作還是探索性的,針對GNN計算任務進行特定架構設計的目標、關鍵問題定義、通用技術等還不清晰,不同架構的比較也沒有明確統一的標準。此外,從計算任務上來說,各種GNN演算法變體之間的計算圖差異較大,且新演算法迭代很快,相同的演算法用於不同的任務,計算負載特徵也會有較大不同。所以,現有的加速器研究還不能滿足要求。針對這樣的情況,我們透過對GNN演算法的調研,給出了GNN演算法的統一建模框架,便於分析GNN計算的特點,指導加速器設計工作,也為下一步從GNN計算任務到構建特定硬體架構並部署的完整流程研究提供了橋樑;透過對現有GNN加速器的調研,我們指出了現有GNN加速器設計的優劣,總結了關建問題、一般設計方法,提出未來的發展趨勢,指導加速器設計工作。
本系列文章筆者鍾凱為清華大學清華大學電子工程系博士生;戴國浩為清華大學電子工程系助理研究員、博士後。該文工作得到清華大學和壁仞科技研究院聯合研究專案的支援。
1
簡介
目前,以神經網路(NN)為代表的機器學習(ML)演算法在計算機視覺1、自然語言處理2、智慧體決策3等各個領域都得到了廣泛應用,並已成為工業生產的下一代動能。在過去的十幾年中,由於計算機硬體技術的進步和配套演算法研究的發展,計算量和模型引數量較大的深度神將網路(DNNs)可以被有效訓練,並有能力在資料驅動下自動化學習到複雜的特徵識別方法,解決複雜的問題,並在各個領域取得了超過傳統方法的成果。然而,並非所有的神經網路架構都能用於所有問題4,對於不同的任務,需要針對性設計對應的神經網路演算法,而這些演算法的實現從原理、實際架構到訓練方式都有較大不同。最簡單的多層全連線網路是神經網路的基本模型,從理論上說,DNN的資料、寬度、層間連線關係決定了網路的特性,例如CNN利用卷積的思想,透過區域性連線和權重共享提取空間排列的神經元之間的模式資訊5,而RNN則對在時間上排列的神經元序列進行模式特徵提取6
除了上述兩種典型的神經網路,最近人們對圖結構資料建模任務產生了較大興趣,因為很多複雜系統中的資料都有圖結構的特點,例如:網路平臺上,人與物的資訊和互動可以建模為圖7;通訊網路中,決定其效能關鍵的節點路由器資源和連線組成的拓撲圖8,還有化學中研究的分子結構構成的圖9,佳通流研究相關的結構圖10等。不同於CNN處理的空間排布資料和RNN處理的時間排布資料,圖資料具有連線不規則、維度高等特性。圖神經網路(GNNs)就是一種嘗試用神經網路的思想,建模圖結構資料的演算法。從本質上講,不同於CNN和RNN處理的有規則的空間連線或時間連線的結構,GNN的網路結構是由所處理的圖結構定義形成,其處理過程是透過相似的跨頂點的資訊傳遞形成網路,迭代訓練有引數的傳遞函式,從而提取節點間應有的依賴關係,最終預測節點、連線或整個圖的特性。
近幾年出現了GNN研究的熱潮,主要思想也在不斷發展變化。GNNs的概念最初在[11]中概述,並在[12]和[13]中進一步闡述。由於卷積神經網路(Conlolutional Neural Network,CNN)在計算機視覺領域的成功應用,出現了大量重新定義圖資料卷積概念的方法,主要分為兩大主流:基於譜的方法和基於空間的方法。Bruna等人14提出了基於譜的圖卷積的第一個重要研究成果,從那時起,基於譜的圖卷積神經網路(Graph Convolutional Network,GCN)得到了越來越多的改進、擴充套件和近似151617。基於空間的圖卷積的研究起步比基於譜的更早。在2009年,Micheli18首先透過架構上組合非遞迴層來解決圖的相互依賴性,但直到最近,才出現了更多基於空間的GCN192021
但是目前GNN的高效計算仍然是一個開放問題,這是因為GNN相對於與已經被研究了多年的CNN和RNN擁有更獨特的計算模式,包括需要(i)同時支援密集和稀疏運算,(ii)適應各種GNN演算法變體和不同的圖資料結構,以及(iii)擴充套件到非常大的圖,以實現實際應用的部署。
為此,出現了一系列軟體框架工作,使得我們能夠更加充分地利用現有平行計算器件的能力進行GNN的計算。比如PyG22和DGL23是兩個廣泛使用的開源庫,他們都定義了基於訊息傳遞模型的程式設計介面,但在GPU上實際執行時分別採用分散聚集核心和稀疏矩陣乘法核心來處理圖的稀疏結構,這也是兩種最具代表性的處理方式。除了學術上應用較多的上述兩個框架,很多業界公司開發了在實際場景中應用的框架,比如Facebook釋出的Pytorch BigGraph24,Microsoft開發的NeuGraph25,Alibaba開發的AliGraph26,Amazon開發的FeatGraph27等。這些工作深入研究了圖分塊的方式、記憶體排程方式、分散式處理方法等問題來更好地支援任意大的圖在實際系統中的部署。
除了在通用CPU和GPU計算平臺上執行的軟體框架,還有一些專用硬體加速器設計出現,目標是設計適應GNN計算任務特點的專用硬體模組以達到更高的速度或能效。HyGCN28和EnGN29是兩個出現較早的代表工作,分別採用了雙模組式架構和統一處理陣列架構。同樣採用統一處理陣列架構的AWB-GCN30主要聚焦於GCN演算法中的負載均衡最佳化。雙模組式架構得到了較多後續改進工作的採用,比如相比於HyGCN更靈活地支援了更多GNN的GRIP31、利用片上網路(Network on Chip,NoC)實現可擴充套件性同時處理稀疏訪問的GNNA32、採用離線資料預處理演算法進行軟硬體協同最佳化的33以及用於加速GNN訓練的GraphACT34
不過,目前的架構設計工作還是探索性的,針對GNN計算任務進行特定架構設計的目標和關鍵問題定義還不清晰,不同架構的比較也沒有明確統一的標準。此外,從計算任務上來說,各種GNN演算法變體之間的計算圖差異較大,且新演算法迭代很快,相同的圖神經網路演算法用於不同的圖資料和任務,計算負載特徵也會有較大不同,加速器架構設計工作需要更多地考慮到對於各種演算法的通用性和執行不同特徵的負載的效率。針對這些情況,本文透過建模並分析GNN演算法的計算特徵,對比現有的GNN加速器工作給出GNN加速器設計的要點和一般方法。
本文的其餘部分安排如下:第2節進行計算任務分析,提出GNN演算法的統一模型,介紹常見的GNN演算法;第3節進行加速器工作調研,提出了加速器設計評價指標並介紹了現有GNN加速器工作;第4節分析了GNN加速器設計的關鍵技術;第5節給出了加速器設計的啟發和發展前景展望;第6節進行總結。
    2
    計算任務分析

2.1 GNN基礎表示符號

在本節我們介紹GNN相關的基礎符號並總結為下表1。圖是一種由節點,和連線節點的邊組成的結構。在這裡,我們將圖定義為

,其中

表示頂點集,

表示邊集,節點和邊的數量分別

中的一個節點,

中的一條邊,對於每一條邊

表示其連線的兩個節點是

。對於有向圖,

的順序表示有一條從

指向

的邊。對於一些圖資料,允許從一個節點連線到同一個節點的邊,稱為自環,即

。對於每一個節點

,可以用

表示其被一條邊所連線到的鄰居節點組成的集合,在有向圖中,可以分別用

區分入邊連線到的節點集合和出邊連線到的節點結合,在我們後續敘述中,由於GNN的特性,我們用

統一表示節點

的鄰居節點集合,對於有向圖只考慮入邊組成的集合。鄰接矩陣

是一個稀疏矩陣,其中的每個元素

時為1,反之為0。

一般地,頂點和邊都可以用一個或多個屬性進行屬性化。在對於GNN的討論中,每個頂點

有一個節點特徵表示

,每個邊

有一個邊緣特徵表示

。頂點或邊的特徵表示通常是一個向量,由多個標量屬性構成,也可能只有一個標量,設每個節點特徵是一個

維向量,則整個網路的特徵向量構成矩陣

。類似地,整個網路的邊特徵可以表示為一個矩陣

是一個邊特徵向量的維度。現實世界產生的圖資料,例如社交網路,通常具有一些特徵35:首先是稀疏性,即平均頂點度數很小,圖的稀疏性會導致資料隨機訪問,區域性性較差問題。其次冪律分佈,即少數頂點度數很大,關聯了大多數邊,這可能導致嚴重的工作負載不平衡問題,在更新高度頂點時會出現大量的訪問衝突。最後是小世界結構,即圖中的任意兩個頂點可以用少量的跳數連線起來,小世界特性將使圖的有效劃分變得困難。

對於GNN演算法來說,除了圖本身的資料結構,還存在一系列的網路表示。GNN通常被抽象成多層,假設總層數為

。每層的計算過程總結就是,根據

層的節點和邊特徵,以及鄰接矩陣,計算

層的特徵,最終得到第

層特徵即輸出特徵。計算中對節點的更新和邊的更新分別用到兩種權重,記為

,在具體網路中

的形狀、數量與網路定義有關。

符號
含義
圖中某個節點,整個節點集合
圖中某條邊,整個邊集合
圖中節點數量,圖中邊的數量
節點

的鄰居節點

鄰接矩陣
節點

上的特徵

上的特徵

節點特徵的長度,邊特徵的長度
當前層,GNN總層數
節點上的可訓練權重,邊上的可訓練權重

表1 GNN相關的基礎符號
2.2 GNN前向計算模型
透過對一系列的GNN演算法進行總結,我們將目前通用的GNN前向計算抽象成一個多階段的計算模式,包括五個階段,分別是:資料預處理、邊訊息提取、節點訊息聚合、節點特徵變換、後處理。這五個階段中,邊訊息提取,節點訊息聚合,節點特徵變換三個階段是GNN模型本身的操作,也是加速器研究的重點。資料預處理與GNN模型可以是解耦的,即不同的預處理方法可能匹配各種具體的GNN模型,並非必須一一對應,但這部分操作作為系統的一部分與效能息息相關,而且會影響到加速器的輸入資料格式和實際執行效率,也是評估加速器設計時不得不考慮的因素。後處理則大部分是與GNN模型解耦的,少部分在GNN模型中間進行池化操作的,也被我們歸為後處理,這一小部分是與GNN模型耦合的,在評估這部分操作時,主要涉及到加速器的通用性。
(1)資料預處理
我們將資料預處理(Pre-Processing)定義為在進行GNN網路模型中的計算之前,對圖資料的資料結構進行處理,或對演算法執行流程進行規劃的階段,如圖1所示。在很多軟體框架工作和加速器設計中,都提出了圖資料的分塊、節點順序調整等資料預處理方法,這些預處理方法能夠讓GNN真正計算所依賴的圖結構具有一定的聚集性,從而在執行中增加資料區域性性,減少隨機訪存或快取缺失,對於較大的圖,則能夠更好地減少節點間通訊量。此外,對於不需要計算所有節點輸出值的GNN前向計算任務,其每一層都可能不必計算整個網路,只需要從需要的輸出反推,得到與輸出節點有關聯的子圖,生成所謂的節點流(Nodeflow),再依據Nodeflow(而不是整個Graph)進行GNN計算。這種對於計算任務的裁剪和規劃,我們也將其算作預處理階段,在這個過程中,也可以基於得到的Nodeflow做圖資料的預處理。
預處理階段的操作需要注意的是代價問題,對於每個計算任務Nodeflow控制流的生成以及對應的資料預處理,如果代價過大,甚至會佔據一次前向計算代價的主要部分,即使能夠在真正進行模型計算時達到比較好的任務縮減和易於排程的效果,在總體延時和計算能耗等指標上可能也沒有優勢。對於全圖進行的資料預處理更是如此,所以必須要保證花費較多的開銷進行預處理後,模型的計算任務會執行多次,且都能從預處理中受益,這樣才能掩蓋提前離線預處理的開銷。
圖1 兩種典型的預處理階段操作示意圖
(2)邊訊息提取
我們將邊訊息提取(Edge Message Extraction,EME)定義為在圖的一條邊上進行,以一條邊的特徵、其連線的兩個節點特徵、全域性資訊、網路權重為輸入,計算得到一條邊上的新特徵的操作,如圖2所示。新特徵

稱之為訊息,可能作為本層的新邊特徵直接進行邊特徵更新,也可能用於節點訊息聚合階段。在實際網路中,生成的訊息可能是向量,也可能是向量和標量的組合;生成的過程也大不相同,可能是直接傳遞而不作任何修改,或者簡單的向量數乘,也可能是複雜的矩陣計算和向量點積等。如果該層GNN的計算是在全圖上進行,那麼邊訊息提取操作次數為邊的數量

,生成的訊息數量也是

量級的,每條邊生成有

的訊息。

在我們的分析框架中,我們認為邊訊息提取不是主動執行的一個獨立的階段,每個邊訊息的提取都從屬於目標節點的訊息聚合操作,由訊息聚合階段發起和依賴;且從圖結構和GNN的定義上看,邊上提取的訊息只能為其自身或目標節點所用,不具有全圖上甚至僅僅是區域性的資料重用能力,真正有重用特性的是提取前的節點特徵,所以可以認為這個階段是本地操作,不用考慮稀疏訪存特性。
圖2 邊資訊提取操作模型
(3)節點訊息聚合
我們將節點訊息聚合(Vertex Message Aggregation,VMA)定義為在圖的一個節點上進行的,以不定量的入邊上的訊息、本節點的特徵、全域性資訊、網路權重為輸入,計算該節點上的聚合結果

的操作,如圖3所示。VMA是一個多輸入一輸出的操作,所以稱之為聚合,從整個網路來看,輸入是

的,輸出是

的。其中EME階段的結果

是VMA階段的輸入,但輸入包含多少條入邊訊息是不定量的,取決於聚合演算法和網路結構,如果聚合演算法是聚合所有入邊,則由於圖的特性,不同的節點進行訊息聚合時顯然輸入數目是不一樣的,這也是計算單元負載不均衡的原因。如果聚合演算法是在鄰居節點中取樣固定數量的進行聚合,在預處理階段已經對圖結構進行處理,則不同節點聚合時輸入訊息數量可以是一樣的,這種演算法有助於消除負載不均衡問題,但受限於硬體資源仍然無法完全解決。但無論如何,聚合訊息的來源取決於圖的連線關係,是不連續的,雖然在將邊訊息提取看做節點訊息聚合的子操作時,對於不連續資料真正的讀取發生在邊訊息提取前,但本質原因是節點聚合操作的特性。所以我們認為,節點訊息聚合是GNN區別於CNN的特徵操作。

圖3 節點訊息聚合操作模型
(4)節點特徵變換
我們將節點特徵變換(Vertex Feature Transformation,VFT)定義為在一個節點上進行操作,如圖4所示,其過程是以本節點特徵、本節點聚合訊息結果、全域性資訊、網路權重為輸入,計算本節點的新特徵

,並作為本層GNN的輸出進行更新。其中,VMA階段的結果

也是VFT階段的輸入,從全圖來看,輸入和輸出的數量都是

的。

節點特徵變換的特點是隻在網路的每個節點內單獨進行,但權重一般會在不同節點間共享。被變換的特徵可能是本節點特徵與聚合的訊息特徵,也可能只有訊息特徵。常見的變換方式有一層或多層的全連線網路(Fully Connected Network,FCN)、迴圈神經網路(Recurrent Neural Network,RNN)等。
圖4 節點特徵變換操作模型
(5)後處理
後處理(Post Processing)是指在GNN完成邊和節點的計算後,對整個網路或一個子網路的輸出特徵進行進一步處理的操作。常見的操作一般都是池化(Pooling),可以縮減資料規模。而池化操作又分為兩類:一類是全域性池化,得到整個圖的特徵(前面的GNN計算都是得到節點和邊的特徵),可以採用無引數的池化方式,也可以採取有引數的特徵組合方式;另一類是區域性池化,將圖中鄰近的節點特徵進行縮減,圖的結構中也將多個節點變為一個,減少圖的規模同時得到精煉的特徵,進行後續分析。
後處理一般是網路應用於實際任務的必要步驟,一般在圖神經網路其他計算結束後,有時要在網路的多層間進行,如果開銷可觀,也需要計算系統較好的支援。全圖一致操作的後處理因為不涉及網路結構的不規則計算,一般比較容易實現,具體操作一般也與GNN中的節點迭代計算類似;子圖池化的後處理使得圖結構也發生變化,是比較難支援的操作。
2.3 典型GNN模型
根據上述計算模式模型,我們可以對當前的幾個典型GNN演算法進行分析,每種演算法可以有一種或多種方式對應到這個多階段計算模型。如前所述,預處理和後處理階段大多數情況下與GNN模型本身解耦,所以我們主要介紹四種GNN的模型計算部分階段劃分。
(1)GCN
GCN36是最早被提出的圖卷積神經網路,其邊資訊提取方式較為簡單,為直接複製源節點特徵作為待聚合訊息;其節點特徵聚合操作為將所有待聚合訊息相加;節點特徵更新為透過兩個矩陣向量乘法結果的和,並組合本地特徵和聚合特徵。綜上,其一層的階段劃分模型如表2所示。
階段
具體表達
邊訊息提取
節點訊息聚合
節點特徵變換
表2 GCN一層階段劃分模型列表
(2)GraphSage
GraphSage37這篇研究工作的很多貢獻體現在預處理階段的取樣演算法和Nodeflow構建上,但其網路模型結構設計也很有特點。邊訊息提取方式是一層全連線網路;節點訊息聚合可選用多種聚合函式,包括最大值,加法等;節點特徵變換則與GCN相似,將兩個矩陣向量乘法結果相加。綜上,其一層的階段劃分模型如表3所示。
階段
具體表達
邊訊息提取
節點訊息聚合
節點特徵變換
表3 GraphSage一層階段劃分模型列表
(3)GAT
GAT38利用注意力機制(attention)進行設計,邊訊息提取階段首先對源節點進行K個矩陣向量乘法,得到稱之為K個attention head的特徵向量,每個記作

,同時需要計算目標節點同樣的K個head的特徵

,然後這K對特徵分別拼接起來,與K個可學習的注意力權重向量

進行向量點積並透過Leaky ReLU函式進行非線性啟用,計算得到注意力係數

;節點特徵聚合階段則更加複雜,首先是用softmax計算各個head的attention係數,然後是head內,各邊訊息中的特徵根據attention係數加權進行累加;最後,特徵變換階段將多個head的累加結果拼接起來形成一個完整特徵並經過非線性啟用。綜上,其一層的階段劃分模型如表4所示。

階段
具體表達
邊訊息提取
節點訊息聚合
節點特徵變換
表4 GAT一層階段劃分模型列表
(4)GIN
GIN39是結構較為簡單的一個GNN模型,其邊訊息提取和節點資訊聚合階段與GCN相同,分別是直接複製源節點的特徵,以及對各邊特徵做累加。對於節點特徵更新階段,不同於GCN將兩個矩陣向量乘法的結果相加,GIN將本節點源特徵向量乘了一個可學習的標量係數後,與資訊聚合的結果相加,然後透過多層(K層)全連線網路進行變換。綜上,其一層的階段劃分模型如表5所示。
階段
具體表達
邊訊息提取
節點訊息聚合
節點特徵變換

, (when K=1)

表5 GIN一層階段劃分模型列表
未完待續。
3
作者介紹
鍾凱,2019年本科畢業於清華大學電子工程系,目前在清華大學電子工程系電路與系統研究所攻讀博士學位,在汪玉教授和戴國浩博士後的指導下,主要從事神經網路的量化演算法、硬體加速、基於FPGA的加速器開發等工作。
戴國浩,現清華大學電子工程系助理研究員、博士後,分別於2019年和2014年在清華大學電子工程系獲得博士與學士學位。主要研究方向為大規模圖計算、異構計算、存算一體、虛擬化等,曾獲ASPDAC 2019最佳論文獎、DATE 2018最佳論文提名。
4
參考文獻
1、 He, Kaiming et al. “Deep Residual Learning for Image Recognition.” 2016 IEEE Conference on Computer Vision and Pattern Recognition (CVPR) (2016): 770-778.
2、 Hannun, Awni Y. et al. “Deep Speech: Scaling up end-to-end speech recognition.” ArXiv abs/1412.5567 (2014): n. pag.
3、 Silver, D. et al. “Mastering the game of Go with deep neural networks and tree search.” Nature 529 (2016): 484-489.
4、 Battaglia, P. et al. “Relational inductive biases, deep learning, and graph networks.” ArXiv abs/1806.01261 (2018): n. pag.
5、 Krizhevsky, A. et al. “ImageNet classification with deep convolutional neural networks.” Communications of the ACM 60 (2012): 84 – 90.
6、 Staudemeyer, R. and Eric Rothstein Morris. “Understanding LSTM – a tutorial into Long Short-Term Memory Recurrent Neural Networks.” ArXiv abs/1909.09586 (2019): n. pag.
7、 Fan, Wenqi et al. “Graph Neural Networks for Social Recommendation.” The World Wide Web Conference (2019): n. pag.
8、 Rusek, Krzysztof and P. Chołda. “Message-Passing Neural Networks Learn Little’s Law.” IEEE Communications Letters 23 (2019): 274-277.
9、 Fout, A. et al. “Protein Interface Prediction using Graph Convolutional Networks.” NIPS (2017).
10、 Xie, Zhipu et al. “Sequential Graph Neural Network for Urban Road Traffic Speed Prediction.” IEEE Access 8 (2020): 63349-63358.
11、 Gori, M. et al. “A new model for learning in graph domains.” Proceedings. 2005 IEEE International Joint Conference on Neural Networks, 2005. 2 (2005): 729-734 vol. 2
12、 Scarselli, F. et al. “The Graph Neural Network Model.” IEEE Transactions on Neural Networks 20 (2009): 61-80.
13、 Bianchi, F. M. et al. “Pyramidal Graph Echo State Networks.” ESANN (2020).
14、 Bruna, Joan et al. “Spectral Networks and Locally Connected Networks on Graphs.” CoRR abs/1312.6203 (2014): n. pag.
15、 Henaff, Mikael et al. “Deep Convolutional Networks on Graph-Structured Data.” ArXiv abs/1506.05163 (2015): n. pag.
16、 Defferrard, M. et al. “Convolutional Neural Networks on Graphs with Fast Localized Spectral Filtering.” NIPS (2016).
17、 Kipf, Thomas and M. Welling. “Semi-Supervised Classification with Graph Convolutional Networks.” ArXiv abs/1609.02907 (2017): n. pag.
18、 Micheli, A.. “Neural Network for Graphs: A Contextual Constructive Approach.” IEEE Transactions on Neural Networks 20 (2009): 498-511.
19、 Atwood, J. and D. Towsley. “Diffusion-Convolutional Neural Networks.” NIPS (2016).
20、 Hamilton, William L. et al. “Inductive Representation Learning on Large Graphs.” NIPS (2017).
21、 Velickovic, Petar et al. “Graph Attention Networks.” ArXiv abs/1710.10903 (2018): n. pag.
22、 Fey, M. and J. E. Lenssen. “Fast Graph Representation Learning with PyTorch Geometric.” ArXiv abs/1903.02428 (2019): n. pag.
23、 Wang, Minjie et al. “Deep Graph Library: Towards Efficient and Scalable Deep Learning on Graphs.” ArXiv abs/1909.01315 (2019): n. pag.
24、 Lerer, A. et al. “PyTorch-BigGraph: A Large-scale Graph Embedding System.” ArXiv abs/1903.12287 (2019): n. pag.
25、 Ma, Lingxiao et al. “NeuGraph: Parallel Deep Neural Network Computation on Large Graphs.” USENIX Annual Technical Conference (2019).
26、 Zhu, Rong et al. “AliGraph: A Comprehensive Graph Neural Network Platform.” Proceedings of the 25th ACM SIGKDD International Conference on Knowledge Discovery & Data Mining (2019): n. pag.
27、 Hu, Yuwei et al. “FeatGraph: A Flexible and Efficient Backend for Graph Neural Network Systems.” SC20: International Conference for High Performance Computing, Networking, Storage and Analysis (2020): 1-13.
28、 Yan, Mingyu, et al. “HyGCN: A GCN Accelerator with Hybrid Architecture.” 2020 IEEE International Symposium on High Performance Computer Architecture (HPCA), IEEE, 2020, pp. 15–29. DOI.org (Crossref), doi:10.1109/HPCA47549.2020.00012.
29、 Liang, Shengwen, et al. “EnGN: A High-Throughput and Energy-Efficient Accelerator for Large Graph Neural Networks.” ArXiv:1909.00155 [Cs], Apr. 2020. arXiv.org, http://arxiv.org/abs/1909.00155.
30、 Geng, Tong, et al. “AWB-GCN: A Graph Convolutional Network Accelerator with Runtime Workload Rebalancing.” ArXiv:1908.10834 [Cs], Apr. 2020. arXiv.org, http://arxiv.org/abs/1908.10834.
31、 Kiningham, Kevin, et al. “GRIP: A Graph Neural Network Accelerator Architecture.” ArXiv:2007.13828 [Cs], July 2020. arXiv.org, http://arxiv.org/abs/2007.13828.
32、 Auten, A., et al. “Hardware Acceleration of Graph Neural Networks.” 2020 57th ACM/IEEE Design Automation Conference (DAC), 2020, pp. 1–6. IEEE Xplore, doi:10.1109/DAC18072.2020.9218751.
33、 Zhang, B., et al. “Hardware Acceleration of Large Scale GCN Inference.” 2020 IEEE 31st International Conference on Application-Specific Systems, Architectures and Processors (ASAP), 2020, pp. 61–68. IEEE Xplore, doi:10.1109/ASAP49362.2020.00019.
34、 Zeng, Hanqing, and Viktor Prasanna. “GraphACT: Accelerating GCN Training on CPU-FPGA Heterogeneous Platforms.” The 2020 ACM/SIGDA International Symposium on Field-Programmable Gate Arrays, Feb. 2020, pp. 255–65. arXiv.org, doi:10.1145/3373087.3375312.
35、 Zhang, Ziwei, et al. “Deep Learning on Graphs: A Survey.” ArXiv:1812.04202 [Cs, Stat], Mar. 2020. arXiv.org, http://arxiv.org/abs/1812.04202.
36、 Bruna, Joan et al. “Spectral Networks and Locally Connected Networks on Graphs.” CoRR abs/1312.6203 (2014): n. pag.
37、 Hamilton, William L. et al. “Inductive Representation Learning on Large Graphs.” NIPS (2017).
38、 Velickovic, Petar et al. “Graph Attention Networks.” ArXiv abs/1710.10903 (2018): n. pag.
39、 Xu, Keyulu, et al. “How Powerful Are Graph Neural Networks?” ArXiv:1810.00826 [Cs, Stat], Feb. 2019. arXiv.org, http://arxiv.org/abs/1810.00826.
關於壁仞科技研究院
壁仞科技研究院作為壁仞科技的前沿研究部門,旨在研究新型智慧計算系統的關鍵技術,重點關注新型架構,先進編譯技術和設計方法學,並將逐漸拓展研究方向,探索未來智慧系統的各種可能。壁仞科技研究院秉持開放的原則,將積極投入各類產學研合作並參與開源社群的建設,為相關領域的技術進步做出自己的貢獻。
掃碼關注我們

相關文章