在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

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

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

3天內不再提示

第一個支持圖神經網絡的并行處理框架出現了

DPVg_AI_era ? 來源:未知 ? 作者:李倩 ? 2018-11-01 09:31 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

第一個支持圖神經網絡的并行處理框架出現了!北京大學、微軟亞洲研究院的研究人員近日發表論文,提出NGra,這是第一個支持大規模GNN的系統。

GNN(圖神經網絡)代表了一種新興的計算模型,這自然地產生了對在大型graph上應用神經網絡模型的需求。

但是,由于GNN固有的復雜性,這些模型超出了現有深度學習框架的設計范圍。此外,這些模型不容易在并行硬件(如GPU)上有效地加速。

近日,北京大學、微軟亞洲研究院的多位研究人員在arXiv上發布了一篇新論文,提出了解決這些問題的有效方案。

論文題為Towards Efficient Large-Scale Graph Neural Network Computing:

論文地址:https://arxiv.org/pdf/1810.08403.pdf

作者表示:“我們提出NGra,這是第一個基于圖形的深度神經網絡并行處理框架。”

NGra描述了一種新的SAGA-NN模型,用于將深度神經網絡表示為頂點程序(vertex programs) ,其中每一層都在明確定義的圖形操作階段(Scatter,ApplyEdge,Gather,ApplyVertex)。

這個模型不僅允許直觀地表示GNN,而且還可以方便地映射到高效的數據流表示。NGra通過GPU核心或多GPU的自動圖分區和基于chunk的流處理透明地解決了可擴展性挑戰,仔細考慮了數據局部性、數據移動以及并行處理和數據移動的重疊。

NGra通過在GPU上進行高度優化的Scatter / Gather操作進一步提高了效率,盡管它具有稀疏性。我們的評估表明,NGra可以擴展到現有框架無法直接處理的大型實際圖形,而在TensorFlow的multiple-baseline設計上,即使在小規模上也可以實現約4倍的加速。

第一個支持大規模GNN的系統

NGra是第一個支持大規模GNN(圖神經網絡)的系統,這是一個在GPU上可擴展、高效的并行處理引擎。

NGra自然地將數據流(dataflow)與頂點程序抽象(vertex-program abstraction)結合在一個新模型中,我們將其命名為SAGA-NN(Scatter-ApplyEdge-Gather-ApplyVertex with Neural Networks)。

