无法使用 Conda 将 PyTorch 1.4.0 更新到 1.5.0

Nyx*_*nyx 5 python anaconda conda pytorch torchvision

当我尝试将 PyTorch 从 1.4.0 更新到 1.5.0 时,Anaconda 说所有软件包都已安装。

$ conda install -c pytorch pytorch torchvision

Collecting package metadata (current_repodata.json): done
Solving environment: done

# All requested packages already installed.
Run Code Online (Sandbox Code Playgroud)
$ conda list | grep -i torch

_pytorch_select           0.2                       gpu_0  
pytorch                   1.4.0           py3.7_cuda10.0.130_cudnn7.6.3_0    pytorch
torchvision               0.5.0                py37_cu100    pytorch
Run Code Online (Sandbox Code Playgroud)

我相信 1.5.0 在pytorch频道中可用

$ conda search -c pytorch pytorch=1.5.0

Loading channels: done
# Name                       Version           Build  Channel             
pytorch                        1.5.0     py3.5_cpu_0  pytorch             
pytorch                        1.5.0 py3.5_cuda10.1.243_cudnn7.6.3_0  pytorch             
pytorch                        1.5.0 py3.5_cuda10.2.89_cudnn7.6.5_0  pytorch             
pytorch                        1.5.0 py3.5_cuda9.2.148_cudnn7.6.3_0  pytorch             
pytorch                        1.5.0     py3.6_cpu_0  pytorch             
pytorch                        1.5.0 py3.6_cuda10.1.243_cudnn7.6.3_0  pytorch             
pytorch                        1.5.0 py3.6_cuda10.2.89_cudnn7.6.5_0  pytorch             
pytorch                        1.5.0 py3.6_cuda9.2.148_cudnn7.6.3_0  pytorch             
pytorch                        1.5.0     py3.7_cpu_0  pytorch             
pytorch                        1.5.0 py3.7_cuda10.1.243_cudnn7.6.3_0  pytorch             
pytorch                        1.5.0 py3.7_cuda10.2.89_cudnn7.6.5_0  pytorch             
pytorch                        1.5.0 py3.7_cuda9.2.148_cudnn7.6.3_0  pytorch             
pytorch                        1.5.0     py3.8_cpu_0  pytorch             
pytorch                        1.5.0 py3.8_cuda10.1.243_cudnn7.6.3_0  pytorch             
pytorch                        1.5.0 py3.8_cuda10.2.89_cudnn7.6.5_0  pytorch             
pytorch                        1.5.0 py3.8_cuda9.2.148_cudnn7.6.3_0  pytorch    
Run Code Online (Sandbox Code Playgroud)

为什么 conda 没有将 PyTorch 更新到 1.5.0?

在 Ubuntu 18.04 上使用 Python 3.7.3 和 conda 4.8.3

谢谢!

mer*_*erv 7

安装验证约束

Condainstall首先检查是否满足约束,而不是盲目地尝试安装最新的所有内容。更好地阅读命令:

conda install -c pytorch pytorch torchvision
Run Code Online (Sandbox Code Playgroud)

将是

pytorch通道优先的情况下,确保当前激活的环境具有某些版本pytorchtorchvision已安装。

您的环境已满足此约束,因此无需执行任何操作。

更新包或约束

如果要更新软件包,请查看conda update命令,或者,如果您知道所需的最低版本,则指定它:

conda install -c pytorch pytorch[version='>=1.5'] torchvision
Run Code Online (Sandbox Code Playgroud)

这有效地改变了约束。

更好的做法(推荐)

最好的做法是在需要更改包时简单地创建一个新的 env。每次更改 env 中的包时,都会冒着破坏/使现有代码无效的风险。

conda create -n pytorch_1_5 -c pytorch pytorch torchvison
Run Code Online (Sandbox Code Playgroud)

默认情况下,这将获取最新的可能版本。