Azure Machine Learning in Microsoft Ignite 2022 参加レポート

2022年10月13日(木)~14日(金)に、Microsoft社が主催する年次最大級の開発者向けテクニカルカンファレンス「Microsoft Ignite」がオンラインとリアルのハイブリッドで開催されました。リアルイベントに参加した社員がイベントの模様をレポートします。


こんにちは、データエンジニアリング本部(DE本部) アナリティクスエンジニアリング部の市村です。

ブレインパッドには、クラウドプラットフォームの知識・スキルを深化させるべく、Google Cloud 、AWS、 Microsoft Azure、 Snowflakeの4つのクラウドプラットフォームチームから成る「クロスファンクショナルチーム(CFT)」があります。クラウドベンダーが主催するイベントも定期的にチェックし、共有、発信を行っています。
blog.brainpad.co.jp


今回「Microsoft Ignite2022」に参加してきたので、私が活動している Azure クロスファンクショナルチームの視点で、 カンファレンスの紹介と多数のアップデート情報からピックアップしたものを、紹介したいと思います。

Microsoft Igniteの様子

「Microsoft Ignite」は、年次最大級の開発者向けテクニカルカンファレンスとして毎年開催されています。

前年は、コロナ禍の影響で全面的にオンラインでの開催となっていましたが、今年はリアルイベントとオンラインイベントのハイブリッド開催となり、久々にリアルな交流も体験できるものでした。

リアル開催では、Spotlight on Japan として東京ミッドタウンにてカンファレンス、中継などが行われておりました。現場の様子がこちらになります。





Azure Machine Learning関連のアップデート情報

マイクロソフトCEO のSatya Nadella(サティア・ナデラ)氏による基調講演では、数々のアップデートのアナウンスがありましたが、私たち Azure クロスファンクショナルチームでは、 Azure Machine Learning関連のアップデートに注目していました。

  1. モデルとパイプラインを大規模に運用可能にする Azure Machine Learning レジストリを発表
  2. Azure Container for PyTorchを使ったトレーニングがPreview
  3. Responsible AIダッシュボードとスコアカードがGA(General Availability、一般提供開始)

1. モデルとパイプラインを大規模に運用可能にする Azure Machine Learning レジストリを発表

Azure Machine Learning レジストリは、モデル、環境、コンポーネントなどの機械学習アセットをワークスペースから切り離し、サービス中央でホストし、組織内のすべてのワークスペースで使用できるようにします。概念的には、このレジストリは共有ワークスペースのようなものです。


図引用:https://learn.microsoft.com/ja-jp/azure/machine-learning/how-to-manage-registries?tabs=cli

通常、システムを構築する場合、開発環境、テスト環境、ステージング環境、本番環境と複数の環境を構築し、開発を行っていきます。
環境によってセキュリティ、コンプライアンスポリシー、サブクリプション、待機時間、冗長要件等、様々な差異があります。環境ごとに機械学習アセットを構築していくのは非常に骨の折れる作業です。
機械学習アセットをレジストリ管理することで異なる環境ごと(ワークスペース)に同じモデルをデプロイし、環境ごとの動作条件で、モデルを簡単に活用することができます。このことで環境ごとに手動で複製していた機械学習アセット構築の手間が省けることに加え、様々な利用シーンが想定されます。

2. Azure Container for PyTorchを使ったトレーニングがPreview

PyTorch はオープンソースのディープ ラーニング フレームワークです。
今回Azure Container for PyTorch (ACPT) の発表により、AzureML上でより手軽にPyTorchを利用できるキュレーション環境(事前構成済みの環境)が整いました。事前準備コストの削減と展開時間の短縮に役立ちます。

ACPTは、大規模な分散型ディープ ラーニング ワークロード向けに最適化されており、OnnxRuntime Training (ORT)、DeepSpeed、MSCCL など、高速トレーニングに最適な環境が事前にパッケージ化されています。

さらにAzure ML との統合によって、ML Studio または AML SDK を使用して PyTorch を使った実験履歴を追跡できるのは、とても有用ではないでしょうか。


トレーニング ジョブの作成時に ACPT キュレーション環境を選択するメニュー オプション。
引用:https://techcommunity.microsoft.com/t5/ai-machine-learning-blog/enabling-deep-learning-with-azure-container-for-pytorch-in-azure/ba-p/3650489

ACPTは、多数の Microsoft ワークロードに対して検証済みで、Onnx / Onnx Runtime / Onnx Runtime TrainingORT MoEDeepSpeedMSCCL などを使ったトレーニング環境に最適に調整されているため、通常の PyTorch ワークロードよりも生産速度(学習時間)を 54% から 163% まで向上させることができるとPRされていました。

3. Responsible AIダッシュボードとスコアカードがGA

Responsible AI(責任ある AI)ダッシュボードは、大規模なモデル開発および評価ライフサイクル全体で、責任ある機械学習エンジニアリングを効率的かつ相互運用に必要な包括的評価、モデルのデバッグ、モデル統計評価、データ探索、機械学習の解釈可能性不公平性評価エラー分析因果関係推論反事実分析などをダッシュボードのカタチで参照できる機能を指します。


図:AzureMLstudioのモデル詳細からResponsible AIのメニュー


図:Responsible AIで出力したエラー分析の図

ここではResponsible AI(責任ある AI)ダッシュボードの使い方については割愛しますが、下記の公式ドキュメントにまとまっていますので、興味のある方はご一読ください。
https://learn.microsoft.com/ja-jp/azure/machine-learning/how-to-responsible-ai-dashboard

スコアカードは、機械学習モデルに付随するResponsible AI(責任ある AI)ダッシュボードの分析情報とカスタマイズに基づいて生成される PDF レポートを指します。


図:スコアカードのデータ探索のレポート


スコアカードの作成については下記の公式ドキュメントが参考になるかと思います。
参考:https://learn.microsoft.com/ja-jp/azure/machine-learning/how-to-responsible-ai-scorecard

これらがGAとして使えるようになることで、統合されたAzureMLstudioからモデル評価を多角的に行え、モデルのライフサイクルを回す一助になるのではないでしょうか。

モデルライフサイクルの中で、モデルデプロイを判断する指標などをResponsible AI(責任ある AI)ダッシュボード、スコアカードで参照できれば、よりスピーディーな運用につながります。


以上、簡単ではありますが、Microsoft Ignite 2022で気になったアップデートをご紹介しました。

ブレインパッドでは「データ活用の促進を通じて 持続可能な未来をつくる」というミッションの下、一緒に働く仲間を探しています。興味がある方は採用ページからエントリーをお願いします。