Pytorch(GPU)训练RE-NET知识表示学习模型-记录

个人学习记录
2021.1.27

0 下载模型文件

地址:INK-USC /RE-Net
保存在文件夹【RE-Net】里,文件如图
Pytorch(GPU)训练RE-NET知识表示学习模型-记录_第1张图片

1 配置环境

用的是anaconda+pycharm

安装anaconda

安装pycharm

确定版本匹配情况

主要是显卡型号、驱动版本,cuda版本,cudnn版本,Torch版本

查看显卡及驱动

现在用的是win10,
Win10系统下如何查看电脑显卡的型号配置
直接在任务管理器中看了
Pytorch(GPU)训练RE-NET知识表示学习模型-记录_第2张图片

查看/安装cuda
Torch版本匹配

配置pytorch

新建一个Python3.6的conda环境,用conda创建/删除python虚拟环境
首先参考renet项目上的操作:

Run the following commands to create a conda environment (assume CUDA10.1):

conda create -n renet python=3.6 numpy
conda activate renet
pip install torch==1.6.0+cu101 torchvision==0.7.0+cu101 -f https://download.pytorch.org/whl/torch_stable.html
conda install -c dglteam "dgl-cuda10.1<0.5"

检查是否安装成功

安装完成~

训练和测试

参考re-net官方教程:

1、In this code, RE-Net with RGCN aggregator is included. Before running, the user should preprocess datasets.

cd data/DATA_NAME #DATA_NAME是数据集名字
python3 get_history_graph.py

我在终端执行上面语句,没法运行get_history_graph.py,为啥呢?
随后在pycharm里启动,正常运行
Pytorch(GPU)训练RE-NET知识表示学习模型-记录_第3张图片

2、 We first pretrain the global model.

python3 pretrain.py -d DATA_NAME --gpu 0 --dropout 0.5 --n-hidden 200 --lr 1e-3 --max-epochs 20 --batch-size 1024

在执行之前先切换到模型主目录下
因为在终端依然没反应,在Pycharm里修改参数,运行
ps:突然想到一个问题,我的电脑里有两个显卡,一个集成一个独显,程序跑的时候是用的哪个?
默认识别的是独显吧,因为驱动啥的都是独显的?不懂。
改完参数运行一下,报错,我这里把batchsize改到了8还不行.

RuntimeError: CUDA out of memory. Tried to allocate 372.00 MiB (GPU 0; 4.00 GiB total capacity; 1.94 GiB already allocated; 46.37 MiB free; 2.71 GiB reserved in total by PyTorch)

Pytorch运行错误:CUDA out of memory处理过程

百度了一圈,最便捷的解决方法貌似是换张好卡,换不了咋办呢?

batchsize改到4,可以啦,但是贼慢,训练一代要125s左右,还好只有20代,可以先跑完。
Pytorch(GPU)训练RE-NET知识表示学习模型-记录_第4张图片用任务管理器看了一下GPU利用率,不超过25%(这个专用GPU和共享GPU是什么意思啊?)可不可以多利用一下共享内存?
Pytorch(GPU)训练RE-NET知识表示学习模型-记录_第5张图片

你可能感兴趣的:(环境配置,pytorch,自然语言处理)