最近跟着导师学图神经网络,开始看论文搭模型跑代码,用的DGL框架,一开始不熟悉这个框架被坑的有点惨,特此记录一下使用情况,避免其他学习的同学踩坑。
一、关于安装
一定先安装pytorch再安装dgl,因为dgl是依赖于pytorch,也不一定说你颠倒安装顺序就一定不对,但是可能容易出现一些包找不到的问题。
二、关于cpu和gpu
pip install dgl
这样默认安装的是cpu版本,没法调用GPU运算,安装GPU版本需要
pip install dgl-cu102
pip install dgl-cu100
dgl-cu102里面是目前最新的dgl的gpu版本,版本为0.6.1,dgl-cu100里面最高为0.5.3
三、关于版本
建议安装最新版本
torch==1.10 dgl-cu102==0.6.1 (安装GPU版本)
或者cpu版本
torcu==1.10 dgl==0.6.1
版本把我坑得很惨,一开始我安装的版本是torch=1.4.0,dgl-cu100=0.5.3,一开始处理的数据也能正常运行,但是使用的模型比较简单,就是简单的GCN,也能正常加载GPU运算,可结果我换成GAT的模型训练,加载数据到模型中就各种报错,报错得我怀疑人生,以为GAT不能处理异构图,可是考虑到GAT的原理和DGL的设计感觉是可以的啊,把我折腾了几天,然后不小心安装了最新版本,也就是torch=1.10 dgl-cu102=0.6.1,好家伙,读取数据后直接训练没有任何报错。可能是最新版本的DGL优化了一些细节问题。
建议用最新版本。
|