iot時代のアナリティクス ~センサーデータからの価値発見~ ·...

36
1 © 2015 The MathWorks, Inc. IoT時代のアナリティクス ~センサーデータからの価値発見~ MathWorks Japan アプリケーション・エンジニアリング部 (テクニカルコンピューティング) 部長 大谷卓也

Upload: others

Post on 01-Feb-2020

0 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: IoT時代のアナリティクス ~センサーデータからの価値発見~ · プログラミング言語としてのMATLAB 2014年7月 IEEE Spectrumによる、 プログラミング言語の人気調査

1 © 2015 The MathWorks, Inc.

IoT時代のアナリティクス ~センサーデータからの価値発見~

MathWorks Japan

アプリケーション・エンジニアリング部 (テクニカルコンピューティング)

部長

大谷卓也

Page 2: IoT時代のアナリティクス ~センサーデータからの価値発見~ · プログラミング言語としてのMATLAB 2014年7月 IEEE Spectrumによる、 プログラミング言語の人気調査

2

Agenda

IoT時代のセンサーデータ解析

– ウェラブル、インフラ、環境、自動車

センサー信号IoT / アナリティクス構築のChallenge

IoT システム開発フロー

MATLABでのデータアナリティクス

Page 3: IoT時代のアナリティクス ~センサーデータからの価値発見~ · プログラミング言語としてのMATLAB 2014年7月 IEEE Spectrumによる、 プログラミング言語の人気調査

3

IoT 時代のセンサーデータ技術

インフラ・プラント設備

ヘルスモニタリング プロセス監視

自動車・航空宇宙

テレマティクス、ヘルスモニタリング 走行安全・ADAS

ウェアラブル・ メディカル

バイタルサインモニター 在宅ケア・遠隔医療

気象、電力、災害予測 電力需要予測(EMS、電力取引)

気象・環境 モニタリング

Page 4: IoT時代のアナリティクス ~センサーデータからの価値発見~ · プログラミング言語としてのMATLAB 2014年7月 IEEE Spectrumによる、 プログラミング言語の人気調査

4

遠隔モニタリング、診断

ウェアラブル・メディカル

• 喘息の発生及び、

COPD(慢性閉塞性肺疾患) 検知

• スマートフォン側の処理と、クラウドベース

処理の組み合わせによる、診断

遠隔地の患者の ECGデータの取得

デバイス側でのデータ前処理 • トレンド、ノイズ除去

サーバー・クラウドによる、各種統計値測定、機械学習による、診断

http://www.mathworks.com/tagteam/84870_92152v01_iSonea_UserStory_2015.pdf

Page 5: IoT時代のアナリティクス ~センサーデータからの価値発見~ · プログラミング言語としてのMATLAB 2014年7月 IEEE Spectrumによる、 プログラミング言語の人気調査

5

リモートセンシング、異常検知例

!!! 遠隔地の構造物や機器の異常

機器の健康状態、異常のリモート診断、モニタリング

インフラ・プラント設備

工場での生産工程の最適化

異常・変化点検知

観測データの異常 製造物/生成物の異常

Page 6: IoT時代のアナリティクス ~センサーデータからの価値発見~ · プログラミング言語としてのMATLAB 2014年7月 IEEE Spectrumによる、 プログラミング言語の人気調査

6

気象・環境 モニタリング

10/22 10/23 10/24 10/25 10/26 10/27 10/28 10/29

過去のデータと様々なパラメータを使い未来の予測

• HVAC(冷暖房、換気システム) に向けたクラウドベースの

リアルタイム・アナリティクス

• 気象データ、電力消費量を元に、機械学習、最適化

• ビルの電力消費量を15-20%削減 http://www.mathworks.com/tagteam/82631_92267v00_BuildingIQ_UserStory_final.pdf

Page 7: IoT時代のアナリティクス ~センサーデータからの価値発見~ · プログラミング言語としてのMATLAB 2014年7月 IEEE Spectrumによる、 プログラミング言語の人気調査

7

走行データ解析

ヘルスモニタリング

自動車・航空宇宙

自動車のアクセル・ブレーキパターンの解析

各車両のチャージ量(電源)のマッピング

• 社内ITシステムと統合した解析システム

• コンポーネントのパフォーマンス予測

• メンテナンスコストの最小化

http://www.mathworks.com/tagteam/52469_91597v00_daimler_upd.pdf

Page 8: IoT時代のアナリティクス ~センサーデータからの価値発見~ · プログラミング言語としてのMATLAB 2014年7月 IEEE Spectrumによる、 プログラミング言語の人気調査

