こんにちは。データサイエンスチームの八木です。
近年 DX 化の流れによって様々なデータを収集したり、データを掛け合わせてインサイトを見つけたりする機会が増え、データ分析もより身近なものになってきました。その際、まずはローカル環境で試してみることも多いと思いますが、メモリに乗りきらない、いつまでたっても処理が終わらないといったことはありませんか?コードの書き方を見直すのも一つの手段としてありますが、クラウド上のハイスペックな 仮想マシン (Virtual Machine : VM) を使って、素早く処理を終わらせることもできます。「でも、一からクラウド上に分析環境を作るのは時間がかかるし……」と思っている方にぜひ試していただきたいのが、Azure Machine Learning (以下、Azure ML) の Notebook 機能です。このサービスを使えば 10 分程度で簡単に分析環境が構築できますので、興味のある方はぜひ試してみてください。
Azure MLとは、Microsoft 社が提供するクラウドベースの機械学習プラットフォームサービスのことです。今回は、Azure ML 上で Jupyter Notebook を動かすことができる Notebook 機能をご紹介します。特徴としては、大きく以下の4つがあります。
標準的な IaaS の VM で Jupyter Notebook の実行環境を構築する場合、仮想ネットワーク、サブネット、ストレージアカウントなど多くの設定をする必要があります。一方、Azure ML の Notebook 機能では、基本的に VM の名前と種類を指定するだけで、簡単に実行環境を作成することができます。
従来の IaaS の VM に一から分析環境を作るのは、手間と時間がかかります。ここで丸一日以上時間を取られてしまう方も多いのではないでしょうか。一方、Notebook VM では、最新の互換性のあるライブラリがあらかじめインストールされており、すぐに使い始ることができます。
Notebook VM はマネージド VM として用意されていますが、ハードウェア機能へのフルアクセスが可能です。Azure でサポートされている VM に対して、自分が使いたいライブラリを自由にインストールすることができます。
Notebook へのアクセスは、HTTPS と Azure Active Directory によってセキュリティが確保されており、シングルサインオン環境の適用など、組織のポリシーに遵守した安全な環境を使用することができます。VM 上で実行する Notebook から、Azure ML ワークスペースのデータストアやコンピューティングリソースにアクセス可能で、Notebook 自体は Azure ML ワークスペースの Blob ストレージに保存されます。そのため、VM 間で簡単に Notebook を共有することができ、VM が削除されても Notebook は残ります。
より詳しく知りたい方は、以下の Azure ML 公式リファレンスを参考にしてください。
では早速、Azure ML の Notebook を使って、簡単に分析環境を構築する手順を見ていきましょう。
①非アクティブ時のシャットダウン
[アイドリングからのシャットダウンを有効にする] をオンにし、時間や分を設定します。これにより、VM が一定の時間アイドリング状態になったら自動的にシャットダウンすることが可能です。
②開始・終了のスケジューリング
非アクティブ時のシャットダウンを設定すれば、開始・終了のスケジューリングを使用することはあまりないかと思いますが、補足として開始・終了のスケジューリングの設定の仕方についても簡単に記載します。
[スタートアップおよびシャットダウンのスケジュール] の設定をすると、コンピューティングインスタンスを自動的に開始、または停止するようにできます。そのためには、まず [スケジュールの追加] をクリックします。
Azure Portal より当該リソースにアクセスし、[リソース グループの削除] をクリックします。その後、削除を確認するウィンドウが出ますので、リソースグループ名を入力のうえ、[削除] をクリックします。
以上、Azure ML の Notebook で分析環境を構築する手順を紹介しました。Azure ML の Notebook 機能を使えば分析環境を簡単に作ることができますので、ぜひ皆さんもご自身の Notebook で試してみてください。
「CogEra」はこちら本記事では、Azure ML の Notebook で分析環境を簡単に構築する手順を紹介しました。簡単に分析環境を作り必要な分だけ動かすことができますので、容量の大きなデータの処理をする時だけクラウドを使用したい方や、少しだけ分析を試してみたい方など、必要な分だけ柔軟に Jupyter Notebook ベースの分析環境を利用することができます。
Notebook には、今回紹介した機能以外にも、コード補完 (IntelliSense) の機能や、プレビュー版ではありますが Notebook にコメントを付与できる機能など、たくさんの便利な機能が用意されています。気になった方は、ぜひ以下の公式リファレンスもご確認ください。
Azure ML にはその他にも、機械学習モデルの学習やその自動化、Web サービスのデプロイなど、機械学習を活用するための様々な機能が用意されています。Azure ML の各機能の説明や Azure ML スタジオ の詳細については、以下の Azure ML 公式リファレンスを参考にしてください。
SBT では、今回ご紹介した Azure ML だけでなく、Azure Cognitive Services を用いた概念実証や検証、そして AI や機械学習を活用した実運用システムの開発までトータルでサポートすることが可能です。今回の Azure ML Notebook を用いるケースでは、まずは自社の実際のデータでどの程度精度が出るのかを検証後、実務で使えそうな場合はシステム化フェーズへと進みます。その際、社内の業務フローやセキュリティポリシー、予算などに合わせ、必要なアーキテクチャも変わってきますので、それらを考慮した要件定義・設計が必要となります。まずは実現可能性の調査から始めたい、すでに AI モデルをお持ちで実運用するためのシステム化をしたいなど、AI 活用を検討中の担当者の方がいましたら、ぜひ当社にお問い合わせください。まず何から始めればよいか悩んでいるといったお客様も、お気軽にご相談いただければと思います。
関連ブログ記事
MLOps の第一歩!Azure ML
のデザイナーでモデルをデプロイしてみよう
|
関連ページ |