1. DINO简介
作为一款基于Transformer性能强劲的计算机视觉算法,一经发布即受追捧,本文记录下在DINO官方代码在集群上的环境配置及训练自己的数据集过程。
DINO原文:https://arxiv.org/abs/2203.03605
DINO源代码:https://github.com/IDEA-Research/DINO
2. DINO环境配置
该部分推荐大家参看DINO源代码中点击进入的配置过程,一般只要一步步来,不会出错的
根据上图大致流程为:
1 创建虚拟环境
2 安装合适的 torch相关包,比如上图中划线部分,注意cuda版本一定要和您的GPU CUDA版本契合,或者您通过nvidia-smi 查看的 GPU driver 假设是11.2 原则上,您在装cudatoolkits时 可选 11.3 或以上版本的,这个可以自行测试,具体可以参看我往期的博客,
虽然为另一个检测代码的环境配置,但其实是类似的。https://github.com/IDEA-Research/DINO
3. 安装必要的包 pip install -r requiremets.txt
4. 编译,即图中第四步。
3. 环境配置过程中的细节
3.1 编译过程中遇到CUDA out of memory
当您顺利进行到CUDA算子编译步骤时,会发现有时候显存不够大,可能会报一个CUDA out of memory的错误,这个是我们的显存不够大,造成的,不过编译已经通过了。
RuntimeError: CUDA out of memory. Tried to allocate 1.88 GiB (GPU 0; 11.77 GiB total capacity; 9.41 GiB already allocated; 1.48 GiB free; 9.66 GiB reserved in total by PyTorch) If reserved memory is >> allocated memory try setting max_split_size_mb to avoid fragmentation. See documentation for Memory Management and PYTORCH_CUDA_ALLOC_CONF
在您的项目目录 DINO-main/models/dino/ops 看到是否编译好的包和库,如下图所示。
3.2 pip install -r requirement.txt过程中 unable to access
这个主要是由于COCO API和Panopticapi 由于有github链接问题,可参看我的往期博文点击进入https://blog.csdn.net/qq_29750461/article/details/138223735?spm=1001.2014.3001.5502
以上是项目环境配置过程中可能存在的问题,希望帮到大家。