我正在研究google colab(python 3.6和GPU),我很好地导入了torch(1.2.0),并使用以下内容导入fastai:
import fastai
print(fastai.__version__)
from fastai import *
from fastai.vision import *
我收到以下错误:
ImportError: /usr/local/lib/python3.6/dist-packages/torchvision/_C.cpython-36m-x86_64-linux-gnu.so: undefined symbol: _ZN3c106Device8validateEv
我尝试安装不同的 Torch 版本,如 1.0.0 并使用早期的 python 版本。我也尝试使用 手动安装 fastai 及其依赖项!pip
,但没有任何效果。
这是我用来安装torch的完整代码:
from os.path import exists
from wheel.pep425tags import get_abbr_impl, get_impl_ver, get_abi_tag
platform = '{}{}-{}'.format(get_abbr_impl(), get_impl_ver(),
get_abi_tag())
cuda_output = !ldconfig -p|grep cudart.so|sed -e 's/.*\.\([0-9]*\)\.\
([0-9]*\)$/cu\1\2/'
accelerator = cuda_output[0] if exists('/dev/nvidia0') else 'cpu'
!pip install torch_nightly -f
https://download.pytorch.org/whl/nightly/{accelerator}/torch_nightly.html
!pip install fastai
import torch
print(torch.__version__)
print(torch.cuda.is_available())
print(torch.backends.cudnn.enabled)
这是我收到的完整错误消息:
ImportError
Traceback (most recent call last)
<ipython-input-5-4b8b8d8134df> in <module>()
2 print(fastai.__version__)
3 from fastai import *
----> 4 from fastai.vision import *
8 frames
/usr/local/lib/python3.6/dist-packages/torchvision/ops/boxes.py in
<module>()
1 import torch
----> 2 from torchvision import _C
3
4
5 def nms(boxes, scores, iou_threshold):
ImportError: /usr/local/lib/python3.6/dist-
packages/torchvision/_C.cpython-36m-x86_64-linux-gnu.so: undefined
symbol: _ZN3c106Device8validateEv
ImageDataBunch.from_folder
由于这个 fastai 导入错误,我无法使用。当我这样做时,我得到了错误NameError: name 'ImageDataBunch' is not defined
。
注意:我之前确实使用过相同的代码,并且我能够使用 fastai 并且 ImageDataBunch.from_folder
没有导入错误,但我猜测 fastai 或 torch 的更新发生了。