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
120
衛星データ X 機械学習
12/5開催のTellus Satellite Cafeの資料となります。
※2次配布禁止
tellus
December 05, 2019
Tweet
Share
More Decks by tellus
See All by tellus
Tellusに搭載の衛星データについて
xdp
0
470
Tellusを使った衛星データ解析事例紹介
xdp
0
86
衛星データの基礎_20190930
xdp
0
290
衛星データの基礎_20190801
xdp
0
210
Other Decks in Technology
See All in Technology
A4)シラバスを超えて語る、テストマネジメント
moritamasami
0
120
開発チームとQAエンジニアの新しい協業モデル -年末調整開発チームで実践する【QAリード施策】-
qa
0
260
Physical AI on AWS リファレンスアーキテクチャ / Physical AI on AWS Reference Architecture
aws_shota
1
130
AIエージェント勉強会第3回 エージェンティックAIの時代がやってきた
ymiya55
0
120
Embeddings : Symfony AI en pratique
lyrixx
0
200
Phase12_総括_自走化
overflowinc
0
1.4k
Laravelで学ぶOAuthとOpenID Connectの基礎と実装
kyoshidaxx
4
1.8k
BFCacheを活用して無限スクロールのUX を改善した話
apple_yagi
0
120
DDD×仕様駆動で回す高品質開発のプロセス設計
littlehands
5
2.3k
Zero Data Loss Autonomous Recovery Service サービス概要
oracle4engineer
PRO
4
13k
新規事業×QAの挑戦:不確実性を乗りこなす!フェーズごとに求められるQAの役割変革
hacomono
PRO
0
180
Copilot 宇宙へ 〜生成AIで「専門データの壁」を壊す方法〜
nakasho
0
180
Featured
See All Featured
Amusing Abliteration
ianozsvald
0
140
How to Talk to Developers About Accessibility
jct
2
160
Speed Design
sergeychernyshev
33
1.6k
Design in an AI World
tapps
0
180
Marketing Yourself as an Engineer | Alaka | Gurzu
gurzu
0
160
Max Prin - Stacking Signals: How International SEO Comes Together (And Falls Apart)
techseoconnect
PRO
0
130
Thoughts on Productivity
jonyablonski
75
5.1k
How GitHub (no longer) Works
holman
316
150k
Building a Scalable Design System with Sketch
lauravandoore
463
34k
<Decoding/> the Language of Devs - We Love SEO 2024
nikkihalliwell
1
160
Become a Pro
speakerdeck
PRO
31
5.9k
Gemini Prompt Engineering: Practical Techniques for Tangible AI Outcomes
mfonobong
2
330
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で後日共有します