COVID‐19パンデミック下のオンプレミス環境におけるMLOpsプラクティスーテクノロジー最前線 エンジニアリング編(1)

2023-02-13

背景

今回は、通信業界企業バックオフィス部門をクライアントとした機械学習プロジェクトにおける一部MLOpsの実践をご紹介します。当該クライアントのポリシーに従い、以降の前提条件と制限があると理解ください。

  • AIが稼働する専用サーバーを必要とします。その理由は次のとおりです。
    • オンデマンド実行が求められるため、サーバーが常に稼働されている必要があります。
    • AIの推論とモデルを学習させる(再トレーニングの)ためには、多くのコンピューティングリソースが必要です。
  • AIアプリケーションは、データポリシーに基づいてオンプレミスサーバーでホストする必要があります。
  • 最終的なビジネスユーザーは新型コロナウイルス感染症(COVID-19)の影響により基本的に自宅で仕事をしているため、AIツールとデータはリモートで操作可能です。
  • APIでのデータ連携は実装できません。

ソリューション

RPAでデータを取り込み、それらのデータをオンラインストレージとローカルドライブに保存し、定期的なバッチを使用してAIモデルの推論と再トレーニングを実行します。

データの保存と取り込み(MLOps:データ準備)

ローカルドライブ割り当てによるオンラインストレージサービスは、データストレージオプションとして使用されます。そのため、データと構成ファイルのアップロード、データのダウンロード、データの検証と修正をリモートで行うことができます。

RPAを使用して、さまざまなシステムからデータを取り込み、ローカルドライブに保存します。その後、データはオンラインストレージサービスに同期されます。

AIアプリケーションのデプロイ(MLOps:デプロイ)

最終的なAIアプリケーションはオンラインストレージに展開され、運用環境のローカルドライブに同期されます。そのため、必要に応じてどこからでもAIアプリケーションプログラムを更新できます。

AIモデル推論(MLOps:推論)

入力データの準備ができたら、オペレーターはローカルドライブのトリガーファイル(目標フォルダ名入力ためのテキストファイル)を更新することでAIアプリケーションを手動で実行し、オンラインストレージにアップロードできます。

オンプレミスサーバーでは、推論されるデータ、トリガーファイル、およびその他の構成ファイルがローカルドライブに同期されます。

オンプレミスサーバーでは、定期的なバッチ(5分間隔など)によってAIアプリケーションが定期的に実行されます。

AIアプリケーションロジックは、トリガーファイルの内容をチェックします。有効な実行条件が設定されていれば、以下のロジックが実行されます。

  • 最新のAIモデルの読み込み
  • トリガーファイルで指定された入力データの検証と前処理
  • データのベクトル化および結果の推測

重複実行を避けるために、AIプログラムは読み取り後にトリガーファイルをリセットします。

モニタリングとフィードバック(MLOps:監視)

AIアプリケーションは新しいデータを推測し、結果を表計算ソフトに出力します。推論結果だけでなく、各データの確信度も結果ファイルに書き込まれます。

オペレーターは、ローカルドライブに同期された後、結果データを検査することができ、確信度の低い推論結果から優先的にチェックを行います。出力された表計算ソフトのファイルは、オペレーターが正しい判定結果が入力できるように設計されています。

AIモデルの自動再トレーニングとデプロイ(MLOps:再訓練)

AIモデルの再トレーニングの自動化は、MLOpsにとって不可欠な部分です。

再トレーニングプログラムは定期的に(例:1カ月に1回)実行され、オペレーターから修正データを読み取り、それらの修正を現在のトレーニングデータとマージします。次に、プログラムで新しいデータに応じてハイパーパラメーターの最適化も行われます。最後に、新しいAIモデルが構築され、AIアプリケーションフォルダーにデプロイされます。

結論

