AlignDet: 사전 학습과 미세 조정을 맞추는 객체 탐지 (AlignDet: Aligning Pre-training and Fine-tuning in Object Detection)

  • 이 글은 GPT-4를 사용하여 자동 생성한 설명으로, 잘못된 내용이 있을 수 있습니다. :smile:
  • 잘못된 내용을 발견하시면 덧글로 알려주시기를 부탁드립니다! :bowing_man:

소개

AlignDet는 ICCV 2023에서 발표된 객체 탐지에 대한 사전 학습과 미세 조정을 맞추는 공식적인 PyTorch 구현입니다. 기존의 탐지 알고리즘들은 사전 학습과 미세 조정 사이의 데이터, 모델, 작업 차이에 제약을 받습니다. AlignDet는 이러한 차이를 효율적이고 감독되지 않은 패러다임에서 맞추어 다양한 설정에서의 성능 향상을 이끕니다.

요약

AlignDet는 데이터, 모델, 작업 측면에서 다른 자기 감독 사전 학습 방법과 비교하여 더 효율적이고 적절하며 탐지 지향적인 사전 학습을 달성합니다.

AlignDet의 파이프라인은 기존의 사전 학습된 백본을 최대한 활용하여 다른 모듈을 효율적으로 사전 학습합니다. 자기 감독된 사전 학습된 백본을 통합함으로써, 우리는 완전히 감독되지 않은 패러다임을 사용하여 다양한 탐지기를 완전히 사전 학습하는 첫 시도를 합니다.

사용자는 COCO 2017 데이터셋을 다운로드하고, 폴더 구조를 다음과 같이 설정해야 합니다.

data
└── coco
    ├── annotations
    ├── filtered_proposals
    ├── semi_supervised_annotations
    ├── test2017
    ├── train2017
    └── val2017

filtered_proposals 폴더는 자기 감독 사전 학습을 위해 Google Drive에서 다운로드할 수 있습니다. semi_supervised_annotations 폴더는 반감독 미세 조정을 위해 Google Drive에서 다운로드하거나 tools/generate_semi_coco.py를 사용하여 생성할 수 있습니다.

사전 학습과 미세 조정은 다음과 같이 수행됩니다.

사전 학습:

bash tools/dist_train.sh configs/selfsup/mask_rcnn.py 8 --work-dir work_dirs/selfsup_mask-rcnn

미세 조정:

python3 tools/model_converters/extract_detector_weights.py \
work_dirs/selfsup_mask-rcnn/epoch_12.pth  \ # pretrain weights
work_dirs/selfsup_mask-rcnn/final_model.pth  # finetune weights

미세 조정 모델은 일반적인 mmdet 학습 프로세스와 같으며, 일반적으로 학습률은 1.5배 증가하고, 가중치 감소는 원래 설정의 절반으로 줄어듭니다. 자세한 내용은 공개된 로그를 참조하십시오.

bash tools/dist_train.sh configs/coco/mask_rcnn_r50_fpn_1x_coco.py 8 \
--cfg-options load_from=work_dirs/selfsup_mask-rcnn/final_model.pth \ # load pre-trained weights
optimizer.lr=3e-2 optimizer.weight_decay=5e-5  \ # adjust lr and wd
--work-dir work_dirs/finetune_mask-rcnn_1x_coco_lr3e-2_wd5e-5

참조

이들은 AlignDet의 학습과 미세 조정 과정에서 필요한 데이터셋과 추가 자료들입니다.

원문