8

Agenda

IoT時代のセンサーデータ解析

– ウェラブル、インフラ、環境、自動車

センサー信号IoT 構築のChallenge

IoT システム開発フロー

MATLABでのデータアナリティクス

Page 9: IoT時代のアナリティクス ~センサーデータからの価値発見~ · プログラミング言語としてのMATLAB 2014年7月 IEEE Spectrumによる、 プログラミング言語の人気調査

9

センサー信号IoT 構築のChallenge

膨大なデータのハンドリング

– 大量のセンサーデバイス、限られた転送帯域

– コンピューティングリソース、消費電力の全体最適化 (デバイス側での処理と、サーバー・クラウド側処理のパーティショニング)

高度なアナリティクスの開発

– 非同期、サンプル速度の違い、欠損データの対応

– 高度な機械学習、時系列予測、最適化アルゴリズムの実装

– ITインフラとの統合

Page 10: IoT時代のアナリティクス ~センサーデータからの価値発見~ · プログラミング言語としてのMATLAB 2014年7月 IEEE Spectrumによる、 プログラミング言語の人気調査

10

IoT 構築のチャレンジ

エッジデバイス • 信号処理、画像処理、データ圧縮 • 組み込みシステム(マイコン、FPGA)

データアグリゲータ • データの前処理、同期処理 • データベースアクセス • 並列計算による高速化

データ解析/可視化 • トレンド解析・異常検出 • データ可視化・レポーティング

センサー

ネットワークのバンド幅 V.S

消費電力 V.S

コンピューティングパワー V.S

開発時間・工数

データ転送

Page 11: IoT時代のアナリティクス ~センサーデータからの価値発見~ · プログラミング言語としてのMATLAB 2014年7月 IEEE Spectrumによる、 プログラミング言語の人気調査

11

IoTを使った遠隔診断DEMO ~心電図のリモート(Cloud)診断~

心拍データのキャプチャ 特徴の抽出

生体信号モニタリング・デバイス

Amazon

Kinesis

Kinesis JAVA Client

Amazon

EC2 MATLAB

ニューラルネットワークによる 機械学習(MATLABからの実装)

MATLAB

Page 12: IoT時代のアナリティクス ~センサーデータからの価値発見~ · プログラミング言語としてのMATLAB 2014年7月 IEEE Spectrumによる、 プログラミング言語の人気調査

12

情報の圧縮 (時系列センサー例) (特徴量の抽出クラウドへ送信)

全データ送信 @1k/s

4bytes x 1,000points = 4KB/s

特徴データ(QRS例)のみ送信

4bytes x 10points x 2(タイムスタンプ)

= 80B/s

必要な特徴量のみ送信することで、必要データ帯域を最小限に デバイス10万台の例: 400MB/s 8MB/s

Page 13: IoT時代のアナリティクス ~センサーデータからの価値発見~ · プログラミング言語としてのMATLAB 2014年7月 IEEE Spectrumによる、 プログラミング言語の人気調査

13

アナリティクスの処理負荷とデータ量

入力

特徴抽出

特徴量

分類・解析 (機械学習など)

出力

データ量:大

処理負荷:小

データ量:中

処理負荷:中

データ量:小

処理負荷:中

データ量:小

処理負荷:大

Page 14: IoT時代のアナリティクス ~センサーデータからの価値発見~ · プログラミング言語としてのMATLAB 2014年7月 IEEE Spectrumによる、 プログラミング言語の人気調査

14

情報の圧縮 (監視カメラ・イメージセンサー例) ストリーミングでのコンピュータビジョン処理

Database

ビデオデータ(保存用)

ギガバイト、テラバイト単位

時刻+検出結果

メタデータのみ

メガバイト単位

入力データをリアルタイム処理し、メタデータを同時生成することにより、後処理時間、データ転送時間を削減

Page 15: IoT時代のアナリティクス ~センサーデータからの価値発見~ · プログラミング言語としてのMATLAB 2014年7月 IEEE Spectrumによる、 プログラミング言語の人気調査

15

アナリティクスフロー

計測器

データ

情報

知識

アクション

観測 • 検出 • 収集 • 状態 • データ取得

整理 • フィルタリング • 信号解析 • データ処理 • プロット

理解 • 分析 • 周波数 & 時間領域 • 予測分析 • 推定

意思決定 & 設計 • レポート & Apps • 拡張性のある展開 • 設計最適化

