Swin Transformer 环境搭建

Swin Transformer 环境搭建

1. 摘要

本文主要对 Swin-Transformer-Object-Detection 进行简要介绍,并考虑到其环境安装对新手而言是一个常见的挑战,因此本文实现了其对应的环境安装

2. 介绍

Swin Transformer

Swin Transformer是微软研究院2021年发表在ICCV上的一篇文章,已获得ICCV-2021-best-paper的荣誉称号。该论文一经发表就已在多项视觉任务中霸榜(如下图)。
image-20220914210930652

3. 环境配置

Swin Transformer官网上的模型是在mmdetection的基础上实现的。mmdetection是商汤科技(2018 COCO 目标检测挑战赛冠军)和香港中文大学开源的一个基于Pytorch实现的深度学习目标检测工具箱。因此想要使用Swin Transformer相关的模型,只需要配置mmdetection环境,在下载模型对应的配置文件即可。

mmdetection的安装,目前主要有以下两个官方网址:

  1. https://github.com/open-mmlab/mmdetection/blob/master/docs/en/get_started.md
  2. https://mmdetection.readthedocs.io/zh_CN/latest/get_started.html#id2(中文)

虽然按照上面官网的要求,一步步安装,可最后还是会出现许多问题,表明官网的步骤需要进行修改,因此下面的配置过程,是小编亲自实现的,经过验证。

首先对小编的配置环境是进行一个说明:

  1. 主机系统:ubuntu18.04
  2. 显卡:NVIDIA GeForce RTX 3080 Ti
  3. 显卡驱动:NVIDIA-SMI 510.60.02
  4. CUDA Version: 11.6
  5. docker 镜像: jupyter/tensorflow-notebook ubuntu-20.04

下面就是小编在docker容器中对mmdetection进行环境配置的全过程。

3.1 pytorch安装

pytorch安装

Notes:这里的cudatoolkit-dev 和 pytorch 版本,建议小伙伴们在pytorch官网进行选择(如下图),需要参考自己显卡驱动对应的CUDA版本,最后复制推荐的安装命令即可。(如果环境中没有nvcc的小伙伴,建议将cudatoolkit改为cudatoolkit-dev,否则后续可能报错)

pytorch 版本

3.2 mmcv安装

mmcv安装

-f 后面的链接,需要根据实际情况进行配置,上方是CUDA=11.3 和 pytorch=1.10 版本下安装的,如果小伙伴的环境有区别可以参照这个网站进行配置(如下图):https://mmcv.readthedocs.io/en/latest/get_started/installation.html#

如果 CUDA=11.5 pytorch=1.11 对应的安装命令如下:

3.3 mmdet安装

  • pip 安装 (与下面的源码编译,二选一即可)

pip 安装

  • 源码编译

源码编译

3.4 apex安装(可选)

Nvidia Apex是由Nvidia公司维护的一套实用工具包,用于简化Pytorch的下游任务,大部分代码是由Torch底层组成。主要作用是:

  • 自动混合精度(Auto Mix Precision)

  • 分布式训练(Distributed Training)

apex安装

4. 环境验证

官网的环境验证代码,不会显示结果,因此下面的代码是小编修改过后的。

环境验证

  • 结果
    结果

获取本文全部代码,公众号后台回复"mmde"即可。
二维码

本文由mdnice多平台发布

posted @ 2022-09-15 21:06  数据科学工厂  阅读(247)  评论(0编辑  收藏  举报