https://github.com/google-deepmind/jeo

Jeo: Jax model training lib for Earth Observation

https://github.com/google-deepmind/jeo

Science Score: 36.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
  • Academic publication links
    Links to: arxiv.org
  • Committers with academic emails
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (10.5%) to scientific vocabulary

Keywords

deep-learning earth-observation jax remote-sensing research
Last synced: 4 months ago · JSON representation

Repository

Jeo: Jax model training lib for Earth Observation

Basic Info
Statistics
  • Stars: 116
  • Watchers: 4
  • Forks: 14
  • Open Issues: 0
  • Releases: 0
Topics
deep-learning earth-observation jax remote-sensing research
Created over 1 year ago · Last pushed 10 months ago
Metadata Files
Readme Changelog Contributing License

README.md

Jeo - Jax Geo lib

jeo logo

Model training and inference for geospatial remote sensing and Earth Observation in JAX.

Jeo provides a framework for training machine learning models for geospatial remote sensing and Earth Observation using JAX and Flax. It leverages tf.data for efficient data pipelines, with a focus on TensorFlow Datasets for scalable and reproducible input. While TensorFlow Datasets are preferred, other dataset loaders are also supported. The codebase is designed to run seamlessly on CPUs, GPUs, or Google Cloud TPU VMs.

This project is open-sourced to share research code and facilitate collaboration in geospatial and sustainability model development. Jeo integrates effectively with the GeeFlow library to construct large-scale geospatial datasets using Google Earth Engine (GEE). An example workflow is outlined below.

Projects and publications

Projects and publications that used this codebase:

  • Light-weight geospatial model for global deforestation attribution, by Anton Raichuk, Michelle Sims, Radost Stanimirova, and Maxim Neumann. Presented at the NeurIPS 2024 Workshop on Tackling Climate Change with Machine Learning in Vancouver, BC, Canada. Dec 2024.
  • Planted: a dataset for planted forest identification from multi-satellite time series, by Luis Miguel Pazos-Outón, Cristina Nader Vasconcelos, Anton Raichuk, Anurag Arnab, Dan Morris, and Maxim Neumann. Presented at IGARSS 2024 in Athens, Greece. Jul 2024.
  • Global drivers of forest loss at 1 km resolution, by Michelle Sims, Radost Stanimirova, Anton Raichuk, Maxim Neumann, Jessica Richter, Forrest Follett, James MacCarthy, Kristine Lister, Christopher Randle, Lindsey Sloat, Elena Esipova, Jaelah Jupiter, Charlotte Stanton, Dan Morris, Christy Slay, Drew Purves, and Nancy Harris, Environmental Research Letters (ERL) (in print), 2025 (EarthArxiv).
  • ForestCast: Forecasting deforestation risk at scale with deep learning, by Matt Overlan, Charlotte Stanton, Maxim Neumann, Michelangelo Conserva, Yuchang Jiang, Arianna Manzini, Julia Haas, Mélanie Rey, Keith Anderson, and Drew Purves, 2025.

Getting started

Installation

The first step is to checkout JEO and install relevant python dependencies in a virtual environment:

```sh git clone https://github.com/google-deepmind/jeo

Go into the code directory for the examples below.

cd jeo/jeo

Install and activate a virtual environment

python -m venv .venv source .venv/bin/activate

Install JEO.

pip install -e .. ```

Local demo run

Launching a quick local model training for just a few steps on the CPU:

sh python -m jeo.train --config configs/tests/tiny_bit.py:runlocal \ --workdir /tmp/jeo/demo_tiny_bit

This will start to train a bit model (which is a modified convolutional neureal net (CNN) model based on ResNet, see jeo/models/bit.py) on CIFAR-10 TFDS dataset. Since we run this on a local CPU just as a demo, we appended the :runlocal config arg above, which specifies within the config to run just for a few training and evaluation steps. For more configuration details, see the config file jeo/configs/tests/tiny_bit.py.

In a standard workflow, the given workdir will be used to save checkpoints and potentially other artifacts, such as final evaluation metrics.

Citing JEO

To cite this repository:

@software{jeo2025:github, author = {Maxim Neumann and Anton Raichuk and Michelangelo Conserva and Luis Miguel Pazos-Outón and Keith Anderson and Matt Overlan and Mélanie Rey and Yuchang Jiang and Petra Poklukar and Cristina Nader Vasconcelos}, title = {{JEO}: Model training and inference for geospatial remote sensing and {E}arth {O}bservation in {JAX}}, url = {https://github.com/google-deepmind/jeo}, year = {2025} }

License

Copyright 2024 DeepMind Technologies Limited

This code is licensed under the Apache License, Version 2.0 (the \"License\"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0.

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an AS IS BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

Disclaimer

This is not an official Google product.

Owner

  • Name: Google DeepMind
  • Login: google-deepmind
  • Kind: organization

GitHub Events

Total
  • Watch event: 79
  • Push event: 4
  • Public event: 2
  • Fork event: 12
Last Year
  • Watch event: 79
  • Push event: 4
  • Public event: 2
  • Fork event: 12

Committers

Last synced: 8 months ago

All Time
  • Total Commits: 14
  • Total Committers: 3
  • Avg Commits per committer: 4.667
  • Development Distribution Score (DDS): 0.5
Past Year
  • Commits: 14
  • Committers: 3
  • Avg Commits per committer: 4.667
  • Development Distribution Score (DDS): 0.5
Top Committers
Name Email Commits
maximneumann m****n@g****m 7
The jeo Authors n****y@g****m 6
Michelangelo Conserva m****a@g****m 1
Committer Domains (Top 20 + Academic)

Issues and Pull Requests

Last synced: 8 months ago

All Time
  • Total issues: 0
  • Total pull requests: 0
  • Average time to close issues: N/A
  • Average time to close pull requests: N/A
  • Total issue authors: 0
  • Total pull request authors: 0
  • Average comments per issue: 0
  • Average comments per pull request: 0
  • Merged pull requests: 0
  • Bot issues: 0
  • Bot pull requests: 0
Past Year
  • Issues: 0
  • Pull requests: 0
  • Average time to close issues: N/A
  • Average time to close pull requests: N/A
  • Issue authors: 0
  • Pull request authors: 0
  • Average comments per issue: 0
  • Average comments per pull request: 0
  • Merged pull requests: 0
  • Bot issues: 0
  • Bot pull requests: 0
Top Authors
Issue Authors
Pull Request Authors
Top Labels
Issue Labels
Pull Request Labels