MPG Acceleration Displacement Weight Horsepow er

MP

GA

ccele

ratio

nD

ispla

cem

ent

Weig

ht

Hors

epow

er

50 1001502002000 4000200 40010 2020 40

50

100

150

200

2000

4000

200

400

10

20

20

40

Page 16: IoT時代のアナリティクス ~センサーデータからの価値発見~ · プログラミング言語としてのMATLAB 2014年7月 IEEE Spectrumによる、 プログラミング言語の人気調査

16

Agenda

IoT時代のセンサーデータ解析

– ウェラブル、インフラ、環境、自動車

センサー信号IoT / アナリティクス構築のChallenge

IoT システム開発フロー

MATLABでのデータアナリティクス

Page 17: IoT時代のアナリティクス ~センサーデータからの価値発見~ · プログラミング言語としてのMATLAB 2014年7月 IEEE Spectrumによる、 プログラミング言語の人気調査

17

IoT / M2M 全体像

エッジデバイス • 信号処理、画像処理、データ圧縮 • 組み込みシステム(マイコン、FPGA)

データアグリゲータ • データの前処理、同期処理 • データベースアクセス

データ解析/可視化 • トレンド解析・異常検出 • データ可視化・レポーティング

センサー

Page 18: IoT時代のアナリティクス ~センサーデータからの価値発見~ · プログラミング言語としてのMATLAB 2014年7月 IEEE Spectrumによる、 プログラミング言語の人気調査

18

IoT / M2M 開発フロー ①MATLABによる、アルゴリズム開発、全体システム設計

全体システムの動き確認・検討 • データの同期方法検討 • 特徴抽出・機械学習の検討 • トレンド解析、イベント・異常検出

大規模高速演算 • HPC利用による、並列処理の検討 • GPGPUによる高速処理

MPG Acceleration Displacement Weight Horsepow er

MP

GA

ccele

ratio

nD

ispla

cem

ent

Weig

ht

Hors

epow

er

50 1001502002000 4000200 40010 2020 40

50

100

150

200

2000

4000

200

400

10

20

20

40

HWをダイレクト接続

(I2C, SPI, CAN, 測定機器類)

センサー

Page 19: IoT時代のアナリティクス ~センサーデータからの価値発見~ · プログラミング言語としてのMATLAB 2014年7月 IEEE Spectrumによる、 プログラミング言語の人気調査

19

IoT / M2M 開発フロー ②MATLAB/Simulinkによる、組み込み開発

MATLABへHWをダイレクト接続

(I2C, SPI, CAN, 測定機器類)

アルゴリズムの開発 • データの同期方法検討 • 特徴抽出・機械学習の検討 • トレンド解析、イベント・異常検出

MPG Acceleration Displacement Weight Horsepow er

MP

GA

ccele

ratio

nD

ispla

cem

ent

Weig

ht

Hors

epow

er

50 1001502002000 4000200 40010 2020 40

50

100

150

200

2000

4000

200

400

10

20

20

40

センサー

Page 20: IoT時代のアナリティクス ~センサーデータからの価値発見~ · プログラミング言語としてのMATLAB 2014年7月 IEEE Spectrumによる、 プログラミング言語の人気調査

20

IoT / M2M 開発フロー ②MATLAB/Simulinkによる、組み込み開発

実装

Cコード HDLコード 生成

設計

アルゴリズム 要求仕様

ソフトウェア

モデル

ハードウェア

モデル

統合

プログラマブル SoCなど

システムモデル

生成

生成

実装

アルゴリズムのパーティショニング • アナログ vs. デジタル • スピード vs. 容量/面積 • FPGA vs. CPU

モデルベースデザインフロー

Page 21: IoT時代のアナリティクス ~センサーデータからの価値発見~ · プログラミング言語としてのMATLAB 2014年7月 IEEE Spectrumによる、 プログラミング言語の人気調査

21

IoT / M2M 開発フロー ③エッジデバイス、アグリゲータへのコードの配置・Deploy

エッジデバイス • 信号処理、画像処理、データ圧縮 • 組み込みシステム(マイコン、FPGA)

データアグリゲータ • データの前処理、同期処理 • データベースアクセス

C/HDLコード生成 / 実装

システムの最適化/バランス配置 • エッジデバイス vs. サーバー • ストリーミング vs. オフライン

MATLABコードの

Deploy (C, Java, .NET)

Page 22: IoT時代のアナリティクス ~センサーデータからの価値発見~ · プログラミング言語としてのMATLAB 2014年7月 IEEE Spectrumによる、 プログラミング言語の人気調査

