MLOpsとは

エムエルオプスMachine Learning Operations略語 MLOps

1行定義

MLOpsとは、機械学習モデルの開発と運用を一体として捉え、学習・デプロイ・監視・再学習を自動化して継続的に回すための考え方と仕組みのことです。

くわしく

MLOps(エムエルオプス)は、Machine Learning(機械学習)とOperations(運用)を組み合わせた言葉です。ソフトウェア開発で、開発と運用を一体にして改善を速く回すDevOpsの考え方を、機械学習に広げたものです。

なぜ必要か

普通のソフトウェアは、コードを変えなければ同じように動き続けます。機械学習モデルは違います。世の中の傾向が変わり、本番で入ってくるデータが学習時のデータとずれていくと、コードはそのままでも精度が落ちていきます。たとえば需要予測のモデルは、消費者の好みが変われば外れやすくなります。

さらに、実際のシステムでは、モデルを学習させるコードはごく一部です。データの収集と検証、モデルの配信、監視といった周辺の仕組みのほうがはるかに大きくなります。ここを手作業で回すと、更新が遅れるうえ、どのデータとコードで作ったモデルなのかもわからなくなります。

主な取り組み

  • 監視:本番での予測精度や入力データの分布を見張り、劣化を早く見つけます。
  • 自動化:データの準備、学習、評価、デプロイを1本のパイプラインにまとめます。再学習を自動で回す仕組みを、継続的トレーニング(CT)といいます。
  • 再現性の確保:データ、コード、モデル、設定の版を記録し、同じモデルを作り直せるようにします。Dockerなどのコンテナで実行環境をそろえるのも、このためです。
  • 役割の連携:モデルを作るデータサイエンティストと、システムを運用するエンジニアが、同じ流れの中で協力します。

隣の概念との関係

CRISP-DMやCRISP-MLは、プロジェクトをどの順番で進めるかを示す手順のモデルです。MLOpsは、その流れのうち学習からデプロイ、運用中の監視と再学習までを、技術と体制の両面から回し続ける仕組みにあたります。PoCで有望とわかったモデルを、本番で使い続けられる状態にするのがMLOpsの役目です。

G検定での出題

運用中にデータの傾向が変わってモデルの精度が落ちる問題への対処として、本番での監視、再学習からデプロイまでの自動化、データ・コード・モデルの版管理の役割が問われます。

◯×チェック

  1. 実際の機械学習システムでは、モデルを学習させるコードは全体のごく一部で、データの収集や検証、モデルの配信、監視などの周辺の仕組みのほうが大きい。

    答えを見る

    答え ◯ 正しい

    Googleの技術者による2015年の論文などで指摘された点です。MLOpsが周辺の仕組みづくりと自動化を重視するのはこのためです。

  2. MLOpsでいう継続的トレーニング(CT)とは、新しいデータが集まったときなどに、モデルの再学習を自動で行う仕組みのことである。

    答えを見る

    答え ◯ 正しい

    CTは、ソフトウェア開発のCI/CD(継続的インテグレーション・継続的デリバリー)にはない、機械学習に特有の考え方です。再学習したモデルは、評価を経てから本番に出します。

  3. MLOpsは、モデルを本番環境に一度デプロイするまでの手順を指し、デプロイ後の運用は対象に含まない。

    答えを見る

    答え × 誤り

    MLOpsの中心は、デプロイ後の監視や再学習も含めて、開発と運用を継続的に回すことです。運用中の精度の劣化への対処は、主な目的の1つです。

練習問題

MLOpsの問題(8問)
  1. CRISP-DMとCRISP-MLの特徴
  2. 運用中のモデル劣化への対応
  3. Dockerとコンテナの特徴
  4. Web APIとクラウドでの提供
  5. MLOpsとDevOpsの違い
  6. 保守契約で定める再学習の範囲
  7. 再現性とトレーサビリティ
  8. 運用中のモニタリング

AIで作成 人による確認:未 誤りを報告

出典と作成について

作成:ウカトレ編集部(AIで作成し、別のAIが一次資料と照合。手順は編集方針)

公開日: 最終更新日: 最終確認日:

対応シラバス:シラバス第1.4版 技術35

改訂履歴

表示設定

テーマ
文字の大きさ
問題演習