기계 학습 작업
기계 학습 작업(MLOps라고도 함)은 AI 기반 애플리케이션에 DevOps 원칙을 적용하는 것입니다. 조직에서 기계 학습 작업을 구현하려면 특정 기술, 프로세스, 기술이 있어야 합니다. 목표는 강력하고, 확장 가능하고, 안정적이며 자동화된 기계 학습 솔루션을 제공하는 것입니다.
이 문서에서는 조직 수준에서 기계 학습 작업을 지원하기 위해 리소스를 계획하는 방법을 알아봅니다. 기업에서 Azure Machine Learning을 사용하여 기계 학습 작업을 채택하는 데 기반이 된 모범 사례 및 권장 사항을 검토합니다.
기계 학습 작업이란?
최신 기계 학습 알고리즘 및 프레임워크를 사용하면 정확한 예측을 수행할 수 있는 모델을 개발하는 것이 점점 더 쉬워집니다. 기계 학습 작업은 기업의 애플리케이션 개발에 기계 학습을 통합하는 구조화된 방법입니다.
예제 시나리오에서는 모든 정확도 기대치를 초과하고 비즈니스 스폰서에게 깊은 인상을 주는 기계 학습 모델을 빌드했습니다. 이제 모델을 프로덕션에 배포해야 하지만, 예상한 만큼 쉽지 않을 수 있습니다. 조직은 프로덕션 환경에서 기계 학습 모델을 사용하기 전에 사람, 프로세스, 기술을 배치해야 할 수 있습니다.
시간이 지남에 따라 사용자 또는 동료가 원래 모델보다 성능이 더 좋은 새 모델을 개발할 수 있습니다. 프로덕션에 사용되는 기계 학습 모델을 대체하면 조직에 중대한 몇 가지 문제가 발생합니다.
- 배포된 모델을 사용하는 비즈니스 작업을 방해하지 않고 새 모델을 구현하려고 합니다.
- 규제 목적으로 모델의 예측을 설명하거나 새 모델의 데이터에서 비정상적이거나 편향된 예측이 발생하는 경우 모델을 다시 만들어야 할 수 있습니다.
- 기계 학습 교육 및 모델에 사용하는 데이터는 시간이 지남에 따라 변경될 수 있습니다. 데이터가 변경되면 예측 정확도를 유지하기 위해 모델을 주기적으로 다시 학습해야 할 수 있습니다. 개인 또는 역할에는 데이터를 공급하고, 모델의 성능을 모니터링하고, 모델을 다시 학습시키고, 실패할 경우 모델을 수정할 책임을 할당해야 합니다.
REST API를 통해 모델의 예측을 제공하는 애플리케이션이 있다고 가정합니다. 이와 같은 간단한 사용 사례도 프로덕션에서 문제를 일으킬 수 있습니다. 기계 학습 작업 전략을 구현하면 배포 문제를 해결하고 AI 기반 애플리케이션에 의존하는 비즈니스 운영을 지원할 수 있습니다.
일부 기계 학습 작업은 일반적인 DevOps 프레임워크에 적합합니다. 예를 들어 유닛 테스트 및 통합 테스트를 설정하고 버전 제어를 사용하여 변경 내용을 추적하는 것이 있습니다. 다른 작업은 기계 학습 작업에 더 고유하며 다음을 포함할 수 있습니다.
- 기준 모델에 대한 지속적인 실험 및 비교 사용
- 들어오는 데이터를 모니터링하여 데이터 드리프트 검색
- 재해 복구를 위해 모델 재학습 트리거 및 롤백 설정
- 학습 및 채점을 위해 재사용 가능한 데이터 파이프라인 만들기
기계 학습 작업의 목표는 개발과 프로덕션 간 격차를 해소하고 고객에게 더 빠르게 가치를 제공하는 것입니다. 이 목표를 달성하려면 기존 개발 및 프로덕션 프로세스를 재검토해야 합니다.
모든 조직의 기계 학습 작업 요구 사항이 동일하지는 않습니다. 대규모 다국적 기업의 기계 학습 작업 아키텍처는 소규모 스타트업이 설정하는 것과 동일한 인프라가 아닐 수 있습니다. 조직은 일반적으로 소규모로 시작하고 완성도, 모델 카탈로그, 환경이 증가함에 따라 확장됩니다.
기계 학습 작업 완성도 모델은 조직의 기계 학습 작업 성숙도 규모가 어느 정도인지 파악하고 향후 성장을 계획하는 데 도움이 될 수 있습니다.
기계 학습 작업 및 DevOps
기계 학습 작업은 여러 주요 영역의 DevOps와 다릅니다. 기계 학습 작업에는 다음과 같은 특징이 있습니다.
- 개발 및 운영에 앞서 탐색
- 데이터 과학 수명 주기에는 적응형 작업 방식이 필요합니다.
- 데이터 품질 및 가용성 제한 진행률 제한
- DevOps보다 더 많은 운영 노력이 필요합니다.
- 작업 팀에는 전문가 및 도메인 전문가가 필요합니다.
요약을 보려면 기계 학습 작업의 7가지 원칙을 검토합니다.
개발 및 운영에 앞서 탐색
데이터 과학 프로젝트는 애플리케이션 개발 또는 데이터 엔지니어링 프로젝트와 다릅니다. 데이터 과학 프로젝트는 프로덕션에 적용할 수 있지만 기존 배포보다 더 많은 단계가 관련되어 있는 경우가 많습니다. 초기 분석 후에는 사용 가능한 데이터 세트를 통해 비즈니스 성과를 달성할 수 없다는 것이 분명해질 수 있습니다. 다 자세한 탐색 단계는 일반적으로 데이터 과학 프로젝트의 첫 번째 단계입니다.
탐색 단계의 목표는 문제를 정의하고 구체화하는 것입니다. 이 단계에서는 데이터 과학자가 예비 데이터 분석을 실행합니다. 통계 및 시각화를 사용하여 문제의 가설을 확인하거나 조작합니다. 이해 관계자는 프로젝트가 이 단계 이상으로 확장되지 않을 수 있음을 이해해야 합니다. 동시에 빠른 소요 시간을 위해 이 단계를 최대한 원활하게 만드는 것이 중요합니다. 해결해야 할 문제에 보안 요소가 포함되어 있지 않으면 프로세스 및 프로시저로 예비 단계를 제한하지 마세요. 데이터 과학자는 선호하는 도구와 데이터를 사용할 수 있어야 합니다. 이 탐색 작업에는 실제 데이터가 필요합니다.
이해 관계자가 데이터 과학 프로젝트가 실현 가능하고 실제 비즈니스 가치를 제공할 수 있다고 확신하는 경우 프로젝트는 실험 및 개발 단계로 이동할 수 있습니다. 이 단계에서 개발 관행은 점점 더 중요해지고 있습니다. 이 단계에서 수행되는 모든 실험의 메트릭을 캡처하는 것이 좋습니다. 모델을 비교하고 코드의 여러 버전 간에 전환할 수 있도록 원본 제어를 통합하는 것도 중요합니다.
개발 작업에는 반복 가능한 실험 파이프라인에서 탐색 코드의 리팩터링, 테스트, 자동화가 포함됩니다. 조직은 모델을 제공하기 위해 애플리케이션 및 파이프라인을 만들어야 합니다. 코드를 모듈식 구성 요소와 라이브러리로 리팩터링하면 재사용 가능성, 테스트, 성능 최적화를 높일 수 있습니다.
마지막으로, 모델을 제공하는 애플리케이션 또는 일괄 처리 유추 파이프라인이 준비 또는 프로덕션 환경에 배포됩니다. 기계 학습 모델 배포에서는 표준 애플리케이션과 같은 인프라 안정성과 성능을 모니터링하는 것 외에도 데이터 품질, 데이터 프로필, 모델의 성능 저하 또는 드리프트를 지속적으로 모니터링해야 합니다. 기계 학습 모델은 변화하는 환경에서 관련성을 유지하기 위해 시간이 지남에 따라 재학습도 필요합니다.
데이터 과학 수명 주기에는 적응형 작업 방식이 필요합니다.
처음에는 데이터의 특성과 품질이 불확실하기 때문에 일반적인 DevOps 프로세스를 데이터 과학 프로젝트에 적용하는 경우 비즈니스 목표를 달성하지 못할 수 있습니다. 탐색 및 실험은 기계 학습 프로세스 전체에서 반복되는 활동 및 요구 사항입니다. Microsoft의 팀은 데이터 과학 관련 활동의 특성을 반영하는 프로젝트 수명 주기 및 작업 프로세스를 사용합니다. 팀 데이터 과학 프로세스 및 데이터 과학 수명 주기 프로세스는 참조 구현의 예입니다.
데이터 품질 및 가용성 제한 진행률 제한
기계 학습 팀이 기계 학습 기반 애플리케이션을 효과적으로 개발하려면 모든 관련 작업 환경에서 프로덕션 데이터에 액세스할 수 있어야 합니다. 규정 준수 요구 사항 또는 기술 제약 조건으로 인해 프로덕션 데이터 액세스가 불가능한 경우 Azure Machine Learning, Just-In-Time 액세스 또는 데이터 이동 파이프라인을 통해 Azure RBAC(역할 기반 액세스 제어)를 구현하여 프로덕션 데이터 복제본을 만들고 사용자 생산성을 강화하는 것이 좋습니다.
기계 학습에는 더 큰 운영 활동이 필요합니다.
기존 소프트웨어와 달리 기계 학습 솔루션의 성능은 데이터 품질에 따라 달라지므로 지속적으로 위험에 노출됩니다. 프로덕션에서 질적 솔루션을 유지하려면 데이터와 모델 품질을 지속적으로 모니터링하고 재평가하는 것이 중요합니다. 프로덕션 모델에는 적시에 재학습, 재배포 및 튜닝이 필요할 것으로 예상됩니다. 이 작업은 일상적인 보안, 인프라 모니터링, 규정 준수 요구 사항을 기반으로 하며 특별한 전문 지식이 필요합니다.
기계 학습 팀에는 전문가와 도메인 전문가가 필요합니다.
데이터 과학 프로젝트는 일반 IT 프로젝트와 역할을 공유하지만 기계 학습 작업의 성공은 필수적인 기계 학습 기술 전문가와 도메인 주제 전문가를 보유하고 있는지에 따라 크게 달라집니다. 기술 전문가는 엔드투엔드 기계 학습 실험을 수행할 수 있는 올바른 배경을 가지고 있습니다. 도메인 전문가는 데이터를 분석 및 합성하거나 사용할 데이터를 한정하여 전문가를 지원할 수 있습니다.
데이터 과학 프로젝트에 고유한 일반적인 기술 역할은 도메인 전문가, 데이터 엔지니어, 데이터 과학자, AI 엔지니어, 모델 유효성 검사자, 기계 학습 엔지니어입니다. 일반적인 데이터 과학 팀의 역할 및 작업에 관해 자세히 알아보려면 팀 데이터 과학 프로세스를 참조하세요.
기계 학습 작업의 7가지 원칙
조직에서 기계 학습 작업을 채택할 계획인 경우 다음과 같은 핵심 원칙을 기초로 적용하는 것이 좋습니다.
코드, 데이터, 실험 출력에 버전 제어를 사용합니다. 기존 소프트웨어 개발과 달리 데이터는 기계 학습 모델의 품질에 직접적인 영향을 미칩니다. 실험 코드베이스의 버전 관리와 함께 데이터 세트를 버전 관리하여 실험 또는 유추 결과를 재현할 수 있도록 해야 합니다. 모델과 같은 실험 출력을 버전 관리하면 재현 관련 활동을 줄이고 계산 비용을 절감할 수 있습니다.
다양한 환경을 사용합니다. 개발 및 테스트를 프로덕션 작업과 분리하려면 두 개 이상의 환경에서 인프라를 복제합니다. 사용자에 대한 액세스 제어는 각 환경에 따라 다를 수 있습니다.
코드로 인프라 및 구성을 관리합니다. 작업 환경에서 인프라 구성 요소를 만들고 업데이트하는 경우 환경에서 불일치가 발생하지 않도록 코드 제공 인프라를 사용합니다. 기계 학습 실험 작업 사양을 코드로 관리하여 여러 환경에서 실험 버전을 쉽게 다시 실행하고 다시 사용할 수 있습니다.
기계 학습 실험을 추적하고 관리합니다. 기계 학습 실험에 대한 핵심 성과 지표와 기타 아티팩트를 추적합니다. 작업 성능 기록을 유지하면 실험 성공의 정량적 분석을 수행하고 팀 협업과 민첩성을 향상할 수 있습니다.
코드를 테스트하고, 데이터 무결성의 유효성을 검사하고, 모델 품질을 확인합니다. 올바른 데이터 준비 및 기능 추출 함수, 데이터 무결성 및 모델 성능에 대한 실험 코드 베이스를 테스트 합니다.
기계 학습의 지속적인 통합 및 업데이트 CI(연속 통합)를 사용하여 팀의 테스트를 자동화합니다. 연속 학습 파이프라인의 일부로 모델 학습을 포함합니다. 릴리스의 일부로 A/B 테스트를 포함하여 프로덕션에서 정성적 모델만 사용하도록 합니다.
서비스, 모델, 데이터를 모니터링 기계 학습 작업 환경에서 모델을 제공하는 경우 인프라 작동 시간, 규정 준수, 모델 품질을 위해 해당 서비스를 모니터링하는 것이 중요합니다. 모니터링을 설정하여 데이터 및 모델 드리프트를 식별하거나, 재학습이 필요한지 여부를 이해합니다. 자동 재학습을 위한 트리거를 설정하는 것이 좋습니다.
Azure Machine Learning 모범 사례
Azure Machine Learning은 기계 학습 모델 학습 및 배포 워크플로의 수명 주기를 관리하는 데 도움이 되는 자산 관리, 오케스트레이션 및 자동화 서비스를 제공합니다. Azure Machine Learning에서 지원하는 사람, 프로세스, 기술 리소스 영역에서 기계 학습 작업을 적용하려면 모범 사례 및 권장 사항을 검토합니다.
사람
프로젝트 팀에서 조직에서 전문가와 도메인 지식을 가장 잘 사용하기 위한 작업을 합니다. 사용 사례 분리 요구 사항을 준수하도록 각 프로젝트에 대한 Azure Machine Learning 작업 영역을 설정합니다.
기계 학습 작업 프로젝트 팀에 모든 팀 구성원을 할당하고 여러 역할을 수행할 수 있도록 일련의 책임 및 작업을 역할로 정의합니다. Azure에서 사용자 지정 역할을 사용하여 각 역할이 수행할 수 있는 일련의 세분화된 Azure Machine Learning에 대한 Azure RBAC 작업을 정의합니다.
프로젝트 수명 주기 및 Agile 방법론을 표준화합니다. 팀 데이터 과학 프로세스는 참조 수명 주기 구현을 제공합니다.
균형 잡힌 팀은 탐색, 개발, 작업을 포함하여 모든 기계 학습 작업 단계를 실행할 수 있습니다.
Process
코드 템플릿을 표준화하여 새 프로젝트에서 또는 새 팀 구성원이 프로젝트에 참가할 때 코드 재사용을 허용하고 램프 업 시간을 가속화할 수 있습니다. Azure Machine Learning 파이프라인, 작업 제출 스크립트, CI/CD 파이프라인을 새 템플릿의 기초로 사용합니다.
버전 제어를 사용합니다. Git 지원 폴더에서 제출된 작업은 재현 가능성을 위해 Azure Machine Learning의 작업을 통해 리포지토리 메타데이터를 자동으로 추적합니다.
재현할 수 있도록 실험 입력 및 출력에 버전 관리를 사용합니다. 버전 관리 지원을 위해 Azure Machine Learning 데이터 세트, 모델 관리, 환경 관리 기능을 사용합니다.
비교, 계획, 협업을 위해 실험 실행의 실행 기록을 빌드합니다. MLflow와 같은 실험 추적 프레임워크를 사용하여 메트릭을 수집합니다.
전체 실험 코드베이스에서 CI를 통해 팀의 작업 품질을 지속적으로 측정하고 제어합니다.
모델이 수렴되지 않는 경우 프로세스 초기에 학습을 종료합니다. Azure Machine Learning에서 실험 추적 프레임워크 및 실행 기록을 사용하여 작업 실행을 모니터링합니다.
실험 및 모델 관리 전략을 정의합니다. 챔피언과 같은 이름을 사용하여 현재 기준 모델을 참조하는 것이 좋습니다. 챌린저 모델은 프로덕션에서 챔피언 모델을 능가할 수 있는 후보 모델입니다. Azure Machine Learning에서 태그를 적용하여 실험과 모델을 표시합니다. 판매 예측과 같은 시나리오에서는 모델의 예측이 정확한지 확인하는 데 몇 개월이 걸릴 수 있습니다.
빌드에 모델 학습을 포함하여 CI를 지속적인 학습으로 승격합니다. 예를 들어, 각 끌어오기 요청을 사용하여 전체 데이터 세트에서 모델 학습을 시작합니다.
데이터 샘플에서 자동화된 빌드를 실행하여 기계 학습 파이프라인의 품질에 대한 피드백을 가져오는 시간을 단축합니다. Azure Machine Learning 파이프라인 매개 변수를 사용하여 입력 데이터 세트를 매개 변수화합니다.
기계 학습 모델의 CD(지속적인 배포)를 사용하여 Azure 환경에서 실시간 채점 서비스의 배포 및 테스트를 자동화합니다.
일부 규제 산업의 경우 프로덕션 환경에서 기계 학습 모델을 사용하려면 먼저 모델 유효성 검사 단계가 필요할 수 있습니다. 유효성 검사 단계를 자동화하면 제공 시간을 가속화할 수 있습니다. 수동 검토 또는 유효성 검사 단계가 계속 병목 상태인 경우 자동화된 모델 유효성 검사 파이프라인을 인증할 수 있는지 여부를 고려합니다. Azure Machine Learning의 리소스 태그를 사용하여 자산 준수, 검토 후보를 표시하거나 배포 트리거로 표시합니다.
통합 테스트 없이 프로덕션 모델을 프로덕션에서 다시 학습시키고 직접 바꾸지 마세요. 모델 성능 및 기능 요구 사항이 좋은 것처럼 보일 수 있지만, 다른 잠재적인 문제 중에서도 재학습된 모델에는 더 큰 환경 공간이 있고 서버 환경이 중단될 수 있습니다.
프로덕션 데이터 액세스를 프로덕션에서만 사용할 수 있는 경우 Azure RBAC 및 사용자 지정 역할을 사용하여 읽기 액세스 권한을 선택한 수만큼 기계 학습 실무자에게 제공합니다. 일부 역할은 관련 데이터 탐색을 위해 데이터를 읽어야 할 수 있습니다. 또는 비프로덕션 환경에서 데이터 복사본을 사용할 수 있도록 합니다.
Azure Machine Learning 실험에 대한 명명 규칙 및 태그에 동의하여 재학습 기준 기계 학습 파이프라인과 실험 작업을 구분합니다.
기술
현재 SDK를 통해 작업을 제출하는 대신 Azure Machine Learning 스튜디오 UI 또는 CLI를 통해 작업을 제출하는 경우 CLI 또는 Azure DevOps Machine Learning 작업을 사용하여 자동화 파이프라인 단계를 구성합니다. 이 프로세스는 자동화 파이프라인에서 직접 동일한 작업 제출을 다시 사용하여 코드 공간을 줄일 수 있습니다.
이벤트 기반 프로그래밍을 사용합니다. 예를 들어, 새 모델이 등록된 후 Azure 함수를 사용하여 오프라인 모델 테스트 파이프라인을 트리거합니다. 또는 중요한 파이프라인을 실행하지 못할 때 지정된 메일 별칭에 알림을 보냅니다. Azure Machine Learning은 Azure Event Grid에서 이벤트를 만듭니다. 여러 역할이 이벤트에 대한 알림을 받도록 구독할 수 있습니다.
자동화에 Azure DevOps를 사용하는 경우 Machine Learning Azure DevOps 작업을 사용하여 기계 학습 모델을 파이프라인 트리거로 사용합니다.
기계 학습 애플리케이션을 위한 Python 패키지를 개발하는 경우 이 패키지를 아티팩트로 Azure DevOps 리포지토리에 호스트하고 피드로 게시할 수 있습니다. 이 접근 방식을 사용하면 패키지 빌드에 사용되는 DevOps 워크플로를 Azure Machine Learning 작업 영역에 통합할 수 있습니다.
업스트림 또는 다운스트림 애플리케이션 구성 요소가 포함된 테스트 기계 학습 파이프라인 시스템 통합에 대해 스테이징 환경을 사용하는 것이 좋습니다.
디버깅 향상과 배포 시간 가속화를 위해 유추 엔드포인트에 대한 단위 및 통합 테스트를 만듭니다.
재학습을 트리거하려면 데이터 세트 모니터 및 이벤트 기반 워크플로를 사용합니다. 데이터 드리프트 이벤트를 구독하고 재학습을 위해 기계 학습 파이프라인의 트리거를 자동화합니다.
조직 기계 학습 작업을 위한 AI 팩터리
데이터 과학 팀은 여러 기계 학습 사용 사례를 내부적으로 관리할 수 있다고 결정할 수 있습니다. 기계 학습 작업을 채택하면 조직이 솔루션의 품질, 안정성, 유지 관리를 위해 프로젝트 팀을 설정하는 데 도움이 됩니다. 균형 잡힌 팀, 지원되는 프로세스, 기술 자동화를 통해 기계 학습 작업을 채택하는 팀은 새로운 사용 사례 개발에 집중하고 확장할 수 있습니다.
조직에서 사용 사례 수가 증가함에 따라 이러한 사용 사례를 지원하는 관리 부담은 선형적으로 또는 그 이상으로 증가합니다. 조직의 과제는 출시 시간을 가속화하고, 사용 사례 타당성에 대한 빠른 평가를 지원하고, 반복성을 구현하며, 다양한 프로젝트에서 사용 가능한 일련의 리소스 및 기술을 가장 잘 사용하는 것입니다. 많은 조직에서 AI 팩터리를 개발하는 것이 해결 방법입니다.
AI 팩터리는 반복 가능한 비즈니스 프로세스 및 표준화된 아티팩트 시스템으로, 대규모 기계 학습 사용 사례를 쉽게 개발하고 배포할 수 있습니다. AI 팩터리는 팀 설정, 권장 사례, 기계 학습 작업 전략, 아키텍처 패턴, 비즈니스 요구 사항에 맞게 조정된 재사용 가능한 템플릿을 최적화합니다.
성공적인 AI 팩터리는 반복 가능한 프로세스와 재사용 가능한 자산을 사용하여 조직이 수십 개 사용 사례에서 수천 개 사용 사례까지 효율적으로 스케일링할 수 있도록 지원합니다.
다음 그림에서는 AI 팩터리의 주요 요소를 요약합니다.
반복 가능한 아키텍처 패턴 표준화
반복성은 AI 팩터리의 주요 특징입니다. 데이터 과학 팀은 해당 조직에 대한 대부분의 기계 학습 사용 사례를 다루는 몇 가지 반복 가능한 아키텍처 패턴을 개발하여 프로젝트 개발을 가속화하고 프로젝트 간 일관성을 향상할 수 있습니다. 해당 패턴이 배치되면 대부분의 프로젝트에서 이 패턴을 사용하고 다음 이점을 얻을 수 있습니다.
- 디자인 단계 가속화
- 여러 프로젝트에서 도구를 다시 사용할 때 IT 및 보안 팀의 승인 가속화
- 재사용 가능한 코드 제공 인프라 템플릿과 프로젝트 템플릿으로 인한 개발 가속화
아키텍처 패턴에는 다음 항목이 포함될 수 있지만 해당 항목으로 제한되지 않습니다.
- 프로젝트의 각 단계에 대한 기본 설정 서비스
- 데이터 연결 및 거버넌스
- 산업, 비즈니스 또는 데이터 분류의 요구 사항에 맞게 조정된 기계 학습 작업 전략
- 실험 관리 챔피언 및 챌린저 모델
팀 간 협업 및 공유 촉진
공유 코드 리포지토리 및 유틸리티는 기계 학습 솔루션 개발을 가속화할 수 있습니다. 코드 리포지토리는 프로젝트 개발 중에 모듈식으로 개발할 수 있으므로 다른 프로젝트에서 사용할 수 있을 만큼 일반적입니다. 해당 리포지토리는 모든 데이터 과학 팀이 액세스할 수 있는 중앙 리포지토리에서 사용할 수 있습니다.
지적 재산 공유 및 재사용
코드 재사용을 최대화하려면 프로젝트 시작 부분 시 다음 지적 재산을 검토합니다.
- 조직에서 다시 사용하도록 설계된 내부 코드입니다. 예를 들어 패키지 및 모듈이 있습니다.
- 다른 기계 학습 프로젝트에서 생성되었거나 Azure 에코시스템에서 사용할 수 있는 데이터 세트입니다.
- 아키텍처 및 비즈니스 문제가 유사한 기존 데이터 과학 프로젝트입니다.
- 프로젝트를 가속화할 수 있는 GitHub 또는 오픈 소스 리포지토리입니다.
모든 프로젝트 회고에는 프로젝트의 요소를 공유하고 보다 광범위하게 다시 사용할 수 있도록 일반화할 수 있는지 여부를 결정하는 작업 항목이 포함되어야 합니다. 조직에서 공유하고 다시 사용할 수 있는 자산 목록은 시간이 지남에 따라 확장됩니다.
공유 및 검색을 지원하기 위해 많은 조직에서는 코드 조각 및 기계 학습 아티팩트의 구성을 위한 공유 리포지토리를 도입했습니다. 데이터 세트, 모델, 환경, 파이프라인 등을 포함한 Azure Machine Learning의 아티팩트는 코드로 정의할 수 있으므로 프로젝트 및 작업 영역에서 효율적으로 공유할 수 있습니다.
프로젝트 템플릿
기존 솔루션 마이그레이션 프로세스를 가속화하고 코드 재사용을 최대화하기 위해 많은 조직에서 프로젝트 템플릿을 표준화하여 새 프로젝트를 시작합니다. Azure Machine Learning과 함께 사용하는 것이 좋은 프로젝트 템플릿의 예는 Azure Machine Learning 예제, 데이터 과학 수명 주기 프로세스, 팀 데이터 과학 프로세스입니다.
중앙 데이터 관리
탐색 또는 프로덕션 사용을 위해 데이터에 액세스하는 프로세스는 시간이 오래 걸릴 수 있습니다. 많은 조직에서는 데이터 생산자와 데이터 소비자를 결합하고 기계 학습 실험을 위한 보다 쉬운 데이터 액세스를 지원하기 위해 데이터 관리를 중앙 집중화합니다.
공유 유틸리티
조직에서는 엔터프라이즈 수준의 중앙 집중식 대시보드를 사용하여 로깅 및 모니터링 정보를 통합할 수 있습니다. 대시보드에는 오류 로깅, 서비스 가용성과 원격 분석, 모델 성능 모니터링이 포함될 수 있습니다.
Azure Monitor 메트릭을 사용하여 Azure Machine Learning 및 Azure Storage와 같은 관련 서비스를 위한 대시보드를 빌드합니다. 대시보드를 사용하면 실험 진행률, 컴퓨팅 인프라 상태, GPU 할당량 사용률을 추적할 수 있습니다.
전문가 기계 학습 엔지니어링 팀
많은 조직에서 기계 학습 엔지니어의 역할을 구현했습니다. 기계 학습 엔지니어는 강력한 기계 학습 파이프라인 만들기 및 실행, 워크플로 드리프트 모니터링 및 재학습, 대시보드 모니터링을 전문으로 합니다. 엔지니어는 개발에서 생산에 이르기까지 기계 학습 솔루션을 산업화할 전반적인 책임이 있습니다. 엔지니어는 데이터 엔지니어링, 설계자, 보안/운영과 긴밀히 협력하여 필요한 모든 제어가 배치되었는지 확인합니다.
데이터 과학에는 깊은 도메인 전문 지식이 필요하지만 기계 학습 엔지니어링은 기술에 좀더 초점을 맞춥니다. 이 차이는 기계 학습 엔지니어를 보다 유연하게 만들어 다양한 프로젝트 및 다양한 비즈니스 부서에서 작업할 수 있도록 합니다. 대규모 데이터 과학 사례에서는 다양한 사용 사례와 비즈니스 영역에서 자동화 워크플로의 반복성 및 재사용을 주도하는 전문가 기계 학습 엔지니어링 팀을 활용할 수 있습니다.
활성화 및 설명서
신규 및 기존 팀과 사용자에게 AI 팩터리 프로세스에 대한 명확한 참고 자료를 제공하는 것이 중요합니다. 지침은 일관성을 보장하고 프로젝트를 산업화할 때 기계 학습 엔지니어링 팀에서 요구하는 노력을 줄이는 데 도움이 됩니다. 조직의 다양한 역할에 맞게 콘텐츠를 디자인하는 것이 좋습니다.
모든 사용자에게는 고유한 학습 방식이 있으므로 다음 유형의 참고 자료를 혼합하면 AI 팩터리 프레임워크 채택을 가속화할 수 있습니다.
- 모든 아티팩트 링크가 있는 중앙 허브입니다. 예를 들어 이 허브는 Microsoft Teams 또는 Microsoft SharePoint 사이트의 채널일 수 있습니다.
- 각 역할에 맞게 디자인된 학습 및 활성화 계획
- 접근 방식 및 도우미 비디오에 대한 개략적인 요약 프레젠테이션
- 자세한 문서 또는 플레이북
- 사용 방법 비디오
- 준비 상태 평가
Azure 비디오 시리즈의 기계 학습 작업
Azure의 기계 학습 작업에 대한 비디오 시리즈에서는 초기 개발에서 프로덕션에 이르기까지 기계 학습 솔루션에 대한 기계 학습 작업을 설정하는 방법을 보여 줍니다.
윤리
윤리는 AI 솔루션 디자인에서 중요한 역할을 합니다. 윤리적 원칙이 구현되지 않으면 학습된 모델은 학습에 사용된 데이터에 있는 동일한 편견을 나타낼 수 있습니다. 그 결과 프로젝트가 중단될 수 있습니다. 더 중요한 것은 조직의 평판이 위험에 처할 수 있다는 것입니다.
조직이 나타내는 주요 윤리적 원칙이 프로젝트 전반에서 구현되도록 하려면 조직에서 테스트 단계 중에 기술적 관점에서 유효성을 검사하는 방법과 함께 이 원칙 목록을 제공해야 합니다. Azure Machine Learning의 기계 학습 기능을 사용하여 책임 있는 기계 학습이 무엇인지, 그리고 기계 학습 작업에 이를 빌드하는 방법을 이해합니다.
다음 단계
Azure Machine Learning 환경을 구성 및 설정하는 방법에 대해 자세히 알아보거나 Azure의 기계 학습 작업에 대한 실습 비디오 시리즈를 시청하세요.
Azure Machine Learning을 사용하여 조직 수준에서 예산, 할당량, 비용을 관리하는 방법에 대해 자세히 알아봅니다.