SlideShare a Scribd company logo
© 2015-2017 Research Institute of Systems Planning, Inc.
初めてのAzureで
Brainwave触ってみた
株式会社システム計画研究所/ISP
山本 真司
2018年8月24日
DLLAB推論ナイト
© 2015-2017 Research Institute of Systems Planning, Inc.
0. 自己紹介
• (株)システム計画研究所/ISP 所属
– 1977年創業の独立系研究開発型のソフトウェア開発
会社
– 近年は、医療情報、通信・ネットワーク、制御・宇
宙、画像処理などの事業領域で、AI事業に注力
• 自称組み込みエンジニア
– 役職は「エキスパート」と書いて「遊び人」と読み
ます
– 面白そうな技術を探してくるのがミッションです
• Brainwave を触るまで、Azure使用経験まった
くなし!
1
© 2015-2017 Research Institute of Systems Planning, Inc.
アジェンダ
1. Brainwaveとは
2. チュートリアル(00)を理解する
3. Brainwave を動かせるようにするまで
2
© 2015-2017 Research Institute of Systems Planning, Inc.
Brainwaveとは
3
© 2015-2017 Research Institute of Systems Planning, Inc.
1.Brainwaveとは
• Brainwave(プレビュー版)はざっくり言うと
• FPGAとは、書き換え可能な H/Wですが、
Brainwave(プレビュー版)では、ユーザーは
自由には FPGAを書き換えられません
4
FPGA上にあらかじめ実装された
CNNのモデルを
ネット越しに叩いて
推論させようという代物
© 2015-2017 Research Institute of Systems Planning, Inc.
1.Brainwaveとは
• Brainwave(プレビュー版)は概ね以下の手順で使
用します
1. ローカルで推論モデルを記述する
- 必要に応じて、リモートからモデルをダウンロードします
2. リモートにデプロイする
3. リモートでサービスを実行する
• それぞれ以下の技術に立脚しています
1. 推論モデルの記述 ・・・ Tensorflow
2. デプロイ ・・・ REST API
3. リモートサービス ・・・ gRPC
5
© 2015-2017 Research Institute of Systems Planning, Inc.
6
1.Brainwaveとは
Tensorflow の
Graphにする
• プレビュー版でできることの例:画像の分類
• 推論処理の基本は3段階
① 画像を前処理する
② 特徴量を抽出する
③ クラス分類を行う
• 上記を行う Graph を リモートにデプロイする
• gRPC で、画像を送りつけて、上記を叩いて、
結果をもらう
ZIPで
固める
… CPU実行
… CPU実行
… FPGA実行
snow leopard, ounce, Panthera uncia confidence: 0.85421455
leopard, Panthera pardus confidence: 0.13914554
cheetah, chetah, Acinonyx jubatus confidence: 0.0020039019
lynx, catamount confidence: 0.0019892405
great grey owl, great gray owl, Strix nebulosa confidence:
0.0011571224
リモートにデプロイ
© 2015-2017 Research Institute of Systems Planning, Inc.
1.Brainwaveとは
• 真ん中の特徴量抽出だけが FPGA実行
• クラス分類は CPU実行
• ユーザーは特徴量抽出は高速にFPGAで実行して、
判別器や分類器は自分で自由に構築できるとい
うこと
7
① 画像を前処理する
② 特徴量を抽出する
③ クラス分類を行う
… CPU実行
… CPU実行
… FPGA実行
ここがミソ
© 2015-2017 Research Institute of Systems Planning, Inc.
チュートリアル(00)を
理解する
9
© 2015-2017 Research Institute of Systems Planning, Inc.
Pipeline
Tensorflow Tensorflow
Stage Stage
CPU
Brainwave
Stage
2.チュートリアル(00)を理解する
• REST API,gRPCはラッパーに完全に隠蔽
• Tensorflowのコードがかろうじて顔を出す程度
• つまり、何をやってるか細かいことは全然わかりません
• Tensorflow の Graph は Pipeline に隠蔽されてます
10
ResNet50
Featurizer
snow leopard, ounce, Panthera
uncia confidence: 0.85421455
leopard, Panthera pardus
confidence: 0.13914554
cheetah, chetah, Acinonyx jubatus
confidence: 0.0020039019
lynx, catamount confidence:
0.0019892405
great grey owl, great gray owl, Strix
nebulosa confidence: 0.0011571224
前処理
特
徴
量
ResNet50
Classifier
© 2015-2017 Research Institute of Systems Planning, Inc.
2.チュートリアル(00)を理解する
• Stageとは?
– 下記の3種類の Stageがあります
1. TensorflowStage
2. BrainWaveStage
3. KerasStage
• このうち、BrainWaveStage は FPGAで実行され、他の
2つは CPUで実行されます
• チュートリアルでは、以下の構成になってます
1. 画像の前処理 … TensorFlowStage
2. 特徴量抽出 … BrainWaveStage
3. クラス分類 … TensorFlowStage
11
© 2015-2017 Research Institute of Systems Planning, Inc.
2.チュートリアル(00)を理解する
• リモートモデル
– ResNet50による Featurizer,Classifierのモデルが
提供されています
– チュートリアルでは、これらをダウンロードして、
Classifier を Pipelineに接続した後に、リモートに
アップロードしています
– Featurizer はリモートの FPGAで動くので、アップ
ロードしません
• では、何でダウンロードするのか? というと、ローカ
ルで Pipeline がちゃんと動くか確認するときなどに使
えるようです
12
© 2015-2017 Research Institute of Systems Planning, Inc.
2.チュートリアルでやってること
• チュートリアルでやってることのまとめ
13
チュートリアルの見出し 概要
1 Image_processing 前処理の定義
2 Featurizer リモートモデルの download
3 Classifier 上記モデルから Classifier の Graph作成
4 Service Definition Stage を Pipeline List に Append
デプロイ用の zipファイル作成
5 Deploy REST API発行準備
Zipファイルのアップロード
デプロイ
6 Client Clientを作る
Imagenet のラベル情報をゲット
gRPC でリモートの Predictサービスを実行し
て結果を表示
© 2015-2017 Research Institute of Systems Planning, Inc.
BRAINWAVE を動かせるよう
にするまで
14
© 2015-2017 Research Institute of Systems Planning, Inc.
2.Brainwave を動かせるようにするまで
https://github.com/Azure/aml-real-time-ai
Azure ML Hardware Accelerated Models Quickstartより
(1) Azure の(無料)アカウントを作る
(2) MMA(Model Management Account)を作る
(3) quota を申請する
(4) 返事を待つ
(5) 待っている間に環境構築
(6) SSL 接続の準備
(7) 返事が来る
(8) Jupyter notebook の起動
15
© 2015-2017 Research Institute of Systems Planning, Inc.
2.Brainwave を動かせるようにするまで
• 参考サイト
https://github.com/Azure/aml-real-time-ai/blob/master/README.md
https://github.com/Azure/aml-real-time-ai/blob/master/docs/README.md#set-up-environment
https://docs.microsoft.com/ja-jp/azure/machine-learning/service/quickstart-installation
https://docs.microsoft.com/en-us/azure/machine-learning/service/how-to-deploy-fpga-web-service
• サイトにより少しずつ書いてあることが異なるので
ご注意ください
• ラッパークラスの中身についてはこちらが詳しいで
す。Microsoft エバンジェリスト松崎剛さんの記事
です
https://tsmatz.wordpress.com/2018/05/22/project-brainwave-fpga-realtime-prediction-service-in-azure-machine-learning-model-management/
17
© 2015-2017 Research Institute of Systems Planning, Inc.
(1) Azure の(無料)アカウントを作る
• 画面キャプチャし忘れたので絵はありません
• 初めてだと怖かった点
– クレジットカード番号を入れろと言われる
• 冷やかし対策です
• 無料期間を過ぎて、有料アカウントに移行しなかっ
たら、ちゃんと何も請求されなかったので御安心を
– 電話番号を入れろと言われる
• ベリフィケーションコードを貰うためです
• PHSの番号を入れてもちゃんとSMSが送られてきま
した
• 恐れることは何もないです
18
© 2015-2017 Research Institute of Systems Planning, Inc.
(2) MMA(Model Management Account)を作る
19
• Azure Portal 画面
machine learning
© 2015-2017 Research Institute of Systems Planning, Inc.
(2) MMA(Model Management Account)を作る
21
名前系は適当に違う
名前を設定
Free_experiment
Free_resource
など
Free Trialを選択
米国東部 2
「招待」を選択して、
自分を招待
S1 を選択
© 2015-2017 Research Institute of Systems Planning, Inc.
(3)quota を申請する(4)返事を待つ(6)返事が来る
22
• フォームにMMAの情報を入力して、いく
つかのアンケートに回答して送信
• 多分、FPGAを利用するためのリソースを
確保するための手続き
• 1回目は2日半ほどで、2回目は5日後に
「FPGA quota allocated」のメールが届きま
した
• ここの情報が必要に• Azure Portal → すべてのリソース• MMA選択• フォームに入力
© 2015-2017 Research Institute of Systems Planning, Inc.
(5) 待っている間に環境構築
• 環境構築の手順は下記を参考に、
https://github.com/Azure/aml-real-time-ai/blob/master/docs/README. md#set-up-environment
• 上記では miniconda をインストールしているが、私は、
anaconda3 をインストールして、下記の作業を実施
(1) Brainwave の環境一式を github からクローンする
(2) Brainwave 実行用の環境を作る
- anaconda3/envs/amlrealtimeai 配下に環境が構築されます
- du で amlrealtimeal の使用量を見たら驚きの2G超でした
(3) Brainwave 実行用の環境に切り替える
– 戻すときは、conda deactivate とする
23
git clone https://github.com/Azure/aml-real-time-ai
conda env create -f aml-real-time-ai/amlrealtimeai.yml
conda activate amlrealtimeai
© 2015-2017 Research Institute of Systems Planning, Inc.
(6) SSL 接続の準備
• ここには、SSL接続の設定をしろと書いてあり
ますが、特に何もしないでもチュートリアルは
動きます
https://docs.microsoft.com/en-us/azure/machine-learning/service/how-to-deploy-fpga-web-service
• 間違った使い方をしているといけないので、自
己責任でお願いします
24
© 2015-2017 Research Institute of Systems Planning, Inc.
(8) Jupyter notebook の起動
• Amlrealtimeai の環境で起動
• チュートリアルのnotebookは、以下にあります
aml-real-time-ai/notebooks/resnet50
• 初回起動時は下記のようなメッセージに従い token
を入力します。2回目以降は不要です
VCopy/paste this URL into your browser when you connect for the first time, to login with a token:
http://localhost:8888/?token=bb2ce89cc8ae931f5df50f96e3a6badfc826ff4100e78075
• 環境によって、
– Running at「0.0.0.0:8080」と出るが、そこでは接続できず、例
えば「localhost:8080」でないとダメだったり、
– Running at「localhost:8888」と出て、そのままでOKだったり、
色々なので適宜対応ください
25
jupyter notebook
© 2015-2017 Research Institute of Systems Planning, Inc.
(8) Jupyter notebook の起動
• チュートリアル画面
26
© 2015-2017 Research Institute of Systems Planning, Inc.
Appendix:料金確認
27
日毎
MMA
FPGA
Storage
無料分の総額 残額
■Azure Potal
→ すべてのサービス
→ サブスクリプション
→ Free Trial を選択
© 2015-2017 Research Institute of Systems Planning, Inc.
ご清聴ありがとうござました
ISP www.isp.co.jp
技ラボ wazalabo.isp.co.jp
28

