DeepMind圖網路庫開源了!
解決關係推理,從圖網路入手!DeepMind圖網路庫開源了!
來源:GitHub、arXiv
DeepMind今天開源了內部的Graph Nets庫,用於在TensorFlow中構建簡單而強大的關係推理網路。“圖網路”由DeepMind、谷歌大腦、MIT等27位研究者提出,由於其支援關係推理和組合泛化的優勢,引起大量關注。
<iframe allowfullscreen="" data-src="https://v.qq.com/iframe/preview.html?width=500&height=375&auto=0&vid=b07093cjnqb" src="https://v.qq.com/iframe/player.html?width=500&height=375&auto=0&vid=b07093cjnqb" width="500" height="375" class="center-iframe"></iframe>
DeepMind提出的簡單而強大的關係推理網路“graph network”終於開源了!
今年6月,由DeepMind、谷歌大腦、MIT 和愛丁堡大學等公司和機構的 27 位科學家共同發表了一篇論文Relational inductive biases, deep learning, and graph networks,提出了圖網路(graph network)的概念。“讓深度學習也能因果推理”,這篇論文引起了業內的大量關注。
【CNN已老,GNN來了】DeepMind、谷歌大腦、MIT等27位作者重磅論文,圖網路讓深度學習也能因果推理
簡單的說,圖網路(graph network)是將graph作為輸入,並返回graph作為輸出的神經網路。輸入圖具有edge-(E ), node-(V ), 和global-level(u) 的屬性。輸出圖具有相同的結構,但更新了屬性。 Graph networks是更廣泛的“graph neural networks”家族的一部分 (Scarselli et al., 2009)。
這篇論文裡,作者詳細解釋了他們的“圖網路”。圖網路(GN)的框架定義了一類用於圖形結構表示的關係推理的函式。GN 框架概括並擴充套件了各種的圖神經網路、MPNN、以及 NLNN 方法,並支援從簡單的構建塊(building blocks)來構建複雜的結構。
GN 框架的主要計算單元是 GN block,即 “graph-to-graph” 模組,它將 graph 作為輸入,對結構執行計算,並返回 graph 作為輸出。如下面的 Box 3 所描述的,entity 由 graph 的節點(nodes),邊的關係(relations)以及全域性屬性(global attributes)表示。
論文中對“graph”的定義
論文作者用 “graph” 表示具有全域性屬性的有向(directed)、有屬性(attributed)的 multi-graph。一個節點(node)表示為,一條邊(edge)表示為,全域性屬性(global attributes)表示為u。和表示傳送方(sender)和接收方(receiver)節點的指標(indices)。具體如下:
- Directed:單向,從 “sender” 節點指向 “receiver” 節點。
- Attribute:屬性,可以編碼為向量(vector),集合(set),甚至另一個圖(graph)
- Attributed:邊和頂點具有與它們相關的屬性
- Global attribute:graph-level 的屬性
- Multi-graph:頂點之間有多個邊
GN 框架的 block 的組織強調可定製性,並綜合表示所需關係歸納偏置(inductive biases)的新架構。
論文:Relational inductive biases, deep learning, and graph networks
地址:https://arxiv.org/pdf/1806.01261.pdf
圖網路為什麼重要?
康納爾大學數學博士/MIT博士後Seth Stafford則認為,圖神經網路(Graph NNs)可能解決圖靈獎得主Judea Pearl指出的深度學習無法做因果推理的核心問題。
Judea Pearl
圖靈獎得主、貝葉斯網路之父Judea Pearl,在ArXiv釋出了他的論文《機器學習理論障礙與因果革命七大火花》,論述當前機器學習理論侷限,並給出來自因果推理的7大啟發。Pearl指出,當前的機器學習系統幾乎完全以統計學或盲模型的方式執行,不能作為強AI的基礎。他認為突破口在於“因果革命”,借鑑結構性的因果推理模型,能對自動化推理做出獨特貢獻。
如何解決這個問題?DeepMind認為,要從“圖網路”入手。
現在,這篇重磅論文的開源軟體庫終於釋出了!可以用於在TensorFlow和Sonnet中構建Graph Nets。
在TensorFlow中構建Graph Nets
安裝
Graph Nets庫可以從pip安裝。
此安裝與Linux/Mac OS X以及Python 2.7和3.4+相容。
要安裝庫,請執行:
1$ pip install graph_nets
用例
以下程式碼用於構建一個簡單的graph net模組,並將其與資料連線。
1importgraph_nets asgn
2importsonnet assnt
3
4# Provide your own functions to generate graph-structured data.
5input_graphs = get_graphs()
6
7# Create the graph network.
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]))
12
13# Pass the input graphs to the graph network, and return the output graphs.
14output_graphs = graph_net_module(input_graphs)
Jupyter notebooks演示
這個庫包括demos,演示如何在最短路徑查詢任務、排序任務和物理預測任務上建立、操作和訓練graph networks,以推理圖結構化資料。每個demo都使用相同的graph network架構,突出了該方法的靈活性。
在瀏覽器 Colaboratory 中嘗試演示
要在本地沒有安裝任何內容的情況下嘗試demo,你可以通過雲Colaboratory後端,在瀏覽器(甚至手機上)執行demo。
在瀏覽器中執行“最短路徑演示”
“最短路徑演示”建立隨機的graph,並訓練圖網路以標記任意兩個節點之間的最短路徑上的節點和邊緣。在一系列訊息傳遞步驟中,模型改進了對最短路徑的預測。
在瀏覽器中執行“排序演示”
“排序演示”建立隨機數列表,並訓練圖網路對列表進行排序。在一系列訊息傳遞步驟之後,模型可以準確預測哪些元素(圖中的列)緊跟在彼此的後面(行)。
在瀏覽器中執行“物理演示”
"physics demo"建立隨機質量的彈簧物理系統,並訓練一個圖網路來預測系統在下一時間步長的狀態。模型的下一步預測可作為輸入反饋進來,以建立未來軌跡的rollout。下面的每個子圖顯示了50步以上的真實和預測mass-spring系統狀態。這類似於Battaglia et al. (2016)提出的"interaction networks”裡的模型和實驗。
論文地址:
https://arxiv.org/pdf/1806.01261.pdf
GitHub地址:
https://github.com/deepmind/graph_nets
相關文章
- DeepMind開源圖網路庫,一種結合圖和神經網路的新方法神經網路
- DeepMind開源強化學習庫TRFL強化學習
- DeepMind 把自己的“殺手鐗”開源了
- Jax 生態再添新庫:DeepMind 開源 Haiku、RLaxAI
- 開源了!唱吧 UI 元件庫開源了!UI元件
- NeurIPS 2024 | 標籤噪聲下圖神經網路有了首個綜合基準庫,還開源神經網路
- 超越標準 GNN !DeepMind、谷歌提出圖匹配網路| ICML最新論文GNN谷歌
- DeepMind釋出神經網路、強化學習庫,網友:推動JAX發展神經網路強化學習
- Flutter 圖片庫重磅開源!Flutter
- 比DGL快14倍:PyTorch圖神經網路庫PyG上線了PyTorch神經網路
- 《Linux 開源網路全棧詳解:從DPDK 到 OpenFlow》之 Linux 開源網路Linux全棧
- 你也可以訓練超大神經網路!谷歌開源GPipe庫神經網路谷歌
- 如何高效解決圖相似性學習任務?DeepMind提出超越GNN的圖匹配網路GNN
- [Android開源]:EasyImageGetter幫你實現帶網路圖片的html圖文混排!AndroidHTML
- win10網路圖示消失無法聯網怎麼辦 修復開機網路圖示不見了的方法Win10
- 圖神經網路GNN 庫,液體神經網路LNN/LFM神經網路GNN
- 阿里巴巴圖表庫 Bizcharts 正式開源阿里
- 4個頂級開源JavaScript圖表庫JavaScript
- 最好的 3 個開源 JavaScript 圖表庫JavaScript
- 主流開源分散式圖資料庫 Benchmark分散式資料庫
- 沒有地圖也能導航?DeepMind用街景來認路地圖
- 夢亞網路驗證開源程式
- TigerGraph開源十大圖資料庫演算法庫資料庫演算法
- Android 圖表開源庫調研及使用示例Android
- 4個.Net跨平臺圖形開源庫
- RHEL6搭建網路yum源軟體倉庫
- 開源了一個 JavaScript 版敏感詞過濾庫JavaScript
- TiFlash 開源了
- KDD 2020 開源論文 | 圖神經網路多變數時序預測神經網路變數
- 牛津教授吐槽DeepMind心智神經網路,還推薦了這些多智慧體學習論文神經網路智慧體
- 神經網路碰上高斯過程,DeepMind論文開啟深度學習新方向神經網路深度學習
- 鴻蒙OS前端開發入門指南:網路圖片_Image渲染網路圖片鴻蒙前端
- .NET 開源免費圖表元件庫,Winform,WPF 通用元件ORM
- [開源] gev (支援 websocket 啦): Go 實現基於 Reactor 模式的非阻塞網路庫WebGoReact模式
- Go的又一個分散式資料庫開源了Go分散式資料庫
- DeepMind利用人工神經網路打造“類腦導航系統”神經網路
- DeepMind 聯合創始人 Mustafa Suleyman 離開 DeepMind 加入谷歌谷歌
- “路選對了就不怕遠”,OceanBase“大膽”地開源