PMLE · LESSON 5

セクション5:ML パイプラインの自動化とオーケストレーション約18% · 2項目

エンドツーエンドの ML パイプラインと、再学習の自動化を学びます。

5.1エンドツーエンドのパイプライン

エンドツーエンドのパイプライン(データとモデルの検証、Agent Platform Pipelines・Managed Service for Apache Airflow・Ray、学習と配信の前処理の一貫性)

概念

ML パイプラインは、データの取り込み → 検証 → 前処理 → 学習 → 評価 → モデルの検証 → 登録 → デプロイを自動化します。Agent Platform Pipelines(Kubeflow Pipelines・TFX の形式)、Managed Service for Apache Airflow(旧 Cloud Composer)による広いワークフローのオーケストレーション、Ray による分散処理を使い分けます。学習と配信で同じ前処理を使い、学習と配信のスキューを防ぎます。

仕組み・手順

  1. 各段階をコンポーネントにして再利用できるようにする
  2. データの検証(スキーマ・分布)とモデルの検証(基準の指標)をゲートにする
  3. ML 以外の処理も含むワークフローは Airflow で管理する
  4. 前処理のコードを学習と配信で共有する

業務での例

Pipelines で、データの分布の検証に失敗したら学習を止め、評価の AUC が現行のモデルを上回った場合だけ登録する。

紛らわしい点・試験の注意

ミニクイズ

Q1. ML の手順を Agent Platform Pipelines で動かすことを検討している。GKE 上の Kubeflow Pipelines と比べた利点として最も適切なものはどれか。

  1. Kubernetes のノードの設定を、細かく制御できる
  2. パイプラインの定義に、Kubeflow の SDK が要らない
  3. オンプレミスのクラスタでも、同じ設定のまま動かせる
  4. サーバーレスで実行でき、成果物と系統を自動で記録できる
答えと解説を見る

正解:D サーバーレスで実行でき、成果物と系統を自動で記録できる

ML Metadata と統合され、再現性が高い。 【他の選択肢】ノードの細かい制御は自分で運用する GKE の利点。Agent Platform Pipelines も Kubeflow Pipelines の SDK などで定義する。オンプレミスでの実行は GKE などの自前の運用で行う。

Q2. 学習のパイプラインを設計している。処理を小さなコンポーネントに分ける利点として最も適切なものはどれか。

  1. コンポーネントの数が多いほど、学習の精度が上がる
  2. コンポーネントを分けると、パイプラインの実行の費用が下がる
  3. 再利用・テスト・キャッシュがしやすく、失敗した箇所から再実行できる
  4. コンポーネントの間でデータを渡さずに済み、ストレージが要らない
答えと解説を見る

正解:C 再利用・テスト・キャッシュがしやすく、失敗した箇所から再実行できる

キャッシュで変更のない手順を省略できる。 【他の選択肢】分けても精度は変わらない。コンポーネントの間では成果物を渡すため保存は必要。費用はキャッシュで下がることはあるが、分けるだけでは下がらない。

参考リンク

5.2再学習の自動化

再学習の自動化(再学習のポリシー、CI/CD/CT、Cloud Build)

概念

再学習のポリシーは、スケジュール(定期)、データの到着、性能の低下やドリフトの検知などの条件で決めます。CI(コードのテスト)・CD(デプロイ)・CT(継続的な学習)を組み合わせ、Cloud Build でコードの変更からパイプラインの構築・実行を自動化します。

仕組み・手順

  1. 再学習の条件(定期・データ・ドリフト)を決める
  2. Cloud Build でコードの変更時にテストとパイプラインの更新を行う
  3. Model Monitoring のアラートなどから再学習のパイプラインを起動する
  4. 新しいモデルは評価のゲートを通してからデプロイする

業務での例

モデルの監視でドリフトのアラートが出ると、Pub/Sub 経由で再学習のパイプラインが起動し、評価に合格した場合だけ新しい版をカナリアでデプロイする。

紛らわしい点・試験の注意

ミニクイズ

Q1. Cloud Build を ML の CI/CD で使う役割として最も適切なものはどれか。

  1. 学習のデータのラベルを、自動で付け直す
  2. テスト・ビルド・デプロイを自動で行う
  3. 本番のモデルのドリフトを、自動で監視する
  4. モデルのハイパーパラメータを、自動で探索する
答えと解説を見る

正解:B テスト・ビルド・デプロイを自動で行う

Git のトリガーでビルドを起動する。

Q2. CT(継続的トレーニング)の前提として最も適切なものはどれか。

  1. 新しいデータは、手作業でコピーして学習に渡す
  2. 学習の手順がノートブックの手作業で、毎回異なる
  3. モデルの評価の基準が決まっていない
  4. 取り込みから登録までが自動化されている
答えと解説を見る

正解:D 取り込みから登録までが自動化されている

MLOps の成熟度のレベル。

参考リンク

レッスンは当サイトがGoogle Cloud 認定の公開ページと試験ガイドをもとに独自に作成したもので、試験の内容を保証するものではありません。製品の仕様は変わることがあるため、参考リンク先の最新情報を確認してください。

ご利用上の注意(非公式・独自問題・合格保証なし)