인프런 커뮤니티 질문&답변

dpdls5592님의 프로필 이미지

작성한 질문수

[개정판] 딥러닝 컴퓨터 비전 완벽 가이드

mm_faster_rcnn_train_coco_bccd 학습시 수행이 안됩니다

해결된 질문

24.07.16 17:52 작성

·

95

·

수정됨

0

---------------------------------------------------------------------------
AttributeError                            Traceback (most recent call last)
Cell In[20], line 4
      2 mmcv.mkdir_or_exist(osp.abspath(cfg.work_dir))
      3 # epochs는 config의 runner 파라미터로 지정됨. 기본 12회 
----> 4 train_detector(model, datasets, cfg, distributed=False, validate=True)

File /opt/conda/lib/python3.10/site-packages/mmdet-2.28.2-py3.10.egg/mmdet/apis/train.py:163, in train_detector(model, dataset, cfg, distributed, validate, timestamp, meta)
    156     model = build_ddp(
    157         model,
    158         cfg.device,
    159         device_ids=[int(os.environ['LOCAL_RANK'])],
    160         broadcast_buffers=False,
    161         find_unused_parameters=find_unused_parameters)
    162 else:
--> 163     model = build_dp(model, cfg.device, device_ids=cfg.gpu_ids)
    165 # build optimizer
    166 auto_scale_lr(cfg, distributed, logger)

File /opt/conda/lib/python3.10/site-packages/mmcv/utils/config.py:524, in Config.__getattr__(self, name)
    523 def __getattr__(self, name):
--> 524     return getattr(self._cfg_dict, name)

File /opt/conda/lib/python3.10/site-packages/mmcv/utils/config.py:52, in ConfigDict.__getattr__(self, name)
     50 else:
     51     return value
---> 52 raise ex

AttributeError: 'ConfigDict' object has no attribute 'device'

^캐글

---------------------------------------------------------------------------
AttributeError                            Traceback (most recent call last)
<ipython-input-25-adb1a52111f0> in <cell line: 4>()
      2 mmcv.mkdir_or_exist(osp.abspath(cfg.work_dir))
      3 # epochs는 config의 runner 파라미터로 지정됨. 기본 12회
----> 4 train_detector(model, datasets, cfg, distributed=False, validate=True)

2 frames
/usr/local/lib/python3.10/dist-packages/mmcv/utils/config.py in __getattr__(self, name)
     50         else:
     51             return value
---> 52         raise ex
     53 
     54 

AttributeError: 'ConfigDict' object has no attribute 'device'

^코랩

 

안녕하세요 좋은 강의 감사드립니다.

 

import os.path as osp

mmcv.mkdir_or_exist(osp.abspath(cfg.work_dir))

# epochs는 config의 runner 파라미터로 지정됨. 기본 12회

train_detector(model, datasets, cfg, distributed=False, validate=True)

 

이 셀이 실행시 이러한 오류가 뜨는데 이유를 모르겠습니다

 

답변 1

0

권 철민님의 프로필 이미지
권 철민
지식공유자

2024. 07. 17. 20:01

안녕하십니까,

실습코드를 그대로 적용하시면 잘 됩니다. 실습코드를 다시 한번 다운로드 받으시거나, 아님

cfg 설정하실 때 아래를 추가해 주십시요.

cfg.device='cuda'

 

ConfigDict' object has no attribute 'device 오류 발생시 반드시 설정이 필요합니다.

 

감사합니다.

dpdls5592님의 프로필 이미지
dpdls5592
질문자

2024. 07. 17. 21:00

아 train_detector의 매개변수로 들어가는게 아니라 cfg 설정에서 추가해줘야 하는거군요 감사합니다. 해결되었습니다.

 

머신러닝 강의부터 딥러닝 컴퓨터 비전까지 많은 도움 받고 있습니다. 감사합니다.