olmoearth_inferenceX is a tool for auditing Earth-observation prediction maps without labels. It ranks the windows of a map by the model's own confidence, so a reviewer knows where to look first, says why each window is flagged, and measures how two inferences of the same scene differ.
- Ranking. Pool the map to windows (4 px). Suspicion
s = −(p₍₁₎ − p₍₂₎), the negative top-1-minus-top-2 margin of the model's own scores; boundary windows first, then bys. A ranking is scored by excess AURC,AURC(s) − AURC(oracle), beside two controls that never see the model (class rarity, embedding distance). - Comparing. Two inferences
A,Bon one window grid:P(A ≠ B), its enrichment among the errors, andP(confidence picks the right side | A ≠ B), each against the reseed floor. - Estimating. Label
nwindows, stratified by margin withn_h ∝ N_h √(q_h(1−q_h))from the model's own confidence;θ̂ = Σ W_h p_h, 95% interval fromΣ W_h²(1−f_h) p_h(1−p_h)/(n_h−1); cluster-corrected when labels come tile by tile. A review set is refused as a sample: its rate iscapture(b)·θ/b, notθ.
On the 24 tasks of Ai2's published embedding suite where a confidence margin is defined, the model's own confidence ranks its errors better than any control that sees no model, on every one.
Full documentation is available at https://olmoearth-inferencex.readthedocs.io/: the findings, the usage, the recipe and the evidence experiment by experiment.
Demo
pip install olmoearth-inferencex
oe-inferencex demo
It audits a real map, one tile of Dynamic World land cover, chosen by a rule fixed in advance (the median tile of 18, not the best one), and draws this:
Left: the 5% of windows to check first, found without labels. Middle: the same windows over the real errors, in red: 67% of them are wrong, against 19% of windows picked at random. Right: a random 5%. Most of the red lies outside the flagged windows because the map is 19% wrong and the review is 5%: no 5% could hold more than 26% of the errors, and these hold 17%; a 20% review finds 55%.
Your own map: oe-inferencex assess your_map.tif --out audit.
Setup
pip install olmoearth-inferencex # add [geo] to read and write GeoTIFFs
To work on the repository, clone it, then uv sync and uv run pytest; the experiments
also need uv sync --extra encoder --extra geo.
Apache License 2.0, see LICENSE; to cite, see CITATION.cff. For questions and suggestions, please open an issue on GitHub.
Release files for olmoearth-inferencex 1.2.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| olmoearth_inferencex-1.2.0.tar.gz | 334.5 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| olmoearth_inferencex-1.2.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 671.8 kB
Release files / olmoearth_inferencex-1.2.0.tar.gz
| Download URL | olmoearth_inferencex-1.2.0.tar.gz |
|---|---|
| Size | 334.5 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
59eec192e06533465dc6c0168b5f9629e49a3bfc3ad9b64f0f06fc1a2284c97e
|
|
BLAKE2b-256 checksum How to use checksums |
f930709151da24cba9fb270c85f0a58ea5c04ed79c1a6309f5112f390c019f80
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
uv/0.12.17 {"installer":{"name":"uv","version":"0.12.17","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
|
Release files / olmoearth_inferencex-1.2.0-py3-none-any.whl
| Download URL | olmoearth_inferencex-1.2.0-py3-none-any.whl |
|---|---|
| Size | 337.2 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
50a7d6b33fd2a59971273f2b19b063436cbd3c55fea6477ee073790767791509
|
|
BLAKE2b-256 checksum How to use checksums |
e0cdd3b1a6f47219d7fc5ae2d911bf02d7891d61b4df920fdaf1768e4e12dc95
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
uv/0.12.17 {"installer":{"name":"uv","version":"0.12.17","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
|