Skip to main content
QUICK REVIEW

[논문 리뷰] Training convolutional neural networks with megapixel images

Hans Pinckaers, Geert Litjens|arXiv (Cornell University)|2018. 04. 16.
AI in cancer detection참고 문헌 2인용 수 8
한 줄 요약

이 논문은 이미지 타일의 부분 전진 전파를 통해 중간 활성화 맵을 재구성함으로써 GPU 메모리 사용을 크게 줄여 메가픽셀 이미지에서 컨volutional neural networks를 훈련시키는 데 사용할 수 있는 Streaming Stochastic Gradient Descent (SSGD)를 제안한다. 이 방법은 기존의 SGD보다 97% 적은 메모리로 64메가픽셀 이미지를 사용하여 훈련할 수 있으며, 수치적으로 동일한 결과를 도출하면서도 모델 정확도를 유지한다.

ABSTRACT

To train deep convolutional neural networks, the input data and the intermediate activations need to be kept in memory to calculate the gradient descent step. Given the limited memory available in the current generation accelerator cards, this limits the maximum dimensions of the input data. We demonstrate a method to train convolutional neural networks holding only parts of the image in memory while giving equivalent results. We quantitatively compare this new way of training convolutional neural networks with conventional training. In addition, as a proof of concept, we train a convolutional neural network with 64 megapixel images, which requires 97% less memory than the conventional approach.

연구 동기 및 목표

  • 기존의 고해상도 이미지(예: 기가픽셀 수준의 조직병리학 슬라이드 또는 위성 영상)에서 CNN 훈련 시 발생하는 메모리 병목 현상을 해결하기 위해.
  • 과도한 GPU 메모리가 요구되지 않는 전체 해상도의 메가픽셀 이미지를 사용해 훈련할 수 있도록 하기 위해.
  • 표준 SGD와 수치적으로 동일한 결과를 도출하면서도 메모리 효율적인 훈련 방법을 개발하기 위해.
  • 표준 SGD에서 235GB가 필요한 반면, SSGD를 사용하면 7GB의 GPU 메모리만으로도 64메가픽셀 이미지를 훈련시킬 수 있음을 보여주기 위해.
  • 메모리 사용량을 줄여 일반 하드웨어에서도 대규모 네트워크나 고해상도 데이터를 훈련시킬 수 있도록 하기 위해.

제안 방법

  • 이 방법은 이미지 타일에 대한 부분 전진 전파를 수행하여 중간 활성화 맵을 재구성하고, 이를 나머지 네트워크에 다시 조립한다.
  • 재구성 정확도를 확보하기 위해 전진 전파(P_forw) 및 역전파(P_back)에 대한 식을 사용해 타일 간 겹침을 계산한다.
  • 식 1은 전진 전파에 대한 타일 겹침을 계산한다: P_forw = (k - s) + b((z - k) mod s), 여기서 k는 커널 크기, s는 스트라이드, z는 이미지 크기, b는 부울 플래그이다.
  • 식 2는 역전파에 대해 더 큰 겹침을 계산한다: P_back = 2(k - s) + b((z - k) mod s), 이는 겹치는 영역 간의 기울기 의존성을 고려하기 위함이다.
  • 역전파 동안 각 타일 별로 수행되며, 모든 활성화를 저장하지 않고 부분 전진 전파를 통해 기울기를 재구성한다.
  • 미니배치 기울기는 이미지 간에 합산 및 평균화되며, 풀링/컨볼루션 연산으로 인한 가장자리 효과는 타일 경계에 가장자리 픽셀을 유지하여 보정한다.

실험 결과

연구 질문

  • RQ1GPU 메모리 한계를 초과하지 않으면서도 전체 메가픽셀 이미지 입력이 가능한 훈련 방법을 개발할 수 있는가?
  • RQ2표준 SGD와 메모리 감소 훈련 방법인 SSGD 간에 수치적으로 동일한 결과를 도출할 수 있는가?
  • RQ3역전파 중 타일 기반 전진 전파를 통해 활성화 맵을 재구성할 경우의 메모리 및 계산 비용의 상호 교환 관계는 어떠한가?
  • RQ4SSGD를 사용하여 64메가픽셀 이미지에서 CNN을 성공적으로 훈련시킬 수 있으며, 그로 인한 메모리 사용량은 얼마인가?
  • RQ5SSGD는 배치 정규화나 전역 연산과 같은 아키텍처 선택에 얼마나 제한을 가하는가?

주요 결과

  • 표준 SGD와 SSGD 간의 손실 차이는 오직 1×10⁻⁴에 불과하여 수치적 동등성이 확인되었다.
  • 테스트 정확도는 표준 SGD와 SSGD 모두 77%로 동일하여 성능이 유사함을 입증했다.
  • 64메가픽셀 이미지에서 훈련된 네트워크는 78%의 테스트 정확도를 달성하여 대규모 이미지 훈련의 가능성을 보여주었다.
  • SSGD는 표준 SGD(미니배치 크기 8)에서 235GB에서 7GB로 GPU 메모리 사용량을 97% 감소시켰다.
  • 역전파 중 재계산이 필요로 하여 상당한 계산 오버헤드가 발생한다.
  • 전체 활성화 맵이 필요한 아키텍처(예: 배치 정규화)는 SSGD와 호환되지 않으며, 완전한 특징 맵에 의존하기 때문이다.

더 나은 연구,지금 바로 시작하세요

논문 읽기부터 검토까지, 연구 시간을 획기적으로 줄여보세요.

카드 등록 없음 · 무료 플랜 제공

이 리뷰는 AI가 만들고, 인간 에디터가 검토했습니다.