雖然SAGA可以被認為是GAS(Gather-Apply-Scatter)模型的變體,但SAGA-NN模型中的用戶定義函數允許用戶通過使用數據流抽象來表示對vertex或edge數據(被視為tensors)的神經網絡計算,而不是專為傳統圖形處理而設計(例如PageRank、 connected component和最短路徑等算法

與DNN一樣,高效地使用GPU對于GNN的性能至關重要,而且由于要處理的是大型圖形結構,這一點更為重要。為了實現超出GPU物理限制的可擴展性,NGra將圖形(頂點和邊緣數據)透明地劃分為塊(chunk),并將SAGA-NN模型中表示的GNN算法轉換為具有chunk粒度的運算符的dataflow graph,從而在單個GPU或多個GPU上啟用基于chunk的并行流處理。

NGra engine的效率在很大程度上取決于NGra如何管理和調度并行流處理,以及在GPU上關鍵圖形傳播運算符Scatter和Gather的實現。

NGra非常注重數據局部性,以最大限度地減少GPU內存中的數據交換,并在GPU內存中最大化數據塊的重用,同時將數據移動和計算以流的方式重疊。

對于多GPU的情況,它使用 ring-based streaming機制,通過直接在GPU之間交換數據塊來避免主機內存中的冗余數據移動。

與其他基于GPU的圖形引擎關注的傳統圖形處理場景不同,在GNN場景中,可變頂點數據本身可能無法容納到GPU設備內存中,因為每個頂點的數據可以是特征向量( feature vector)而不是簡單的標量(scalar)。因此,我們的方案更傾向于在每個頂點數據訪問中利用并行性,從而提高內存訪問效率。

我們通過使用vertex-program abstraction和圖形傳播過程的自定義運算符擴展TensorFlow,從而實現NGra。

我們利用單個服務器的主機內存和GPU的計算能力,證明NGra可以擴展以支持大型圖形的各種GNN算法,其中許多是現有深度學習框架無法直接實現的。

與小型graph上的TensorFlow相比,它可以支持GPU,NGra可以獲得最多4倍的加速。我們還廣泛評估了NGra的多重優化所帶來的改進,以證明其有效性。

接下來的部分將描述SAGA-NN編程抽象,NGra系統的組件,以及NGra的實現和評估。

NGra程序抽象

基于圖(graph)的神經網絡(GNN)是根據圖形結構定義的一類通用神經網絡架構。

圖中的每個頂點或邊可以與張量數據(通常是vector)相關聯,作為其特征或嵌入。GNN可以堆疊在多個層中,迭代傳播過程在同一個圖上逐層進行。

在圖的每個層中,頂點或邊緣要素沿邊緣變換和傳播,并在目標頂點聚合,以生成下一層的新要素。轉換可以是任意的DNN計算。

圖還可以包含每個頂點,每個邊緣或整個圖形的標簽,用于計算頂層的損失函數。然后從底層到頂層執行前饋計算(feedforward computation)和反向傳播。

圖1描述了一個2層的GNN的前饋計算。

圖1

我們使用Gated Graph ConvNet(G-GCN)算法作為一個具體示例。 Graph ConvNet概括了卷積運算的概念,通常應用于圖像數據集,用于處理任意圖形(例如knowledge graph)。Gated Graph ConvNet進一步結合了門控機制,因此模型可以了解哪些邊對學習目標更重要。

G-GCN每一層的前饋計算如圖2所示:

圖2:SAGA-NN模型中,Gated Graph ConvNet的layer,其中?指矩陣乘法。

NGra系統的組成

NGra提供dataflow和vertex program abstractions的組合作為用戶界面。

NGra主要包括:

一個前端,它將SAGA-NN模型中實現的算法轉換為塊粒度數據流圖(chunk-granularity dataflow graph),使GPU中大型圖的GNN計算成為可能;

一個優化層,它產生用于最小化主機和GPU設備存儲器之間的數據移動的調度策略,并識別融合操作和刪除冗余計算;

一組有效的傳播操作內核,支持基于流的處理,以將GPU中的數據移動和計算重疊;

dataflow execution runtime。NGra主要利用現有的基于數據流的深度學習框架來處理dataflow execution runtime。

圖3:SAGA-NN Stages for each layer of GN

NGra的優化

圖4描述了ApplyEdge階段中矩陣乘法運算:

圖4

圖5顯示了優化的dataflow graph,其中矩陣乘法移入ApplyVertex stage:

圖7是多GPU的架構

圖7:多GPU架構

NGra的評估

我們在TensorFlow (v1.7) 上實現NGra,使用大約2,900行C++代碼和3000行Python代碼。NGra通過前端擴展TensorFlow,將SAGA-NN程序轉換為chunk-granularity dataflow graph,幾個scatter/gather 運算符,以實現高效的圖傳播,以及ring-based的流調度方案。

以下是評估結果。評估證明了NGra的高效和可擴展性,以及與state-of-the-art的系統TensorFlow的比較。

表1:數據集 (K: thousand, M: million)

圖13:TensorFlow(TF),cuSPARSE和NGra(NG) 在不同密度graphs上的傳播內核時間

表2:與TensorFlow的迭代時間比較(ms)

圖14:不同應用程序的Streaming scheduling策略比較。(Data: reddit middle)

圖15:NGra在不同應用程序的擴展性能

圖16:在大型圖上使用不同應用程序加速NGra

結論

GNN代表了一種新興的計算模型,這自然地產生了對在大型graph上應用神經網絡模型的需求。由于GNN訓練固有的復雜性,支持高效的、可擴展的并行計算是很困難的。

NGra是第一個支持GNN的并行處理框架,它使用新的編程抽象,然后將其映射和優化為數據流,進而在GPU上高效執行。

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

    關注

    4

    文章

    6682

    瀏覽量

    105621
  • 神經網絡
    +關注

    關注

    42

    文章

    4812

    瀏覽量

    103336
  • 深度學習
    +關注

    關注

    73

    文章

    5558

    瀏覽量

    122700

原文標題:北大、微軟亞洲研究院:高效的大規模圖神經網絡計算

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

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    神經網絡壓縮框架 (NNCF) 中的過濾器修剪統計數據怎么查看?

    無法觀察神經網絡壓縮框架 (NNCF) 中的過濾器修剪統計數據
    發表于 03-06 07:10

    BP神經網絡與深度學習的關系

    ),是種多層前饋神經網絡,它通過反向傳播算法進行訓練。BP神經網絡由輸入層、或多個隱藏層和輸出層組成,通過逐層遞減的方式調整
    的頭像 發表于 02-12 15:15 ?825次閱讀

    卷積神經網絡的實現工具與框架

    卷積神經網絡因其在圖像和視頻處理任務中的卓越性能而廣受歡迎。隨著深度學習技術的快速發展,多種實現工具和框架應運而生,為研究人員和開發者提供強大的
    的頭像 發表于 11-15 15:20 ?650次閱讀

    卷積神經網絡與傳統神經網絡的比較

    神經網絡,也稱為全連接神經網絡(Fully Connected Neural Networks,FCNs),其特點是每層的每個神經元都與下
    的頭像 發表于 11-15 14:53 ?1809次閱讀

    關于卷積神經網絡,這些概念你厘清了么~

    隨著人工智能(AI)技術的快速發展,AI可以越來越多地支持以前無法實現或者難以實現的應用。本文基于此解釋 卷積神經網絡 (CNN)及其對人工智能和機器學習的意義。CNN是種能夠從
    發表于 10-24 13:56

    如何編寫BP神經網絡

    傳播過程,即誤差從輸出層反向傳播回輸入層,并據此調整網絡參數。本文將詳細闡述如何編寫BP神經網絡,包括網絡結構設計、前向傳播、損失函數計
    的頭像 發表于 07-11 16:44 ?1087次閱讀

    神經網絡辨識模型具有什么特點

    神經網絡辨識模型是種基于人工神經網絡的系統辨識方法,它具有以下特點: 非線性映射能力 :神經網絡能夠處理非線性問題,可以很好地擬合復雜的非
    的頭像 發表于 07-11 11:12 ?854次閱讀

    怎么對神經網絡重新訓練

    重新訓練神經網絡復雜的過程,涉及到多個步驟和考慮因素。 引言 神經網絡種強大的機器學習模型,廣泛應用于圖像識別、自然語言
    的頭像 發表于 07-11 10:25 ?843次閱讀

    pytorch中有神經網絡模型嗎

    當然,PyTorch是廣泛使用的深度學習框架,它提供許多預訓練的神經網絡模型。 PyTorch中的
    的頭像 發表于 07-11 09:59 ?1729次閱讀

    BP神經網絡和人工神經網絡的區別

    BP神經網絡和人工神經網絡(Artificial Neural Networks,簡稱ANNs)之間的關系與區別,是神經網絡領域中基礎且
    的頭像 發表于 07-10 15:20 ?2237次閱讀

    rnn是遞歸神經網絡還是循環神經網絡

    RNN(Recurrent Neural Network)是循環神經網絡,而非遞歸神經網絡。循環神經網絡種具有時間序列特性的神經網絡,能
    的頭像 發表于 07-05 09:52 ?1003次閱讀

    rnn是什么神經網絡

    Network)相比,RNN能夠處理時間序列數據,例如文本、音頻、視頻等。 RNN的基本概念 1.1 什么是RNN RNN是種具有循環連接的神經網絡,其核心思想是將前一個時間步的輸
    的頭像 發表于 07-05 09:49 ?1327次閱讀

    遞歸神經網絡與循環神經網絡樣嗎

    神經網絡種基于樹結構的神經網絡模型,它通過遞歸地將輸入數據分解為更小的子問題來處理序列數據。RvNN的核心思想是將復雜的序列問題
    的頭像 發表于 07-05 09:28 ?1589次閱讀

    人工神經網絡的特點和優越性不包括什么

    在許多領域都取得了顯著的成果,如圖像識別、語音識別、自然語言處理等。然而,人工神經網絡也存在些局限性和不足之處,以下是對人工神經網絡特點和優越性的分析,以及其不包括的
    的頭像 發表于 07-05 09:26 ?1637次閱讀

    人工神經網絡的工作原理及應用

    、自然語言處理等。 神經網絡的基本概念 神經網絡是由大量的節點(或稱為神經元)組成的網絡結構。每個節點都與其他節點相連,形成
    的頭像 發表于 07-05 09:25 ?1334次閱讀
    主站蜘蛛池模板: 国产自在自线午夜精品视频在 | 欧美日韩精品一区二区在线线 | 一级做a爱过程免费视 | 亚洲三级色| 亚洲视频一区二区 | 天天躁夜夜躁狠狠躁躁 | 一级片在线免费播放 | 爱操视频在线观看 | 美日韩免费视频 | 国产精品性 | 夜夜操美女 | 天天干天天射天天插 | 日韩三| 手机在线观看你懂得 | 黄色在线视频网 | 婷婷色在线观看 | 香蕉成人999视频 | 99久精品 | 婷婷丁香花 | 中文字幕二区三区 | 久久夜色精品国产噜噜小说 | 在线小视频你懂的 | 精品毛片视频 | 美女被免网站在线视频 | 欧美特黄一区二区三区 | 国产国语videosex另类 | 欧美aaaaa性bbbbb小妇 | 色多多在线看 | 久青草免费视频手机在线观看 | 久久久久久久久综合影视网 | 天天综合欧美 | 久草热线视频 | 欧美刺激午夜性久久久久久久 | 伊人网综合视频 | ccc36色影| 欧美影院一区二区 | 亚洲国产日韩欧美在线as乱码 | 思思久久96热在精品不卡 | 五月婷婷在线观看 | 丁香花在线电影小说观看 | 亚洲精品一区二区中文 |