BLOG

하이브리드 머신 러닝 소개
작성일: 2022-02-14

하이브리드 머신 러닝 소개

 

Gartner는 2024말까지 기업의 75%가 인공지능 (A1) 파일럿에서 운영으로 전환하고 대부분의 워크로드가 장기적으로 클라우드로 전환될 것으로 예측합니다. 클라우드로 마이그레이션하려는 일부 기업의 경우 마이그레이션의 복잡성, 규모 및 기간이 부담스러울 수 있습니다. 팀마다 속도와 새로운 툴링에 대한 욕구는 크게 다를 수 있습니다. 기업의 데이터 과학팀은 최신 클라우드 기술을 도입하고자 하지만, 애플리케이션 개발팀은 온프레미스에서 웹 애플리케이션을 실행하는데 주력할 수 있습니다. 다년 클라우드 마이그레이션 계획이 있더라도 기업의 비즈니스 결과를 충족하려면 일부 제품 릴리스는 클라우드 기반으로 구축되어야 합니다.

 

이러한 고객을 위해 클라우드로 전환하는 중간 단계로 하이브리드 머신 러닝(ML) 패턴을 제안합니다. 하이브리드 ML 패턴은 일반적으로 개인용 노트북 또는 회사 데이터 센터와 같은 로컬 컴퓨팅 리소스와 클라우드와 같은 최소 2개의 컴퓨팅 환경을 포함하는 패턴입니다. 이 게시물에서 설명하는 하이브리드 ML 아키텍처 패턴을 통해 기업은 클라우드 마이그레이션이 완료될 때까지 기다릴 필요 없이 원하는 비즈니스 목표를 달성할 수 있습니다. 결국, 우리는 모든 형태로 고객의 성공을 지원하고 싶습니다.

 

클라우드를 기존 온프레미스 ML 인프라와 통합하는 데 도움이 되는 새로운 백서인 하이브리드 머신 러닝을 게시했습니다. AWS의 백서를 더 보려면 AWS 백서 및 안내서를 참조하십시오.

 

 

하이브리드 ML 아키텍처 패턴

 

백서는 ML 모델 개발, 데이터 준비, 교육, 배포 및 지속적인 관리를 포함하여 ML 수명 주기 전반에 걸친 다양한 하이브리드 ML 패턴에 대한 개요를 제공합니다. 다음 표에는 백서에서 설명하는 8가지 하이브리드 ML 아키텍처 패턴이 요약되어 있습니다. 각 패턴에 대해 장점과 단점 외에도 예비 참조 아키텍처를 제공합니다. 또한 의사결정에 도움이 되는 “이동 시기” 기준을 식별합니다 (예: 주어진 패턴을 유지하고 확장하기 위한 노력 수준이 제공하는 가치를 초과하는 경우).

 


이번 포스팅에서는 클라우드에서 호스팅 되는 모델을 온프레미스에서 호스팅되는 애플리케이션에 제공하는 데 중점을 두고 배포를 위한 하이브리드 아키텍처 패턴에 대해 자세히 설명하도록 하겠습니다.

 

아키텍처 개요

 

이러한 하이브리드 패턴의 가장 일반적인 사용 사례는 엔터프라이즈 마이그레이션입니다. 데이터 과학팀은 클라우드에 배포할 준비가 되었지만, 애플리케이션 팀은 여전히 클라우드 네이티브 서비스에서 호스팅하도록 코드를 리팩토링하고 있을 수 있습니다. 이 접근 방식을 통해 데이터 사이언티스트는 최신 모델을 시장에 출시할 수 있으며, 애플리케이션 팀은 나머지 애플리케이션을 클라우드로 이동할 시기, 위치 및 방법을 별도로 고려할 수 있습니다.

 

다음 다이어그램은 AWS 리전에서 Amazon SageMaker를 통해 ML 모델을 호스팅하고 온프레미스에서 호스팅 되는 애플리케이션의 요청에 대한 응답을 제공하기 위한 아키텍처를 보여줍니다.

 

 

기술 심층 분석

 

이 섹션에서는 기술 아키텍처에 대해 자세히 살펴보고 하이브리드 워크로드를 구성하는 다양한 구성 요소에 초점을 맞추고 필요에 따라 리소스를 참조합니다.

 

애플리케이션 개발팀이 온프레미스에서 전자상거래 웹 애플리케이션을 호스팅한 소매 회사의 실제 사용 사례를 살펴보겠습니다. 이 회사는 데이터를 사용하여 더욱 정교하고 독특한 고객 경험을 제공함으로써 브랜드 충성도를 높이고 매출과 수익을 늘리며 효율성을 높이고자 합니다. 이들은 홈 화면에 “추천” 위젯을 추가하여 고객 참여도를 50%까지 높일 계획입니다. 그러나 정적인 규칙 기반 시스템의 한계, 복잡성과 비용, 현재 레거시 온프레미스 아키텍처로 인한 플랫폼 통합의 마찰로 인해 맞춤형 경험을 제공하는 데 어려움을 겪고 있습니다.

 

