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
440
Tellusを使った衛星データ解析事例紹介
xdp
0
84
衛星データの基礎_20190930
xdp
0
270
衛星データの基礎_20190801
xdp
0
200
Other Decks in Technology
See All in Technology
S3アクセス制御の設計ポイント
tommy0124
3
210
CDK CLIで使ってたあの機能、CDK Toolkit Libraryではどうやるの?
smt7174
4
190
データ分析エージェント Socrates の育て方
na0
8
2.7k
2つのフロントエンドと状態管理
mixi_engineers
PRO
3
160
要件定義・デザインフェーズでもAIを活用して、コミュニケーションの密度を高める
kazukihayase
0
120
企業の生成AIガバナンスにおけるエージェントとセキュリティ
lycorptech_jp
PRO
3
200
Webアプリケーションにオブザーバビリティを実装するRust入門ガイド
nwiizo
7
890
dbt開発 with Claude Codeのためのガードレール設計
10xinc
2
1.3k
複数サービスを支えるマルチテナント型Batch MLプラットフォーム
lycorptech_jp
PRO
1
970
AI時代を生き抜くエンジニアキャリアの築き方 (AI-Native 時代、エンジニアという道は 「最大の挑戦の場」となる) / Building an Engineering Career to Thrive in the Age of AI (In the AI-Native Era, the Path of Engineering Becomes the Ultimate Arena of Challenge)
jeongjaesoon
0
260
「Linux」という言葉が指すもの
sat
PRO
4
140
Snowflake Intelligenceにはこうやって立ち向かう!クラシルが考えるAI Readyなデータ基盤と活用のためのDataOps
gappy50
0
280
Featured
See All Featured
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
The Straight Up "How To Draw Better" Workshop
denniskardys
236
140k
Code Review Best Practice
trishagee
71
19k
GitHub's CSS Performance
jonrohan
1032
460k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
44
2.5k
Art, The Web, and Tiny UX
lynnandtonic
303
21k
A Tale of Four Properties
chriscoyier
160
23k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
30
9.7k
Large-scale JavaScript Application Architecture
addyosmani
513
110k
Faster Mobile Websites
deanohume
309
31k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
31
2.2k
Code Reviewing Like a Champion
maltzj
525
40k
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で後日共有します