Azure #Notebooks 最新情報(Connect() 2018 更新版)

Azure Notebooks とは

Azure Notebooks は無償で提供されている Jupyter Notebook 環境です。
マイクロソフトアカウントがあれば Notebook が利用できます。
さらに Azure サブスクリプションに紐づいたアカウントであれば Azure のリソースに接続することもできます。

Connect() 2018 での Azure Notebooks 関連の情報

先日開催された、マイクロソフトのカンファレンス Connect() で、Azure Notebooks に関連する内容がいくつかアップデートされました。

その内容は こちらのページ に書かれていますが、日本語でも少し整理してみましょう。

  • UI の変更
  • JupyterLab 対応
  • Linux Data Science Virtual Machine (DSVM) への接続
  • Azure Machine Learning Service への接続
  • KQL (ビッグデータへのクエリ) 対応
  • Azure 認証の利用
  • Azure Notebooks の授業などでの利用
  • デフォルトで含まれるパッケージの更新

いくつかピックアップして、以下でもう少し紹介します。


UI の更新

Azure Notebooks のサイトデザインが変わりました。My Projects ページは Github っぽいデザインになったとも言えるかも(笑)。

ホームページも新しくなりました。かっこよくなりましたね。


JupyterLab 対応

これまでの Azure Notebooks は Jupyter Notebook でしたが、今回のアップデートで JupyterLab を選択できるようになりました。

好みや用途にもよりますが、その時々で使いやすいほうで作業することができます。


Linux Data Science Virtual Machine (DSVM) への接続

これまでの Azure Notebooks はクラウド上に自動的に用意された仮想マシン上の JupyterHub に接続して動作していました。
この VM は無償ということもあり、マシンスペックは限定的なものでした。
Python や機械学習のトレーニングには使えるものでしたが、実案件にはまったく非力。

このあたりの制約が更新され、クラウド上に用意した Data Science Virtual Machine (DSVM) 上の JupyterHub に接続できるようになりました。
これにより、高速な(GPU ありの)マシンで深層学習を行えるようになりました。

接続先はプロジェクトの実行ごとに切り替えることができます。
開発の初期段階(ニューラルネットワークの開発初期)は “Free Compute” を使用して、後半は GPU ありの DSVM を使うなどの切り替えができるようになりました。
さらに最終的には Batch AI で学習を行うなどもできるでしょう。

コストの最適化ができるようになりました。

なお私の手元で試した限りでは、作成直後の DSVM には接続できませんでした。(公式ドキュメントではそのようなことは書いていないのですが・・・)
まず DSVMの IP アドレス直打ちで(”Direct Compute”)を選択して一度接続し、その後で Azure Notebooks を開きなおすと “Run on” ドロップダウンに DSVM の名前が表示されるようになりました。


Azure Machine Learning Service への接続

Azure Machine Learning Service が発表された時点で実現されていた機能ですが、Azure Notebooks を Azure Machine Learning Service のフロントエンドとして利用できるようになっています。

今回の Notebooks のアップデートで Machine Learning Service の利用がやりやすくなっています。

Service の利用は Azure Notebooks 起点ではちょっと分かりづらいように思います。
少なくとも最初はかなり戸惑いそう。
私の場合は、複数の Azure サブスクリプションを持っていることもあり、認証が通らなくエラーで先に進めないというのにぶち当たりました。Azure CLI の az login コマンドを事前に打つとかすればいいらしいのですが、初めてで分からないところでそのエラーはハマりますね。
また Machine Learning SDK も理解する必要があります。

ということで、Azure ポータルで Machine Learning Service リソースを作成し、そちらから Azure Notebooks を開くと分かりやすく、スムーズに進められると思います。
SDK の呼び出しはサンプルを見ればわかるので、実際に認証が通った状態で Azure Notebooks を開ければ、動きを見ながら基本的なところは押さえられると思います。

なお Azure Machine Learning Service は Visual Studio Code からも接続できます。実際の開発時にはローカルの Visual Studio Code を使うのが効率がいいと思います。