22

IoT / M2M 全体像

エッジデバイス • 信号処理、画像処理、データ圧縮 • 組み込みシステム(マイコン、FPGA)

データアグリゲータ • データの前処理、同期処理 • データベースアクセス

データ解析/可視化 • トレンド解析・異常検出 • データ可視化・レポーティング

RESTful API

(JSON、XML、画像、テキスト) TCP/IP

全体のシステムレベルで検討し、 パフォーマンスとコストの最適化

Page 23: IoT時代のアナリティクス ~センサーデータからの価値発見~ · プログラミング言語としてのMATLAB 2014年7月 IEEE Spectrumによる、 プログラミング言語の人気調査

23

Agenda

IoT時代のセンサーデータ解析

– ウェラブル、インフラ、環境、自動車

センサー信号IoT / アナリティクス構築のChallenge

IoT システム開発フロー

MATLABでのデータアナリティクス

Page 24: IoT時代のアナリティクス ~センサーデータからの価値発見~ · プログラミング言語としてのMATLAB 2014年7月 IEEE Spectrumによる、 プログラミング言語の人気調査

24

1970 Stanford Ph.D. thesis, with thousands of lines of Fortran code

MATLAB 複雑な事をシンプルに

Page 25: IoT時代のアナリティクス ~センサーデータからの価値発見~ · プログラミング言語としてのMATLAB 2014年7月 IEEE Spectrumによる、 プログラミング言語の人気調査

25

1970 Stanford Ph.D. thesis, with thousands of lines of Fortran code

MATLAB 複雑な事をシンプルに

Page 26: IoT時代のアナリティクス ~センサーデータからの価値発見~ · プログラミング言語としてのMATLAB 2014年7月 IEEE Spectrumによる、 プログラミング言語の人気調査

26

MATLAB

テクニカルコンピューティングを

効率的に行うためのプログラミング環境

– アルゴリズム開発向けに対話的な

プログラミング環境を提供

– 強力なデータ解析、可視化機能

– 信号処理、画像処理、統計、最適化、 数式処理など適用分野に特化した アドオン製品群-“Toolbox”

– 外部のデータ、アプリケーション、機器との入出力

– MathWorks製品の基盤

Page 27: IoT時代のアナリティクス ~センサーデータからの価値発見~ · プログラミング言語としてのMATLAB 2014年7月 IEEE Spectrumによる、 プログラミング言語の人気調査

27

MATLABの適用分野

航空宇宙 / 防衛

自動車

医療 / 創薬

化学 / 石油

通信

コンピュータ / オフィス機器

教育

電機 / 半導体

金融

工業オートメーション

計測

エネルギー

業界

Page 28: IoT時代のアナリティクス ~センサーデータからの価値発見~ · プログラミング言語としてのMATLAB 2014年7月 IEEE Spectrumによる、 プログラミング言語の人気調査

28

プログラミング言語としてのMATLAB

2014年7月 IEEE Spectrumによる、 プログラミング言語の人気調査(12種類の項目での結果) 結果: MATLABがC, C++, Javaなどの従来からの汎用言語と並び、10位にランクイン Data sources: Google, CareerBuilder, IEEE Xplore, Github, and more.

Page 29: IoT時代のアナリティクス ~センサーデータからの価値発見~ · プログラミング言語としてのMATLAB 2014年7月 IEEE Spectrumによる、 プログラミング言語の人気調査

29

アナリティクス向け各種ツール

Optimization Toolbox

滑らかな目的関数の最適化

さまざまな最適化問題に対応する関数の

提供

最適化計算の並列処理

最適化のためのGUI環境

Statistics and Machine Learning

Toolbox

多変量統計

確率分布

回帰と分散分析

機械学習

実験計画

Computer Vision System Toolbox™

カメラキャリブレーション

機械学習による物体認識

動画ストリーミング処理

トラッキング

ステレオビジョン・3D表示

Signal Processing Toolbox™

信号生成、時間領域解析

フィルタ設計解析

アナログフィルタ

ディジタルフィルタ

スペクトル解析

線形予測

Page 30: IoT時代のアナリティクス ~センサーデータからの価値発見~ · プログラミング言語としてのMATLAB 2014年7月 IEEE Spectrumによる、 プログラミング言語の人気調査

30

各種HW/SW連携ツール

Parallel Computing Toolbox

MATLAB & Simulink と

連携した並列処理

最大512並列をサポート

GPU 計算