More Related Content

PDF
Open stack活用に求められる人材と育成について2017 0314
PDF
Microsoft の深層学習への取り組み
PDF
リクルート流Elasticsearchの使い方
PDF
ドキュメント自動入力AIプラットフォーム ディープシグマDPAについて
PPTX
祝★AWSスタンダードコンサルティングパートナーに認定されました
PDF
Azure サポート チームの現場からお届けする落ちないサービスのために
PDF
AWS White Belt Guide 目指せ黒帯!今から始める方への学び方ガイド
PPTX
Xpjug lt-20210918
Open stack活用に求められる人材と育成について2017 0314
Microsoft の深層学習への取り組み
リクルート流Elasticsearchの使い方
ドキュメント自動入力AIプラットフォーム ディープシグマDPAについて
祝★AWSスタンダードコンサルティングパートナーに認定されました
Azure サポート チームの現場からお届けする落ちないサービスのために
AWS White Belt Guide 目指せ黒帯!今から始める方への学び方ガイド
Xpjug lt-20210918

What's hot (15)

PDF
リクルートの利用事例から考える AWSの各サービスとセキュリティ
PPTX
Rspberry PI + AWS IOT検証
PDF
Splunkと各種ツールによるAWSの管理
PDF
AWSでのセキュリティ運用 ~ IAM,VPCその他
PPTX
DLL#3 Microsoft Community & AI Update
PDF
[data analytics showcase] A15: デジタルデータの可視化基盤「ENdoSnipe」を使った、システムトラブルの未然防止、経営判...
PPTX
MLOps NYC 2019 and Strata Data Conference NY 2019 report nttdata
PPTX
(2017.9.7) Neo4jご紹介
PPTX
システム高速化フォーラム向け プッシュ通知基盤のアーキテクチャ
PDF
Introducing the elastic 8.0 release a new era of speed, scale, relevance, and...
PPTX
データからビジネス変革をもたらすマイクロソフトの AI とは
PDF
ServerlessConf Tokyo2018 サーバーレスなシステムのがんばらない運用監視
PDF
Elastic on Azure Integration & Building React UI Based Search App Using Azure...
PDF
Building modernapplicationwithelasiccloud
PPTX
Getting Started With AKS
リクルートの利用事例から考える AWSの各サービスとセキュリティ
Rspberry PI + AWS IOT検証
Splunkと各種ツールによるAWSの管理
AWSでのセキュリティ運用 ~ IAM,VPCその他
DLL#3 Microsoft Community & AI Update
[data analytics showcase] A15: デジタルデータの可視化基盤「ENdoSnipe」を使った、システムトラブルの未然防止、経営判...
MLOps NYC 2019 and Strata Data Conference NY 2019 report nttdata
(2017.9.7) Neo4jご紹介
システム高速化フォーラム向け プッシュ通知基盤のアーキテクチャ
Introducing the elastic 8.0 release a new era of speed, scale, relevance, and...
データからビジネス変革をもたらすマイクロソフトの AI とは
ServerlessConf Tokyo2018 サーバーレスなシステムのがんばらない運用監視
Elastic on Azure Integration & Building React UI Based Search App Using Azure...
Building modernapplicationwithelasiccloud
Getting Started With AKS
Ad

