モデル概要
モデル特徴
モデル能力
使用事例
🚀 RestorのSegFormerベースのTCDモデル
このセマンティックセグメンテーションモデルは、高解像度(10 cm/px)の航空画像における樹木被覆を描き出すことができます。
🚀 クイックスタート
このモデルの推論の簡単な例は、このColabノートブックで確認できます。 エンドツーエンドの使用方法については、予測とトレーニングのパイプラインを参照してください。このパイプラインは、任意の大きさの画像に対するタイル化された予測や出力のレポートなどもサポートしています。
✨ 主な機能
- 高解像度(10 cm/px)の航空画像における樹木被覆を精度よく描き出すことができます。
- グローバルな航空画像で学習されており、同様の画像に対しても有効です。
- パイプラインを使用して、大規模な画像に対するタイル化された予測や出力のレポートが可能です。
📦 インストール
このモデルの典型的なトレーニングコマンドは以下の通りです。
tcd-train semantic segformer-mit-b1 data.output= ... data.root=/mnt/data/tcd/dataset/holdout data.tile_size=1024
💻 使用例
基本的な使用法
# プリプロセッサのロード
from transformers import AutoImageProcessor
processor = AutoImageProcessor.from_pretrained('restor/tcd-segformer-mit-b1')
📚 ドキュメント
モデルの詳細
モデルの説明
このセマンティックセグメンテーションモデルは、グローバルな航空画像で学習されており、同様の画像における樹木被覆を精度よく描き出すことができます。このモデルは個々の木を検出するのではなく、画素ごとに樹木/非樹木の分類を行います。
- 開発者: Restor / ETH Zurich
- 資金提供元: このプロジェクトは、(Google.orgのインパクトグラント)[https://blog.google/outreach-initiatives/sustainability/restor-helps-anyone-be-part-ecological-restoration/]によって可能になりました。
- モデルの種類: セマンティックセグメンテーション(2クラス)
- ライセンス: モデルのトレーニングコードはApache 2ライセンスの下で提供されています。NVIDIAはSegFormerを独自の研究用ライセンスの下で公開しています。ユーザーはデプロイする前にこのライセンスの条件を確認する必要があります。このモデルはCC BY-NCの画像で学習されています。
- ファインチューニング元のモデル: SegFormerファミリー
SegFormerは、Pyramid Vision Transformer v2モデルのバリアントで、多くの構造的な特徴が同じで、セマンティックセグメンテーションのデコードヘッドを持っています。機能的には、このアーキテクチャはFeature Pyramid Network (FPN)に非常に似ており、出力の予測はネットワークの異なる段階からの特徴を異なる空間解像度で組み合わせたものに基づいています。
モデルのソース
- リポジトリ: https://github.com/restor-foundation/tcd
- 論文: 近日中にプレプリントを公開します。
使用方法
このモデルの主な使用例は、航空画像からの樹冠被覆率(すなわち、調査地域の樹冠に覆われている割合)の評価です。
直接使用
このモデルは、単一の画像タイルに対する推論に適しています。大規模な正射画像に対する予測を行うには、ソース画像のタイル化と予測結果の結合を管理するためのより高レベルのフレームワークが必要です。当リポジトリには、そのようなパイプラインの包括的な参照実装が提供されており、非常に大きな画像(国レベル)でのテストも行われています。
このモデルは、画像全体に対する予測を行います。ほとんどの場合、ユーザーは画像の特定の領域(例えば、調査区画やその他の地理的境界)に対する被覆率を予測したいと思うでしょう。画像内の樹木被覆を予測する場合は、結果に対して何らかの関心領域分析を行う必要があります。当リンク先のパイプラインリポジトリは、シェイプファイルベースの領域分析をサポートしています。
想定外の使用
このモデルはグローバルに多様な画像で学習されていますが、一部の生態学的バイオームは学習データセットに十分に表されていないため、性能が異なる可能性があります。したがって、重要なタスクでこのモデルを使用する前に、ユーザーは自分たちの画像で実験することをお勧めします。
このモデルは10 cm/pxの解像度の画像で学習されています。他の地理空間解像度の画像でも良好な予測結果が得られる可能性がありますが、結果は信頼できない場合があります。特に、このモデルは「木のように見えるもの」を探しており、これは解像度に大きく依存します。高解像度または低解像度の画像を定期的に予測したい場合は、このモデルを自分たちのデータまたはリサンプリングした学習データセットでファインチューニングする必要があります。
このモデルは、バイオマス、樹冠高さまたはその他の派生情報を予測しません。ある画素が樹冠に覆われている確率のみを予測します。
現状では、このモデルは炭素クレジットの推定には適していません。
バイアス、リスク、制限事項
このモデルの主な制限は、木に似ている、または木と混同される可能性のある物体に対する偽陽性です。例えば、大きな低木、灌木または樹冠のように見える地被植物などです。
このモデルの学習に使用されたデータセットは、非専門家によってアノテーション付けされました。データセットのサイズ、独立したテストデータでの結果、およびRestorでのパートナーデータの運用中の実証評価を考慮すると、これは合理的なトレードオフであると考えています。しかし、データセットにはほぼ確実に誤ったラベルが含まれており、これが誤った予測やモデル出力の他のバイアスにつながる可能性があります。モデルは学習データと「意見が一致しない」傾向がありますが、これはおそらく正しい方向です(すなわち、ラベルの集計統計は良好です)。私たちは、すべての学習データを再評価して、誤ったラベルを取り除く作業を行っています。
私たちは、予測性能の堅牢な推定を提供するために交差検証の結果を提示しており、独立した画像(すなわち、モデルが一度も見たことのない画像)での結果も提供しています。これにより、ユーザーは自分自身で評価を行うことができます。私たちは精度について何ら保証を提供しておらず、ユーザーは「重要なタスク」または本番環境での使用については、自分自身で独立したテストを行う必要があります。
自分たちのデータでモデルを試して、自分自身で評価することは代用できません。私たちは、実験を強くお勧めします!
トレーニングの詳細
トレーニングデータ
トレーニングデータセットはこちらで見つけることができます。ここでは、データの収集とアノテーションの手順に関する詳細情報を見ることができます。当社の画像ラベルは主にCC-BY 4.0ライセンスの下で公開されており、CC BY-NCおよびCC BY-SAの画像の小さなサブセットも含まれています。
トレーニング手順
トレーニング中にハイパーパラメータを調整するために5分割交差検証プロセスを使用し、「完全な」トレーニングセットでトレーニングした後、ホールドアウトセットの画像で評価しました。当リポジトリのメインブランチにあるモデルは、リリースバージョンと見なされるべきです。
トレーニングフレームワークとしてPytorch Lightningを使用し、以下に示すハイパーパラメータを使用しました。トレーニング手順は簡単で、ディープニューラルネットワークのトレーニングに経験がある人には馴染みのあるものです。
前処理
当リポジトリには、transformers
ライブラリを使用する場合にモデルと共に使用できる前処理器の設定が含まれています。
以下のようにして、この前処理器を簡単にロードすることができます。
from transformers import AutoImageProcessor
processor = AutoImageProcessor.from_pretrained('restor/tcd-segformer-mit-b1')
入力画像をリサイズしないことに注意してください(ソース画像の地理空間スケールを尊重するため)。また、正規化はこの処理ステップで行われ、データセットの変換としてではないことを前提としています。
トレーニングハイパーパラメータ
- 画像サイズ: 1024 px四方
- 学習率: 最初は1e4 - 1e5
- 学習率スケジュール: プラトーで減少
- オプティマイザ: AdamW
- データ拡張: 1024x1024へのランダムクロップ、任意の回転、反転、色調整
- エポック数: 収束を確保するために交差検証中は75;最終モデルは50
- 正規化: Imagenetの統計量
速度、サイズ、時間
CPUでもモデルを評価できます(mit-b5までも)が、大きなタイルサイズの推論を試みる場合は、大量の利用可能なRAMが必要になります。一般的に、出力のセグメンテーションマスクのサイズが固定されているため、1024 pxの入力が最大限の大きさであると考えられます(すなわち、2048x2048 pxの単一画像を予測するよりも、1024x1024 pxでバッチモードで推論を行った方が良い可能性があります)。
すべてのモデルは、24 GBのVRAMを持つNVIDIA RTX3090の単一GPUでトレーニングされ、64GBのRAMを持つ32コアのマシンに接続されています。この仕様のマシンでは、最大のモデルを除くすべてのモデルを1日以内にトレーニングできます。最小のモデルは半日以内でトレーニングでき、最大のモデルは1日少し超える時間がかかります。
現場のユーザーからのフィードバックによると、土地所有者は航空調査の結果を見ることに興味があることが多いですが、遠隔地ではデータ帯域幅が制限要因になることが多いです。私たちの目標の1つは、このような現場での使用をサポートすることであり、ユーザーが調査を行った後、合理的な時間(すなわち、1時間程度)でオフラインで結果を処理できるようにすることです。
評価
OAM-TCDのホールドアウト分割に対する評価結果を報告します。
テストデータ
トレーニングデータセットはこちらで見つけることができます。
このモデル(main
ブランチ)は、すべてのtrain
画像でトレーニングされ、test
(ホールドアウト)画像でテストされました。
評価指標
ホールドアウトデータセットに対するF1、Accuracy、IoUを報告しており、5分割交差検証の結果も報告しています。交差検証の結果は、以下のプロットの最小/最大誤差バーとして視覚化されています。
結果
環境への影響
この推定値は、ここに提示されているSegFormerファミリーのモデルの最大値(トレーニング時間に関して)です。mit-b0
などの小さなモデルは半日以内でトレーニングできます。
- ハードウェアタイプ: NVIDIA RTX3090
- 使用時間: < 36時間
- 排出された炭素: モデルごとに5.44 kgのCO2相当
炭素排出量は、Lacoste et al. (2019)で提示されたMachine Learning Impact calculatorを使用して推定されました。
この推定値は、実験に必要な時間、トレーニングの失敗などを考慮していません。例えば、交差検証を使用したため、各モデルは実際にはこの推定値の約6倍の時間が必要です - 各分割に1回、そして最終的な実行に1回です。
CPUでの効率的な推論は、推論の遅延を犠牲にして、現場作業で可能です。典型的な単一バッテリーのドローン飛行は数分で処理できます。
引用
近日中に論文のプレプリント版を提供します。それまでの間、以下のように引用してください。 BibTeX:
@unpublished{restortcd,
author = "Veitch-Michaelis, Josh and Cottam, Andrew and Schweizer, Daniella Schweizer and Broadbent, Eben N. and Dao, David and Zhang, Ce and Almeyda Zambrano, Angelica and Max, Simeon",
title = "OAM-TCD: A globally diverse dataset of high-resolution tree cover maps",
note = "In prep.",
month = "06",
year = "2024"
}
📄 ライセンス
このモデルはCCライセンスの下で提供されています。
モデルカードの作成者
Josh Veitch-Michaelis, 2024; データセットの作成者に代わって
モデルカードの問い合わせ
質問や詳細情報については、josh [at] restor.ecoまでお問い合わせください。