対話的な並列計算実行

ジョブおよびタスクの制御 MATLAB デスクトップ

ローカル

デスクトップコンピュータ

Database Toolbox

各種データベースへの

アクセス

ODBC

JDBC

GUIを用いた対話的な

アクセスとSQLの作成

Mapping Toolbox

2D/3D地図表示

WebMapService

サーバへのアクセス

デジタル地形の分析

地図フォーマット変換

Web Map の表示

Instrument Control Toolbox

測定器へのアクセス

オシロスコープ

信号発生器

スペアナ

シリアル通信(RS-232など)

Page 31: IoT時代のアナリティクス ~センサーデータからの価値発見~ · プログラミング言語としてのMATLAB 2014年7月 IEEE Spectrumによる、 プログラミング言語の人気調査

31

Big Data に対する対応

メモリとデータへのアクセス

64-bit プロセッササポート

メモリ/Diskマップド変数

データベースアクセス

大規模テキストサポート

プラットフォームサポート

マルチコア、GPU

クラスタへの対応

クラウドコンピューティング

Hadoop

プログラミング手法

ストリーミング

ブロック処理

CPU/GPUを使った並列処理

MapReduce

Page 32: IoT時代のアナリティクス ~センサーデータからの価値発見~ · プログラミング言語としてのMATLAB 2014年7月 IEEE Spectrumによる、 プログラミング言語の人気調査

32

Datastore

Hadoopとの連携、MapReduceの実装

MATLAB

MapReduce

Code

HDFS

Node Data

MATLAB

Distributed

Computing

Server

Node Data

Node Data

Map Reduce

Map Reduce

Map Reduce

Hadoop

複雑なJAVAコードを書く必要なく、MATLABコードをそのまま、mapreduce, Hadoop環境に持って行き、並列化オプション(MATLAB Distributed Computing Server)併用で、大規模並列処理が可能

Page 33: IoT時代のアナリティクス ~センサーデータからの価値発見~ · プログラミング言語としてのMATLAB 2014年7月 IEEE Spectrumによる、 プログラミング言語の人気調査

33

AWS EC2へのスケールアウト

デスクトップクライアントにて マルチコアを使った

MATLAB/Simulinkの 並列コンピューティング

処理が重い演算・シミュレーション時、 EC2上にクラスタ環境を構築し、

大規模並列コンピューティングへ拡張

MATLAB + Parallel Computing ToolboxR

MATLAB Distributed Computing ServerR

JOBスケジューラ

Page 34: IoT時代のアナリティクス ~センサーデータからの価値発見~ · プログラミング言語としてのMATLAB 2014年7月 IEEE Spectrumによる、 プログラミング言語の人気調査

34

ITシステムとの統合

Web サーバ

アプリケーション サーバ

データベースサーバ

Pricing

Risk Analytics

Portfolio Optimization

MATLAB Production Server

MATLAB Compiler

Webアプリケーション

デスクトップアプリケーション

バッチアプリケーション

MATLAB Production Serverを使い、様々なITサーバ環境の中に、MATLABを組み込むことが可能です

Page 35: IoT時代のアナリティクス ~センサーデータからの価値発見~ · プログラミング言語としてのMATLAB 2014年7月 IEEE Spectrumによる、 プログラミング言語の人気調査

35

チャレンジ MATLABソリューション

IoT システム設計・最適化 思考を止めない統合環境 アイデアから組み込みデバイス、 アプリケーション開発までの統合環境

データの理解 機械学習、音声・画像処理、時系列解析 深く・広い分野に対して、多数の解析手法の提供

大規模演算 スケーラブルなコンピューティング環境 並列CPU,GPUを使った高速処理

IT環境への展開、 インテグレーション

デスクトップからIT環境への展開まで同じ環境で対応 作り直しが発生しないスムーズなプロダクションへの移行

テクノロジーリスク テクニカルサポート付きのハイクオリティなライブラリ プロダクションに使える、業界標準ライブラリ サポート、トレーニング、アドバイザリも提供

MATLAB for Data Analytics / IoT

Page 36: IoT時代のアナリティクス ~センサーデータからの価値発見~ · プログラミング言語としてのMATLAB 2014年7月 IEEE Spectrumによる、 プログラミング言語の人気調査

36

© 2015 The MathWorks, Inc. MATLAB and Simulink are registered trademarks of The MathWorks, Inc. See www.mathworks.com/trademarks for a list of

additional trademarks. Other product or brand names may be trademarks or registered trademarks of their respective holders.