Similar to 【LTセッション】Brainwave 使ってみた_DEEP LEARNING LAB (20)

PPTX
(2017.6.2) Azure HDInsightで実現するスケーラブル分析環境
PPTX
July techfesta2014 f30
PPTX
Ansible・Serverspecベースの自動化フレームワークSHIFT wareの紹介
PPTX
5W1Hで考えるCCoE.pptx
PDF
Data Scientists Love SQL Server
PDF
Automation with SoftLayer and Zabbix
PPTX
データをどこに溜めよう?ローカル?クラウド?どのデータベース?
PDF
スタートアップが始める機械学習はじめの一歩
PDF
UShareSoft_20130425
PDF
UShareSoft_20130425
PPTX
JAWS-UG三都物語_企業でのAWS導入のエントリーポイント
PDF
ゼロから学ぶIoT
PDF
【HinemosWorld2014】B1-4_NTTデータ先端技術のOpenStack Hinemosソリューション
PDF
2021/02/19 Alterbooth 多忙なアーキテクトのためのクラウド導入フレームワーク (CAF) ダイジェスト
PPTX
IoTを支えるAWSアーキテクチャ
PDF
AI-first Code Editor 「Cursor」の機能紹介
PDF
今改めて学ぶ Microsoft Azure 基礎知識
PPTX
Gitlab ci & ecsへのデプロイ
PDF
初めてのWebプログラミング講座
PDF
Red Hat Forum 2014 IBM session
(2017.6.2) Azure HDInsightで実現するスケーラブル分析環境
July techfesta2014 f30
Ansible・Serverspecベースの自動化フレームワークSHIFT wareの紹介
5W1Hで考えるCCoE.pptx
Data Scientists Love SQL Server
Automation with SoftLayer and Zabbix
データをどこに溜めよう?ローカル?クラウド?どのデータベース?
スタートアップが始める機械学習はじめの一歩
UShareSoft_20130425
UShareSoft_20130425
JAWS-UG三都物語_企業でのAWS導入のエントリーポイント
ゼロから学ぶIoT
【HinemosWorld2014】B1-4_NTTデータ先端技術のOpenStack Hinemosソリューション
2021/02/19 Alterbooth 多忙なアーキテクトのためのクラウド導入フレームワーク (CAF) ダイジェスト
IoTを支えるAWSアーキテクチャ
AI-first Code Editor 「Cursor」の機能紹介
今改めて学ぶ Microsoft Azure 基礎知識
Gitlab ci & ecsへのデプロイ
初めてのWebプログラミング講座
Red Hat Forum 2014 IBM session
Ad

