コンテンツに移動
AI & 機械学習

高品質な ML ソリューションの開発

2022年3月7日
Google Cloud Japan Team

※この投稿は米国時間 2022 年 2 月 23 日に、Google Cloud blog に投稿されたものの抄訳です。

デプロイ済みの ML モデルから精度の低い予測が生成される場合、その原因にはさまざまな問題が考えられます。あらゆるプログラムに共通するバグが原因の可能性もありますが、ML 特有の問題が原因になっている場合もあります。データスキューや異常が原因でモデル パフォーマンスが時間の経過とともに低下しているのかもしれません。または、モデルのネイティブ インターフェースとサービスを提供する API との間でデータ形式が一致していない可能性もあります。 モデルがモニタリングされていない場合、無応答のまま失敗していることもあり得ます。

モデルがアプリケーションに組み込まれている場合、このような問題によりユーザー エクスペリエンスが低下するおそれがあります。モデルが内部プロセスの一部の場合、ビジネス上の意思決定に悪影響を与えかねません。

ソフトウェア エンジニアリングには、ソフトウェアの品質を確保するための多数のプロセス、ツール、プラクティスがあり、そのすべてが、本番環境でソフトウェアが正常に動作するうえで効果を発揮します。このようなツールには、ソフトウェアのテスト、検査、検証、ロギング、モニタリングが含まれます。

ML システムでは、システムを構築、デプロイ、運用するタスクにおいて多くのプロセスとプラクティスを必要とするさらなる課題が存在します。ML システムは、意思決定にデータを自動的に活用するため、データへの依存度が特に大きいというだけでなく、二重のトレーニング サービング システムでもあります。この二重性が原因でトレーニング サービング スキューが発生する場合があります。また、自動化された意思決定システムでは、ML システムが更新されにくい傾向にあります。

このような課題により、開発段階、デプロイ段階、本番環境のそれぞれの段階で、ML モデルとシステムに対して、他のソフトウェア システムとは異なる種類のテストおよびモニタリングが必要となります。

お客様との協力を基に、Google は MLOps ライフサイクルの各プロセスの包括的なガイドライン集を作成しました。お客様の ML ソリューションの品質を評価、確保、制御する方法を網羅する内容になっており、Google Cloud サイトですべて公開しています。

どのようなものかを理解いただくために、ガイドラインの内容を簡単に紹介します。

  • モデル開発: 関連データの前処理を適用することで対象タスク向けに有効な ML モデルを構築する方法、モデルの評価方法、モデルのテストとデバッグの手法について説明します。

  • トレーニング パイプラインのデプロイ: モデル関数の単体テストとトレーニング パイプライン コンポーネントのインテグレーション テストを自動化する CI/CD ルーティンの実装方法について説明します。また、トレーニング パイプラインのデプロイに適切な漸進型の配信戦略を適用するうえでも役立ちます。

  • 継続的なトレーニング: トレーニング用の新しい入力データを検証するステップと、トレーニング後に新しく生成された出力モデルを検証するステップで、自動化されたトレーニング ワークフローを拡大するための推奨事項を提示しています。また、トレーニング プロセス中に生成されたメタデータとアーティファクトを追跡する推奨方法も提示しています。

  • モデルのデプロイ: モデルの互換性とターゲットのデプロイ インフラストラクチャとの依存関係を検証するプロセスを自動化する CI/CD ルーティンを実装する方法について説明します。また、モデルの有効性を判断するために、デプロイ済みモデルサービスをテストする方法と、漸進型の配信およびオンライン テスト戦略を適用する方法についての推奨事項も提示しています。

  • モデルの提供: 予測サービスを提供するライフタイム全体を通してデプロイモデルをモニタリングし、パフォーマンスの低下とデータセットのドリフトをチェックする方法について説明します。また、モデルサービスの効率をモニタリングする推奨方法も提示します。

  • モデルのガバナンス: モデルの品質基準の設定について説明します。また、本番環境にデプロイするためのモデルのレビューおよび承認の手順とワークフローを実装する手法と、本番環境にデプロイしたモデルを管理する手法も説明しています。

すべての推奨事項を確認するには、高品質な ML ソリューション開発に関するガイドラインをご覧ください。

謝辞: このガイドへの貢献について、Jarek Kazmierczak、Renato Leite、Lak Lakshmanan、Etsuji Nakai の各氏に感謝の意を表します。


- ソリューション マネージャー Donna Schut
- 機械学習ソリューション アーキテクト スタッフ Khalid Salama
投稿先