センサーデバイスのデータを使った microsoft azure machine learning 実装入門

42
Microsoft Data Platform

Upload: kosasaki

Post on 06-Jul-2015

2.478 views

Category:

Technology


3 download

DESCRIPTION

db tech showcase 東京 2014 でのセッションコンテンツ

TRANSCRIPT

Page 1: センサーデバイスのデータを使った Microsoft Azure Machine Learning 実装入門

Microsoft Data Platform

Page 2: センサーデバイスのデータを使った Microsoft Azure Machine Learning 実装入門

2

Page 3: センサーデバイスのデータを使った Microsoft Azure Machine Learning 実装入門

3

Page 4: センサーデバイスのデータを使った Microsoft Azure Machine Learning 実装入門

4

Page 5: センサーデバイスのデータを使った Microsoft Azure Machine Learning 実装入門

5

1. まずは全体の流れを押さえる

2. Azure Machine Learning 概要

3. .NET Gadgeteer (センサーデバイス) 概要

4. その他の構成要素

5. まとめ

Page 6: センサーデバイスのデータを使った Microsoft Azure Machine Learning 実装入門

6

.NET Gadgeteer

Machine Learning

Stream Analytics

Event Hubs

Web API

Page 7: センサーデバイスのデータを使った Microsoft Azure Machine Learning 実装入門

7

1. まずは全体の流れを押さえる

2. Azure Machine Learning 概要

3. .NET Gadgeteer (センサーデバイス) 概要

4. その他の構成要素

5. まとめ

Page 8: センサーデバイスのデータを使った Microsoft Azure Machine Learning 実装入門

8

Page 9: センサーデバイスのデータを使った Microsoft Azure Machine Learning 実装入門

9

ブラウザ (ML Studio) だけで すぐに始められる• サーバー等の環境準備/設定不要

複雑なモデルを GUI 操作だけでも実装可能

作成したモデルをボタン 1つで Web サービス化

R での実装も可能

各種ストレージ、データベースを入力、出力に• Azure Blob/Table/Azure SQL Database/

HiveQL/Power Query/HTTP

1時間あたり ¥38.76 or ¥76.50 の従量課金• プレビュー期間価格• サブスクリプションなしで始められる Free Tier あり

(*) あくまで実現するための操作や準備が簡単という意味で、機械学習を実現するためのモデル選定や統計的な理解、R やその他の要素技術利用は (長い) 時間をかけて勉強する必要があり、簡単ではないです。

Page 10: センサーデバイスのデータを使った Microsoft Azure Machine Learning 実装入門

10

Page 11: センサーデバイスのデータを使った Microsoft Azure Machine Learning 実装入門

11

Page 12: センサーデバイスのデータを使った Microsoft Azure Machine Learning 実装入門

12

Page 13: センサーデバイスのデータを使った Microsoft Azure Machine Learning 実装入門

13

Multiclass Decision Forest/Multiclass Decision Jungle/Multiclass Logistic Regression/Multiclass Neural Network/One-vs-All Multiclass/Two-Class Averaged Perceptron/Two-Class Bayes Point Machine/Two-Class Boosted Decision Tree/Two-Class Decision Forest/Two-Class Decision Jungle/Two-Class Logistic Regression/Two-Class Neural Network/Two-Class Support Vector Machine

K-Means Clustering

Bayesian Linear Regression/Boosted Decision Tree Regression/Decision Forest Regression/Linear Regression/Neural Network Regression/Ordinal Regression/Poisson Regression

Page 14: センサーデバイスのデータを使った Microsoft Azure Machine Learning 実装入門

14

Page 15: センサーデバイスのデータを使った Microsoft Azure Machine Learning 実装入門

15

Page 16: センサーデバイスのデータを使った Microsoft Azure Machine Learning 実装入門

16

REST API. POST リクエスト

HTTP の Req/Res の body は JSON 形式

短い応答時間を期待する場合は RRS を選択する• ML の処理は早くても数秒~数十秒かかるため、

応答は非同期待機も考慮した方がよい

REST API. 入力として各種データソースが指定可能。Azure Blob/Azure Table/Azure SQL Database/HiveQL/HTTP

レスポンスとして “JOBID” が返ってくる。それを基にバッチジョブの状態を定期チェック

状態が Finished/Failed になったら処理結果を取得結果は Azure Blob に出力される

Page 17: センサーデバイスのデータを使った Microsoft Azure Machine Learning 実装入門

17

Page 18: センサーデバイスのデータを使った Microsoft Azure Machine Learning 実装入門

18

既定で 410 個のパッケージが利用可能 (2014/11/12 時点)

独自の R スクリプト、パッケージ、.RData ファイルを取込み可能• zip で圧縮して “Execute R Script” の入力に指定• 解凍して /src フォルダに展開される

標準出力、グラフィックス関数の出力も参照可能• BES を使って画像ファイルとして保存も可能

Page 19: センサーデバイスのデータを使った Microsoft Azure Machine Learning 実装入門

19

Page 20: センサーデバイスのデータを使った Microsoft Azure Machine Learning 実装入門

20

1. まずは全体の流れを押さえる

2. Azure Machine Learning 概要

3. .NET Gadgeteer (センサーデバイス) 概要

4. その他の構成要素

5. まとめ

Page 21: センサーデバイスのデータを使った Microsoft Azure Machine Learning 実装入門

21

Page 22: センサーデバイスのデータを使った Microsoft Azure Machine Learning 実装入門

22

物理デバイスの差し替え可能(*)

デバイス用に用意された API

Visual Studio で開発可能 .NET Micro Framework の API が利用可能

• .NET Framework と同様の API が利用可能※実際には同じものではないので、種々の制約はある