オンプレミスサーバーの定期スケジューラとローカルドライブを使用したオンラインストレージサービスを使用することで、以下のアーキテクチャを実現することができます。

  • 新しい入力データの定期的な取り込み
  • オンデマンドでAIモデルの推論をリモートで実行
  • 運用者はリモートからAIの推論結果を監視し、誤った推論結果を修正
  • 運用者の訂正結果を踏まえて新しいAIモデルを定期的に再トレーニングし、新しいモデルをAIアプリケーションにデプロイ

そのため、AIモデルは人間から新しい知識を取得することで継続的に進化することができます。1年間の稼働後、AIモデルは99.3%以上の精度を維持しました。

もちろん、このアーキテクチャはMLOpsの完全な実践ではありません。例えば、CI/CD利用のデプロイ自動化はまだ実装されていません。ただし、前述の背景と制限があるため、これはコロナ禍のオンプレミス環境でMLOpsを実践するための良い試みであると言えます。

参考

[1] Breuel, C. ‘ML Ops: Machine Learning as an Engineering Discipline.’ Towards Data Science
2022年12月7日アクセス https://towardsdatascience.com/ml-ops-machine-learning-as-an-engineering-discipline-b86ca4874a3f

[2] ‘2022年AI予測(日本)’, PwC Japanグループ
2022年12月7日アクセス https://www.pwc.com/jp/ja/knowledge/thoughtleadership/2022-ai-predictions.html

G.Zhao
システム開発会社を経て現職。通信業界におけるデータ分析とAIツール開発、省庁におけるテレワーク環境整備調査、社内Digital Product(Intelligent Business Analytics Tool)開発チームのマネジメントなどに従事。

テクノロジー最前線―先端技術とエンジニアリングによる社会とビジネスの課題解決に向けて

データアナリティクス&AI編

(1):テック人材の採用と維持における企業の課題
(2):フィーチャーエンジニアリングとは?
(3):SNSを活用したコロナ禍における人々の心理的変化の洞察
(4):自然言語処理(NLP)の基礎
(5):今、データサイエンティストに求められるスキルは何か?データサイエンティスト求人動向分析
(6):コロナ禍における人流および不動産地価変化による実体経済への影響
(7):「匠」の減少―技能継承におけるAI活用の道しるべ
(8):開示された企業情報におけるESGリスクと財務インパクトの関係性の特定
(9):ビッグデータ分析で特に重要な「非構造化データ」における「コンピュータービジョン(画像解析)」とは
(10):自然言語処理・数理最適化による効率的なリスキリングの支援
(11):スポーツアナリティクスの黎明 サッカーにおけるデータ分析
(12):AIを活用した価格設定支援モデルの検討―外部環境変化に即座に対応可能な次世代型プライシング
(13):MLOps実現に向けて抑えるべきポイントー最前線
(14):合成データにより加速するデータ利活用

エマージングテクノロジー編

(1):ブロックチェーン技術の成熟度モデルとステーブルコインの最新動向について
(2):3次元空間情報の研究施設「Technology Laboratory」のデジタルツイン構築とデータの管理方法
(3):3次元空間情報の研究施設「Technology Laboratory」における共通ID「空間ID」と自律移動体の測位技術
(4):G7群馬高崎デジタル・技術大臣会合における空間IDによるドローン運航管理

エンジニアリング編

(1):COVID‐19パンデミック下のオンプレミス環境におけるMLOpsプラクティス
(2):機械学習を用いたデータ分析
(3):AWSで構築したIoTプラットフォームのPoC環境をGCPに移行する方法
(4):テクノロジーの社会実装を高速に検証するPwCの独自手法「Social Implementation Sprint Service」-テクノロジー最前線
(5):自動車業界におけるデジタルコックピットの擬人化とインパクト
(6):成熟度の高いバーチャルリアリティ(VR)システム構築理論の紹介
(7):イノベーションの実現を加速する「BXT Works」とは
(8):Power Platformの承認機能、AI Builderを活用して業務アプリを開発する方