圖神經網路之針對短文字分類的異質圖注意力網路 - 讓程式碼跑起來

2020-10-04 11:00:24

本文介紹如何執行圖神經網路類論文的程式碼。

《EMNLP 2019開源論文:針對短文字分類的異質圖注意力網路》

論文介紹:https://mp.weixin.qq.com/s/eCmvUaM4Vg5KCFQJcRO-TQ

論文地址:https://www.paperweekly.site/papers/3211

GitHub程式碼實現地址:https://github.com/ytc272098215/HGAT

 

一、需要的環境:

Anaconda3 (Python 3.6或3.7)、Pytorch、gensim

 

二、環境設定簡要指南:

1. Anaconda下載地址https://www.anaconda.com/download/,根據自己的平臺選擇下載安裝包,並完成安裝。Anaconda是很常用的平臺,安裝過程不再贅述。

2. Pytorch安裝官網https://pytorch.org/get-started/locally/,在Anaconda Prompt執行以下命令:

conda install pytorch torchvision cudatoolkit=10.2 -c pytorch

由於Pytorch較大,如果Pytorch安裝緩慢,可以新增清華大學映象站至Anaconda,在終端中輸入以下命令:

conda config --add channels http://mirror.tuna.tsinghua.edu.cn/anaconda/pkgs/main/

conda config --add channels http://mirror.tuna.tsinghua.edu.cn/anaconda/pkgs/free/

conda config --set show_channel_urls yes

以及:

conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/conda-forge/ 
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/msys2/ 
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/bioconda/ 
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/menpo/ 
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/pytorch/

然後要注意將官網提供的命令列中的-c pytorch去除,即執行

conda install pytorch torchvision cudatoolkit=10.2

等待一段時間即可安裝成功。

3. gensim安裝官網https://pypi.org/project/gensim/,在Anaconda Prompt執行以下命令:

pip install --upgrade gensim

4. 檢查環境

利用 import xxx 或者 pip list 檢查是否正確安裝。

 

 

可能出現的錯誤:

a.無法定位程式輸入點於……動態連結庫

找到anaconda安裝路徑,進入 \DLLS 資料夾,檢視 libcrypto-1_1-x64.dll 檔案的修改日期,進入 \Library\bin 資料夾,檢視 libcrypto-1_1-x64.dll 檔案修改日期,如果兩檔案修改日期不同,用 DLLS資料夾下的 libcrypto-1_1-x64.dll 替換 bin資料夾下的libcrypto-1_1-x64.dll,重新嘗試安裝

b.The environment is inconsistent, please check the package plan carefully.

解決方法:

conda install anaconda

 

三、執行程式碼

Anaconda Prompt執行命令

cd ./model/code/
python train.py

cd ./model/code/  是說要定位到程式碼所在資料夾。例如:

程式將開始執行。初始資料集是example

 

四、更換資料集

https://github.com/ytc272098215/HGAT提供了更多的資料集,可以通過Google Drive下載。解壓後如下:

以執行agnews資料集為例,需要將agnews資料夾放到 .\model\data 資料夾,更改 .\model\code 中 train.py 的一句程式碼。

dataset = 'example'

改為

dataset = 'agnews'

儲存後執行即可。

可能出現的錯誤:

No such file or director

解決方法:注意檔案是否正確放在.\model\data 資料夾,檢查之前 cd 進入的根目錄是否正確。