在配置nanodet-plus环境时出现了较多的问题
吐槽一句,配置环境就是个耗时间碰运气的东西。。。
首先,展示一下requirements.txt
Cython
matplotlib
numpy
omegaconf>=2.0.1
onnx
onnx-simplifier
opencv-python
pyaml
pycocotools
pytorch-lightning>=1.9.0
tabulate
tensorboard
termcolor
torch>=1.10
torchmetrics
torchvision
tqdm
训练时出现了如下问题
(这里提一下,最好全部采用pip安装库,conda安装会出现较多的版本问题)
问题原因
查找后发现是pytorch和pytorchvision的版本有问题,这也是根据requirements.txt pip 安装pytorch比较常见的版本不一致问题
解决办法
首先先卸载pytorch和pytorchvision
pip uninstall torch
pip uninstall torchvision
根据pytorch官网选择对应的版本,这里由于requirements.txt 中要求torch>=1.10
所以需要选择对应的版本(复制指令即可)
Linux and Windows
# CUDA 10.2
conda install pytorch==1.12.1 torchvision==0.13.1 torchaudio==0.12.1 cudatoolkit=10.2 -c pytorch
# CUDA 11.3
conda install pytorch==1.12.1 torchvision==0.13.1 torchaudio==0.12.1 cudatoolkit=11.3 -c pytorch
# CUDA 11.6
conda install pytorch==1.12.1 torchvision==0.13.1 torchaudio==0.12.1 cudatoolkit=11.6 -c pytorch -c conda-forge
# CPU Only
conda install pytorch==1.12.1 torchvision==0.13.1 torchaudio==0.12.1 cpuonly -c pytorch
这里由于我采用的cuda训练,故我的指令是
pip install torch==1.9.0+cu111 torchvision==0.10.0+cu111 -f https://download.pytorch.org/whl/torch_stable.html
# torchaudio 用不上,可以不装,装的话会报错还得找版本的对应关系,比如下图,麻烦!不小心装了的话卸载了就行
看别人的解决办法中称可以使用conda指令安装(暂时没有试)
这里注意,若是采用conda安装,后面的一些库也需要用conda安装,否则会替换torch的版本
问题原因
忘记develop,这点在requirements.txt 中提到过
解决办法
python setup.py develop
问题原因
其原因是setuptools包版本过高。需要降低版本。
解决办法
参考链接
原版本为大于60版本的,替换为56.1.0版本后解决问题。
pip uninstall setuptools
pip uninstall setuptools-56.1.0
# 这里不能使用 conda uninstall setuptools ;
#不能使用conda的命令,原因是,conda在卸载的时候,会自动分析与其相关的库,然后全部删除,如果y的话,整个环境都需要重新配置。
问题原因
查找后发现应该是pytorch_lightning的版本不适配,或者是安装方式不一样
解决办法
首先排除一下安装方式。
若是安装方式不一样,比如pip安装和conda安装。
这里在安装pytorch-lightning时一定注意自己的torch是pip安装还是conda安装,两者要保持一致,不然会导致安装pytorch-lightning时会直接卸载掉你的torch,安装cpu版本的torch。
若是版本不适配
参考链接
一般pytorch-lightning 需要torch≥1.8.0。也查看到requirements.txt 中要求pytorch-lightning>=1.9.0,而 pip list
后发现自己的版本是1.85
这里想在pytorch-lightning官网查看一下pytorch-lightning与torch之间的版本对应关系,一直没有找到,要是有看到的兄弟麻烦留言分享一下
具体解决办法
pip uninstall pytorch-lightning
pip install pytorch-lightning 1.9.3
or
pip install --upgrade pytorch_lightning
这里的解决办法同样有可能会出现问题,版本过高可能会直接下载并替换掉原来torch的版本。