More from Deep Learning Lab(ディープラーニング・ラボ) (20)

PDF
Edge AI ソリューションを支える Azure IoT サービス
PDF
DLLAB Healthcare Day 2021 Event Report
PPTX
ICTを用いた健康なまちづくりの 取り組みとAI活用への期待​
PDF
医学と工学の垣根を越えた医療AI開発
PDF
Intel AI in Healthcare 各国事例からみるAIとの向き合い方
PDF
厚生労働分野におけるAI技術の利活用について
PDF
先端技術がもたらす「より良いヘルスケアのかたち」
PDF
AIによる細胞診支援技術の紹介と、AI人材が考える医療バイオ領域における参入障壁の乗り越え方
PDF
深層強化学習を用いた複合機の搬送制御
PDF
Azure ML 強化学習を用いた最新アルゴリズムの活用手法
PDF
Jetson x Azure ハンズオン DeepStream With Azure IoT 事前準備
PDF
Jetson x Azure ハンズオン DeepStream With Azure IoT
PDF
Jetson x Azure ハンズオン DeepStream Azure IoT
PDF
Jetson 活用による スタートアップ企業支援
PDF
[Track 4-6] ディープラーニングxものづくりが日本を強くする ~高専DCONの挑戦~
PDF
[Track3-2] AI活用人材の社内育成に関する取り組みについて ~ダイキン情報技術大学~
PDF
[Track1-1] AIの売上予測を発注システムに組み込んだリンガーハットのデータ活用戦略
PDF
[Track1-2] ディープラーニングを用いたワインブドウの収穫量予測
Edge AI ソリューションを支える Azure IoT サービス
DLLAB Healthcare Day 2021 Event Report
ICTを用いた健康なまちづくりの 取り組みとAI活用への期待​
医学と工学の垣根を越えた医療AI開発
Intel AI in Healthcare 各国事例からみるAIとの向き合い方
厚生労働分野におけるAI技術の利活用について
先端技術がもたらす「より良いヘルスケアのかたち」
AIによる細胞診支援技術の紹介と、AI人材が考える医療バイオ領域における参入障壁の乗り越え方
深層強化学習を用いた複合機の搬送制御
Azure ML 強化学習を用いた最新アルゴリズムの活用手法
Jetson x Azure ハンズオン DeepStream With Azure IoT 事前準備
Jetson x Azure ハンズオン DeepStream With Azure IoT
Jetson x Azure ハンズオン DeepStream Azure IoT
Jetson 活用による スタートアップ企業支援
[Track 4-6] ディープラーニングxものづくりが日本を強くする ~高専DCONの挑戦~
[Track3-2] AI活用人材の社内育成に関する取り組みについて ~ダイキン情報技術大学~
[Track1-1] AIの売上予測を発注システムに組み込んだリンガーハットのデータ活用戦略
[Track1-2] ディープラーニングを用いたワインブドウの収穫量予測

