rights reserved. Software 2.0の開発には課題がある。 9 Configuration Data Collection Data Verification Machine Resource Management Serving Infrastructure ML Code Analysis Tool Process Management Tools Feature Extraction Monitoring “Only a small fraction of real-world ML systems is composed of the ML code” source: Hidden Technical Debt in Machine Learning Systems [D. Sculley, & al.] – 2015 https://papers.nips.cc/paper/5656-hidden-technical-debt-in-machine-learning-systems.pdf
rights reserved. Largeである問題はGPUをはじめとしたハードウェアの進化 により解決が図られている。 12 “A DECADE OF ACCELERATED COMPUTING AUGURS WELL FOR GPUS”より引用 AWSの機械学習専用チップ、自然言語処理で学習時間を50%削減するコンパイラについては「サービスアップデート 機械学習編:Amazon SageMaker と機械学習向けハードウェアによる機械学習の効率化」を参照。
rights reserved. 顧客自身のデータから半自動で顧客体験を改善すること。 15 Customer Experience Traffic Data Data Driven Decision Growth Software1.0 delivered by DevOps Software2.0 delivered by MLOps
rights reserved. Business Understanding 最終的なプロダクト開発ではDevOpsとMLOpsが並走する。 18 Plan Code Build Test Release Deploy Operate Monitor Code Repository Artifact Software 1.0 Service Verification Raw Data Data Warehouse Collect Analyze Prepare Data Repository Preprocess Features Model Test Release Verification Software 2.0 Deploy Operate Monitor Train Service Raw Data DevOps MLOps
rights reserved. 機械学習担当のチームがアーキテクチャを把握できる範囲は限ら れている。 21 Business Understanding 21 Plan Code Build Test Release Deploy Operate Monitor Code Repository Artifact Software 1.0 Service Verification Raw Data Data Warehouse Collect Analyze Prepare Data Repository Preprocess Features Model Test Release Verification Software 2.0 Deploy Operate Monitor Train Service Raw Data 機械学習担当のチームが判断で きるのは主に実験管理の領域
rights reserved. 先進的企業は能動的な活用を促すため社員へのデータサイエ ンス教育を拡大している。 32 How Airbnb Democratizes Data Science With Data University データを「顧客の声」と定義し、全社員が顧客の声に基づいた意思決定が できるよう社内でのデータサイエンス教育を開始。半年で500名が受講。 社内のデータを使用してトレーニングするため、30名ほどの社員がボラン ティアで講師を行っている。 Scaling Machine Learning at Uber with Michelangelo 技術系の採用者全員に、1週目に機械学習とUberの機械学習基盤である Michelangeloの講義を実施。その後も、Michelangeloのアップデートに関 する講習やオフィスアワーなどを実施し利用を支援。 Airbnbは2017年、Uberは2018年の記事。Airbnbは2017時点でFacebookと Dropboxにデータ活用で後れを取っていると述べているので、データ活用の先進企 業はかなり先をいっている。 画像引用: リンク先記事より 画像引用: リンク先記事より
rights reserved. 協調的: 幅広いマネージドサービスと動作可能なOSSから 実装を選択できる。 39 PREPARE SageMaker Ground Truth Label training data for machine learning SageMaker Data Wrangler Aggregate and prepare data for machine learning SageMaker Processing Built-in Python, BYO R/Spark SageMaker Feature Store Store, update, retrieve, and share features SageMaker Clarify Detect bias and understand model predictions BUILD SageMaker Studio Notebooks Jupyter notebooks with elastic compute and sharing Built-in and Bring your-own Algorithms Dozens of optimized algorithms or bring your own Local Mode Test and prototype on your local machine SageMaker Autopilot Automatically create machine learning models with full visibility SageMaker JumpStart Pre-built solutions for common use cases TRAIN & TUNE Managed Training Distributed infrastructure management SageMaker Experiments Capture, organize, and compare every step Automatic Model Tuning Hyperparameter optimization Distributed Training Libraries Training for large datasets and models SageMaker Debugger Debug and profile training runs Managed Spot Training Reduce training cost by 90% DEPLOY & MANAGE Managed Deployment Fully managed, ultra low latency, high throughput Kubernetes & Kubeflow Integration Simplify Kubernetes-based machine learning Multi-Model Endpoints Reduce cost by hosting multiple models per instance SageMaker Model Monitor Maintain accuracy of deployed models SageMaker Edge Manager Manage and monitor models on edge devices SageMaker Pipelines Workflow orchestration and automation Amazon SageMaker SageMaker Studio Integrated development environment (IDE) for ML AWSとFacebook共 同で開発しOSS公開 AWS Batchにデプロ イ可能 EKSで構築可能 Netflixが開発してい るOSS。AWSと親和 性が高い。 マネージドサービス であるMWAAを提供。
rights reserved. MLOps構築の一例 42 Amazon SageMaker Training Juoyter Notebook Amazon SageMaker Studio for development AWS CodeBuild AWS CodeCommit or GitHub Amazon SageMaker Endpoint Amazon API Gateway AWS CodeDeploy Model Manager for dev Model Manager for prod Amazon CloudWatch Synthetics Slack Approve Approve AWS CodePipeline Experiments Management AWS Lambda Amazon Elastic Container Registry Amazon SageMaker Experiments Train Model
rights reserved. References 49 • Andrej Karpathy. Software 2.0. 2017. • Hiroshi Maruyama. Software 2.0とその社会的課題. 2021. • Mike Loukides and Ben Lorica The road to Software 2.0. 2019. • Ville Tuulos and Hugo Bowne-Anderson. MLOps and DevOps: Why Data Makes It Different. 2021. • Data Sentics. Why the World Struggles to Productionalise ML-Driven Solutions (MLOps Part 1). 2020. • Data Sentics. How We Understand MLOps at DataSentics (MLOps Part 2). 2021. • AWS. MLOE-02: Establish ML roles and responsibilities. • Google Cloud. MLOps: 機械学習における継続的デリバリーと自動化のパイプライン. • Snockel. 2022. • datarevenue-berlin. OpenMLOps. 2021. • ZOZO TECH BLOG. KubeflowによるMLOps基盤構築から得られた知見と課題. 2021. • 岩本恵太. リーガルテックにおけるMLOps構築事例の紹介. 2021. • スタディサプリ. サイエンティストとエンジニアでつくるML ワークフロー. 2020. • iwazaki. 小さく始めて大きく育てるMLOps2020. 2020. • rmarl. BASEを支える機械学習エンジニアチームをゼロからつくってきた1年.2019. • Takahiro Kubo. MLOps論文一覧. 2022.
rights reserved. Business Understanding 付録: DevOps & MLOpsフロー 53 Plan Code Build Test Release Deploy Operate Monitor Code Repository Artifact Software 1.0 Service Verification Raw Data Data Warehouse Collect Analyze Prepare Data Repository Preprocess Features Model Test Release Verification Software 2.0 Deploy Operate Monitor Train Service Raw Data DevOps MLOps