애플리케이션 팀은 클라우드로 이동하기 위해 클라우드 네이티브 아키텍처를 사용하여 웹 애플리케이션을 리팩토링하는 5년 엔터프라이즈 마이그레이션 전략을 가지고 있지만, 데이터 과학팀은 클라우드에서 구현을 시작할 준비가 되어 있습니다. 이 게시물에서 설명하는 하이브리드 아키텍처 패턴을 사용하면 회사는 5년 엔터프라이즈 마이그레이션이 완료될 때까지 기다릴 필요 없이 원하는 비즈니스 결과를 신속하게 달성할 수 있습니다.

 

데이터 사이언티스트는 ML 모델을 개발하고, 교육을 수행하고, 교육된 모델을 클라우드에 배포합니다. 온프레미스에서 호스팅 되는 전자상거래 웹 애플리케이션은 노출된 엔드포인트를 통해 ML 모델을 사용합니다. 자세히 살펴보겠습니다. 

 

모델 개발 단계에서 데이터 사이언티스트는 개인용 컴퓨터에서 PyCharm 또는 Jupyter 설치와 같은 로컬 개발 환경을 사용한 다음 AWS Identity and Access Management (IAM) 권한을 통해 클라우드에 연결하고 AWS Command Line Interface (AWS CLI) 또는 AWS SDK (예: Boto3)를 통해 AWS 서비스 API와 인터페이스 할 수 있습니다. 또한, 모델 개발을 위해 사전 설치된 공동 데이터 과학 패키지 및 커널과 함께 제공되는 단일 웹 기반 시각적 인터페이스인 Amazon SageMaker Studio를 사용할 수 있는 유연성이 있습니다.

 

데이터 사이언티스트는 SageMaker 교육 SDK 및 API를 사용하여 주문형 CPU 및 GPU 인스턴스에 대한 액세스, 자동 모델 튜닝, 관리형 스팟 인스턴스, 모델 상태 저장을 위한 체크포인트, 관리형 분산 교육 등을 포함한 SageMaker 교육 기능을 활용할 수 있습니다. SageMaker를 사용한 모델 교육에 대한 개요는 Amazon SageMaker를 사용한 모델 교육을 참조하십시오.

 

모델이 훈련된 후 데이터 사이언티스트는 SageMaker 호스팅 기능을 사용하여 모델을 배포하고 온프레미스에서 호스팅되는 최종 애플리케이션에 예측을 제공하는 REST HTTP(s) 엔드포인트를 노출할 수 있습니다. 애플리케이션 개발팀은 온프레미스 애플리케이션을 통합하여 SageMaker 호스팅 엔드포인트를 통해 ML 모델과 상호 작용하여 추론 결과를 얻을 수 있습니다. 애플리케이션 개발자는 몇 밀리초의 짧은 응답 시간으로 애플리케이션 프로그래밍 인터페이스 (API) 요청을 통해 배포된 모델에 액세스할 수 있습니다. 이는 개인 맞춤형 제품 추천 등 실시간 대응이 필요한 사용 사례를 지원합니다.

 

온프레미스 클라이언트 애플리케이션은 VPN 또는 Direct Connect 연결을 사용하여 프라이빗 네트워크를 통해 AWS의 SageMaker 호스팅 엔드포인트에서 호스팅 되는 ML 모델과 연결하여 최종 사용자에게 추론 결과를 제공합니다. 클라이언트 애플리케이션은 클라이언트 라이브러리를 사용하여 프로그래밍 방식으로 구성된 필수 인증 자격 증명 및 예상 페이로드와 함께 HTTP Post 요청을 사용하여 엔드포인트를 호출할 수 있습니다. 또한 SageMaker에는 클라이언트 애플리케이션 환경에 저장된 AWS 자격 증명을 사용한 인증과 같은 낮은 수준의 세부 사항 중 일부를 추상화하는 명령과 라이블러리 (예: AWS CLI의 SageMaker invoke-endpoint 런타임 명령, Boto3의 SageMaker 런타임 클라이언트 (Python용 AWS SDK), SageMaker Python SDK의 Predictor 클래스)도 있습니다.

 

인터넷을 통해 엔드포인트에 액세스 할 수 있도록 하기 위해 Amazon API Gateway를 사용할 수 있습니다. API Gateway에서 SageMaker 호스팅 엔드포인트에 직접 액세스할 수 있지만, 사용할 수 있는 일반적인 패턴은 그사이에 AWS Lamda 함수를 추가하는 것입니다. 엔드포인트에서 예상하는 형식으로 요청을 보내는데 필요할 수 있는 모든 사전 처리 또는 응답을 클라이언트 애플리케이션에 필요한 형식으로 변환하는 사후처리에 Lambda 함수를 사용할 수 있습니다. 자세한 내용은 Amazon API Gateway 및 AWS Lambda를 사용하여 Amazon SageMaker 모델 엔드포인트 호출을 참조하십시오.

 

