DeepMind今天開源了內(nèi)部的Graph Nets庫,用于在TensorFlow中構(gòu)建簡(jiǎn)單而強(qiáng)大的關(guān)系推理網(wǎng)絡(luò)。“圖網(wǎng)絡(luò)”由DeepMind、谷歌大腦、MIT等27位研究者提出,由于其支持關(guān)系推理和組合泛化的優(yōu)勢(shì),引起大量關(guān)注。
DeepMind提出的簡(jiǎn)單而強(qiáng)大的關(guān)系推理網(wǎng)絡(luò)“graph network”終于開源了!
今年6月,由DeepMind、谷歌大腦、MIT 和愛丁堡大學(xué)等公司和機(jī)構(gòu)的 27 位科學(xué)家共同發(fā)表了一篇論文Relational inductive biases, deep learning, and graph networks,提出了圖網(wǎng)絡(luò)(graph network)的概念。“讓深度學(xué)習(xí)也能因果推理”,這篇論文引起了業(yè)內(nèi)的大量關(guān)注。
簡(jiǎn)單的說,圖網(wǎng)絡(luò)(graph network)是將graph作為輸入,并返回graph作為輸出的神經(jīng)網(wǎng)絡(luò)。輸入圖具有edge-(E), node-(V), 和global-level(u) 的屬性。輸出圖具有相同的結(jié)構(gòu),但更新了屬性。 Graph networks是更廣泛的“graph neural networks”家族的一部分 (Scarselli et al., 2009)。
這篇論文里,作者詳細(xì)解釋了他們的“圖網(wǎng)絡(luò)”。圖網(wǎng)絡(luò)(GN)的框架定義了一類用于圖形結(jié)構(gòu)表示的關(guān)系推理的函數(shù)。GN 框架概括并擴(kuò)展了各種的圖神經(jīng)網(wǎng)絡(luò)、MPNN、以及 NLNN 方法,并支持從簡(jiǎn)單的構(gòu)建塊(building blocks)來構(gòu)建復(fù)雜的結(jié)構(gòu)。
GN 框架的主要計(jì)算單元是GN block,即 “graph-to-graph” 模塊,它將 graph 作為輸入,對(duì)結(jié)構(gòu)執(zhí)行計(jì)算,并返回 graph 作為輸出。如下面的 Box 3 所描述的,entity 由 graph 的節(jié)點(diǎn)(nodes),邊的關(guān)系(relations)以及全局屬性(global attributes)表示。
論文中對(duì)“graph”的定義
論文作者用 “graph” 表示具有全局屬性的有向(directed)、有屬性(attributed)的 multi-graph。一個(gè)節(jié)點(diǎn)(node)表示為,一條邊(edge)表示為,全局屬性(global attributes)表示為u。和表示發(fā)送方(sender)和接收方(receiver)節(jié)點(diǎn)的指標(biāo)(indices)。具體如下:
Directed:?jiǎn)蜗颍瑥?“sender” 節(jié)點(diǎn)指向 “receiver” 節(jié)點(diǎn)。
Attribute:屬性,可以編碼為矢量(vector),集合(set),甚至另一個(gè)圖(graph)
Attributed:邊和頂點(diǎn)具有與它們相關(guān)的屬性
Global attribute:graph-level 的屬性
Multi-graph:頂點(diǎn)之間有多個(gè)邊
GN 框架的 block 的組織強(qiáng)調(diào)可定制性,并綜合表示所需關(guān)系歸納偏置(inductive biases)的新架構(gòu)。
論文:Relational inductive biases, deep learning, and graph networks
地址:https://arxiv.org/pdf/1806.01261.pdf
圖網(wǎng)絡(luò)為什么重要?
康納爾大學(xué)數(shù)學(xué)博士/MIT博士后Seth Stafford則認(rèn)為,圖神經(jīng)網(wǎng)絡(luò)(Graph NNs)可能解決圖靈獎(jiǎng)得主Judea Pearl指出的深度學(xué)習(xí)無法做因果推理的核心問題。
Judea Pearl
圖靈獎(jiǎng)得主、貝葉斯網(wǎng)絡(luò)之父Judea Pearl,在ArXiv發(fā)布了他的論文《機(jī)器學(xué)習(xí)理論障礙與因果革命七大火花》,論述當(dāng)前機(jī)器學(xué)習(xí)理論局限,并給出來自因果推理的7大啟發(fā)。Pearl指出,當(dāng)前的機(jī)器學(xué)習(xí)系統(tǒng)幾乎完全以統(tǒng)計(jì)學(xué)或盲模型的方式運(yùn)行,不能作為強(qiáng)AI的基礎(chǔ)。他認(rèn)為突破口在于“因果革命”,借鑒結(jié)構(gòu)性的因果推理模型,能對(duì)自動(dòng)化推理做出獨(dú)特貢獻(xiàn)。
如何解決這個(gè)問題?DeepMind認(rèn)為,要從“圖網(wǎng)絡(luò)”入手。
現(xiàn)在,這篇重磅論文的開源軟件庫終于發(fā)布了!可以用于在TensorFlow和Sonnet中構(gòu)建Graph Nets。
在TensorFlow中構(gòu)建Graph Nets
安裝
Graph Nets庫可以從pip安裝。
此安裝與Linux/Mac OS X以及Python 2.7和3.4+兼容。
要安裝庫,請(qǐng)運(yùn)行:
1$pipinstallgraph_nets
用例
以下代碼用于構(gòu)建一個(gè)簡(jiǎn)單的graph net模塊,并將其與數(shù)據(jù)連接。
1importgraph_netsasgn 2importsonnetassnt 3 4#Provideyourownfunctionstogenerategraph-structureddata. 5input_graphs=get_graphs() 6 7#Createthegraphnetwork. 8graph_net_module=gn.modules.GraphNetwork( 9edge_model_fn=lambda:snt.nets.MLP([32,32]),10node_model_fn=lambda:snt.nets.MLP([32,32]),11global_model_fn=lambda:snt.nets.MLP([32,32]))1213#Passtheinputgraphstothegraphnetwork,andreturntheoutputgraphs.14output_graphs=graph_net_module(input_graphs)
Jupyter notebooks演示
這個(gè)庫包括demos,演示如何在最短路徑查找任務(wù)、排序任務(wù)和物理預(yù)測(cè)任務(wù)上創(chuàng)建、操作和訓(xùn)練graph networks,以推理圖結(jié)構(gòu)化數(shù)據(jù)。每個(gè)demo都使用相同的graph network架構(gòu),突出了該方法的靈活性。
在瀏覽器 Colaboratory 中嘗試演示
要在本地沒有安裝任何內(nèi)容的情況下嘗試demo,你可以通過云Colaboratory后端,在瀏覽器(甚至手機(jī)上)運(yùn)行demo。
在瀏覽器中運(yùn)行“最短路徑演示”
“最短路徑演示”創(chuàng)建隨機(jī)的graph,并訓(xùn)練圖網(wǎng)絡(luò)以標(biāo)記任意兩個(gè)節(jié)點(diǎn)之間的最短路徑上的節(jié)點(diǎn)和邊緣。在一系列消息傳遞步驟中,模型改進(jìn)了對(duì)最短路徑的預(yù)測(cè)。
在瀏覽器中運(yùn)行“排序演示”
“排序演示”創(chuàng)建隨機(jī)數(shù)列表,并訓(xùn)練圖網(wǎng)絡(luò)對(duì)列表進(jìn)行排序。在一系列消息傳遞步驟之后,模型可以準(zhǔn)確預(yù)測(cè)哪些元素(圖中的列)緊跟在彼此的后面(行)。
在瀏覽器中運(yùn)行“物理演示”
"physics demo"創(chuàng)建隨機(jī)質(zhì)量的彈簧物理系統(tǒng),并訓(xùn)練一個(gè)圖網(wǎng)絡(luò)來預(yù)測(cè)系統(tǒng)在下一時(shí)間步長(zhǎng)的狀態(tài)。模型的下一步預(yù)測(cè)可作為輸入反饋進(jìn)來,以創(chuàng)建未來軌跡的rollout。下面的每個(gè)子圖顯示了50步以上的真實(shí)和預(yù)測(cè)mass-spring系統(tǒng)狀態(tài)。這類似于Battaglia et al. (2016)提出的"interaction networks”里的模型和實(shí)驗(yàn)。
-
神經(jīng)網(wǎng)絡(luò)
+關(guān)注
關(guān)注
42文章
4845瀏覽量
108295 -
深度學(xué)習(xí)
+關(guān)注
關(guān)注
73文章
5613瀏覽量
124706
原文標(biāo)題:解決關(guān)系推理,從圖網(wǎng)絡(luò)入手!DeepMind圖網(wǎng)絡(luò)庫開源了!
文章出處:【微信號(hào):AI_era,微信公眾號(hào):新智元】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
直播預(yù)告|玄鐵 x Canonical:從本地推理到 AI 工廠,基于 RISC-V 的 AI 基礎(chǔ)設(shè)施創(chuàng)新路徑探討
人工智能-Python深度學(xué)習(xí)進(jìn)階與應(yīng)用技術(shù):工程師高培解讀
商湯開源SenseNova-MARS:突破多模態(tài)搜索推理天花板
openDACS 2025 開源EDA與芯片賽項(xiàng) 賽題七:基于大模型的生成式原理圖設(shè)計(jì)
如何在機(jī)器視覺中部署深度學(xué)習(xí)神經(jīng)網(wǎng)絡(luò)
“讓深度學(xué)習(xí)也能因果推理”的圖網(wǎng)絡(luò)終于開源了!
評(píng)論