목록Training (2)
아는 만큼 보인다

딥러닝 모델을 개발할 때 가장 중요한 것은 무엇일까? 멋진 모델? 요즘 유행하는 모델? 요즘 사람들이 많이 쓴다고 하는 모델? 좋은 모델을 쓰는 것은 당연히 중요하다. 그렇다면 좋은 모델이란 무엇인가? 입사 후 약 4개월 간 첫 딥러닝 프로젝트를 진행하며 모델이 학습해야 하는 데이터, 모델 개발을 통해 이루고자 하는 구체적인 목표, 모델의 추론 결과를 직접 보게 되는 타겟 사용자를 고려하는 것이 좋은 모델을 만들기 위해 우선적으로 고려해야 하는 점이라는 걸 배울 수 있었다. 그리고 언제나 그렇듯이 다함께 하는 프로젝트이므로 언제나 어떻게 하면 더 효율적으로 소통할 수 있을지 고민하고, 더 꼼꼼하게 일하고 집요한 Q&A 기회를 갖는 것 -- 그렇지 않은 프로젝트가 있을까? 데이터가 많으면 무조건 좋다? '..
야심차게 모델링 코드를 짜고 훈련을 시작했다! 그런데 1 epoch을 돌리는데 하루 이상이 걸린다..? 가장 먼저, 원인 파악을 위해 GPU 사용 현황을 모니터링하러 가보자. 각 훈련 환경마다 GPU 모니터링 방법이 다를 수 있다. Ubuntu에서 GPU 모니터링하는 방법은 여기에 잘 소개되어 있다. 나는 회사에서 nvidia-smi로 항상 확인해주고 있다. nvidia-smi 결과를 잘 살펴보는 방법은 여기를 참조하면 된다. 즉, GPU-Util 같은 지표를 통해 GPU의 가용 성능 중 현재 얼마만큼 사용하고 있는지 확인해주면 된다. 100%인데 느리다? 그럼 모델의 문제일 것이고, 이 비율이 50% 정도 미만으로 확연히 낮다? 그럼 모델 외의 문제일 것이다. 1. 모델이 너무 크고 무겁진 않은가? G..