676 Views
April 11, 24
スライド概要
2024/04/13 『第2回 Azure Travelers 勉強会 神戸の旅』のLT資料です。
都内で働いているインフラエンジニアです。Azure を含むMicrosoft 製品、インフラ、開発周りに興味があります。
Azure、機械学習実務未経験のインフラエンジニアが Azure 初業務でAzure Machine Learning の 構成例を検討したお話 2024/04/13 第2回 Azure Travelers 勉強会 神戸の旅 Kazuki Yamabe
アジェンダ • 自己紹介 • 今回の経緯 • Azure Machine Learning とは • 経験談 • まとめ 2
自己紹介 名前:Kazuki Yamabe 所属:株式会社エーピーコミュニケーションズ 職種:インフラエンジニアなのかよくわからない何でも屋 ◼ ブログ・SNS • ブログ:https://www.kdkwakaba.com/ • X:@kdk_wakaba • Linkedin:kdk-wakaba 3
アジェンダ • 自己紹介 • 今回の経緯 • Azure Machine Learning とは • 経験談 • まとめ 4
今回の経緯 今年の2月、案件の変わり目で上司から短期案件のお話を受ける。 データ分析、Synapse Analitics や Data Factory あたりかな…。 次の案件まで期間あるから 短期のAzure データ分析 案件入ってくれない? 5
今回の経緯 いざ案件のシステム全体図と資料を見てみると…。 AI、推論手法、トレーニング、モデル、etc、 これ機械学習の案件じゃないのか…。 しかも具体的な要件や推論手法も決まりきっていないとは…。 6
アジェンダ • 自己紹介 • 今回の経緯 • Azure Machine Learning とは • 経験談 • まとめ 7
Azure Machine Learning (Azure ML) とは • Azure で機械学習に関する一連のタスクを実行できるフルマネージドのサービス - Portal などの操作で環境を作成できるため素早く利用可能 - Python スクリプト、Notebook などのツールをサポート - インフラ側の構築、運用・管理工数の削減可能 • エンドポイントへのモデルデプロイにより、推論モデルの利用 - API 経由で推論モデルを使えるためアプリケーションへの組み込みが容易 - ワークスペースの分割でチームごとのモデル分割、共有モデルの利用も可能 • Azure ML Studio を利用した管理画面 - GUI 操作によるPython スクリプト、Notebook の実行、メトリクスの可視化、ラベル付けなども可能 • パイプライン機能を利用した一連の機械学習タスクの実行 - データ取得、トレーニング、評価、デプロイ、監視などの自動化が可能 8
アジェンダ • 自己紹介 • 今回の経緯 • Azure Machine Learning とは • 経験談 • まとめ 9
経験談 – 機械学習、Azure ML をどう学習したか? • 機械学習の用語、推論手法は適当な入門書をサッと読む - 基本的な用語をある程度知っておかないとサービスの理解に困る • Azure ML の概要、機能をキャッチアップするならDP-100 のモジュールがオススメ - https://learn.microsoft.com/ja-jp/training/courses/dp-100t01 • 技術同人『Re:ゼロから始めるAzure Machine Learning』も良い - https://booth.pm/ja/items/4727739 • 機械学習の設計周りならアーキテクチャセンターも見る - https://learn.microsoft.com/ja-jp/azure/architecture/ • 社内に詳しい人がいれば早い段階で相談するのも一つ 10
経験談 – Azure ML のサポートされている手法、マシンスペック • Azure ML とはいえサポートされていないものもあるので注意 - ライブラリのバージョンや互換性のないものもたまにある - 遅延の少ないリアルタイムの推論手法や独自の推論手法は別途必要になったり - 公式ドキュメントに掲載されていないケースはMS への問い合わせで確認しておく - 独自の推論手法などでどうしてもAzure ML で実現できない場合は別のソリューション検討も必要 • 多機能な分、コンピューティングは通常の仮想マシンより利用可能なスペックは多少落ちる - よほど大規模な機械学習を要求されなければAzure ML のコンピューティングスペックで大丈夫 - どうしても高スペックなものが欲しい場合は別のソリューションを考える 11
経験談 – 機械学習に関するデータストア、データ加工について • 機械学習 + データストア、データ加工は基本セットで考える - 既存のデータがそのまま利用可能とは限らない。ユーザー側で生データを突っ込んでるだけのケースも - ソースデータがAzure 以外のネットワークに存在するケースや閉塞空間が必要かも確認しておく - それぞれのシステムからデータをどのように利用するかの流れも意識する • データの取得から加工、機械学習をまとめたAzure Databricks のようなサービスを使うのも一つ 12
経験談 – 運用・コスト周りについて • モデルの共有やチームごとの分割はワークスペースの分割をする - 業界、業種によってはそれぞれのチームごとにガバナンスを効かせたい要望もある - レジストリを利用しモデル、コンポーネント、環境などを使い回すのもあり • 利用する時間帯や頻度によってはコスト周りの配慮も必要 - Azure Machine Learning のマシンを常に起動させているといいお値段になる - バッチ処理や特定の時間帯のみ使いたいものは利用時のみ起動させる - 裏側にストレージアカウントもあるのでデータ量もうまく管理しないと思わぬコストとなる • Azure Machine Learning Studio で手動のタスク実行をする場合は関係者の教育コストも考慮する - 利用者によってはGUI 画面で推論やトレーニングしたいとの要望があることも - Azure 用のユーザー、権限周りの設定も忘れずに 13
経験談 – 機械学習の一連のフロー、どこまで自動化する? • Azure ML の自動化はシステムの要件に合わせる - Azure ML を使うならパイプライン機能をうまく使っていきたいが… - 自動化しすぎて評価の微妙な推論結果をトレーニングデータに使ってしまいモデルの精度低下が発生してしまう - センシティブなデータなので各工程確認しながらやりたい、など • Azure ML で自動化するなら運用・管理できる人がいるかも大事 - 顧客側で運用したい、などの場合、顧客への教育コストも考慮する • Python スクリプトやNotebook などのバージョン管理からデプロイが必要ならCI/CD ツールも検討 - 定期タスクとして実行するならCLI 操作でパイプラインを実行する 14
アジェンダ • 自己紹介 • 今回の経緯 • Azure Machine Learning とは • 経験談 • まとめ 15
まとめ • Azure ML は機械学習の様々なタスクをこなせるフルマネージドの機械学習用サービス • Azure ML の使い方だけでなく機械学習、データ分析 (加工) も理解したうえで構成を検討する • 運用・管理や利用者の観点もうまく取り入れながら構成を検討する 16
ご清聴ありがとうございました。 17