Skip to content

Latest commit

 

History

History
64 lines (48 loc) · 2.52 KB

File metadata and controls

64 lines (48 loc) · 2.52 KB

Swin Transformer: Hierarchical Vision Transformer using Shifted Windows

Introduction

Official Repo

Code Snippet

Swin Transformer (arXiv'2021)
@article{liu2021Swin,
  title={Swin Transformer: Hierarchical Vision Transformer using Shifted Windows},
  author={Liu, Ze and Lin, Yutong and Cao, Yue and Hu, Han and Wei, Yixuan and Zhang, Zheng and Lin, Stephen and Guo, Baining},
  journal={arXiv preprint arXiv:2103.14030},
  year={2021}
}

Environment

requirements.txt를 이용하여 필요한 라이브러리를 설치합니다.

pip install -r requirements.txt

Usage

pretrained 모델을 사용하시려면 mmsegmentation의 swin2mmseg.py를 사용하여 the official repo에 있는 pretrained 모델을 mmsegmentation style key로 변환하셔야 합니다. 아래의 script는 PRETRAIN_PATH 에 있는 모델을 STORE_PATH에 저장합니다..

python tools/model_converters/swin2mmseg.py ${PRETRAIN_PATH} ${STORE_PATH}

현재 repository에 있는 config에서 사용하는 pretrained model은 아래에서 받으실 수 있습니다.

config model
10_SwinB-UperNet pretrained
48_SwinL-UperNet pretrained

Train

Transfer learning을 진행하기 위해서는 각 폴더 config에 있는 폴더번호.py파일에 converted pretrained model path를 지정해줘야 합니다.

    model = dict(
        #pretrained="path_to_pretrained_path",
        backbone=dict(
            ...
        )
    )

위 부분을 지정해주시면 됩니다.

모델 훈련은 아래의 script를 따라 진행하시면 됩니다.

    tools/train.py ${CONFIG_PATH}

CONFIG_PATH는 모델 폴더 안에 있는 모델번호.py의 경로를 지정해주시면 됩니다.