MLOps のレベル
MLOpsの成熟度合いを測る目安はGoogleやMicrosoftなどからいくつか定義されています。ここではGoogleが定義している3段階のMLOpsレベルの概要を紹介します。
レベル 0: 手動プロセス
これは典型的なデータサイエンスのプロセスで、MLを実装する最初の段階で実行されます。このレベルは実験的、反復的な性質を持っています。
レベル0では、データの準備と検証、モデルの学習、テスト、デプロイなど、各パイプラインの各ステップは完全に手動で実施されます。MLOpsの成熟度がもっとも低い状態に位置付けられています。
レベル0には具体的に次のような特徴があります。
- データ抽出やデータ分析など、全てのステップが手動で実施される
- 機械学習チームと運用チームが分離している
- 頻繁なチューニングとリリースには対応できない
- MLシステムの一部しかデプロイできない
- 本稼働環境でのアクションを追跡できない
レベル 1: ML パイプラインの自動化
レベル1は、MLパイプラインが自動化できている状態です。新しいデータが入手可能になると、モデルの再トレーニングのプロセスが開始されます。
レベル1では、次のコンポーネントが追加されます。
- データとモデルの検証
- 特徴量ストア
- メタデータ管理
- MLパイプライントリガー
MLOps level 1: ML pipeline automation
レベル1には具体的に次のような特徴があります。
- ML実験を迅速に行うことができる
- 機械学習チーム、開発チームと運用チームが連携している
- モデルは本番環境で自動的にトレーニングすることができる
- 継続的なチューニングとリリースに対応することができる
レベル 2: CI/CD パイプラインの自動化
レベル2では、CI/CDシステムを導入し、本番環境でのMLモデルのデプロイを高速かつ確実に実行します。レベル1との主な違いは、データ、MLモデル、ML学習パイプラインのコンポーネントを自動的に構築、テスト、デプロイする点です。
MLOps level 2: CI/CD pipeline automation
レベル2には具体的に次のような特徴があります。
- 開発とテストの環境が統合されている
- 特定のトリガーによってビルド、テスト、パッケージ化、デプロイが自動で実行することができる
- パイプラインのCI/CDを実現できている
- スケジュールに基づき、自動的に本番環境でパイプラインが自動的に実行される
- 本番環境のモニタリングが可能となっている
参考
AlloyDB
Amazon Cognito
Amazon EC2
Amazon ECS
Amazon QuickSight
Amazon RDS
Amazon Redshift
Amazon S3
API
Autonomous Vehicle
AWS
AWS API Gateway
AWS Chalice
AWS Control Tower
AWS IAM
AWS Lambda
AWS VPC
BERT
BigQuery
Causal Inference
ChatGPT
Chrome Extension
CircleCI
Classification
Cloud Functions
Cloud IAM
Cloud Run
Cloud Storage
Clustering
CSS
Data Engineering
Data Modeling
Database
dbt
Decision Tree
Deep Learning
Descriptive Statistics
Differential Equation
Dimensionality Reduction
Discrete Choice Model
Docker
Economics
FastAPI
Firebase
GIS
git
GitHub
GitHub Actions
Google
Google Cloud
Google Search Console
Hugging Face
Hypothesis Testing
Inferential Statistics
Interval Estimation
JavaScript
Jinja
Kedro
Kubernetes
LightGBM
Linux
LLM
Mac
Machine Learning
Macroeconomics
Marketing
Mathematical Model
Meltano
MLflow
MLOps
MySQL
NextJS
NLP
Nodejs
NoSQL
ONNX
OpenAI
Optimization Problem
Optuna
Pandas
Pinecone
PostGIS
PostgreSQL
Probability Distribution
Product
Project
Psychology
Python
PyTorch
QGIS
R
ReactJS
Regression
Rideshare
SEO
Singer
sklearn
Slack
Snowflake
Software Development
SQL
Statistical Model
Statistics
Streamlit
Tabular
Tailwind CSS
TensorFlow
Terraform
Transportation
TypeScript
Urban Planning
Vector Database
Vertex AI
VSCode
XGBoost