딥러닝 3대 트렌드 ‘클라우드·상호운용성·멀티배포’
상태바
딥러닝 3대 트렌드 ‘클라우드·상호운용성·멀티배포’
  • 데이터넷
  • 승인 2019.03.20 09:18
  • 댓글 0
이 기사를 공유합니다

이웅재 매스웍스코리아 이사, 딥러닝 소요 시간 줄이기 위한 세 가지 방안 제안
▲ 이웅재 매스웍스코리아 이사

딥러닝 네트워크를 처음 접하는 사람은 이 기술에 대해 이해하기 위해 인터넷에서 ‘딥러닝이란 무엇인가?’라고 검색해 볼 것이다. 몇 시간 동안 딥러닝에 대한 시행착오를 겪은 후, 딥러닝을 이해하는 데에는 많은 시간이 걸릴 것이라는 사실을 깨닫게 될 것이다.

필자는 ‘딥러닝이란 무엇인가?’라는 단순한 질문 보다는 딥러닝의 중간 단계, 그리고 이 단계의 난제에 대응하기 위해 부상하고 있는 트렌드에 대해 이야기하고자 한다. 딥러닝의 많은 시간이 소요되는 몇 가지 작업을 줄이는 데 도움이 될 수 있는 세 가지 트렌드를 소개한다.

첫 번째 트렌드는 클라우드 컴퓨팅이다. 복잡한 네트워크를 학습시키는 데는 많은 시간이 소요된다. 베이지안 최적화(Bayesian optimization)와 같이 다양한 교육 파라미터로 네트워크를 여러 번 학습시키는 기술을 사용하면 강력한 결과를 제공할 수 있지만, 더 오랜 시간이 걸린다.

이러한 문제를 해결하는 옵션 중 하나는 로컬 리소스를 클러스터(HPC) 또는 클라우드로 옮기는 것이다. 클라우드는 최신 하드웨어를 제공하고, 동시에 여러 GPU를 사용하는 것이 가능하며, 필요할 때만 사용하고 그에 다른 비용을 지불할 수 있어 훌륭한 리소스로 떠오르고 있다.

두 번째 트렌드는 상호운용성이다. 딥러닝에 대한 모든 것을 처음부터 끝까지 ‘동급 최고’로 제공할 수 있는 단일 프레임워크는 존재하지 않는다. 주로 ONNX.ai를 통해 이루어지는 딥러닝 프레임워크 간의 상호운용성 트렌드는 사용자가 편의에 맞게 딥러닝 프레임워크를 안팎으로 전환할 수 있도록 지원한다.

페이스북, 마이크로소프트 및 매스웍스 같은 기업에서는 이러한 트렌드의 발전을 추진하고 있는데, 그 이유는 지금이 바로 딥러닝 프레임워크의 다양성을 살펴볼 최적의 시기이기 때문이다.

마지막 트렌드는 멀티 배포(Multi-deployment) 옵션이다. 원하는 작업을 수행할 수 있는 딥러닝 모델을 만들었다면 이제 최종 단계를 거쳐야 한다. 멀티 배포는 다양하게 해석될 수 있지만, 보통은 ‘특정한 요구 사항에 따라 올바른 위치에 모델을 배포하는 것’으로 정의할 수 있으며, 여기서 말하는 올바른 위치는 웹, 스마트폰, 임베디드 프로세서 또는 GPU다.

GPU가 목표라면, 쿠다(CUDA)를 사용해 코드 최적화를 통한 놀라운 속도향상을 경험할 수 있다. 쿠다 외에, 텐서RT(TensorRT) 및 쓰러스트(Thrust)와 같은 최적화 라이브러리 또한 눈 여겨 볼 가치가 있다. 결과에 차이가 있을 수 있지만, 엔비디아(NVIDIA)의 경우, 추론용 CPU 전용 플랫폼 대비 최대 40배의 텐서RT 속도를 자랑한다.

매스웍스의 매트랩(MATLAB) 릴리즈 2018b(Release 2018b)는 참조 아키텍처 및 NGC 컨테이너를 통한 클라우드 컴퓨팅, ONNX.ai 가져오기 및 내보내기 기능, 텐서RT를 통한 쿠다 같은 멀티 배포 옵션을 비롯하여 이러한 트렌드를 모두 수용할 수 있는 기능이 포함돼 있다. 기존에 사용하고 있는 딥러닝 툴이 있더라도 딥러닝 프레임워크 간의 상호운용성(트렌드 2)을 고려하면, 매트랩의 딥러닝 기능과 애플리케이션을 확인해 보는 것을 권한다.


댓글삭제
삭제한 댓글은 다시 복구할 수 없습니다.
그래도 삭제하시겠습니까?
댓글 0
댓글쓰기
계정을 선택하시면 로그인·계정인증을 통해
댓글을 남기실 수 있습니다.