1. 已经安装了anaconda。然后就可以创建你自己的环境了(你最好一定要指定个python版本,如下,
我指定为python3.6, 如果需要的话你也可以指定其他python版本,并不是说anaconda自带的是哪个python版本就只能用哪个python版本!)
conda create -n jjenv_pytorch python=3.6
1.1 切换环境:
conda activate jjenv_pytorch (退出这个环境用 conda deactivate)
2.在和工作人员沟通后得知1070GPU装的是cuda9,然后我去pytorch官网
按这个命令安装GPU版本的pytorch 0.4.1版本。
3. 安装torchvision
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple torchvision 其中-i 是代表临时使用的源,我这里临时使用清华源,因为pip install torchvision装不了卡住了,所以临时换了个源。
4.用如下几条命令看GPU版本的pytorch是否安装成功
In [1]: import torch In [2]: torch.cuda.current_device() Out[2]: 0 In [3]: torch.cuda.device(0) Out[3]: <torch.cuda.device at 0x7efce0b03be0> In [4]: torch.cuda.device_count() Out[4]: 1 In [5]: torch.cuda.get_device_name(0) Out[5]: 'GeForce GTX 1070'
5. 安装下项目需要的其他软件(用pip install)
[gensim] (https://github.com/RaRe-Technologies/gensim)
[cytoolz] (https://github.com/pytoolz/cytoolz)
[tensorboardX] (https://github.com/lanpa/tensorboard-pytorch)
[pyrouge] (https://github.com/bheinzerling/pyrouge) (for evaluation)
然后运行abstract.py的时候出现如下问题:
nohup: ignoring input start training with the following hyper-parameters: {'net': 'base_abstractor', 'net_args': {'vocab_size': 30004, 'emb_dim': 128, 'n_hidden': 256, 'bidirectional': True, 'n_layer': 1}, 'traing_params': {'optimizer': ('adam', {'lr': 0.001}), 'clip_grad_norm': 2.0, 'batch_size': 32, 'lr_decay': 0.5}} Start training /root/anaconda3/envs/jjenv_pytorch/lib/python3.6/site-packages/torch/nn/functional.py:52: UserWarning: size_average and reduce args will be deprecated, please use reduction='none' instead. warnings.warn(warning.format(ret)) Traceback (most recent call last): File "train_abstractor.py", line 220, in <module> main(args) File "train_abstractor.py", line 166, in main trainer.train() File "/data/rl_abs_other/fast_abs_rl/training.py", line 211, in train log_dict = self._pipeline.train_step() File "/data/rl_abs_other/fast_abs_rl/training.py", line 107, in train_step log_dict.update(self._grad_fn()) File "/data/rl_abs_other/fast_abs_rl/training.py", line 20, in f grad_norm = grad_norm.item() AttributeError: 'float' object has no attribute 'item'
没有google到合适的解决方案,最后想到要不新建个虚拟环境重新装为GPU版本的pytorch0.4.0版本吧(因为我cpu版本的pytorch0.4.0能正常运行程序)
于是
把其中0.4.1改为0.4.0, 按如上操作一遍。
一跑程序没报错了。高兴。