Azure Notebooks を使うのはリソースの新規作成直後(これは Code でやるよりも簡単・・・Azure ポータルから直接開けるので)とかちょっとした編集時くらいが現実的なような気がします。

Visual Studio Code 用の拡張機能は、Visual Studio Code の Marketplace で “Azure Machine Learning” を検索してインストールしてください。
以前は “Visual Studio Code for AI” という名前でしたが、最近名前が変わったようです。

KQL (ビッグデータへのクエリ) 対応

深層学習をする上で重要なのは学習データの準備です。
が、意外とこれに手間がかかります。例えば、外で CSV でデータを用意してから取り込むとか。

Azure Notebooks のアップデートでは KQL (Kusto Query Language) に対応しました。
ビッグデータからの効率的なデータ取得が可能になりました。

KQL については、私自身は不勉強で詳しくないので、Github 上の公式サンプルコードやドキュメントを参照してみてください。


その他のアップデート

上記以外のアップデートについては、公式の発表 を参照してみてください。
それぞれ意味のあるアップデートですが、タイトルそのまんまという感じの内容なので、難しくないと思います。

  • Azure 認証の利用
  • Azure Notebooks の授業などでの利用
  • デフォルトで含まれるパッケージの更新

最後に・・・誰が Azure Notebooks を使うといいのか

Azure Notebooks 自体の改善というよりは、Azure Machine Learning Service 全体としてのアップデートがあり、それの一環として Notebooks も機能が増えたとか使いやすくなったというのがほとんどです。

その意味では Azure サブスクリプションを持っていて、機械学習・深層学習の実開発を行う人にとって使いやすくなったと思います。

が、マシンスペックをそれほど要求しないとか技術習得中の人にとっては、無償で JupyterLab / Jupyter Notebook が使えるようになったので、サクッと勉強したいとか触ってみたいという人にもメリットがあります。

他には、ハンズオン資料などを使ってトレーニングするにもよさそうですね。受講者の環境準備の手間がなく、環境差異が発生しづらいので、効率よくトレーニングができそう。

ということで、(若干無理やりで都合のいい結論ですが /笑)機械学習・深層学習をしたい全ての人にメリットのあるアップデートなのではないかと思います。
ぜひ触ってみることをお勧めします。

広告
カテゴリー: 未分類 | コメントをどうぞ

#BotFramework の Telemetry データを #PowerBI で分析する

本稿は「Bot Framework の Telemetry データを Power BI で分析する」というテーマです。
多くの Power BI ユーザーの皆さんにはかなり変化球な投稿かもしれませんが、こういう使い方もあるよという例として、参考にしていただければ。

bf_pbi_dashboard_01

今回は Power BI メインで、Bot アプリの実装についてはかなり薄めの紹介です。
(ブログ上での投稿の)順序は逆になりますが、どうやって実装するのか? についてはまた改めて。

続きを読む

カテゴリー: Application Insights, Bot Builder SDK, Bot Framework, Bot Service, Cogbot, Power BI | タグ: , , , , , , | コメントをどうぞ

#BotFramework Emulator の機能 #4 ~ Bot アプリのエンドポイント管理

Bot Framework Emulator の機能紹介の 4回目です。

  1. テストクライアント機能
  2. Bot 作成手順の確認
  3. bot ファイル (設定ファイル) の暗号化・復号化
  4. Bot アプリのエンドポイント管理(今回)
  5. 外部サービス (LUIS, QnA Maker) の接続管理
  6. LUIS 再学習
  7. chat ファイル (会話セットの設計) の閲覧
  8. transcript ファイル (保存済み実行結果) の閲覧

 

今回は、エンドポイント管理を紹介します。

チャットクライアントである Emulator から Bot アプリケーションに接続するわけですが、その情報が “.bot” ファイルに記載されています。
これらを編集する機能を Emulator が持っています。JSON フォーマットのデータを手で編集するのに比べて、タイプミスや設定項目の漏れなどを減らすことができます。

