Azure ML Serviceについて

先日紹介したAzure ML Studioに続いて、Microsoft社の提供するAzure ML Serviceについて紹介します。

名前はほとんど似ていて、構造や概念にも近い部分があるのですが、大きく異なる部分があります。

大きな違いとは、ML Serviceでは、小規模で、手早くすでにある機械学習のモデルを回し解析するのに向いています。このモデルもCPUの演算で済むようなスケールです。

それに対してML Serviceは大規模で複雑なモデルの学習も行えます。これはBatch AIという、複数の仮想マシンを並列で立ち上げて処理を行えるAzureのサービスと連携しているためです。

このサービスを使って実装していたのでその説明を少し行います。

Azure ML Serviceでは、プロジェクトは基本的にリソースグループという単位で管理されます。

Azure上の様々なサービスは副次的によくわからない、仮想ディスクやらストレージやら、が生成します。そのためプロジェクトごとにリソースグループとくくっておくことで管理しやいです。(注意点:こちらのサービスを利用するには現時点ではリソースグループは米国東部でないと不具合が生じます。9月の発表で始まったサービスなため順次進めているのでしょう。)

このリソースグループ内にAzure ML Serviceワークスペース(プレビュー)を作成します。こちらで具体的なソースコードや解析結果を管理します。プレビューとなっているのは常に更新が行われているため、暫定的に公開しているのでしょう。

基本的には公式のリファレンスに沿って進めると、機械学習の中でいわゆる'Hello World!'に相当するMNISTの実装を行えます。まずはじめはAzure Notebookが良いかなと思います。慣れてくればVS codeを入れてローカルとリモートを繋いで開発というレベルにまで行けると思います。

また、Azure ML ServiceはすでにTensorFlowとPytorchのサポートを行なっており、手元の環境で実装したコードをスケールさせやすくなっています。Chainerがまだなのが、残念です。。。

基本的にはDockerのイメージをあらかじめ作成してスケールさせると良いかなと思います。

こちらの部分はまたおってお伝えします。

この記事が気に入ったらサポートをしてみませんか?