问题记录3:ImportError: No module named 'torchvision'

在使用MNIST数据进行实验的时候程序报错:ImportError: No module named 'torchvision'

之前听说安装torch模块时会内置torchvision,但是不知道为什么这里没有搜索到torchvision模块。在stackoverflow上查询到了类似的问题:https://stackoverflow.com/questions/54274716/importerror-no-module-named-torchvision-datasets-mnist

问题原因有可能是因为我是通过anaconda安装的torch,并且通过镜像站下载得torch,没有直接在pytorch官网下载torch模块(据说官网下载的时候默认下载两个模块,其中一个便是torchvision)。

解决办法很简单,由于我是通过anaconda整理所有得解释器,直接pip的话和其他解释器路径不同,比较麻烦。在命令窗口输入指令:conda install torchvision -c pytorch,之后弹出提示:

==> WARNING: A newer version of conda exists. <==
  current version: 4.5.11
  latest version: 4.7.11

Please update conda by running

    $ conda update -n base conda



## Package Plan ##

  environment location: D:\Anaconda3

  added / updated specs:
    - torchvision


The following packages will be downloaded:

    package                    |            build
    ---------------------------|-----------------
    pillow-4.2.1               |           py35_0         972 KB  https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free
    olefile-0.46               |           py35_0          49 KB  https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main
    torchvision-0.4.0          |       py35_cu100         2.3 MB  pytorch
    ------------------------------------------------------------
                                           Total:         3.3 MB

The following NEW packages will be INSTALLED:

    olefile:     0.46-py35_0      https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main
    torchvision: 0.4.0-py35_cu100 pytorch

The following packages will be UPDATED:

    pillow:      3.3.1-py35_0     defaults                                                --> 4.2.1-py35_0 https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free

Proceed ([y]/n)?

大致就是发现新版本的conda,继续安装的话会下载xxx文件,是否仍要在老版本上安装torchvision。因为cond4.7版本默认采用python3.7编译,而有一些模块比如tensorflow不支持高版本的python,所以果断无视warning,继续安装。

最后CMD提示:

Preparing transaction: done
Verifying transaction: done
Executing transaction: done

安装成功,程序正常运行

你可能感兴趣的:(问题记录3:ImportError: No module named 'torchvision')