(*) .NET Gadgeteer のソフトウェアは 1 年に何回かのペースでアップデートされており、デバイス側が追随していないケースや互換性のないケースがあります。そのため、使用・購入する際には、メインボードとの互換性有無について事前の確認が必要です

Page 23: センサーデバイスのデータを使った Microsoft Azure Machine Learning 実装入門

23

Page 24: センサーデバイスのデータを使った Microsoft Azure Machine Learning 実装入門

24

Page 25: センサーデバイスのデータを使った Microsoft Azure Machine Learning 実装入門

25

Page 26: センサーデバイスのデータを使った Microsoft Azure Machine Learning 実装入門

26

11 月末に提供開始予定(URL は”リソース” スライド参照)

.NET Gadgeteer のメインボードと一部センサーを付属した入門者用セット12月中に販売開始予定※待ちきれない方は FEZ Spider を個別に購入ください

Page 27: センサーデバイスのデータを使った Microsoft Azure Machine Learning 実装入門

27

Page 28: センサーデバイスのデータを使った Microsoft Azure Machine Learning 実装入門

28

1. まずは全体の流れを押さえる

2. Azure Machine Learning 概要

3. .NET Gadgeteer (センサーデバイス) 概要

4. その他の構成要素

5. まとめ

Page 29: センサーデバイスのデータを使った Microsoft Azure Machine Learning 実装入門

29

Page 30: センサーデバイスのデータを使った Microsoft Azure Machine Learning 実装入門

30

Page 31: センサーデバイスのデータを使った Microsoft Azure Machine Learning 実装入門

31

リクエストメソッドと URL に従った実装

Restful なアプリケーションを構築するためのプラットフォーム

容易に HTTP サービスを実装可能にする

Page 32: センサーデバイスのデータを使った Microsoft Azure Machine Learning 実装入門

32

.NET Gadgeteer

クライアント アプリ

2014/11/13機器と時間の都合上、セッション内ではこのデモは割愛しました

Page 33: センサーデバイスのデータを使った Microsoft Azure Machine Learning 実装入門

33

Event Hubs Stream Analytics

Page 34: センサーデバイスのデータを使った Microsoft Azure Machine Learning 実装入門

34

データをストリーミング受信する「窓口」の役割

HTTPS, AMQP でイベントデータ授受

保有期間:最大 7日。東日本と西日本で地理的冗長

処理パターン(取込間隔など)、並列度によりパーティション

スループット ユニットでスケールを動的変更入力: 1 MB or 1000 イベント / 1 スループットユニットあたり出力: 2 MB / 1 スループットユニットあたり

2014/10 末に正式リリース

Page 35: センサーデバイスのデータを使った Microsoft Azure Machine Learning 実装入門

35

2014/10 末に Public Preview 開始

Event Hubs と連携してリアルタイムにデータ取込み

現時点で利用可能な形式入力: Event Hubs、Azure Blob Storage出力: SQL Database、Event Hubs、Azure Blob Storage

Streaming Unit Pool でスケールを動的変更約 1 MB/sec / 1 Streaming Unit Pool あたり

“Stream Analytics Query Language” で変換/集約処理を実装

Page 36: センサーデバイスのデータを使った Microsoft Azure Machine Learning 実装入門

36

例) デバイスごとの平均加速度値を5秒間隔で集約

⇒ SQL Database に 5 秒に 1 件レコード登録

Page 37: センサーデバイスのデータを使った Microsoft Azure Machine Learning 実装入門

37

Page 38: センサーデバイスのデータを使った Microsoft Azure Machine Learning 実装入門

38

1. まずは全体の流れを押さえる

2. Azure Machine Learning 概要

3. .NET Gadgeteer (センサーデバイス) 概要

4. その他の構成要素

5. まとめ

Page 39: センサーデバイスのデータを使った Microsoft Azure Machine Learning 実装入門

39

.NET Gadgeteer

Machine Learning

Stream Analytics

Event Hubs

Web API

Page 40: センサーデバイスのデータを使った Microsoft Azure Machine Learning 実装入門

40

Page 41: センサーデバイスのデータを使った Microsoft Azure Machine Learning 実装入門

41

https://studio.azureml.net/

http://azure.microsoft.com/ja-JP/services/machine-learning/

http://azure.microsoft.com/ja-JP/services/event-hubs/

http://azure.microsoft.com/ja-JP/services/stream-analytics/

http://ms-iotkithol-jp.github.io/

Page 42: センサーデバイスのデータを使った Microsoft Azure Machine Learning 実装入門

本書に記載した情報は、本書各項目に関する発行日現在の Microsoft の見解を表明するものです。Microsoftは絶えず変化する市場に対応しなければならないため、ここに記載した情報に対していかなる責務を負うものではなく、提示された情報の信憑性については保証できません。

本書は情報提供のみを目的としています。 Microsoft は、明示的または暗示的を問わず、本書にいかなる保証も与えるものではありません。

すべての当該著作権法を遵守することはお客様の責務です。Microsoftの書面による明確な許可なく、本書の如何なる部分についても、転載や検索システムへの格納または挿入を行うことは、どのような形式または手段(電子的、機械的、複写、レコーディング、その他)、および目的であっても禁じられています。これらは著作権保護された権利を制限するものではありません。

Microsoftは、本書の内容を保護する特許、特許出願書、商標、著作権、またはその他の知的財産権を保有する場合があります。Microsoftから書面によるライセンス契約が明確に供給される場合を除いて、本書の提供はこれらの特許、商標、著作権、またはその他の知的財産へのライセンスを与えるものではありません。

© 2014 Microsoft Corporation. All rights reserved.

Microsoft, Windows, その他本文中に登場した各製品名は、Microsoft Corporation の米国およびその他の国における登録商標または商標です。

その他、記載されている会社名および製品名は、一般に各社の商標です。