베이스라인 코드를 실행하는 후기입니다


#1

대회의 베이스라인 코드를 실행하기 위해 했던 삽질을 공유드립니다.

  1. 데이터 크기 때문에 로컬머신(윈10)으로 시도했습니다. 그렇나 윈10에서는 python2 tensorflow가 지원 안되는 문제(Windows 10 에서 환경 만들기는 불가능 한 것인가요?)를 만나게 되어 여러 시도를 하였으나 이걸 해결하는게 중요한게 아니라서 패스.

  2. network.py 코드를 보니 GPU가 필요한 것 같아 맥북은 시도조차 안 했습니다.

  3. 남은건 리눅스! 딥러닝을 좋아하는 사람으로서 리눅스 머신이 없는건 저 뿐인가요? :umbrella:

  4. 가끔 사용하던 GCP에서 VM을 사용해야겠습니다. (VM견적)

  5. VM에서 데이터를 다운을 받고 싶었으나 리눅스 다운로드 스크립트 요청에 대한 답변은,

  1. 고민할 시간에 수동 작업을 결심합니다. 우선 로컬머신에 데이터 (90GB)를 받고(1H), GCP 스토리지 버킷에 업로드를 진행했습니다 (6H). 이제 다시 VM으로 데이터를 땡겼습니다 (1H).

  2. config.json에서 num_workers만 줄여서 python data.py make_db train을 실행하였습니다 (1H). (참고: ./data/train 130GB, ./tmp 131GB)

  3. 제출 이슈도 해결됐으니 베이스라인 제출을 위해 트레이닝을 시작하였습니다. K80 기준 1 epoch을 실행하는데 1H, config.json에 설정된 값은 100 epoch :sob:. 모델의 체크포인트가 10 epoch 마다 나오니 내일 다시 공유해야겠네요.


  1. train 데이터를 이용하여 predict를 하는데 OOM이 나서 살펴보니 config.json 파일에서 num_predict_workers 부분이 오타가 있었습니다. (pull request #3: 더불어서 python3도 사용가능하도록 수정 중입니다. chiwanpark :+1: )

  2. 제출하기 전 dev 데이터로 python data.py make_db 작업을 할 때, 반드시 아래와 같이 수정해주셔야 합니다. 안그러면 이전에 만든 ./data/train에 덮어씌여집니다. (merge 완료, 새로 pull 받아주세요.)

python data.py make_db dev ./data/dev --train_ratio=0.0

개인적인 생각으로 현재 상황은 소수의 람보르기니와 드래그 레이싱을 하는 다수의 소형차들이 아닐까요? 소형차분들 같이 힘내요!


#2

공부하는 학생으로 시도 만 해보고 싶었으나…
데이터가 84.98Gb 라는 점이 첫째
제 꾸진 컴퓨터와 오래된 GPU가 둘째

마지막으로 쓰신 소형차분들이 드레그 한다는 표현에 웃고가요.^^
참고로 저처럼 트렉을 뛰어서 도는 사람도 있…네요ㅋㅋ

화이팅 하시구! 이번 arena에 건승하세요!!