【LTセッション】Brainwave 使ってみた_DEEP LEARNING LAB

  • 1. © 2015-2017 Research Institute of Systems Planning, Inc. 初めてのAzureで Brainwave触ってみた 株式会社システム計画研究所/ISP 山本 真司 2018年8月24日 DLLAB推論ナイト
  • 2. © 2015-2017 Research Institute of Systems Planning, Inc. 0. 自己紹介 • (株)システム計画研究所/ISP 所属 – 1977年創業の独立系研究開発型のソフトウェア開発 会社 – 近年は、医療情報、通信・ネットワーク、制御・宇 宙、画像処理などの事業領域で、AI事業に注力 • 自称組み込みエンジニア – 役職は「エキスパート」と書いて「遊び人」と読み ます – 面白そうな技術を探してくるのがミッションです • Brainwave を触るまで、Azure使用経験まった くなし! 1
  • 3. © 2015-2017 Research Institute of Systems Planning, Inc. アジェンダ 1. Brainwaveとは 2. チュートリアル(00)を理解する 3. Brainwave を動かせるようにするまで 2
  • 4. © 2015-2017 Research Institute of Systems Planning, Inc. Brainwaveとは 3
  • 5. © 2015-2017 Research Institute of Systems Planning, Inc. 1.Brainwaveとは • Brainwave(プレビュー版)はざっくり言うと • FPGAとは、書き換え可能な H/Wですが、 Brainwave(プレビュー版)では、ユーザーは 自由には FPGAを書き換えられません 4 FPGA上にあらかじめ実装された CNNのモデルを ネット越しに叩いて 推論させようという代物
  • 6. © 2015-2017 Research Institute of Systems Planning, Inc. 1.Brainwaveとは • Brainwave(プレビュー版)は概ね以下の手順で使 用します 1. ローカルで推論モデルを記述する - 必要に応じて、リモートからモデルをダウンロードします 2. リモートにデプロイする 3. リモートでサービスを実行する • それぞれ以下の技術に立脚しています 1. 推論モデルの記述 ・・・ Tensorflow 2. デプロイ ・・・ REST API 3. リモートサービス ・・・ gRPC 5
  • 7. © 2015-2017 Research Institute of Systems Planning, Inc. 6 1.Brainwaveとは Tensorflow の Graphにする • プレビュー版でできることの例:画像の分類 • 推論処理の基本は3段階 ① 画像を前処理する ② 特徴量を抽出する ③ クラス分類を行う • 上記を行う Graph を リモートにデプロイする • gRPC で、画像を送りつけて、上記を叩いて、 結果をもらう ZIPで 固める … CPU実行 … CPU実行 … FPGA実行 snow leopard, ounce, Panthera uncia confidence: 0.85421455 leopard, Panthera pardus confidence: 0.13914554 cheetah, chetah, Acinonyx jubatus confidence: 0.0020039019 lynx, catamount confidence: 0.0019892405 great grey owl, great gray owl, Strix nebulosa confidence: 0.0011571224 リモートにデプロイ
  • 8. © 2015-2017 Research Institute of Systems Planning, Inc. 1.Brainwaveとは • 真ん中の特徴量抽出だけが FPGA実行 • クラス分類は CPU実行 • ユーザーは特徴量抽出は高速にFPGAで実行して、 判別器や分類器は自分で自由に構築できるとい うこと 7 ① 画像を前処理する ② 特徴量を抽出する ③ クラス分類を行う … CPU実行 … CPU実行 … FPGA実行 ここがミソ
  • 9. © 2015-2017 Research Institute of Systems Planning, Inc. チュートリアル(00)を 理解する 9
  • 10. © 2015-2017 Research Institute of Systems Planning, Inc. Pipeline Tensorflow Tensorflow Stage Stage CPU Brainwave Stage 2.チュートリアル(00)を理解する • REST API,gRPCはラッパーに完全に隠蔽 • Tensorflowのコードがかろうじて顔を出す程度 • つまり、何をやってるか細かいことは全然わかりません • Tensorflow の Graph は Pipeline に隠蔽されてます 10 ResNet50 Featurizer snow leopard, ounce, Panthera uncia confidence: 0.85421455 leopard, Panthera pardus confidence: 0.13914554 cheetah, chetah, Acinonyx jubatus confidence: 0.0020039019 lynx, catamount confidence: 0.0019892405 great grey owl, great gray owl, Strix nebulosa confidence: 0.0011571224 前処理 特 徴 量 ResNet50 Classifier
  • 11. © 2015-2017 Research Institute of Systems Planning, Inc. 2.チュートリアル(00)を理解する • Stageとは? – 下記の3種類の Stageがあります 1. TensorflowStage 2. BrainWaveStage 3. KerasStage • このうち、BrainWaveStage は FPGAで実行され、他の 2つは CPUで実行されます • チュートリアルでは、以下の構成になってます 1. 画像の前処理 … TensorFlowStage 2. 特徴量抽出 … BrainWaveStage 3. クラス分類 … TensorFlowStage 11
  • 12. © 2015-2017 Research Institute of Systems Planning, Inc. 2.チュートリアル(00)を理解する • リモートモデル – ResNet50による Featurizer,Classifierのモデルが 提供されています – チュートリアルでは、これらをダウンロードして、 Classifier を Pipelineに接続した後に、リモートに アップロードしています – Featurizer はリモートの FPGAで動くので、アップ ロードしません • では、何でダウンロードするのか? というと、ローカ ルで Pipeline がちゃんと動くか確認するときなどに使 えるようです 12
  • 13. © 2015-2017 Research Institute of Systems Planning, Inc. 2.チュートリアルでやってること • チュートリアルでやってることのまとめ 13 チュートリアルの見出し 概要 1 Image_processing 前処理の定義 2 Featurizer リモートモデルの download 3 Classifier 上記モデルから Classifier の Graph作成 4 Service Definition Stage を Pipeline List に Append デプロイ用の zipファイル作成 5 Deploy REST API発行準備 Zipファイルのアップロード デプロイ 6 Client Clientを作る Imagenet のラベル情報をゲット gRPC でリモートの Predictサービスを実行し て結果を表示
  • 14. © 2015-2017 Research Institute of Systems Planning, Inc. BRAINWAVE を動かせるよう にするまで 14
  • 15. © 2015-2017 Research Institute of Systems Planning, Inc. 2.Brainwave を動かせるようにするまで https://github.com/Azure/aml-real-time-ai Azure ML Hardware Accelerated Models Quickstartより (1) Azure の(無料)アカウントを作る (2) MMA(Model Management Account)を作る (3) quota を申請する (4) 返事を待つ (5) 待っている間に環境構築 (6) SSL 接続の準備 (7) 返事が来る (8) Jupyter notebook の起動 15
  • 16. © 2015-2017 Research Institute of Systems Planning, Inc. 2.Brainwave を動かせるようにするまで • 参考サイト https://github.com/Azure/aml-real-time-ai/blob/master/README.md https://github.com/Azure/aml-real-time-ai/blob/master/docs/README.md#set-up-environment https://docs.microsoft.com/ja-jp/azure/machine-learning/service/quickstart-installation https://docs.microsoft.com/en-us/azure/machine-learning/service/how-to-deploy-fpga-web-service • サイトにより少しずつ書いてあることが異なるので ご注意ください • ラッパークラスの中身についてはこちらが詳しいで す。Microsoft エバンジェリスト松崎剛さんの記事 です https://tsmatz.wordpress.com/2018/05/22/project-brainwave-fpga-realtime-prediction-service-in-azure-machine-learning-model-management/ 17
  • 17. © 2015-2017 Research Institute of Systems Planning, Inc. (1) Azure の(無料)アカウントを作る • 画面キャプチャし忘れたので絵はありません • 初めてだと怖かった点 – クレジットカード番号を入れろと言われる • 冷やかし対策です • 無料期間を過ぎて、有料アカウントに移行しなかっ たら、ちゃんと何も請求されなかったので御安心を – 電話番号を入れろと言われる • ベリフィケーションコードを貰うためです • PHSの番号を入れてもちゃんとSMSが送られてきま した • 恐れることは何もないです 18
  • 18. © 2015-2017 Research Institute of Systems Planning, Inc. (2) MMA(Model Management Account)を作る 19 • Azure Portal 画面 machine learning
  • 19. © 2015-2017 Research Institute of Systems Planning, Inc. (2) MMA(Model Management Account)を作る 21 名前系は適当に違う 名前を設定 Free_experiment Free_resource など Free Trialを選択 米国東部 2 「招待」を選択して、 自分を招待 S1 を選択
  • 20. © 2015-2017 Research Institute of Systems Planning, Inc. (3)quota を申請する(4)返事を待つ(6)返事が来る 22 • フォームにMMAの情報を入力して、いく つかのアンケートに回答して送信 • 多分、FPGAを利用するためのリソースを 確保するための手続き • 1回目は2日半ほどで、2回目は5日後に 「FPGA quota allocated」のメールが届きま した • ここの情報が必要に• Azure Portal → すべてのリソース• MMA選択• フォームに入力
  • 21. © 2015-2017 Research Institute of Systems Planning, Inc. (5) 待っている間に環境構築 • 環境構築の手順は下記を参考に、 https://github.com/Azure/aml-real-time-ai/blob/master/docs/README. md#set-up-environment • 上記では miniconda をインストールしているが、私は、 anaconda3 をインストールして、下記の作業を実施 (1) Brainwave の環境一式を github からクローンする (2) Brainwave 実行用の環境を作る - anaconda3/envs/amlrealtimeai 配下に環境が構築されます - du で amlrealtimeal の使用量を見たら驚きの2G超でした (3) Brainwave 実行用の環境に切り替える – 戻すときは、conda deactivate とする 23 git clone https://github.com/Azure/aml-real-time-ai conda env create -f aml-real-time-ai/amlrealtimeai.yml conda activate amlrealtimeai
  • 22. © 2015-2017 Research Institute of Systems Planning, Inc. (6) SSL 接続の準備 • ここには、SSL接続の設定をしろと書いてあり ますが、特に何もしないでもチュートリアルは 動きます https://docs.microsoft.com/en-us/azure/machine-learning/service/how-to-deploy-fpga-web-service • 間違った使い方をしているといけないので、自 己責任でお願いします 24
  • 23. © 2015-2017 Research Institute of Systems Planning, Inc. (8) Jupyter notebook の起動 • Amlrealtimeai の環境で起動 • チュートリアルのnotebookは、以下にあります aml-real-time-ai/notebooks/resnet50 • 初回起動時は下記のようなメッセージに従い token を入力します。2回目以降は不要です VCopy/paste this URL into your browser when you connect for the first time, to login with a token: http://localhost:8888/?token=bb2ce89cc8ae931f5df50f96e3a6badfc826ff4100e78075 • 環境によって、 – Running at「0.0.0.0:8080」と出るが、そこでは接続できず、例 えば「localhost:8080」でないとダメだったり、 – Running at「localhost:8888」と出て、そのままでOKだったり、 色々なので適宜対応ください 25 jupyter notebook
  • 24. © 2015-2017 Research Institute of Systems Planning, Inc. (8) Jupyter notebook の起動 • チュートリアル画面 26
  • 25. © 2015-2017 Research Institute of Systems Planning, Inc. Appendix:料金確認 27 日毎 MMA FPGA Storage 無料分の総額 残額 ■Azure Potal → すべてのサービス → サブスクリプション → Free Trial を選択
  • 26. © 2015-2017 Research Institute of Systems Planning, Inc. ご清聴ありがとうござました ISP www.isp.co.jp 技ラボ wazalabo.isp.co.jp 28