ソリューション アーキテクチャを調べる

完了

スケーリングと自動化を計画するために、複数の関係者と協力して機械学習運用 (MLOps) アーキテクチャを決定しました。

機械学習運用アーキテクチャの図。

注意

この図は、MLOps アーキテクチャを簡略化したものです。 より詳細なアーキテクチャを表示するには、MLOps (v2) ソリューション アクセラレータのさまざまなユース ケースをご確認ください。

アーキテクチャには次のものが含まれます。

  1. セットアップ: ソリューションに必要なすべての Azure リソースを作成します。
  2. モデル開発 (内部ループ): モデルをトレーニングおよび評価するためのデータを探して処理します。
  3. 継続的インテグレーション: モデルをパッケージ化して登録します。
  4. モデル デプロイ (外部ループ): モデルをデプロイします。
  5. 継続的デプロイ: モデルをテストし、運用環境にレベル上げします。
  6. 監視: モデルとエンドポイントのパフォーマンスを監視します。

現在の課題で最も重要なのは、モデル開発からモデル デプロイにモデルを取り入れることです。 これら 2 つのループの間のステップは、モデルをパッケージ化して登録することです。 データ サイエンス チームがモデルをトレーニングしたら、モデルをパッケージ化して、Azure Machine Learning ワークスペースに登録することが不可欠です。 モデルが登録されたら、モデルをデプロイします。

モデルをパッケージ化するには、いくつかの方法があります。 pickle ファイルの操作などのいくつかのオプションを確認した後、データ サイエンス チームと共に MLflow を操作することにしました。 モデルを MLflow モデルとして登録する場合は、Azure Machine Learning ワークスペースでコードなしのデプロイを選択できます。 コードなしのデプロイを使用する場合は、デプロイを機能させるためにスコア付けスクリプトと環境を作成する必要はありません。

モデルをデプロイする場合は、リアルタイム予測用のオンライン エンドポイントと、バッチ予測用のバッチ エンドポイントのどちらかを選択できます。 モデルは、医師が直接応答を得ることを期待して医療データを入力する Web アプリと統合されるため、オンライン エンドポイントへのモデルのデプロイを選択します。

Azure Machine Learning ワークスペースではモデルを手動でデプロイできます。 ただし、今後さらに多くのモデルをデプロイする予定です。 また、モデルが再トレーニングされるたびに、糖尿病分類モデルを簡単に再デプロイしたいと考えています。 そのため、可能な限りモデル デプロイを自動化したいと考えています。

注意

自動化は MLOps の重要な側面ですが、人間参加型を維持することが重要です。 自動的にデプロイされる前にモデルを確認することをお勧めします。