衛星データを人工知能(AI)に食わせたいという気持ち。全5回。
元ネタは過去にとらりもんに書いた「土地被覆機械学習の手法間比較」のページです[1]。元ネタでは、GRASSとRを使ってつくば周辺の土地被覆分類を複数手法(ロジスティック回帰、ニューラルネットワーク、ランダムフォレスト、サポートベクタマシン)で実装し比較しています。
元ネタをちょっとアップデートしてこちらに移植するつもりだったのですが、最近はpythonの気分であり、それに付随していろいろ便利なライブラリも出ていますので、そのあたりの紹介も含め最終的にけっこう別物になりました。本稿では機械学習モデル自体はランダムフォレストに絞り、精度検証まわりのお作法とか、GRASSとの連携とか、そのあたりに手厚くなりました。
Rに興味がある方、上記の学習器やその出力結果に興味がある方(ハイパーパラメータのチューニング含む)、交差検証などなどに興味がある方は、元ネタも見てみてください。
なおあくまで解析方法の紹介が目的のため、最終プロダクトの精度にはこだわっていません。
筆者の実行環境は
OS: linux(Ubuntu 20.04.6 LTS)
ソフト: GRASS 7.8.2, Python 3.8.10
です。また全体を通してシェルスクリプト(bash)を利用しています。
GRASS、Pythonは先に進む前に事前にインストールしておいてください。WindowsやMacユーザーでもインストール可能です。
[1] 水落裕樹, 2017, 土地被覆機械学習の手法間比較, とらりもん.
https://pen.envr.tsukuba.ac.jp/~torarimon/?cmd=view&p=%C5%DA%C3%CF%C8%EF%CA%A4%B5%A1%B3%A3%B3%D8%BD%AC%A4%CE%BC%EA%CB%A1%B4%D6%C8%E6%B3%D3&key=%C5%DA%C3%CF%C8%EF%CA%A4