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θ. The same labels give the per-class user's and producer's accuracy and error-adjusted shares, and, from a random sample, the largest most-confident zone whose error rate is at mostαwith the statement failing on at mostδof draws: exact hypergeometric tests from the smallest zone up, refused whenn < ln δ / ln(1−α).
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.3.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.3.0.tar.gz | 370.7 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| olmoearth_inferencex-1.3.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 744.4 kB
Release files / olmoearth_inferencex-1.3.0.tar.gz
| Download URL | olmoearth_inferencex-1.3.0.tar.gz |
|---|---|
| Size | 370.7 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
505bacd6a357d3cc20947e008f6a542742cd0866b8c53020f38c02b3507c4538
|
|
BLAKE2b-256 checksum How to use checksums |
587096d4b0e54087cc24e5904c1d6138a8d88b7667ec912568f10bea5d5451f7
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
uv/0.12.18 {"installer":{"name":"uv","version":"0.12.18","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.3.0-py3-none-any.whl
| Download URL | olmoearth_inferencex-1.3.0-py3-none-any.whl |
|---|---|
| Size | 373.7 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
ab5d61cd2445332ddf879d89ec1aa2de02416004c97e19faebf39a7948059e75
|
|
BLAKE2b-256 checksum How to use checksums |
2ee3ce7be7432c3fd10b63596f5dac397877c856583fb993aa6b41df5249e903
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
uv/0.12.18 {"installer":{"name":"uv","version":"0.12.18","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}
|