torchvision安装填坑

这两天安装torchvision出现了很多坑,这里记录一下。
开始我的torch版本是1.3.1,正常pip安装torchvision

pip install torchvision

安装成功,但是导入的时候出现了问题。

>>> import torchvision
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/home/sun/my_python3/lib/python3.7/site-packages/torchvision/__init__.py", line 3, in <module>
    from torchvision import models
  File "/home/sun/my_python3/lib/python3.7/site-packages/torchvision/models/__init__.py", line 12, in <module>
    from . import detection
  File "/home/sun/my_python3/lib/python3.7/site-packages/torchvision/models/detection/__init__.py", line 1, in <module>
    from .faster_rcnn import *
  File "/home/sun/my_python3/lib/python3.7/site-packages/torchvision/models/detection/faster_rcnn.py", line 7, in <module>
    from torchvision.ops import misc as misc_nn_ops
  File "/home/sun/my_python3/lib/python3.7/site-packages/torchvision/ops/__init__.py", line 13, in <module>
    _register_custom_op()
  File "/home/sun/my_python3/lib/python3.7/site-packages/torchvision/ops/_register_onnx_ops.py", line 51, in _register_custom_op
    register_custom_op_symbolic('torchvision::_new_empty_tensor_op', new_empty_tensor_op, _onnx_opset_version)
  File "/home/sun/my_python3/lib/python3.7/site-packages/torch/onnx/__init__.py", line 195, in register_custom_op_symbolic
    return utils.register_custom_op_symbolic(symbolic_name, symbolic_fn, opset_version)
  File "/home/sun/my_python3/lib/python3.7/site-packages/torch/onnx/utils.py", line 740, in register_custom_op_symbolic
    .format(symbolic_name))
RuntimeError: Failed to register operator torchvision::_new_empty_tensor_op.                            The symbolic name must match the format Domain::Name,                            and sould start with a letter and contain only                            alphanumerical characters

这时去百度上搜,惟一的答案就是更新torch。
但更新torch后,仍然报上述错误。又去google上一查,主要问题是torch的版本与torchvision的版本不匹配。因此卸载了torch和torchvision重新安装,但仍然无法解决上述错误。
百思不得其解后发现,即使卸载了torch仍然能够import torch,而且安装了新版本的torch后输出的版本仍然是torch1.3.1,所以怀疑根本没有将torch更新到正确的位置。
因此卸载了所有的pytorch和torchvision。之后查找python的实际位置。

(my_python3) sun@sun-Inspiron-3543:~/下载$ which python
/home/sun/my_python3/bin/python

所以把新的pytorch和torchvision安装到这个位置即可。

(my_python3) sun@sun-Inspiron-3543:~/下载$ pip install -t /home/sun/my_python3/lib/python3.7/ torch-1.5.1-cp37-cp37m-manylinux1_x86_64.whl torchvision-0.6.1+cpu-cp37-cp37m-linux_x86_64.whl
Processing ./torch-1.5.1-cp37-cp37m-manylinux1_x86_64.whl
Processing ./torchvision-0.6.1+cpu-cp37-cp37m-linux_x86_64.whl
Processing /home/sun/.cache/pip/wheels/8b/99/a0/81daf51dcd359a9377b110a8a886b3895921802d2fc1b2397e/future-0.18.2-cp37-none-any.whl
Collecting numpy
  Using cached numpy-1.19.0-cp37-cp37m-manylinux2010_x86_64.whl (14.6 MB)
Collecting pillow>=4.1.1
  Using cached Pillow-7.1.2-cp37-cp37m-manylinux1_x86_64.whl (2.1 MB)
Installing collected packages: future, numpy, torch, pillow, torchvision
Successfully installed future-0.18.2 numpy-1.19.0 pillow-7.1.2 torch-1.5.1 torchvision-0.6.1+cpu

再测试一下

(my_python3) sun@sun-Inspiron-3543:~/下载$ python
Python 3.7.0 (default, Jun 28 2018, 13:15:42) 
[GCC 7.2.0] :: Anaconda, Inc. on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import torch
>>> import torchvision
>>> exit()

大功告成!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值