머신 러닝(Machine Learning)은 현대 비즈니스를 재편하고 있습니다. 대부분의 VMware 고객은 수익을 증대하거나 비용을 절감하기 위해 머신 러닝을 고려하고 있습니다. 고객과 대화할 때 주로 (수직) 교육 및 추론 스택 세부 사항에 대해 논의합니다. 스택은 컨테이너 또는 VM 내에서 머신 러닝 모델을 실행하며, 가급적이면 범용 GPU와 같은 액셀러레이터 장치에 탑재합니다. 이는 주로 당사의 DNA가 머신 러닝 워크로드를 하드웨어 리소스와 직접 연관시킬 수 있게 해주었기 때문이라고 생각합니다.
그러나 머신 러닝(ML)은 우리가 그것보다 훨씬 더 넓게 생각할 수 있게 해줍니다. 가장 많이 인용된 머신 러닝 논문 중 하나인 “Machine Learning: The High-Interest Credit Card of Technical Debt,”는 ML 코드를 실행하는 것이 광범위하고 복잡한 하드웨어 및 소프트웨어 엔지니어링 시스템의 극히 일부에 불과하다는 것을 보여줍니다.
머신 러닝 인프라 플랫폼
현재 VMware 플랫폼은 이미 ML 실무자에게 많은 기능을 제공할 수 있습니다. 머신 러닝 플랫폼을 수직적 훈련과 추론 스택을 연결하는 수평적 패브릭으로 분해할 수 있습니다. 수평 패브릭의 예로는 데이터를 수집하여 교육용 스택에 교육용 데이터 세트를 제공하는 데이터 파이프라인을 들 수 있습니다. 또는 센서에서 ISV 사전 훈련된 모델로 데이터를 스트리밍하고 로봇 팔의 동작을 제어하는 파이프라인일 수 있습니다. 모든 기능, 애플리케이션 및 서비스는 VMware 플랫폼에서 실행될 수 있는 컨테이너 및 VM에 의해 지원됩니다.
수직적 교육 스택을 넘어서면 플랫폼 설계자로서 수년간 보살펴온 친숙한 구조를 즉시 볼 수 있습니다. 대부분의 데이터베이스는 vSphere 플랫폼에서 실행됩니다. 이러한 데이터 중 상당수는 데이터를 포함하고 있습니다. 과학자들은 모델을 교육하는 데 사용하고자 합니다. vSphere 플랫폼은 데이터를 추출하고 변환하는 데 필요한 모든 서비스를 효율적이고 경제적으로 실행할 수 있습니다. 스토리지 서비스는 컴퓨팅 능력에 가까운 데이터를 안전하고 안전하게 저장합니다. 핵심 서비스와 결합된 네트워킹 및 보안 서비스는 데이터 수집 시점부터 모델이 제공되는 에지 위치까지 데이터 스트림에 내재된 보안을 제공할 수 있습니다.
이 서비스를 통해 각 데이터 과학 팀은 필요할 때마다 소프트웨어를 개발 환경으로 가져올 수 있습니다. IT 조직은 “VMware Application Catalog”(이전의 Bitnami)와 같은 셀프 서비스 마켓플레이스 서비스를 사용하여 데이터 과학 책임자와 협력하여 ML 인프라 툴체인을 관리할 수 있습니다.
활용률이 낮은 리소스의 ROI를 개선
수직적 훈련과 추론 스택에 먼저 초점을 맞춘다면 오랫동안 논의된 동일한 이야기(적어도 나)를 적용할 수 있습니다. 이제 x86 사이클과 메모리 활용률에 대해 이야기하는 대신 가속기 리소스에 초점을 맞춥니다. 20년 전, 우리는 가상 머신을 도입하여 워크로드를 금속에서 분리함으로써 세상을 혁신했습니다. 서버 하드웨어의 활용률이 크게 저조하여 일반적으로 약 4%에 달했습니다. 이를 통해 고객은 가상화를 시작하도록 설득했습니다. 워크로드를 통합하고 이러한 워크로드의 다양한 피크 시간을 사용함으로써 고객은 금속에 대한 투자 수익률을 높일 수 있었습니다. 이 이야기는 오늘날의 가속기에 적용됩니다. GTC가 하락하는 동안, 오늘날의 가속기 활용률은 15%를 밑도는 것으로 보고되었습니다.
가속기는 비용이 많이 들고, 현재 공급망 문제로 인해 이러한 리소스를 확보하기가 매우 어렵습니다. 스케일아웃은 고사하고요.
조직이 여러 개의 활성 프로젝트가 있고 전용 리소스의 현재 접근 방식이 경제적으로 지속 가능하지 않다는 것을 알게 되면 조직 내에서 가속기 리소스의 가용성과 분배가 초점이 될 수 있습니다. 또는 IT 조직은 머신 러닝 플랫폼 서비스를 제공하는 방안을 모색하고 있습니다. 가속기 리소스의 풀링은 경제적인 관점에서 IT 조직에 도움이 되며 데이터 과학 팀에도 긍정적인 영향을 미칩니다. 데이터 과학 팀을 설득하는 열쇠는 모델 개발 라이프사이클 단계의 기능적 요구사항을 이해하고 이러한 요구사항을 충족시킬 수 있는 인프라를 구축하는 것입니다.
머신 러닝 모델은 특정 개발 라이프사이클인 개념(Concept) – 교육(Training) – 배치(Deployment)(추론 inference)를 따릅니다.
개념 단계
데이터 과학 팀은 개념 단계에서 사용할 프레임워크와 알고리즘을 결정합니다. 이 단계에서 DS 팀은 사용 가능한 데이터, 데이터 저장 위치 및 액세스 방법을 조사합니다. 그들은 작은 데이터 세트를 사용하여 몇 가지 테스트를 실행함으로써 아이디어의 실현 가능성을 연구합니다. 그 결과, 팀은 몇 가지 코드를 실행하고 테스트하며, 그 사이에 많은 유휴 시간을 갖습니다. 코드가 테스트될 때 실행 시간은 초에서 분입니다. 상상하신 바와 같이, 개별 데이터 과학자 또는 전용 고가의 GPU를 보유한 팀에 할당된 베어 메탈 머신의 집합은 이 시나리오에 대해 과도한 작업일 수 있습니다.
대부분의 경우 CPU는 이러한 테스트를 실행할 수 있는 충분한 전원을 제공합니다. 그러나 데이터 과학 팀이 모델과 GPU 아키텍처 조합의 효과와 동작을 연구하고자 한다면 가상화가 도움이 될 수 있습니다. VMware DNA의 두 가지 핵심 신조인 풀링과 추상화가 바로 이 순간입니다. 다양한 데이터 과학 팀의 노력을 중앙 집중식 환경에서 통합하고 부분 GPU(NVIDia vGPU) 또는 VMware Bitfusion(CUDA API의 인터셉트 및 원격)을 통해 원격 서비스를 제공할 수 있습니다. 또는 리소스 분리를 강화하여 성능을 예측할 수 있는 MIG(Multi-instance GPU) 기능을 사용할 수도 있습니다. 조직은 이러한 기능을 통해 데이터 과학 팀이 특정 모델을 개발하는 테스트 단계에 있을 때 워크로드를 실행할 수 있는 인프라를 효율적이고 경제적으로 제공할 수 있습니다.
교육 단계
가상화된 플랫폼은 모델의 교육 단계에도 유용합니다. 모델 개발 라이프사이클의 교육 단계에서 데이터 과학 팀은 처리량 지향적인 워크로드를 더 오랜 시간 동안 처리합니다. 일반적으로 병렬 처리 능력을 갖춘 더 큰 풀을 선택합니다. 이 단계에서는 CPU 리소스가 더 이상 절감되지 않으며, 대부분의 경우 단일 물리적 GPU의 일부로도 충분하지 않습니다. 성능 요구사항에 따라 고객은 GPU 카드 풀에 원격 기술(Bitfusion)을 사용하거나 하나 이상의 물리적 디바이스에서 워크로드를 직접 실행하는 데 PCI 패스스루 디바이스 기술을 사용할 수 있습니다.
그러나 교육 업무는 일시적인 것이기 때문에 워크로드의 고갈된 특성 때문에 전용 인프라를 보장해서는 안 됩니다. 어떤 때는 20시간, 어떤 때는 200시간 훈련입니다. 핵심은 GPU 리소스의 유휴 시간은 교육 작업이 완료된 후 발생한다는 것입니다. 데이터 과학 팀은 교육 작업의 결과를 검토하고 튜닝할 하이퍼 파라미터에 대해 논의합니다. 이 상황은 매우 비효율적입니다. 다른 데이터 과학 팀들이 자원을 얻기 위해 고군분투하는 동안 비용이 많이 드는 가속기는 공회전하고 있습니다. 가상화 플랫폼은 리소스를 민주화하고 데이터 과학 팀을 위한 리소스 스케일아웃을 지원할 수 있습니다. 데이터 과학 팀이 전용 인프라를 “포기”하도록 설득하려면 가상화의 본질과 풀링 및 추상화가 어떻게 그들의 요구 사항에 도움이 되는지 이해하는 것이 중요합니다.
가상화를 통해 데이터 과학 팀은 조직 전체에 분산된 GPU 풀을 중앙 집중식으로 사용할 수 있습니다. 교육 작업을 실행해야 하는 경우 전용 워크스테이션에 할당할 수 있는 리소스 수보다 해당 풀에서 훨씬 많은(예비되고 사용되지 않는) 리소스를 할당할 수 있습니다. 전담 리소스를 포기하는 대신 더 많은 리소스 풀을 자유롭게 사용할 수 있으므로 교육 기간이 단축됩니다.
배포 단계
구축 단계는 일반적으로 성능 중심입니다. 여기서 하이퍼바이저 오버헤드에 대한 오래된 논의를 만날 수 있습니다. 하이퍼바이저는 약간의 오버헤드를 발생시키지만 성능 팀은 이러한 격차를 줄이기 위해 노력하고 있습니다. 이제 한 자릿수(+-6%)에 도달했으며, 일부 경우에는 베어 메탈 성능에 근접했습니다. 따라서 다른 이점도 강조되어야 합니다. 워크로드에 가상 머신을 사용하거나 VM에서 Kubernetes를 실행하여 이기종 아키텍처를 처리할 수 있습니다. VMware 에코시스템은 규모에 맞게 구축 및 관리할 수 있도록 하며 규모에 맞게 라이프사이클 관리를 제공하는 데 중점을 둡니다. VMware의 워크로드 구조의 이동성과 이동성, 이러한 고유한 기능은 성숙한 조직에 중요하며 한 자릿수 성능 손실을 상쇄합니다.
데이터 과학 팀
일반적인 데이터 과학자 팀은 궁극적으로 머신 러닝 모델을 제공하는 데 중점을 두고 있으며, MBO는 이러한 모델을 최대한 빠르고 정확도로 제공한다고 밝혔습니다. 라이트 코딩(Python, R, Scala)은 일상 활동의 일부이지만, 대부분의 데이터 과학자는 소프트웨어 엔지니어링 경력이 없으므로 개발자보다 한 단계 높은 것으로 볼 수 있습니다. 결과적으로, 우리의 서비스는 그들을 개발자로 취급하지 말고, 오늘날 AI 세계에서 볼 수 있는 낮은 코드, 무코드 경향에 더 부합해야 합니다. 데이터 과학자는 인프라 아키텍처에 대해 깊이 이해하고 있지 않으며 깊이 이해해서는 안 됩니다. 가장 낮은 수준의 추상화는 주로 도커 컨테이너입니다. 대부분의 경우 Kubernetes는 “벤더” 요구사항입니다. 컨테이너 아래의 모든 인프라 계층은 데이터 과학자와 무관해야 하며, 우리의 플랫폼은 이러한 생각과 일치해야 합니다.
데이터 과학자는 VMware 플랫폼에서 작동하도록 데이터 및 머신 러닝 플랫폼을 최적으로 구성하는 방법을 배워서는 안 됩니다. VMware 클라우드 플랫폼은 이러한 결정을 데이터 과학자에게서 추상화하고 ML Ops 팀, IT 설계자 및 중앙 운영 팀이 이러한 애플리케이션과 서비스를 최적으로 실행할 수 있도록 (자동) 구성 요소를 제공해야 합니다.
데이터 과학자는 주로 IT 정책에 대해 알지 못합니다. 기업 IT 서비스 카탈로그에 포함되지 않은 기계와 소프트웨어가 있는 경우가 많습니다. 이러한 상황은 매우 민감한 회사의 데이터인 크라운 보석을 지속적으로 사용하기 때문에 심각한 보안 문제가 될 수 있습니다. 데이터는 현재 랜섬웨어 또는 기타 악성 관행에 대한 주요 표적으로 노출되어 있으며, 일반적으로 보안이 잘 되어 있지 않습니다. 현장 팀이 자주 보는 예 중 하나는 이 데이터가 매우 값비싼 Alienware 노트북에 저장되어 있다는 것입니다. 이 데이터는 보호되어야 하며 고위험 대상 장치에 저장해서는 안 됩니다.
현재 IT 플랫폼에는 하드웨어 가속기 또는 협업 컨테이너형 서비스 플랫폼이 없기 때문에 이러한 기기를 구입합니다. 이러한 장치를 횡령하면 회사 데이터가 유출되고 모델 개발 진행이 중단됩니다. 이 두 가지 문제 외에도, 조직은 고액 연봉의 데이터 과학 팀이 허둥대는 것을 원치 않습니다. 소프트웨어 및 하드웨어 요구 사항 모두에서 데이터 과학 팀의 요구를 충족할 수 있는 플랫폼을 준비하면 이러한 스레드가 제거되고 조직이 중앙 집중식 플랫폼의 다양한 이점을 활용할 수 있습니다.
데이터 과학자 팀에 고도로 전문화된 휴대용 장비를 제공하는 현재의 방법은 보안 측면에서 매우 큰 부담이 됩니다. 많은 데이터 과학 팀은 서비스 조정 부족으로 인해 중앙 집중식 IT 팀을 지원자로 보지 않습니다. 적절한 서비스와 장비를 갖춘 중앙 집중식 플랫폼을 제공하면 조직이 보안 위험을 크게 줄이는 동시에 중앙 집중식 플랫폼의 모든 이점을 활용하여 모델을 제공하는 데이터 과학 팀의 능력을 향상시킬 수 있습니다.
ML 인프라 플랫폼 중앙 집중화
한 걸음 더 나아가 전용 물리적 시스템이 아닌 공유 인프라에서 ML 인프라 플랫폼을 실행함으로써 더 높은 수준의 경제성을 확보할 수 있습니다. 앞 단락에서 설명한 바와 같이, 데이터 과학 팀은 많은 조직에서 완전히 자율적으로 운영되며 전용 리소스를 자유롭게 사용할 수 있습니다. 조직 내의 개별 비즈니스 그룹이 데이터 과학 팀을 구성하고 있으며, 이러한 분산된 노력으로 인해 조직 전체에 흩어져 있는 고성능 시스템들이 조각난 컴퓨팅 및 스토리지 리소스 풀을 만듭니다. 여러 팀의 다양한 ML 인프라 서비스 워크로드를 하나의 플랫폼에 중앙 집중화하면 VMware 에코시스템이 제공하는 다양한 이점을 활용할 수 있습니다.
- 리소스 활용 효율성
- 리스크를 완화
- 워크로드 구성 표준화 및 라이프사이클 관리
- 데이터 인접(Data adjacency)
- 데이터 스트림을 위한 고유한 보안
- 개방형 플랫폼
하지만 이번 시리즈 2부에서는 이 주제들을 남겨두겠습니다.
출처 : https://frankdenneman.nl/2022/05/25/machine-learning-on-vmware-cloud-platform-part-1/