Crop Mapping Evaluation under Sampling Bias
Organizations: Microsoft AI for Good Research Lab · Microsoft Research
Abstract
Government agencies use crop maps to estimate production, monitor food security, and set agricultural policy. These crop maps are usually validated against field labels, but these labels are rarely a random sample of the area the map covers. Field teams tend to label parcels near roads and skip ones that are small or hard to reach, so performance measured on held-out labels mainly describes the places they visited. We call the difference between this reported performance and performance over the whole mapped region the deployment performance gap. To estimate performance over the whole region, we use a weighted form of prediction-powered inference (PPI). The classifier's predictions on unlabeled points across the region give a first estimate, and its errors on the labeled points correct that estimate, with more weight on labels from under-sampled conditions. We test this in five European regions where crop registers label every declared parcel, so the true performance is known. Simulating six documented collection practices there produces gaps of up to 0.20 macro-F1. On the collection rule that creates the largest gap in each region, 5 km block cross-validation still overestimates macro-F1 by as much as 0.18, while PPI with weights estimated from satellite embeddings reduces the largest error across regions to 0.07. Importance-weighted cross-validation with the same weights does almost as well, so most of the improvement comes from the weights themselves. We also apply the method to three Kenyan datasets that have no region-wide reference labels. For a roadside dataset collected with helmet-mounted cameras, the estimated macro-F1 falls from 0.93 under random cross-validation to 0.61, although the correction relies on a small number of heavily weighted labels. Our code is available at https://github.com/microsoft/pappi.
Figures & tables
| Collection rule | Collection practice | Sources |
|---|---|---|
| Road | Fields labeled from a vehicle; inclusion falls with road distance. | Defourny et al.,2014 ; Jolivot et al.,2021 ; Waldner et al.,2019 ; Nakalembe et al.,2025 |
| Settlement | Enumerators skip parcels far from homes or villages. | Carletto et al.,2016 ; Kilic et al.,2017 |
| Elevation | Survey frames remove high points from field visits. | Eurostat,2025 |
| Slope | A fixed walking-time budget reaches less land on steep terrain. | Tobler,1993 ; Nelson et al.,2019 ; Eurostat,2019 |
| Pilot region | Labels come from one pilot region; use extends beyond it. | Jolivot et al.,2021 ; Orynbaikyzy et al.,2022 |
| Parcel size | Rules or cost exclude small parcels and favor large ones. | Defourny et al.,2014 ; Azzari et al.,2021 |
| Collection rule | Vaucluse | Goriška | Bouches-du-Rhône | Hérault | Osnabrück |
|---|---|---|---|---|---|
| Uniform control | |||||
| Road | |||||
| Settlement | |||||
| Elevation | |||||
| Slope | |||||
| Pilot region |
| Method | Variant | Vaucluse | Goriška | Bouches-du-Rhône | Hérault | Osnabrück |
|---|---|---|---|---|---|---|
| Random CV | — | |||||
| Block CV | Random blocks | |||||
| Checkerboard blocks | ||||||
| kNNDM CV | Geographic | |||||
| Feature space | ||||||
| IWCV | Embeddings |
Appendix figures & tables3 assets
Supplementary material from the paper’s appendix.
Appendix
| Dataset | Source / collection | Year | Positive class (share) | |
|---|---|---|---|---|
| Goriška, SI | EuroCrops | 2021 | 21,388 | Vineyards (26%) |
| Hérault, FR | EuroCrops | 2018 | 27,116 | Vineyards (83%) |
| Osnabrück, DE | EuroCrops | 2021 | 18,104 | Silage maize (27%) |
| Vaucluse, FR | RPG | 2024 | 59,241 | Vineyards (56%) |
| Bouches-du-Rhône, FR | RPG | 2024 | 23,462 | Vineyards (27%) |
| Dataset | Source / collection | Year | Positive class (share) | |
| Crop vs. non-crop over the whole region | ||||
| Helmets | Roadside camera | 2021–22 | 2,478 | Crop (50%) |
| WorldCereal | Stratified survey | 2021 | 1,720 | Crop (58%) |
| Most common crop vs. other crops over cropland | ||||
| PlantVillage | Walk-around GPS app | 2019 | 296 | Maize (67%) |