Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
衛星データ X 機械学習
Search
tellus
December 05, 2019
Technology
0
110
衛星データ X 機械学習
12/5開催のTellus Satellite Cafeの資料となります。
※2次配布禁止
tellus
December 05, 2019
Tweet
Share
More Decks by tellus
See All by tellus
Tellusに搭載の衛星データについて
xdp
0
330
Tellusを使った衛星データ解析事例紹介
xdp
0
64
衛星データの基礎_20190930
xdp
0
220
衛星データの基礎_20190801
xdp
0
140
Other Decks in Technology
See All in Technology
ここが嬉しいABAC ここが辛いよABAC #再解説+補足編
masahirokawahara
0
220
PHPカンファレンス小田原2024
ysknsid25
3
660
AIQ株式会社 エンジニア向け会社紹介資料
aiqlab
0
370
日本におけるデータエンジニアリングのこれまでとこれから
foursue
12
2.5k
20240416_devopsdaystokyo
kzkmaeda
1
190
少数チームで挑む: SwiftUI, TCA, KMPを用いた 新規動画配信アプリ 「ABEMA Live」の開発について
tomu28
0
540
Terraformあれやこれ/terraform-this-and-that
emiki
6
570
小さな開発会社がWebサービスを作る理由
polidog
PRO
1
160
元インフラエンジニアに成る / Human Resources to Human Relations
bobtani
3
820
「手動オペレーションに定評がある」と言われた私が心がけていること / phpcon_odawara2024
blue_goheimochi
2
320
マルチアカウント環境への発見的統制の導入
ch1aki
1
1.3k
インシデントレスポンスのライフサイクルを廻すポイントってなに / Pinpoints of Incidentresponse Lifecycle for Operation
sakaitakeshi
1
300
Featured
See All Featured
Product Roadmaps are Hard
iamctodd
43
9.7k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
226
51k
Intergalactic Javascript Robots from Outer Space
tanoku
266
26k
Ruby is Unlike a Banana
tanoku
96
10k
Building an army of robots
kneath
300
41k
Keith and Marios Guide to Fast Websites
keithpitt
408
22k
Done Done
chrislema
178
15k
Agile that works and the tools we love
rasmusluckow
324
20k
The MySQL Ecosystem @ GitHub 2015
samlambert
242
12k
What’s in a name? Adding method to the madness
productmarketing
PRO
15
2.6k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
352
28k
Robots, Beer and Maslow
schacon
PRO
155
7.9k
Transcript
自己紹介 養王田 一尚 (よおだ かずひさ) Tellusのエンジニア 兼 宙畑のライター 主に「ゼロからのTellusの使い方」シリーズを執筆
衛星データ X 機械学習
Pythonを書いた経験がある
機械学習やったことある
お仕事で機械学習を使っている
せっかく取得したタイルが 雲ばかりで地上が見えない
雲の有無でタイルを分類する clear cloudy
事前準備1 AVNIR-2のTile画像を取得しよう コードは後日Slackで共有いたします
搭載衛星データ ALOS (AVNIR-2) 光学 10m 4band
範囲を緯度経度で指定 トークンを設定(マイページで確認) Jupyter LabでAVNIR-2のシーン情報を取得しよう
rspId, productIdは画像を呼び出す際に必要 OS上でも「メタデータ詳細」で確認することができる
バンド選択 トークンを設定 Jupyter LabでAVNIR-2のタイル画像を取得しよう 地図タイルの座標
ズーム率 タイル枚数 座標サンプル タイル座標(x, y) タイルの左上の経度緯度 0 1 (0, 0)
=> (-180, 85.0511) 1 4 (0, 1) => (-180, 0) (1, 0) => (0, 85.0511) (1, 1) => (0, 0) 2 16 (0, 1) => (-180, 66.5133) (0, 2) => (-180, 0) (0, 3) => (-180, -66.5133) (2, 1) => (0, 66.5133) ... 12 16777216 (3638, 1613) => (139.7461, 35.3890) Webメルカトル地図を256×256ピクセルの正方形に切 り分けたものです。 座標(x, y)とズーム率(z)により指定します。 タイル地図とは
指定した緯度経度を含むタイル座標を返す 緯度経度からタイル座標を求める
指定したシーンからタイル画像が切り出される
事前準備2 教師データを作ろう
1. 大量にタイルを取得する。 今回は約3000枚用意 2.「晴れ」「曇り」「判別が難しい」の3種類に画像を人の目で(!)分類する。 今回は晴れが600枚、曇が1000枚でした。 3. 分類した「晴れ」と「曇り」の画像を 「学習用」「訓練時検証用」「評価用」に分ける。 dataset ┣
train (学習用) ┃ ┣ clear ┃ ┗ cloudy ┃ ┣ validation (訓練時検証用) ┃ ┣ clear ┃ ┗ cloudy ┃ ┗ test (評価用) ┣ clear ┗ cloudy clear cloudy ng
TensorFlow(+Keras)で機械学習
モデルの作成 畳み込みニューラルネットワーク 画像サイズ
WARNINGが出ますが問題ありません。 層の数や次元の数は試行錯誤のしどころ 畳み込みニューラルネットワークについてもっと勉強したい人には 以下の記事がおすすめ https://kenyu-life.com/2019/03/07/convolutional_neural_network/ https://www.analyticsvidhya.com/blog/2016/04/deep-learning-computer- vision-introduction-convolution-neural-networks/
学習データの読込み 回転や拡大縮小によりデータを水増し 2 classes以外の結果が出た場合、不要なディレクトリが含まれている可能性があります。 詳しくはKerasのチュートリアルを参照 https://keras.io/ja/
学習実行 モデル一時保存 1回あたりの試行回数と繰り返し回数 いざ実行
約6時間かかりました
正解率85%! 結果 繰り返し回数は半分の 10回程度でよかったかも
評価用データでも約88%の正解率を達成!
晴れ判定(0.5未満)
曇り判定(0.5以上)
薄曇りも正しく判定
雪があっても正しく判定
やや自信なし?
たまに誤判定も?
雲の有無でタイルを分類する clear cloudy 8割を超える精度で達成! パラメータを試行錯誤して目指せ9割超え
衛星データであそぼう 本日のコードはSlackで後日共有します