成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

微軟工程師用PyTorch實現圖注意力網絡,可視化效果驚艷

新聞 人工智能
近日,一個關于圖注意力網絡可視化的項目吸引了大批研究人員的興趣,上線僅僅一天,收獲 200+ 星。

近日,一個關于圖注意力網絡可視化的項目吸引了大批研究人員的興趣,上線僅僅一天,收獲 200+ 星。該項目是關于用 PyTorch 實現的圖注意力網絡(GAT),包括易于理解的可視化。

微軟工程師用PyTorch實現圖注意力網絡,可視化效果驚艷

項目地址:https://github.com/gordicaleksa/pytorch-GAT

在正式介紹項目之前,先提一下圖神經網絡(GNN)。GNN 是一類基于深度學習的處理圖域信息的方法。由于其較好的性能和可解釋性,GNN 最近已成為一種廣泛應用的圖分析方法。現已廣泛應用于計算生物學、計算藥理學、推薦系統等。

GNN 把深度學習應用到圖結構 (Graph) 中,其中的圖卷積網絡 GCN 可以在 Graph 上進行卷積操作,但是 GCN 存在一些缺陷。因此,Bengio 團隊在三年前提出了圖注意力網絡(GAT,Graph Attention Network),旨在解決 GCN 存在的問題。

GAT 是空間(卷積)GNN 的代表。由于 CNNs 在計算機視覺領域取得了巨大的成功,研究人員決定將其推廣到圖形上,因此 GAT 應運而生。

現在,有人用 PyTorch 實現了 GAT 可視化。我們來看看該項目是如何實現的。

微軟工程師用PyTorch實現圖注意力網絡,可視化效果驚艷

可視化

Cora 可視化

說到 GNN,就不得不介紹一下 Cora 數據集。Cora 數據集由許多機器學習論文組成,是近年來圖深度學習很喜歡使用的數據集。Cora 中的節點代表研究論文,鏈接是這些論文之間的引用。項目作者添加了一個用于可視化 Cora 和進行基本網絡分析的實用程序。Cora 如下圖所示:

微軟工程師用PyTorch實現圖注意力網絡,可視化效果驚艷

節點大小對應于其等級(即進出邊的數量)。邊的粗細大致對應于邊的「popular」或「連接」程度。以下是顯示 Cora 上等級(進出邊的數量)分布的圖:

微軟工程師用PyTorch實現圖注意力網絡,可視化效果驚艷

進和出的等級圖是一樣的,因為處理的是無向圖。在底部的圖(等級分布)上,我們可以看到一個有趣的峰值發生在 [2,4] 范圍內。這意味著多數節點有少量的邊,但是有 1 個節點有 169 條邊(綠色大節點)。

注意力可視化

有了一個訓練好的 GAT 模型以后,我們就可以將某些節點所學的注意力可視化。節點利用注意力來決定如何聚合周圍的節點,如下圖所示:

微軟工程師用PyTorch實現圖注意力網絡,可視化效果驚艷

這是 Cora 節點中邊數最多的節點之一(引用)。顏色表示同一類的節點。

熵直方圖

另一種理解 GAT 沒有在 Cora 上學習注意力模式 (即它在學習常量注意力) 的方法是,將節點鄰域的注意力權重視為概率分布,計算熵,并在每個節點鄰域積累信息。

我們希望 GAT 的注意力分布有偏差。你可以看到橙色的直方圖是理想均勻分布的樣子,而淺藍色的是學習后的分布,它們是完全一樣的。

微軟工程師用PyTorch實現圖注意力網絡,可視化效果驚艷

分析 Cora 嵌入空間 (t-SNE)

GAT 的輸出張量為 shape=(2708,7),其中 2708 是 Cora 中的節點數,7 是類數。用 t-SNE 把這些 7 維向量投影成 2D,得到:

微軟工程師用PyTorch實現圖注意力網絡,可視化效果驚艷

使用方法

方法 1:Jupyter Notebook

只需從 Anaconda 控制臺運行 Jupyter Notebook,它將在你的默認瀏覽器中打開 session。打開 The Annotated GAT.ipynb 即可開始。

注意,如果你得到了 DLL load failed while importing win32api: The specified module could not be found,只需要 pip uninstall pywin32,或者 pip install pywin32、onda install pywin32。

方法 2:使用你選擇的 IDE

如果使用自己選擇的 IDE,只需要將 Python 環境和設置部分連接起來。

訓練 GAT

在 Cora 上訓練 GAT 所需的一切都已經設置好了,運行時只需調用 python training_script.py

此外,你還可以:

添加 --should_visualize - 以可視化你的圖形數據

