圖網路

用手机看条目

出自 MBA智库百科(https://wiki.mbalib.com/)

圖網路(Graph Network, GN)   

目錄

什麼是圖網路

  圖網路(Graph Network, GN)是2018年由 DeepMind、谷歌大腦、MIT愛丁堡大學等公司和機構的 27 位科學家共同提交的論文《Relational inductive biases, deep learning, and graph networks》中提出的一個基於關係歸納偏置的AI概念。研究人員稱,該方法推廣並擴展了各種神經網路方法,併為操作結構化知識和生成結構化行為提供了新的思路。[1]   

圖網路內容

  圖網路是在拓撲空間(topological space)內按圖(graph)結構組織以進行關係推理(relational reasoning)的函數集合。在深度學習理論中是圖神經網路( graph neural network, GNN)和概率圖模型(Probabilistic Graphical Model, PGM)的推廣。

  圖網路由相互連接的圖網路塊(GN block)組成,在神經網路實現中也被稱為“節點(node)”如圖1中vi。節點間的連接被稱為“邊(edge)”如圖1中ek,表示了節點間的依賴關係。skrk分別表示邊ek發送節點和接收節點的索引。圖網路中節點和邊的性質與圖結構相同,因此可分為有向圖(directed graph)和無向圖(undirected graph)

  有向圖的例子包括遞歸神經網路(Recursive Neural Network)和迴圈神經網路(Recurrent Neural Network);

  無向圖的例子包括Hopfield神經網路、馬爾可夫網路(Markov Network)等。

  需要指出,圖網路在定義上並不是人工神經網路(Artificial Neural Network, ANN)的子集而是其推廣,但在人工智慧問題中,ANN是圖網路的實現方式之一 [1]

image:图网络的定义.jpg

  圖1:圖網路的定義

  圖網路的每個節點都有內部狀態和系統狀態,被稱為“屬性(attribute)”。圖網路的屬性會在計算中按時間步(time-step)更新,更新方式包括同步和非同步兩種,同步更新時,一個時間步內所有節點的屬性都會更新,非同步更新時,一個時間步內只有部分節點的屬性得到更新[1]

image:图网络的节点、连边和全局信息.jpg

  圖2:圖網路的節點、連邊和全局信息

圖網路的計算

  對於一個任意的圖結構G(V, E),其中V = (v1,...,vn)表示節點集合,E = (e1,...,en) 表示邊集合。每條邊表示兩個節點之間的依賴關係。節點之間的連接可以是有向的,也可以是無向的。圖中每個節點 v 都用一組神經元來表示其狀態 h(t),初始狀態可以為節點v的輸入特征x(v)。每個節點可以收到來自相鄰節點的消息,並更新自己的狀態。[2]

  m_t^{(v)}=\sum_{u \in N(v)} f(h_{(t-1)}^v,h_{(t-1)}^u,e^{u,v})


  h_t^{(v)}=g(h_{(t-1)}^v,m_t^{(v)})


  其中N(v)表示節點v的鄰居,m_t^{(v)} 表示在第t時刻節點v收到的信息,e(u,v) 為邊e(u,v) 上的特征[2]


  上述兩公式 是一種同步的更新方式,所有的結構同時接受信息並更新自己的狀態。而對於有向圖來說,使用非同步的更新方式會更有效率,比如迴圈神經網路或遞歸神經網路。在整個圖更新T 次後,可以通過一個讀出函數(readout function)yt來得到整個網路的表示[2]


  y_t=g(h_T^{(v)}|{v \in V})

圖網路與深度學習

  圖網路是一種框架將深度學習與貝葉斯網路進行了融合,其結果是產生了一種具有推理能力的概率圖模型。但不僅如此,他們還提出了更多思路去結合深度學習與圖網路,指明瞭在圖網路領域應用深度學習的清晰方向。本質上,它是對神經網路的擴充,我們知道,神經網路的結構很特殊,而他的學習方式也通過反向傳播進行連邊上的權重調整。

  而圖網路則可以從多個角度對神經網路進行擴充,具體而言,任何一個圖網路都包含節點、連邊、全局信息這樣三個大的信息單元,每個單元都可以被表徵為一個向量。

  相比於深度學習只能更新權重,圖網路的學習發生於每一個環節上,包括對連邊狀態的更新、節點狀態的更新和全局信息的更新。在做完前饋運算之後,它也會進行反向傳播學習,因為它的每一步計算都是可微分的。

  我們可以這樣理解圖網路的學習能力:圖網路將前饋的思路放在了每一個環節,連邊、節點、全局信息就都可以在反饋過程中被調整,這就使得網路的整體架構變得可學習。   

應用例子

  用圖網路表示機械狗

  例如我們將機械狗作為一個物理上的多體框架放在圖網路上進行處理,首先,圖網路可以將機械狗的每個機械結構作為一個實體,機械結構之間由關節相連,關節就可以被看做連邊,而節點和連邊之上都是帶有信息的,這樣我們就獲得了一份圖網路數據。

  image:机械狗.jpg

  圖3:機械狗

  每個節點上都可以有一組向量,而機械狗的運動就可以由所有的節點向量和連邊向量來表示。當然,我們也可以加入更多的全局信息,例如從巨集觀狀態上觀察到的機械狗的運動信息等等。

  因此,我們對機械狗從各個角度進行了可微分描述,也建立了表示這些信息的圖網路,接下來我們就可以學習機械狗的運動模式了。

  怎樣進行更高層的信息整合呢?在基本的圖網路構建完成之後,我們可以在高層次對信息進行處理來完成更複雜的任務。

  image:图网络的高层信息整合.jpg

  圖4:圖網路的高層信息整合

  例如,我們可以將多個圖網路疊加在一起(每一個圖網路都是同構的,但它們表徵的信息並不同),這樣我們就可以構建出多層的圖網路,從而擬合複雜的運算過程。

  我們也可以將不同時間的圖網路狀態放入RNN架構中,從而完成對網路狀態的預測,甚至我們可以將網路的輸出作為自己的輸入,進行後續狀態的預測和生成。

  除了物理系統,我們也完全可以將這一套原理放在更巨集觀的架構之下,例如,我們可以用這一種框架去學習網路上的動力學過程,例如在社交網路上,每個人都是節點,而人們在社交網路上的觀點是怎樣傳播的?在交通流中,交通信息(堵車程度,車速信息等)又該怎樣傳播?這一類問題都可以通過圖網路來解決。

參考文獻

本條目對我有幫助15
MBA智库APP

扫一扫,下载MBA智库APP

分享到:
  如果您認為本條目還有待完善,需要補充新內容或修改錯誤內容,請編輯條目

本条目由以下用户参与贡献

132****9372.

評論(共0條)

提示:評論內容為網友針對條目"圖網路"展開的討論,與本站觀點立場無關。

發表評論請文明上網,理性發言並遵守有關規定。

MBA智库
打开APP

以上内容根据网友推荐自动排序生成