抱怨一下深度学习相关的环境配置

2023-03-13 21:32:44 +08:00
 vthe

可能配置过一次深度学习或类似的环境,就会对深度学习完全失去热情吧。

我最近在做毕业设计,任务是去复刻某个深度学习,然后再改进一些。本来我以为会是个挺轻松的任务,没想到光安环境就能折腾我这么久。

我用的是谷歌的 colab ,好像不管怎么弄,cuda 的环境都改不动,就算我卸载了,也还是 11.8 。 就很奇怪,要被 cuda 折磨疯了。

下面给出原代码给出的环境,各位觉得这个配置存在问题吗?或者有更简单的安装环境的方法吗?

PyTorch version: 1.8.0
CUDA version: 11.1
cudnn version: 8005
GPU: Tesla V100-SXM2-32GB
requirements.txt
matplotlib==3.4.2
pynvml==11.0.0
torchvision==0.8.0
pandas==1.3.2
numpy==1.20.3
imbalanced_learn==0.8.0
tqdm==4.62.1
torch==1.7.0
fairseq==0.10.2
transformers==4.10.2
imblearn==0.0
librosa==0.8.1
Pillow==8.3.2
pysndfx==0.3.6
scikit_learn==1.0
2535 次点击
所在节点    程序员
15 条回复
nightwitch
2023-03-13 22:00:19 +08:00
11.8 和 11.1 理论上是兼容的,所以问题在哪里
ruxuan1306
2023-03-13 22:01:40 +08:00
注意选择 Github 或 Hugging Face 上正儿八经的、工程水平较高的、有预训练检查点或 Cobab 实例的深度学习项目。

因为绝大多数搞炼丹的研究生都是臭鱼烂虾,开源代码仓库主要是为了忽悠审稿人,不说结果能不能复现,就依赖列表都不一定准确。
allegory
2023-03-14 00:22:22 +08:00
11.6 以上的 cuda 对应的 torch 版本不是 1.7 吧 至少得 1.13.0cu+116
allegory
2023-03-14 00:23:31 +08:00
你安装 torch 的时候一定要用官网给的那个命令,并且选择正确的版本和工具。PS 不推荐 conda. conda 就 tm 一坑 b
Muniesa
2023-03-14 00:49:01 +08:00
pytorch 兼容性很好,不写奇奇怪怪的代码一般升级都不会有问题,直接拿 colab 已有的环境跑一下试试
lbingl
2023-03-14 01:01:12 +08:00
你这项目用的是 v100 ,colab 跑不动的,不用试了,换 kaggle 没准能跑动。不用换 cuda 环境,torch 也应该不用换,直接跑,报缺什么包再安装什么就行。
chesha1
2023-03-14 01:01:54 +08:00
首先 CUDA 有两个版本,一个普通 CUDA 驱动,一个 CUDA toolkit ,你看看是不是搞混了
另外就是版本不严格兼容也是可以的,不像 tensorflow 那么坑
另外建议把报错发上来看看,光说环境有问题我们也不清楚问题在哪啊
0attocs
2023-03-14 02:43:12 +08:00
`torch==1.7.0` 改成 `torch==1.7.0+cu110`, 这是 1.7.0+cuda11 的唯一一个 whl ,参见 https://download.pytorch.org/whl/torch/

你也可以选一个更新的 torch ,一般都没问题,就是不过 torchvision 接口不太稳定,不同版本可能有坑。
0attocs
2023-03-14 02:48:02 +08:00
仔细看了下,上面环境写的是 torch 1.8.0 + cuda 11.1 ,但下面 requirements.txt 写的是 cuda==1.7.0 。改成 torch==1.8.0+cu111 就可以了,这个 whl 是存在的。
vthe
2023-03-14 10:12:26 +08:00
谢谢各位,我这才明白原来环境不用一模一样,直接跑就是了。然后的话只安装了一个 transformers 就可以跑了。我之前其实也跑通过,但是一分钟不到 colab 就崩溃了,所以我以为环境一定要大概相同才能跑。

然后刚才直接跑了一下,还是一分钟不到就崩溃了。

warning 信息只有
```
2023-03-14 02:02:56.805401: I tensorflow/core/platform/cpu_feature_guard.cc:193] This TensorFlow binary is optimized with oneAPI Deep Neural Network Library (oneDNN) to use the following CPU instructions in performance-critical operations: AVX2 FMA
To enable them in other operations, rebuild TensorFlow with the appropriate compiler flags.
2023-03-14 02:03:00.821268: W tensorflow/compiler/xla/stream_executor/platform/default/dso_loader.cc:64] Could not load dynamic library 'libnvinfer.so.7'; dlerror: libnvinfer.so.7: cannot open shared object file: No such file or directory; LD_LIBRARY_PATH: /usr/lib64-nvidia
2023-03-14 02:03:00.822404: W tensorflow/compiler/xla/stream_executor/platform/default/dso_loader.cc:64] Could not load dynamic library 'libnvinfer_plugin.so.7'; dlerror: libnvinfer_plugin.so.7: cannot open shared object file: No such file or directory; LD_LIBRARY_PATH: /usr/lib64-nvidia
2023-03-14 02:03:00.822449: W tensorflow/compiler/tf2tensorrt/utils/py_utils.cc:38] TF-TRT Warning: Cannot dlopen some TensorRT libraries. If you would like to use Nvidia GPU with TensorRT, please make sure the missing libraries mentioned above are installed properly.
```

然后关于显卡的话,由于之前 colab 崩溃,我也以为是显卡配置。我问过我的导师,他说 T4 足够了。
lonewolfakela
2023-03-14 11:04:56 +08:00
你崩溃了,但是只有 warning ,没有 error ?
vthe
2023-03-14 11:29:26 +08:00
@lonewolfakela 是的,这个 warning 好像也是不用管的。所以我现在就是觉得,要么 colab 12G 的显存不够用,要么就是环境的问题。
elboble
2023-03-14 11:52:54 +08:00
@vthe 这个 warning 我也有,但是不影响调 cuda ,我是用 sd-webui ,基本上是按一键安装包下来的。
vthe
2023-03-15 00:02:31 +08:00
各位好,请问一个大小为 4 到 5g 的数据集,一个小时能够跑完吗?
我打算去租个大点显存的显卡,看一下到底是环境的问题还是配置不够。
vthe
2023-03-16 23:25:20 +08:00
大概率是解决了这个问题,我去显卡租赁平台租了个 P100 还是 V100,16G 内存,程序果然可以跑起来了。
但还是不够用,这次的提示很明显,cuda 的内存不够了。由于不会调参数,只能用更高性能的显卡去试了。
或者按网上的一些优化,试着把 batch_size 从 64 调到 32 ,只是不知道影响大不大。任重道远!

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/923704

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX