Well-Architected Framework: AI 및 ML 관점의 이 문서는 Google Cloud에서 AI 및 ML 워크로드의 성능을 최적화하는 데 도움이 되는 원칙과 권장사항을 간략히 설명합니다. 이 문서의 권장사항은 Google Cloud Well-Architected Framework의 성능 최적화 요소와 일치합니다.
AI 및 ML 시스템은 조직에 새로운 자동화 및 의사 결정 기능을 지원합니다 이러한 시스템의 성능은 수익, 비용, 고객 만족도와 같은 비즈니스 동인에 직접적인 영향을 줄 수 있습니다. AI 및 ML 시스템의 잠재력을 최대한 활용하려면 비즈니스 목표와 기술 요구사항에 따라 성능을 최적화해야 합니다. 성능 최적화 프로세스에는 종종 특정 장단점이 있습니다. 예를 들어 필요한 성능을 제공하는 디자인을 선택하면 비용이 높아질 수 있습니다. 이 문서의 권장사항은 비용과 같은 다른 고려사항보다 성능을 우선시합니다.
AI 및 ML 성능을 최적화하려면 모델 아키텍처, 매개변수, 학습 전략과 같은 요소와 관련하여 결정을 내려야 합니다. 이러한 결정을 내릴 때는 AI 및 ML 시스템의 전체 수명 주기와 배포 환경을 고려하세요. 예를 들어 매우 큰 LLM은 대규모 학습 인프라에서 높은 성능을 발휘할 수 있지만, 초대형 모델은 휴대기기와 같이 용량이 제한된 환경에서는 제대로 작동하지 않을 수 있습니다.
비즈니스 목표를 실적 목표로 전환
성능을 최적화하는 아키텍처와 관련된 결정을 내리려면 명확한 비즈니스 목표부터 시작하세요. 비즈니스 목표 및 우선순위를 지원하는 데 필요한 기술적 성능을 제공하는 AI 및 ML 시스템을 설계합니다. 기술팀은 실적 목표와 비즈니스 목표 간의 매핑을 이해해야 합니다.
다음 권장사항을 고려하세요.
- 비즈니스 목표를 기술 요구사항으로 전환: AI 및 ML 시스템의 비즈니스 목표를 특정 기술 성능 요구사항으로 변환하고 요구사항을 충족하지 않을 경우의 영향을 평가합니다. 예를 들어 고객 이탈을 예측하는 애플리케이션의 경우 ML 모델은 정확성 및 재현율과 같은 표준 측정항목에서 잘 작동해야 하며 또한 애플리케이션이 짧은 지연 시간과 같은 운영 요구사항을 충족해야 합니다.
- 모델 수명 주기의 모든 단계에서 성능 모니터링: 모델 배포 후 실험과 학습을 진행하는 동안 핵심성과지표 (KPI)를 모니터링하고 비즈니스 목표와의 편차를 관찰합니다.
- 재현 가능하고 표준화되도록 평가 자동화: 비교 가능한 표준화된 실험 평가 플랫폼과 방법론을 통해 엔지니어의 성능 개선 속도를 높일 수 있습니다.
빈번한 실험 실행 및 추적
혁신과 창의성을 성능 향상으로 전환하려면 실험을 지원하는 문화와 플랫폼이 필요합니다. AI 및 ML 기술이 지속적이고 빠르게 발전하고 있으므로 성능 개선은 지속적인 프로세스입니다. 빠른 속도의 반복 프로세스를 유지하려면 실험 공간을 학습 및 제공 플랫폼과 분리해야 합니다. 표준화되고 강력한 실험 프로세스가 중요합니다.
다음 권장사항을 고려하세요.
- 실험 환경 구축: 성능을 개선하려면 ML 파이프라인의 실험과 공동 개발을 지원하는 강력한 전용 대화형 환경이 필요합니다.
- 문화로 실험 삽입: 프로덕션 배포 전에 실험을 진행합니다. 새 버전을 반복적으로 출시하고 항상 성능 데이터를 수집하세요. 다양한 데이터 유형, 특성 변환, 알고리즘, 초매개변수를 실험해 보세요.
학습 및 서빙 서비스 빌드 및 자동화
AI 모델 학습 및 서빙은 AI 서비스의 핵심 구성요소입니다. AI 모델의 빠르고 안정적인 생성, 배포, 서빙을 지원하는 강력한 플랫폼과 관행이 필요합니다. 핵심 AI 학습 및 서빙 작업을 위한 기초 플랫폼을 만드는 데 시간과 노력을 투자하세요 이러한 기반 플랫폼은 팀의 시간과 노력을 줄이고 중장기적으로 출력 품질을 개선하는 데 도움이 됩니다.
다음 권장사항을 고려하세요.
- 학습 서비스의 AI 전문 구성요소 사용: 이러한 구성요소에는 특성 저장소, 모델 레지스트리, 메타데이터 저장소, 모델 성능 평가 서비스와 같은 고성능 컴퓨팅 및 MLOps 구성요소가 포함됩니다.
- 예측 서비스의 AI 전문 구성요소 사용: 이러한 구성요소는 고성능 및 확장 가능한 리소스를 제공하고 특성 모니터링을 지원하고 모델 성능 모니터링을 지원합니다. 성능 저하를 방지하고 관리하려면 안정적인 배포 및 롤백 전략을 구현하세요.
성능 요구사항에 맞는 디자인 선택
성능 향상을 위한 설계를 선택할 때 이러한 선택사항이 비즈니스 요구사항에 부합하는지 아니면 낭비이고 비생산적인지 신중하게 평가해야 합니다. 적절한 인프라, 모델 또는 구성을 선택하려면 성능 병목 현상을 식별하고 성능 측정값과 어떻게 연결되는지 평가하세요. 예를 들어 매우 강력한 GPU 가속기를 사용하더라도 스토리지 레이어의 데이터 I/O 문제 또는 모델 자체의 성능 제한으로 인해 학습 작업에서 성능 병목 현상이 발생할 수 있습니다.
다음 권장사항을 고려하세요.
- 성능 목표에 따라 하드웨어 소비 최적화: 성능 요구사항을 충족하는 ML 모델을 학습시키고 제공하려면 컴퓨팅, 스토리지, 네트워크 레이어에서 인프라를 최적화해야 합니다. 성능 목표에 영향을 미치는 변수를 측정하고 이해해야 합니다. 이러한 변수는 학습 및 추론에서 다릅니다.
- 워크로드별 요구사항에 집중: 성능 최적화를 위해 AI 및 ML 워크로드의 고유한 요구사항에 집중합니다. 기본 인프라의 성능을 위해 관리형 서비스를 사용합니다
- 적절한 학습 전략 선택: 여러 가지 선행 학습된 기반 및 기반 모델을 사용할 수 있으며, 이러한 모델이 더 자주 출시되고 있습니다. 작업에 최적의 성능을 제공할 수 있는 학습 전략을 선택합니다. 자체 모델을 빌드할지, 데이터를 대상으로 선행 학습된 모델을 조정할지, 선행 학습된 모델 API를 사용할지를 결정합니다.
- 실적 최적화 전략은 수익이 떨어질 수 있음을 인지: 특정 실적 최적화 전략이 측정 가능한 비즈니스 가치 증가분을 제공하지 않는다면 해당 전략의 추구를 중단합니다.
성능 측정항목을 연결하여 설계 및 구성 선택
혁신을 이루고, 문제를 해결하고, 성능 문제를 조사하려면 설계 선택과 성능 결과 간의 명확한 링크를 설정해야 합니다. 실험 외에도 애셋, 배포, 모델 출력, 출력을 생성한 구성 및 입력의 계보를 안정적으로 기록해야 합니다.
다음 권장사항을 고려하세요.
- 데이터 및 모델 계보 시스템 빌드: 배포된 모든 애셋과 해당 성능 측정항목은 데이터, 구성, 코드, 그리고 배포된 시스템을 이끈 선택사항과 다시 연결되어야 합니다. 또한 모델 출력은 특정 모델 버전 및 출력이 생성된 방식과 연결되어야 합니다.
- 설명 기능 도구를 사용하여 모델 성능 개선: 모델 탐색 및 설명 가능성을 위해 도구와 벤치마크를 채택하고 표준화합니다. 이러한 도구는 ML 엔지니어가 모델 동작을 이해하고 성능을 개선하거나 편향을 제거하는 데 도움이 됩니다.
참여자
저자:
- 벤자민 사딕 | AI 및 ML 전문가 고객 엔지니어
- 필리페 그라시오, 박사 | 고객 엔지니어
기타 참여자: