SlideShare a Scribd company logo
機械学習勉強会 #2
IoT編
2019/02/27 | 28
小島 富治雄
1. 本日の環境
2. 本日の構成
3. IoT デバイス - Raspberry Pi
4. Microsoft Azure
5. IoT ハブ | Azure
6. SQL データベース | Azure
7. マシンラーニング スタジオ |
Azure
本日ご紹介する内容
1
8. ストリーム アナリティクス | Azure
9. [オプション] Power BI
10. 後片付け
以下の Microsoft Docs のチュートリアルが元
Raspberry Pi から クラウドへ (Node.js) - Raspberry Pi の
Azure IoT Hub への接続
シミュレートした Raspberry Pi から クラウドへ (Node.js) -
Raspberry Pi Web シミュレーターの Azure IoT Hub への接続
Azure IoT Hub から取得したリアルタイム センサー データの視覚化
– Power BI
本日のハンズオン
2
本日の環境
3
この写真 の作成者 不明な作成者 は CC BY-NC-ND のライセンスを許諾されています
Microsoft Azure
SQL Server Management Studio
[オプション] Power BI
インターネットにつながる環境
推奨 Webブラウザー: Edge, Chrome
ハンズオンの環境
4
1. ご自身の Visual Studio サブスクリプションの Microsoft アカウントでサインイン
2. 「職場または学校アカウント」か「個人アカウント」かを訊かれた場合は、使用するアカウントを選択
Microsoft アカウントへのサインイン
(Visual Studio サブスクリプション がある場合)
5
1. My Visual Studio を開く (必要に応じてサインイン)
2. Azure 特典をアクティブ化
※ Visual Studio Enterprise の場合は
150ドルのクレジット/月、
Visual Studio Professional の場合は
50 ドルのクレジット/月
Visual Studio サブスクリプションの Azure 特典
6
※ Visual Studio サブスクリプションの Azure 特典をアクティブにしていない人はアクティブ化
Microsoft Azure のポータル を開く (必要に応じてサインイン)
次のどちらかの画面になればOK
Microsoft Azure
7
ホーム | ポータル | Microsoft Azure ダッシュボード| ポータル | Microsoft Azure
リソース
①
②
リソース グループの作成
8
①
②
これから作成する各種リソースは、
このリソース グループに属する
作成済みのリソースを探すときも、
ポータル → リソース グループ → 20190227
とすることで見つけやすくなる
このリソース グループを削除することで、
今回の作成した各種リソースを一括削除できる
9
Visual Studio サブスクリプションの Power BI Pro
Power BI
10
 My Benefits | My Visual Studio で Power BI Pro の特典の
「コードを取得」して「アクティブ化」
Power BI
11
Power BI のアカウントを既存のサブスクリプションに追加
12
Power BI を開く (必要に応じてサインイン)
Power BI
13
SQL Server Management Studio (SSMS) のダウンロード
SQL Server Management Studio
14
ダウンロードしてインストール
本日のシナリオ
15
IoT デバイス
福井市の
天候データ
マシン
ラーニング
雨予想
API
取り込んで
処理
クラウド
データ蓄積
データ
可視化
IoT 管理
表示
本日の構成
16
IoT デバイス
マシンラーニング
スタジオ
マシンラーニング API
ストリーム アナリティクスIoT ハブ
Microsoft Azure (& Power BI)
SQL データベース
SQL データベース
Power BI
CSV データ
MQTT
HTTP
Web ブラウザー
気象庁の福井市
天候データ
学習
雨の予測
API
気温・湿度
・気圧取得
新たな天候データ
として蓄積
気温・湿度
・気圧・雨予測の
可視化
IoTデバイス
17
IoT デバイス
マシンラーニング
スタジオ
マシンラーニング API
ストリーム アナリティクスIoT ハブ
Microsoft Azure
SQL データベース
SQL データベース
Power BI
CSV データ
MQTT
HTTP
Web ブラウザー
Microsoft Azure IoT デバイス カタログ
18
Azure に対応した
IoT デバイスのカタログ
今回使用する IoT デバイス
19
Raspberry Pi Arduino
ARMプロセッサを搭載した
シングルボード コンピューター
OS
Raspbian (Linux)
Windows 10 IoT
Windows 10
など
Raspberry Pi
20
参考: Raspberry Pi への Windows 10 IoT のセットアップ
21
参考: Raspberry Pi への Windows 10 IoT のセットアップ
22
参考: Raspberry Pi への OS (Raspbian) のセットアップ
23
参考: Raspberry Pi への OS (Raspbian) のセットアップ
24
配線
Raspberry Pi に
センサーなどを接続
25
BME280
1チップ 温度・湿度・
気圧センサー
26
Raspberry Pi 2 & 3 Pin Mappings
27Raspberry Pi 2 & 3 Pin Mappings - Windows IoT | Microsoft Docs
配線
28
220Ω抵抗器
LED
BME280
Raspberry Pi
VCC → +3V3(pin1)
GND → GND(pin9)
SCL → GPIO3/SCL1(pin5)
SDA → GPIO2/SDA1(pin3)
CSB → 不使用
SDO → GND
LED + → GPIO4 (pin7)
LED - → 220Ω抵抗器
220Ω抵抗器 → GND
1 3 5 7 9
29
Raspberry Pi の I2C (シリアル通信の一種) の有効化
30
I2C で温度・湿度・気圧センサー BME280 と通信
Raspberry Pi の I2C (シリアル通信の一種) の有効化
31
①
②
Raspberry Pi の I2C (シリアル通信の一種) の有効化
32
Raspberry Pi の I2C (シリアル通信の一種) の有効化
33
pi@raspberrypi:~ $ sudo apt update
…… なんかかんや
pi@raspberrypi:~ $ sudo apt upgrade
…… なんかかんや
pi@raspberrypi:~ $ sudo apt-get install i2c-tools
…… なんかかんや
pi@raspberrypi:~ $ sudo apt-get install python-smbus
…… なんかかんや
Raspberry Pi へのライブラリーのインストール
34
I2C 用のツール
Python で I2C を使用するためのライブラリー
マイコン回路の “Hello World!
Lチカ (LEDチカチカ)
Lチカとは (エルチカとは) [単語記事] | ニコニコ大百科
いろいろなマイコンでのLチカ比較 | Qiita
「二人のはじめての共同作業」
35
 led.py
