[국방] 위성 이미지 객체 검출 대회

항공우주 빅데이터와 AI를 이용하여 이미지를 분석 - 분류, mAP

  • 시상: 경진대회 종료 및 발표평가 후 상위 3개팀 시상 (상장 및 상금 000만원)
  • 2019.11.20 ~ 2020.03.20 23:59
  • 348팀
  • 마감
참가신청 마감

시스템 성능에 관한 질문

  • day2020.02.17 22:12
  • view149 view
  • writer nparkstarby nparkstar
댓글 20

base line code를 실행하기 위한 시스템 최소 사양이 어떻게 되는지요?

시스템의 성능이 부족할 경우 어떤 값을 어떻게 바꾸면 되는지 알려 주실 수 없는 지요?

실행 시 오류가 나는데 시스템의 사양이 부족해서인지 다른 이유인지 알기가 어렵네요.


docker image는 알려 주신 대로 아래의 이미지를 사용했습니다.


TF 1.6 py3-gpu Docker Image: https://hub.docker.com/layers/tensorflow/tensorflow/1.6.0-gpu-py3/images/sha256-0f4b997bc3af4caa3b700552bf295dde3a6a36c4816ff036d0ddd1632e73cb52

error log 일부 -------------------------------------------------------

댓글 20개
  • kvelikveli2020.02.18 00:28
    제가 사용하는 환경 기준으로 베이스라인 코드를 실행하기 위해서는 램16gb 비디오램 8gb 정도는 되어야 실행하실 수 있습니다.
  • nparkstarnparkstar2020.02.18 10:34
    저는 GPU RAM 6GB인데, 설정값을 수정해서 돌릴 수는 없나요?
    • kvelikveli 2020.02.18 13:07
      발생한 오류가 비디오램의 크기 때문인지는 모르겠으나, 
      그렇다면 create_dataset.py 로 데이터셋을 만들 때 이미지 크기를 줄이면 가능할 것 같습니다. 
      현재 기본 값이 이미지 784, 오버레이 256 으로 된걸로 아는데 512, 256으로 줄여서 시도 해보세요
    • nparkstarnparkstar 2020.02.18 21:44
      아래와 같이 하라는 의미로 이해하고 했는데, 더 앞 부분에서 오류가 나고 실행이 안되네요. 
      python3 create_dataset.py --src_dir='../data/train' --dst_path='../data/train/train.tfrecord' --patch_size=512 --patch_overlay=256
      
      이렇게 값을 줄이는 것이 아닌가요?
    • DACON_jinDACON_jin 2020.02.18 22:19
      안녕하세요. nparkstar님 kveli님께서 말씀해주신대로 램 16GB, GPU 8GB정도면 적정수준이라고 판단하며, 
      6GB 환경에서도 돌아감을 확인하였습니다. 발생하시는 에러 스크린샷으로 토론에 올려주시면 
      조금 더 원활한 문제해결이 진행되실것 같습니다. 감사합니다. 
    • nparkstarnparkstar 2020.02.19 09:57
      위에 에러 시작되는 부분 화면 캡처 올렸습니다.
      전체로그는 좀 긴데 필요하면 로그 전체는 텍스트 파일로 올릴 수도 있습니다.
      검토 부탁드립니다. 
      감사합니다.
  • nparkstarnparkstar2020.02.18 14:55
    감사합니다. 시도해 볼게요.
    
  • nparkstarnparkstar2020.02.18 21:44
    삭제된 댓글입니다
  • 용김김용휘2020.02.19 12:52
    python create_dataset.py 하실 때  패치사이즈 줄여보시고
    trainer.py(394행) session_config 부분에
    session_config.gpu_options.allow_growth = True
    session_config.gpu_options.per_process_gpu_memory_fraction = 0.9
    추가해보세요
    
    • nparkstarnparkstar 2020.02.19 16:30
      의견 감사합니다. 그러나 제 문제는 이 방법으로는 해결이 되지를 안네요.
      패치와 오버레이 사이즈를 줄여서 위 에러는 없는데 다른 에러가 났습니다.
      --> cuda와 tensorflow 버전을 올리고 이 방법대로 수정하여서 해결되었습니다. 감사합니다.
      --> 이 방법은 필요한 방법이었습니다. 저의 경우 다른 문제와 같이 있었던 것이구요.
  • nparkstarnparkstar2020.02.19 15:29
    제 GPU가 RTX2060인데, RTX는 cuda 9과 tensorflow 1.6에서 제대로 지원이 않되는 것 같습니다.
    데이콘에서 도와 주셔서 cuda 10 tensorflow 1.14로 해 보았더니 에러 메시지가 몇 개 보이기는 했으나 트레이닝이 실행되었습니다.
    RTX GPU 사용하시는 분들 참고하시고 좋은 정보 있으면 서로 공유하면 좋을 것 같습니다.
  • nparkstarnparkstar2020.02.19 16:22
    해결하였습니다. 혹시 도움이 될까하여 내용 정리합니다.
    대글 하나에 300자를 넘을 수 없어서 쪼갭니다.
  • nparkstarnparkstar2020.02.19 16:22
    1) PC 환경
    RAM : 32GB
    GPU : RTX 2060 RAM 6GB
    GPU 메모리 부족과 호환이 되지 않는 문제로 트레이닝이 되지 안았습니다.
    다음과 같이 한 뒤 트레이닝이 되고 있습니다. 일무 에러가 보이기는 했는데 트레이닝은 돌고 있습니다.
  • nparkstarnparkstar2020.02.19 16:23
    2) Docker 사용
    Docker Image : tensorflow/tensorflow:1.14.0-gpu-py3
      -> Ubuntu 18.04에 Python 3.6, CUDA 10.0 포함되어 있습니다.
    data create 할 때 아래와 같이 하여 패치 사이즈와 오버레이 사이즈를 줄였습니다.
    python create_dataset.py --src_dir='../data/train' --dst_path='../data/train/train.tfrecord' --patch_size=512 --patch_overlay=256
  • nparkstarnparkstar2020.02.19 16:23
    3) 위 김용휘님이 알려 주신 대로 trainer.py 수정하였습니다.
    
    그리고 다른 문서자료에서 하라는 대로 실행하여 트레이닝 실행하고 있습니다.
    실행 중 GPU Memory 사용량이 5183MiB입니다.
    이상 도움이 되시기를 바랍니다.
  • nparkstarnparkstar2020.02.19 16:26
    많이 도와 주신 데이콘 진 님께 감사드립니다.
  • 하박하윤박2020.02.23 17:02
    vRam이 모자란 경우 Batch Size의 조절을 통해 어느정도 극복할 수 있습니다. 학습속도가 메모리가 충분할 때 보다는 감소하지만 사진 한 장당 반영하는 비율이 높아지는 차이점이 있습니다. 이미지 압축보다는 Batch Size를 줄여서 극복해보시는걸 추천드립니다.
  • 하박하윤박2020.02.23 17:13
    이미지를 Rescaling 하는 것보다는 모델 학습한계가 적으니 왠만하면 그렇게 시도하시길 바랍니다.
    • nparkstarnparkstar 2020.02.24 08:46
      base line code에서는 batch_size가 1로 되어 있는 것 같은데, 더 줄이는 방법이 있나요?
      조금 더 구체적인 방법을 알려주시면 고맙겠습니다.
    • 하박하윤박 2020.02.24 19:15
      더 줄이는 방법은 없습니다. 애석하게도...
NN로그인이 필요합니다
목록으로