続きを読む

カテゴリー: 未分類 | 3件のコメント

#BotFramework Emulator の機能 #3 ~ bot ファイルの暗号化・復号化

Bot Framework Emulator の機能紹介の 3回目です。

  1. テストクライアント機能
  2. Bot 作成手順の確認
  3. bot ファイル (設定ファイル) の暗号化・復号化(今回)
  4. Bot アプリのエンドポイント管理
  5. 外部サービス (LUIS, QnA Maker) の接続管理
  6. LUIS 再学習
  7. chat ファイル (会話セットの設計) の閲覧
  8. transcript ファイル (保存済み実行結果) の閲覧

 

今回は Bot Framwork の設定ファイルである “.bot” ファイルの暗号化・復号化機能を紹介します。

続きを読む

カテゴリー: Bot Builder SDK, Bot Framework, Bot Service | タグ: , , , , | 3件のコメント

「 #BotFramework Emulator はこんなにすごい」セッションを担当しました&資料を公開しました (#Cogbot 勉強会 #18 ~ 2018年11月28日開催)

Cogbot勉強会!#18 – Bot Framework V4 Night! (2018年11月28日開催) で、

Bot Framework Emulator はこんなにすごい

というテーマでお話ししました。

文字通り、Bot Framework Emulator V4 の機能を紹介するもの。
Emulator は Bot アプリケーションのテストクライアントであることは事実ですし、一番使われる機能でもあります。
ただ「単なるテストクライアント」としてみるのはもったいないツールだと思うので、何ができるのか、どのタイミングで便利なのかを紹介しました。

続きを読む

カテゴリー: 未分類 | コメントをどうぞ

#BotFramework Emulator の機能 #2 ~ Bot 作成手順の確認

Bot Framework Emulator の機能紹介の 2回目です。

  1. テストクライアント機能
  2. Bot 作成手順の確認(今回)
  3. bot ファイル (設定ファイル) の暗号化・復号化
  4. Bot アプリのエンドポイント管理
  5. 外部サービス (LUIS, QnA Maker) の接続管理
  6. LUIS 再学習
  7. chat ファイル (会話セットの設計) の閲覧
  8. transcript ファイル (保存済み実行結果) の閲覧

 

今回は実装やテストなどのツールとしての機能ではなく、bot アプリ開発全体の流れを確認しましょうという話です。(API やコーディング技術を期待している皆さん、ごめんなさい)

この機能は Tech Summit 2018 セッション「ユーザー インターフェースとしてのチャット ボット開発手法と Microsoft Bot Framework v4」のテーマでもあります。

本稿も最後までお付き合いください。

続きを読む

カテゴリー: Bot Builder SDK, Bot Framework, Bot Service | タグ: , , , , | 3件のコメント

#BotFramework Emulator の機能 #1 ~ Bot アプリケーションのテストクライアント機能

Bot Framework v4 / v4.1 関連のリリースで個人的に一番気に入っているのが、Bot Framework Emulator です。

v3 の頃は「Bot アプリケーションのテストクライアント」という位置づけのツールでした。
このため v4 でも単にバージョンが上がっただけだと思うかもしれません。

実は、V4 のEmulator はテストクライアントにとどまらない高機能ツールです。
ここから数回に分けて、Bot Framework Emulator の機能を紹介していきます。

  1. テストクライアント機能(今回)
  2. Bot 作成手順の確認
  3. bot ファイル (設定ファイル) の暗号化・復号化
  4. Bot アプリのエンドポイント管理
  5. 外部サービス (LUIS, QnA Maker) の接続管理
  6. LUIS 再学習
  7. chat ファイル (会話セットの設計) の閲覧
  8. transcript ファイル (保存済み実行結果) の閲覧

今回は1回目ということで、皆さんご存知のテストクライアント機能を(念のため)紹介します。

続きを読む

カテゴリー: Bot Builder SDK, Bot Framework, Bot Service, Cogbot | タグ: , , , , | 4件のコメント