온프레미스 클라이언트 애플리케이션은 VPN 또는 Direct Connect 연결을 사용하여 프라이빗 네트워크를 통해 AWS의 SageMaker에 호스팅되는 ML 모델과 연결하여 최종 사용자에게 추론 결과를 제공합니다.

 

다음 다이어그램은 데이터 과학팀이 ML 모델을 개발하고, 교육을 수행하고, 훈련된 모델을 클라우드에서 배포하는 반면 애플리케이션 개발팀은 온프레미스에서 전자 상거래 웹 애플리케이션을 개발 및 배포하는 방법을 보여줍니다.

 

 

 

모델이 프로덕션 환경에 배포된 후 데이터 사이언티스트는 Amazon SageMaker Model Monitor를 사용하여 ML 모델의 품질을 실시간으로 지속해서 모니터링할 수 있습니다. 또한 데이터 드리프트 및 이상과 같은 모델 품질의 편차가 발생할 때 자동 경고 트리거 시스템을 설정할 수 있습니다. Amazon CloudWatch Logs는 모델 상태를 모니터링하는 로그 파일을 수집하고 모델 품질이 특정 임계 값에 도달하면 사용자에게 알립니다. 이를 통해 데이터 사이언티스트는 모델을 수동으로 모니터링하지 않고도 모델 재교육, 업스트림 시스템 감사 또는 품질 문제 수정과 같은 수정 조치를 취할 수 있습니다. AWS Managed Service를 사용하면 데이터 과학팀이 모니터링 솔루션을 처음부터 구현하는 단점을 피할 수 있습니다.

 

데이터 사이언티스트는 Amazon SageMaker Inference Recommender를 사용하여 SageMaker ML 인스턴스에서 로드 테스트 및 모델 조정을 자동화하여 프로덕션 환경에서 ML 모델을 배포하는데 필요한 전체 시간을 줄일 수 있습니다. 데이터 사이언티스트가 ML 모델에 가장 적합한 인스턴스 유형 및 구성 (예: 인스턴스 수, 컨테이너 매개변수, 모델 최적화)을 선택하는 데 도움이 됩니다.

 

마지막으로, ML 모델 호스팅과 애플리케이션 호스팅을 분리하는 것이 항상 모범 사례입니다. 이 접근 방식에서 데이터 사이언티스트는 전용 리소스를 사용하여 ML 모델, 특히 애플리케이션과 분리된 모델을 호스팅하므로 더 나은 모델을 푸시하는 프로세스가 크게 간소화됩니다. 이는 혁신 플라이휠의 핵심 단계입니다. 이는 또한 호스팅된 ML 모델과 애플리케이션 간의 어떠한 형태의 긴밀한 결합도 방지하여 모델의 성능을 향상할 수 있게 합니다.

 

이 접근 방식은 업데이트된 연구 동향에 따라 모델 성능을 향상할 뿐만 아니라 업데이트된 데이터로 모델을 재배포할 수 있는 기능도 제공합니다. 글로벌 COVID-19 대유행은 시장이 항상 변화하고 있으며 ML 모델이 최신 트렌드를 따라야 한다는 현실을 보여주었습니다. 해당 요구 사항을 충족할 수 있는 유일한 방법은 업데이트된 데이터로 모델을 재교육하고 재배포할 수 있는 것입니다.

 

 

결론

 

Lambda@Edge, AWS Outposts, AWS Local ZonesAWS Wavelength를 통해 ML 모델을 호스팅하기 위한 추가 패턴을 살펴보는 Hybrid Machine Learning 백서를 확인하십시오. 전체 ML 수명 주기에 걸쳐 하이브리드 ML 패턴을 탐구합니다. 클라우드에서 교육 및 배포하면서 로컬에서 개발하는 방법을 살펴봅니다. 클라우드에 배포하기 위해 로컬에서 훈련하는 패턴과 온프레미스에서 애플리케이션을 제공하기 위해 클라우드에서 ML 모델을 호스팅하기 위한 패턴에 대해서 논의합니다.

원문URL:https://aws.amazon.com/ko/blogs/database/mint-and-deploy-nfts-to-the-ethereum-blockchain-using-amazon-managed-blockchain/

메가존 클라우드 TechBlog는 AWS BLOG 영문 게재 글이나 관련 기사 중에서 한국 사용자들에게 유용한 정보 및 콘텐츠를 우선적으로 번역하여 내부 엔지니어 검수를 받아 정기적으로 게재하고 있습니다. 추가로 번역 및 게재를 희망하는 글에 대해서 관리자에게 메일 또는 SNS 페이지에 댓글을 남겨주시면, 우선적으로 번역해서 전달해드리도록 하겠습니다.