サンプル プログラム 「Lチカ」
$ sudo python /home/pi/azure-
iot-sdk-
python/device/samples/led.py
/home/pi/azure-iot-sdk-
python/device/samples/ へコピー
#coding: utf-8
import RPi.GPIO as GPIO
import time
gpio_number = 4
GPIO.setmode(GPIO.BCM)
GPIO.setup(gpio_number, GPIO.OUT)
for x in xrange(5):
GPIO.output(gpio_number, True)
time.sleep(2)
GPIO.output(gpio_number, False)
time.sleep(2)
GPIO.cleanup()
36
pi@raspberrypi:~ $ sudo i2cdetect -y 1
0 1 2 3 4 5 6 7 8 9 a b c d e f
00: -- -- -- -- -- -- -- -- -- -- -- -- --
10: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
20: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
30: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
40: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
50: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
60: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
70: -- -- -- -- -- -- 76 --
I2C のアドレスの確認
37
pi@raspberrypi:~ $ sudo i2cdump -y 1 0x76
No size specified (using byte-data access)
0 1 2 3 4 5 6 7 8 9 a b c d e f 0123456789abcdef
00: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
10: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
20: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
30: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
40: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
50: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
60: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
70: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
80: 91 71 89 45 0b 01 2c 06 92 6e b2 68 32 00 37 92 ?q?E??,??n?h2.7?
90: 6c d7 d0 0b 89 19 7a ff f9 ff 0c 30 20 d1 88 13 l?????z.?.?0 ???
a0: 00 4b 90 00 00 00 00 00 00 00 00 00 33 00 00 c0 .K?.........3..?
b0: 00 54 00 00 00 00 60 02 00 01 ff ff 1f 60 03 00 .T....`?.?..?`?.
c0: 00 00 00 ff 00 00 00 00 00 00 00 00 00 00 00 00 ................
d0: 60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 `...............
e0: 00 5a 01 00 16 24 03 1e 8d 41 ff ff ff ff ff ff .Z?.?$???A......
f0: ff 00 00 00 00 00 00 80 00 00 80 00 00 80 00 80 .......?..?..?.?
I2C のアドレスからダンプ
38
azure-iot-sdk-python のダウンロードとビルド
39
$ free -m
$ sudo nano /etc/dphys-swapfile
CONF_SWAPSIZE=100
↓
CONF_SWAPSIZE=1024
$ sudo systemctl restart dphys-swapfile
$ swapon –s
$ git clone --recursive https://github.com/Azure/azure-iot-sdk-python.git
$ cd azure-iot-sdk-python/build_all/linux
$ ./setup.sh
$ ./build.sh
Python で Azure IoT ハブを利用するためのライブラリー
Raspberry Pi Azure IoT Web Simulator
Node.js
実機がない場合:
Raspberry Pi Azure IoT Web Simulator
40
Microsoft Azure と Power BI
41
IoT デバイス
マシンラーニング
スタジオ
マシンラーニング API
ストリーム アナリティクスIoT ハブ
Microsoft Azure
SQL データベース
SQL データベース
Power BI
CSV データ
MQTT
HTTP
Web ブラウザー
Windows Azure
42
Core Cloud Services - Azure 入門 - 学習 - Learn | Microsoft Docs
43
IoT ハブ | Azure
44
IoT デバイス
マシンラーニング
スタジオ
マシンラーニング API
ストリーム アナリティクスIoT ハブ
Microsoft Azure
SQL データベース
SQL データベース
Power BI
CSV データ
MQTT
HTTP
Web ブラウザー
IoT デバイスを簡単に接続、監視、認証、自動化で
きるオープン クラウド プラットフォーム
沢山の IoT デバイスを管理
IoT ハブ | Azure
45
①
②
③
IoTハブの作成
46
①
② 47
「IoT Hub 名」は
「iothub-xxxxx」などの
ユニークな名前に変える
①
②
1サブスクリプションあたり 1つの IoT
ハブでのみ「F1: Free」が選べる
「F1: Free」は、性能が制限されている
または、S1 (有料)
48
確認
49
50
51
①
②
IoTデバイスの作成
52
①
② 53
「接続文字列 (主キー) 」を
メモ帳などに貼り付けて保存
①
②
54
IoT デバイス側からの
データ送信開始
55
Raspberry Pi の azure-iot-sdk-python の
サンプルの編集
56
$ cd ~/azure-iot-sdk-python/device/samples
$ sudo vi iothub_client_sample.py
 iothub_bme280.py (azure-iot-sdk-python が元) と
bme280_custom_2.py (SWITCHSCIENCE/BME280 | GitHub が元)
 /home/pi/azure-iot-sdk-python/device/samples/ へコピーして編集
 iothub_bme280.py の [Connection String] をメモ帳などに保存しておいた
IoT ハブの IoT デバイスの「接続文字列 (主キー)」に書き換え
サンプル プログラム
57
#!/usr/bin/env python
import time
import sys
import RPi.GPIO as GPIO
import iothub_client
from iothub_client import IoTHubClient, IoTHubClientError,
IoTHubTransportProvider, IoTHubClientResult
from iothub_client import IoTHubMessage,
IoTHubMessageDispositionResult, IoTHubError,
DeviceMethodReturnValue
from iothub_client import IoTHubClientRetryPolicy,
GetRetryPolicyReturnValue
from iothub_client_args import get_iothub_opt, OptionError
import bme280_custom_2
……
CONNECTION_STRING = "[ConnectionString]"
MSG_TXT = "{¥"deviceId¥":
¥"myIoTDeviceId¥",¥"pressure¥": %.2f,¥"temperature¥": %.2f,¥"h
umidity¥": %.2f,¥"score¥": %.2f,¥"type¥": ¥"weather¥"}"
gpio_number = 4
wait_time = 10
def initialize_gpio():
GPIO.setmode(GPIO.BCM)
GPIO.setup(gpio_number, GPIO.OUT)
ここを書き換え
実行
サンプル プログラム
58
$ sudo python /home/pi/azure-iot-sdk-python/device/samples/iothub_bme280.py
LED が点滅
実機がない場合: Raspberry Pi Azure IoT Web Simulator の
コード (JavaScript | Node.js) の編集
ここを書き換え
59
 IoT_Hub_Raspberry_Pi_NodeJS.js をコピー&ペースト
 [Connection String] をメモ帳などに保存しておいた IoT ハブの IoT デバイスの「接続文字列 (主キー)」に書き換え
サンプル プログラム
60
const wpi = require('wiring-pi');
const Client = require('azure-iot-device').Client;
const Message = require('azure-iot-device').Message;
const Protocol = require('azure-iot-device-
mqtt').Mqtt;
const BME280 = require('bme280-sensor');
const BME280_OPTION = {
i2cBusNo: 1, // defaults to 1
i2cAddress: BME280.BME280_DEFAULT_I2C_ADDRESS() //
defaults to 0x76
};
const connectionString = ‘[ConnectionString]‘;
var sendingMessage = false;
var messageId = 0;
var client, sensor;
var blinkLEDTimeout = null;
const LEDPin = 4;
ここを書き換え
実機がない場合: Raspberry Pi Azure IoT Web Simulator の
コード (JavaScript | Node.js) の実行
61
LED が点滅
①
IoT ハブにデータが
来ていることの確認
②
③
④
IoT ハブにデータが来ていることの確認
62
①
グラフが立ち上がる
ことを確認
②
63
SQL データベース | Azure
64
IoT デバイス
マシンラーニング
スタジオ
マシンラーニング API
ストリーム アナリティクスIoT ハブ
Microsoft Azure
SQL データベース
SQL データベース
Power BI
CSV データ
MQTT
HTTP
Web ブラウザー
マシンラーニングの学習用データの準備
気象庁の福井市天候データ
60年分
①
②
③
SQLデータベースと SQL サーバーの作成
65
①
②
③
66
①
②
67
「サーバー名」は
「sqlserverxxxx」などの
ユニークな名前に変える
チェックが
付いている
ことを確認
68
①
②
①
②
69
①
②
70
後でこのデータベースに接続するための
接続文字列をコピーしてメモ帳などに保存
SQL Server Management Studio を起動し、サーバー名 (接続
文字列の「Server」) と「サーバー管理者ログイン」、「パスワード」で接続
SQL Server Management Studio から接続
71
①
②
SQL Server Management Studio から接続
72
Microsoft Azure にサインイン
サインインして OK
SQL Server Management Studio から接続
73
 福井の気象データを
データベースに取り込む
 fukuiweather1959-2018.csv
①
②
③
データベース「DatabaseFukuiWeather」を右クリック
74
75
①
②
確認
76
①
確認
77
①
②
③
78
79
80
取り込んだデータの確認
・ テーブルを右クリックして「最新の情報に更新」
・テーブル「dbo.fukuiweather1959-2018」
を右クリックして「上位1000行の選択」
マシンラーニング スタジオ | Azure
81
IoT デバイス
マシンラーニング
スタジオ
マシンラーニング API
ストリーム アナリティクスIoT ハブ
Microsoft Azure
SQL データベース
SQL データベース
Power BI
CSV データ
MQTT
HTTP
Web ブラウザー
福井市の天候を学習
マシンラーニング スタジオ
| Azure
 ブラウザーベースのマシンラーニン
グ (機械学習) の API 作成環境
 ドラッグ アンド ドロップで作成
 多くのマシンラーニングの
アルゴリズム
 Python や R のプログラムの
組み入れも可能
82
①
②
③
マシーン ラーニング スタジオのワークスペースの作成
83
84
85
86
①
②
③
⑤
④
「fukuiweatherxxxx」などの
ユニークな名前に変える
「展開が成功」するまで待つ
①
②
87
マシーン ラーニング スタジオの起動
88
89
①
②
新規エクスペリメントの作成
90
①
②
③
91
エクスペリメントは
地域ごとに管理
クリックして名前変更
92
「Import Data」を
ドラッグして
①
②
「Import Data」をここへドロップ
学習用データのインポート
93
¥¥129work3¥201902 AI ML 勉強会
#2 IoT編¥Source¥SQLQuery1.sql の
内容をコピー&ペースト
右クリックして「Run selected」
①
②
94
「Import Data」の
プロパティを設定
SELECT
[AverageTemperature_celsius] AS temperature
,[AverageHumidity_percentage] AS humidity
,[AverageLocalPressure_hPa] AS pressure
,CAST((CASE WHEN [TotalPrecipitationAmount_mm] > 0.0 THEN 1 ELSE 0
END) AS int) AS score
FROM [dbo].[fukuiweather1959-2018]
WHERE AverageTemperature_celsius IS NOT NULL AND AverageHumidity_percentage
IS NOT NULL AND AverageLocalPressure_hPa IS NOT NULL AND
TotalPrecipitationAmount_mm IS NOT NULL
ORDER BY Date
学習用データのインポート用クエリー
95
 SQLQuery1.sql
緑のチェックが入るまで待つ
96
①
②
緑のチェックがついたら
右クリックして
データの確認
97
学習用データの��認
98
①
②
③
「Split Data」をここへドロップ
⑤
○ の間をドラッグして繋ぐ ④
99
データを学習用と評価用に分割
①
学習アルゴリズムの選択
②
③
「Two-Class Support Vector Machine」
をここへドロップ
100
①
②
③
「Train Model」をここへドロップ
⑥
出力カラムの選択
○ の間を
ドラッグして繋ぐ
○ の間を
ドラッグして繋ぐ
④ ⑤
101
学習
102
①
②
出力カラムの選択
①
②
③
「Score Model」をここへドロップ
○ の間を
ドラッグして繋ぐ
○ の間を
ドラッグして繋ぐ④
⑤
103
評価用データによる機械学習モデルのスコアリング
①
②
③
「Evaluate Model」をここへドロップ
○ の間を
ドラッグして繋ぐ④
104
機械学習モデルのパフォーマンスの評価
①
②
「Run」して全部の
要素に緑のチェックが
付くのを待つ
105
エクスペリメントの実行
①
②
右クリックして
データの確認
106
学習結果の確認
学習結果の確認
107
アルゴリズムを変更してみる
線を右クリック
して削除
108
①
②
③
「Two-Class Neural Network」を
ここへドロップ
○ の間を
ドラッグして繋ぐ
④
⑤
「Run」して全部の要
素に緑のチェックが
付くのを待つ
109
①
②
右クリックして
データの確認
学習結果の確認
110
学習結果の確認
111
112
アルゴリズムの選定に困ったら
マシンラーニング API | Azure
113
IoT デバイス
マシンラーニング
スタジオ
マシンラーニング API
ストリーム アナリティクスIoT ハブ
Microsoft Azure
SQL データベース
SQL データベース
Power BI
CSV データ
MQTT
HTTP
Web ブラウザー
雨の予測
API
マシンラーニング
API
学習済みモデルを使った
入出力処理を API として
デプロイ
 後で、ストリーム アナリティクスの
関数から呼ぶ
114
API の作成
115
新しいタブが開く
116
線を右クリック
して削除
②
④
「Select Columns in Dataset」を
ここへドロップ
③
①
117
① ○ の間を
ドラッグして繋ぐ
②
○ の間を
ドラッグして繋ぐ
④
「Selected Columns in
Dataset」をクリックして選択
③
API が出力する
列を選択
118
①
②
119
120
「Run」して全部の
要素に緑のチェックが
付くのを待つ
121
全部の要素に緑のチェックが付いたら API を発行
(CLASSIC の方が選べる場合はそちら)
122
API のデプロイ
123
API のテスト
124
適当な値を入力
①
②
テスト結果 (JSON)
125
テスト結果の JSON 形式のデータを確認
「API Key」をコピーして
メモ帳などに保存
①
②
126
Request URI をコピー
してメモ帳などに保存
127
SQL データベース | Azure
128
IoT デバイス
マシンラーニング
スタジオ
マシンラーニング API
ストリーム アナリティクスIoT ハブ
Microsoft Azure
SQL データベース
SQL データベース
Power BI
CSV データ
MQTT
HTTP
Web ブラウザー IoT ハブからのデータの格納先
後でストリーム アナリティクスから出力
SQL Server
Management
Studio
IoT からのデータを
格納するテーブルを
作成
129
①
②
データベース
「DatabaseFukuiWeather」
を右クリック
130
SQLQuery2.sql
の中身をコピー&ペースト
①
②
CREATE TABLE [dbo].[Weather](
[Id] [int] IDENTITY(1,1) NOT NULL,
[deviceId] [varchar](50) NULL,
[pressure] [float] NULL,
[temperature] [float] NULL,
[humidity] [float] NULL,
[EventProcessedUtcTime] [char](30) NULL,
[EventEnqueuedUtcTime] [char](30) NULL,
[score] [float] NULL,
CONSTRAINT [PK_Weather] PRIMARY KEY CLUSTERED ( [Id] )
)
IoT データ格納用テーブルの作成 SQL
131
 SQLQuery2.sql
作成されたテーブルの確認
132
①
②
133
テーブルのデザインを確認
ストリーム アナリティクス | Azure
134
IoT デバイス
マシンラーニング
スタジオ
マシンラーニング API
ストリーム アナリティクスIoT ハブ
Microsoft Azure
SQL データベース
SQL データベース
Power BI
CSV データ
MQTT
HTTP
Web ブラウザー
デバイスからのデータをリアルタイムに処理
ストリーム アナリティクス | Azure
135
①
②
③
ストリーム アナリティクスの作成
136
①
②
137
②
「展開が成功」するまで待つ
①
138
入力の追加
②
①
③
139
入力として IoT ハブを選択
②
①
140
プロパティの設定
141
データの確認
142
②
①
3分以内にクリックし、3分待つ
143
このメッセージに変わるまで待つ
青い文字の部分をクリック
ダウンロードした JSON 形式の
データをメモ帳などで確認
144
出力先に SQL データベースを指定
②
①
③
145
②
①
146
プロパティの設定
[オプション] 出力先に Power BI を指定
②
①
③
147
②
①
③
③
④
ご自身のアカウントでサインイン
148
プロパティの設定
[オプション] 出力先に Power BI を指定
承認されていることを確認
149
[オプション] 出力先に Power BI を指定
マシーンラーニング API を呼ぶ関数を作成
②
①
③
150
151
①
マシーンラーニング API 作成時に
メモ帳などに保存しておいた
「API Key」をペースト
マシーンラーニング API 作成時に
メモ帳などに保存しておいた
「Request URI」 をペースト
②
②
①
③
SQLQuery3.sql を
コピー&ペースト
(Power BI にも出力する場合は
SQLQuery4.sql)
152
Power BI にも
出力する場合
SELECT deviceId,pressure,temperature,humidity,EventProcessedUtcTime,EventEnqueuedUtcTime
,getscore(temperature,humidity,pressure,0.0) as score
INTO [db-output]
FROM [iothub-input]
WHERE type='weather'
ストリーム アナリティクスのクエリー (Power BI には出力しない場合)
153
 SQLQuery3.sql
--
-- SELECT deviceId,pressure,temperature,humidity,CAST(EventProcessedUtcTime as datetime)
as EventProcessedUtcTime,CAST(EventEnqueuedUtcTime as datetime) as EventEnqueuedUtcTime
-- ,getscore(temperature,humidity,pressure,0.0) as score
-- INTO [powerbi-output]
-- FROM [iothub-input]
-- WHERE type='weather'
SELECT deviceId,pressure,temperature,humidity,EventProcessedUtcTime,EventEnqueuedUtcTime
,getscore(temperature,humidity,pressure,0.0) as score
INTO [db-output]
FROM [iothub-input]
WHERE type='weather'
[オプション] ストリーム アナリティクスのクエリー (Power BI にも出力する場合)
154
 SQLQuery4.sql
ジョブ ダイアグラムの確認
155
確認
156
157
ストリーム アナリティクス ジョブの開始
①
②
③
ジョブの実行状況の確認
①
②
③
④
158
しばらく待つとグラフが
立ち上がってくることを確認
159
SQL Server Management Studio でデータベースにデータが来ていることを確認
データが来ていることの確認
・ テーブル「dbo.Weather」
を右クリックして「上位1000行の選択」
データの確認
160
雨予測
Power BI
161
IoT デバイス
マシンラーニング
スタジオ
マシンラーニング API
ストリーム アナリティクスIoT ハブ
Microsoft Azure
SQL データベース
SQL データベース
Power BI
CSV データ
MQTT
HTTP
Web ブラウザー
気温・湿度
・気圧・雨予測の
可視化
[オプション]
Power BI
様々なデータ ソースに
接続して視覚化・共有
162
Power BI にサインイン
163
①
マイ ワークスペースを開く
③
②
164
①
③
②
ダッシュボードの作成
165
①
②
166
②
③
①
タイルの追加
167
②
①
168
ストリーム アナリティクスで
指定したデータセットを選択
②
①
③ 169
タイルを確認
170
②
③
①
タイルの追加
タイルを確認
171
その他のタイルも適当に追加
172
リアルタイム
雨予測
「Web ビュー」から
「Phone ビュー」に
切り替え
Phone ビュー
Phone ビュー
173
174
スマートフォンに Power BI
アプリをインストール
サインインしてダッシュボード
「Weather」を確認
①
②
リアルタイム
雨予測
後片付け
 Azure の各種リソースを
そのままにすると課金され続ける
 課金を抑えるにはリソースを停止
 課金を完全に止めるにはリソース
を削除
175
個別に止めたい場合
デバイスを停止
Azure のリソースを
それぞれ停止/削除
176
この写真 の作成者 不明な作成者 は CC BY-SA のライセンスを許諾されています
Raspberry Pi の Python
177
Ctrl+Cで停止
Raspberry Pi Azure IoT Web Simulator
178
ストリーム アナリティクス
179
マシーン ラーニング スタジオ
①
②
180
Power BI
181
一括で削除する場合
リソース グループ
を削除
182
この写真 の作成者 不明な作成者 は CC BY-SA のライセンスを許諾されています
①
②
注意:
このリソース グループに
含まれている全リソースの削除
Power BI の方は消えない
183
Azure の料金
の確認
184
この写真 の作成者 不明な作成者 は CC BY のライセンスを許諾されています
Pricing Calculator | Microsoft Azure
185
使用料の概算
Microsoft Azure のポータル
を開く (必要に応じてサインイン)
クレジットの残りを確認して、
青い文字のとことをクリック
186
現在の使用状況の確認
リソースごとのコストを確認
支出の割合と予測を確認
187
1. 本日の環境
2. 本日の構成
3. IoT デバイス - Raspberry Pi
4. Microsoft Azure
5. IoT ハブ | Azure
6. SQL データベース | Azure
7. マシンラーニング スタジオ |
Azure
本日ご紹介した内容
188
8. ストリーム アナリティクス | Azure
9. [オプション] Power BI
10. 後片付け
本日の構成
189
IoT デバイス
マシンラーニング
スタジオ
マシンラーニング API
ストリーム アナリティクスIoT ハブ
Microsoft Azure (& Power BI)
SQL データベース
SQL データベース
Power BI
CSV データ
MQTT
HTTP
Web ブラウザー
気象庁の福井市
天候データ
学習
雨の予測
API
気温・湿度
・気圧取得
新たな天候データ
として蓄積
気温・湿度
・気圧・雨予測の
可視化

More Related Content

機械学習 (AI/ML) 勉強会 #2 IoT編