#python #pytorch #anaconda
Вопрос:
Я пытаюсь обучать пользовательские модели локально для Deepstack, используя свой графический процессор. К сожалению, я сталкивался с проблемой за проблемой с правильной регистрацией модулей, несмотря на то, что следовал документации Pytorch/Deepstacks. Я использую следующее:
- Навигатор Anaconda 2.0.4 (среда установлена и активирована)
- Pytorch 1.9.0 (устанавливается на https://pytorch.org/get-started/locally/ использование
conda install PyTorch torchvision torchaudio cudatoolkit=11.1 -c pytorch -c conda-forge
Я могу подтвердить в Python, что Pytorch установлен правильно и что CUDA доступен (одна из причин, по которой я хочу обучать эти модели локально, а не через Google Colab). К сожалению, команда bash, предоставленная для обучения модели python3 train.py --dataset-path "/path-to/my-dataset"
(которую я установил на правильный, соответствующий путь), кажется, работает не в той среде, которую я настроил в Anaconda, что сводит с ума. Я проверил PATH и PYTHONPATH в системных переменных (я на Windows 10 Pro), и они, похоже, установлены правильно. Когда я запускаю эту команду, мне говорят, что мне не хватает ссылок на модули в train.py сценарий, за исключением того, что я могу подтвердить с помощью Анаконды, что они присутствуют.
Пожалуйста, помогите мне. Ты моя единственная надежда.
Спасибо. -Выдергиваю Волосы.
@мерв,
Этот подход работает, но по-прежнему сталкивается с отсутствующими модулями, несмотря на то, что они находятся в пределах env conda.
ERROR conda.cli.main_run:execute(33): Subprocess for 'conda run ['python', 'train.py', '--dataset-path', 'C:\Users\Benson\traindeepstack\deepstack-trainer\Cat']' command failed. (See above for error)
Traceback (most recent call last):
File "train.py", line 12, in <module>
import torch.distributed as dist
ModuleNotFoundError: No module named 'torch'```
This is what I get when I check the modules within this env:
```# packages in environment at C:UsersBensonanaconda3envsdeepstack:
#
# Name Version Build Channel
blas 2.111 mkl conda-forge
blas-devel 3.9.0 11_win64_mkl conda-forge
ca-certificates 2021.5.30 h5b45459_0 conda-forge
cudatoolkit 11.1.1 heb2d755_7 conda-forge
freetype 2.10.4 h546665d_1 conda-forge
intel-openmp 2021.3.0 h57928b3_3372 conda-forge
jbig 2.1 h8d14728_2003 conda-forge
jpeg 9d h8ffe710_0 conda-forge
lcms2 2.12 h2a16943_0 conda-forge
lerc 2.2.1 h0e60522_0 conda-forge
libblas 3.9.0 11_win64_mkl conda-forge
libcblas 3.9.0 11_win64_mkl conda-forge
libdeflate 1.7 h8ffe710_5 conda-forge
liblapack 3.9.0 11_win64_mkl conda-forge
liblapacke 3.9.0 11_win64_mkl conda-forge
libpng 1.6.37 h1d00b33_2 conda-forge
libtiff 4.3.0 h0c97f57_1 conda-forge
libuv 1.42.0 h8ffe710_0 conda-forge
lz4-c 1.9.3 h8ffe710_1 conda-forge
m2w64-gcc-libgfortran 5.3.0 6 conda-forge
m2w64-gcc-libs 5.3.0 7 conda-forge
m2w64-gcc-libs-core 5.3.0 7 conda-forge
m2w64-gmp 6.1.0 2 conda-forge
m2w64-libwinpthread-git 5.0.0.4634.697f757 2 conda-forge
mkl 2021.3.0 hb70f87d_564 conda-forge
mkl-devel 2021.3.0 h57928b3_565 conda-forge
mkl-include 2021.3.0 hb70f87d_564 conda-forge
msys2-conda-epoch 20160418 1 conda-forge
ninja 1.10.2 h5362a0b_0 conda-forge
numpy 1.21.2 py38h089cfbf_0 conda-forge
olefile 0.46 pyh9f0ad1d_1 conda-forge
openjpeg 2.4.0 hb211442_1 conda-forge
openssl 1.1.1l h8ffe710_0 conda-forge
pillow 8.3.2 py38h794f750_0 conda-forge
pip 21.2.4 pyhd8ed1ab_0 conda-forge
python 3.8.12 h7840368_0_cpython conda-forge
python_abi 3.8 2_cp38 conda-forge
pytorch 1.9.0 py3.8_cuda11.1_cudnn8_0 pytorch
setuptools 58.0.4 py38haa244fe_0 conda-forge
six 1.16.0 pyh6c4a22f_0 conda-forge
sqlite 3.36.0 h8ffe710_1 conda-forge
tbb 2021.3.0 h2d74725_0 conda-forge
tk 8.6.11 h8ffe710_1 conda-forge
torchaudio 0.9.0 py38 pytorch
torchvision 0.2.2 py_3 pytorch
typing_extensions 3.10.0.0 pyha770c72_0 conda-forge
ucrt 10.0.20348.0 h57928b3_0 conda-forge
vc 14.2 hb210afc_5 conda-forge
vs2015_runtime 14.29.30037 h902a5da_5 conda-forge
wheel 0.37.0 pyhd8ed1ab_1 conda-forge
xz 5.2.5 h62dcd97_1 conda-forge
zlib 1.2.11 h62dcd97_1010 conda-forge
zstd 1.5.0 h6255e5f_0 conda-forge```
Pytorch is clearly present.
Комментарии:
1. может быть, попробовать запустить в образе докера Linux :пожать плечами:
2. Если » установить правильно «, это означает, что PYTHONPATH пуст, верно? Кроме того, активируйте среду и
python
не используйтеpython3
ее . Весь смысл системы активации Conda заключается в том, что не нужно возиться с псевдонимами и вручную манипулировать переменными среды, чтобы команды работали. В качестве альтернативы можно использоватьconda run -n env_name python ...
для запуска команды из контекста среды без активации вручную.3. Инструкции от Deepstack заключаются в том, чтобы запустить команду python3 как bash, и, похоже, именно здесь у меня все ломается.