在數據的測試部分添加 --should_test - 以評估 GAT

添加 --enable_tensorboard - 開始保存度量標準(準確率、損失)

代碼部分的注釋很完善,因此你可以了解到訓練本身是如何運行的。

該腳本將:

將 checkpoint* .pth 模型轉儲到 models/checkpoints/

將 final* .pth 模型轉儲到 models/binaries/

將度量標準保存到中 runs/,只需 tensorboard --logdir=runs 在 Anaconda 中運行即可將其可視化

定期將一些訓練元數據寫入控制臺

通過 tensorboard --logdir=runs 在控制臺中調用,并將 http://localhost:6006/URL 粘貼到瀏覽器中,可以在訓練過程中將度量標準可視化:

微軟工程師用PyTorch實現圖注意力網絡,可視化效果驚艷
微軟工程師用PyTorch實現圖注意力網絡,可視化效果驚艷

可視化工具

如果要可視化 t-SNE 嵌入,請注意或嵌入該 visualize_gat_properties 函數的注釋,并設置 visualization_type 為:

VisualizationType.ATTENTION - 如果希望可視化節點附近的注意力

VisualizationType.EMBEDDING - 如果希望可視化嵌入(通過 t-SNE)

VisualizationType.ENTROPY - 如果想可視化熵直方圖

然后,你就得到了一張優秀的可視化效果圖(VisualizationType.ATTENTION 可選):

微軟工程師用PyTorch實現圖注意力網絡,可視化效果驚艷
微軟工程師用PyTorch實現圖注意力網絡,可視化效果驚艷

硬件需求

GAT 不需要那種很強的硬件資源,尤其是如果你只想運行 Cora 的話,有 2GB 以上的 GPU 就可以了。

在 RTX 2080 GPU 上訓練 GAT 大約需要 10 秒;

保留 1.5 GB 的 VRAM 內存(PyTorch 的緩存開銷,為實際張量分配的內存少得多);

模型本身只有 365 KB。

視頻鏈接:https://v.qq.com/x/page/v3225t65a0q.html?start=8

 

責任編輯:張燕妮 來源: 機器之心Pro
相關推薦

2023-07-30 15:42:45

圖神經網絡PyTorch

2024-07-16 14:15:09

2022-04-20 20:30:36

可視化模塊Python

2017-10-14 13:54:26

數據可視化數據信息可視化

2011-07-07 13:12:58

移動設備端設計注意力

2024-11-04 08:45:00

2024-04-03 14:31:08

大型語言模型PytorchGQA

2024-09-19 10:07:41

2017-07-07 15:46:38

循環神經網絡視覺注意力模擬

2020-03-11 14:39:26

數據可視化地圖可視化地理信息

2018-08-26 22:25:36

自注意力機制神經網絡算法

2017-02-15 09:30:01

可視化網絡布局

2014-02-26 11:49:46

可視化編程語言

2021-08-04 10:17:19

開發技能代碼

2024-08-12 08:40:00

PyTorch代碼

2015-07-31 09:50:40

2010-06-09 15:09:57

IP網絡

2021-07-02 14:07:00

可視化Plotly漏斗圖

2023-03-27 23:42:29

樹狀圖開發可視化

2022-06-06 21:46:32

Kubernetes網絡
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 成人午夜网| 日本在线你懂的 | 中文字幕一区二区在线观看 | 国产成人免费视频网站高清观看视频 | 粉嫩国产精品一区二区在线观看 | 亚洲精品久久久久久久不卡四虎 | 涩涩鲁亚洲精品一区二区 | 奇米视频777| 一区二区三区四区在线视频 | 伊人精品久久久久77777 | 特黄av| www.日本在线 | 亚洲综合在线播放 | 国产精品一区二区三区在线 | 色毛片 | 天堂va在线 | 伊人久久精品一区二区三区 | 成av在线| 中文字幕av一区二区三区 | 狠狠干2020 | 97精品国产97久久久久久免费 | 成人一区二区三区在线观看 | 亚洲国产成人精品女人久久久 | 国产福利资源在线 | 国精产品一区一区三区免费完 | 国产精品久久久久久一区二区三区 | 欧美亚洲视频在线观看 | 中文字幕一区在线观看视频 | 欧美一a | 欧美日韩在线一区 | 日韩一区二区三区视频在线播放 | 欧洲毛片| 中文字幕日韩欧美一区二区三区 | 欧美h| 国产精品美女在线观看 | 欧美日韩成人影院 | 性高湖久久久久久久久aaaaa | 黄色av观看 | 欧美亚洲国产一区 | 精品国产精品国产偷麻豆 | 久久er精品|