로컬인가 클라우드인가: 워크로드가 그 가치를 증명해야 한다

머신러닝은 종종 난잡합니다.

자신의 머신에서 작업을 실행했는데 실패합니다. 코드를 확인합니다. 데이터를 확인합니다. 전처리 과정의 단순한 오류를 디버깅하는 데 몇 시간을 보냅니다.

이것이 작업의 화려하지 않은 부분입니다. 자신의 아이디어가 제대로 작동하는지조차 알 수 없는 단계입니다.

많은 이들이 로컬 하드웨어와 클라우드 컴퓨팅 사이에서 논쟁합니다. 스프레드시트를 보며 비용을 비교합니다. 워크스테이션의 가격과 클라우드 GPU의 시간당 요금을 비교합니다.

이것은 잘못된 관점입니다.

진짜 논쟁의 핵심은 불확실성입니다.

초기 ML 작업은 불확실성으로 가득 차 있습니다. 다음과 같은 문제들을 다루게 됩니다:

  • 의존성 문제
  • 잘못된 텐서 형태(tensor shapes)
  • 데이터 리셰이핑(reshaping) 필요성
  • 환경 오류

이 단계에서 클라우드를 사용하면, 당신의 혼란에 비용을 지불하게 됩니다. 모든 실수가 돈으로 직결됩니다. 오류 메시지를 디버깅하며 보내는 매 시간은 비용이 발생하는 시간입니다. 클라우드는 당신의 혼란에 더 빠른 엔진을 달아줄 뿐입니다.

로컬 하드웨어는 다른 목적을 수행합니다. 불확실성이 저렴한 곳입니다. 워크스테이션을 사용하면 시간당 요금의 압박 없이 작은 모델을 테스트하고 가설을 검증할 수 있습니다. 실패를 개인적으로, 그리고 무료로 할 수 있게 해줍니다.

클라우드는 워크로드가 성숙해졌을 때 유용해집니다.

다음과 같은 경우에 클라우드를 사용하세요:

  • 컨테이너가 안정적일 때
  • 데이터셋이 준비되었을 때
  • 메모리 프로필을 예측할 수 있을 때
  • 대규모 확장이 필요할 때

클라우드 컴퓨팅은 실행을 위한 것이고, 로컬 컴퓨팅은 탐색을 위한 것입니다.

프로페셔널리즘은 가장 큰 머신을 사용하는 것이 아닙니다. 자신의 작업이 책상을 떠날 준비가 되었을 때를 아는 것입니다.

작업이 무엇인지 여전히 탐색 중이라면 로컬에 머무르세요. 작업이 무엇인지 파악했고 더 빠르게 처리해야 한다면 클라우드로 이동하세요.

모호한 실험을 값비싼 인프라로 감싸기 위해 클라우드를 사용하지 마세요. 작업이 그 자리에 앉을 자격을 갖출 때까지 기다리십시오.

Source: https://dev.to/lareleem/local-or-not-the-workload-has-to-earn-the-cloud-2boe

Optional learning community: https://t.me/GyaanSetuAi