ProspectMap — Mineral Prospectivity Workbench with a Published Null Result
A mineral-prospectivity workbench that computes a Weights-of-Evidence posterior P(deposit|evidence) live in the browser over stacked geophysical, geochemical and structural layers, and whose real reason to exist is adversarial honesty. On real US Midcontinent MVT Zn-Pb belt data (Lawley et al. 2022, USGS public domain) it publishes a recorded null: the proposed PU-Conformal method loses to 1989-vintage Weights of Evidence, and a trivial distance-to-deposit baseline already ties the best learned model, so most apparent skill is spatial proximity, not learned geology. It makes first-class the two ways prospectivity maps lie: conditional-independence violation and random-CV inflation.
Business Context
Exploration budgets follow prospectivity maps, so a map that reports inflated skill sends drilling to the wrong ground. ProspectMap's value is not a better target map, it is an honest measurement of how little a regional geophysics stack can localize deposits under fair spatial transfer, quantified against the one baseline that exposes it: distance to a known deposit. On the real MVT belt, six models are scored on identical contiguous spatial-block folds with bootstrap confidence intervals, negative controls are shown collapsing as they must, and the split-conformal band is reported as near-vacuous rather than dressed up. That is what a prospectivity workflow should tell an explorer before committing a drill program.
Strategic Value
ProspectMap is the clearest example in the Faena line of a product whose deliverable is a published null result. On the real US Midcontinent MVT Zn-Pb belt, the committed verdict records ranking_win: false, the proposed PU-Conformal method scores block-CV AUC 0.656 and does not beat classical Weights of Evidence at 0.732; and the trivial distance-to-known-deposit null already reaches AUC 0.783, so most apparent skill is spatial proximity, not learned geology. The negative controls collapse as they must (label permutation drops WofE to 0.506, PU to 0.490; a pure noise layer earns zero lift), and the split-conformal band delivers its coverage guarantee (empirical 0.977 vs nominal 0.90) only by flagging 88% of the belt, an honest near-vacuous set rather than a false-confidence point map. The card leads with that honesty and never quotes the leaky 0.9456 headline. It is a reusable pattern for prospectivity work that refuses to overclaim.
The Challenge
Mineral-prospectivity maps are easy to make and easy to fool yourself with. Two failure modes dominate: stacked evidence layers are physically correlated, so the conditional-independence assumption behind Weights of Evidence is violated and the posterior inflates; and validating a spatial model with random cross-validation lets a fine-grained learner memorize the autocorrelated field, so the AUC looks strong under random folds and collapses under an honest contiguous spatial holdout. A prospectivity tool that does not confront both, and that does not compare itself against the trivial distance-to-known-deposit baseline, will report skill it does not have.
Our Approach
ProspectMap computes a Weights-of-Evidence posterior live in the browser (W+/W-, contrast, studentized contrast, posterior log-odds), with a maximizing-contrast threshold that binarizes continuous layers, and it puts the failure modes on the same footing as the map. It runs the conditional-independence machinery live (pairwise chi-square plus the Agterberg-Cheng omnibus test), a CI-free logistic regression by IRLS with ridge, and a validation suite that contrasts random folds against contiguous spatial-block folds and reports the inflation gap, plus a nearest-deposit distance null. Learned lanes ship as ONNX (a classifier, a geology-OOD autoencoder, and a PU-Conformal model combining nnPU risk with split conformal); random forest and gradient boosting are computed offline only. AlphaEarth and foundation-model embeddings are not used anywhere; they appear only as candidate future datasets. Everything is client-side, static on GitHub Pages, with the offline bake importing the same TypeScript engine the browser runs.
Key Performance Indicators
| KPI | Baseline | Result | Impact |
|---|---|---|---|
| The deliverable is a null result | Ship a confident target map | Committed verdict ranking_win: false: PU-Conformal (block-CV AUC 0.656) does not beat 1989 Weights of Evidence (0.732) | The proposed method loses, and the repo publishes it |
| The trivial baseline that ties it | Attribute the AUC to learned geology | Distance-to-known-deposit null scores AUC 0.783 - most apparent skill is spatial proximity | Quantified against the baseline that exposes it, not hand-waved |
| Negative controls collapse | No control for spurious skill | Label permutation -> WofE 0.506 / PU 0.490; a pure noise layer earns zero lift | The controls collapse exactly as they must |
| Coverage without confidence | A tidy point-target map | Split-conformal coverage 0.977 vs nominal 0.90, achieved only by flagging 88% of the belt | Reported as an honest near-vacuous set, not false confidence |
Architecture
prospectmap pipeline
A prospectivity workbench that publishes when it loses
ProspectMap is a mineral-prospectivity workbench. It computes a Weights-of-Evidence posterior P(deposit|evidence) live in the browser over stacked geophysical, geochemical and structural layers, and its reason to exist is adversarial honesty: it makes first-class the two ways prospectivity maps lie, and it publishes a recorded null result on real data. Live at prospectmap.fasl-work.com, part of the Faena mining-analytics hub.
No AlphaEarth, no foundation-model embeddings
To be exact about scope: AlphaEarth is not used, anywhere. It appears once, in an attribution file, as a candidate future dataset. There is no embedding, no Earth Engine call, no 64-D feature in the pipeline. Random forest and gradient boosting are computed offline only; they never run live.
The real-data story is a null result
On the US Midcontinent MVT Zn-Pb belt (Lawley et al. 2022, USGS public domain; 25,344 cells, 4 real measured geophysical layers plus 2 derived proximity layers), six models are scored on identical contiguous spatial-block folds with bootstrap confidence intervals:
- Weights of Evidence 0.732 · logistic regression 0.846 · random forest 0.745 · gradient boosting 0.725 · naive MLP 0.783 · PU-Conformal 0.656
The committed verdict is ranking_win: false: the proposed PU-Conformal method does not beat 1989-vintage Weights of Evidence. And the trivial distance-to-known-deposit null already scores 0.783, so most apparent skill is spatial proximity, not learned geology. This is why the headline 0.9456 that a lenient interleaved-fold protocol produces is never quoted here: it is a protocol artifact, and the honest contiguous-fold number is 0.7834, a dead tie with the proximity baseline.
The controls, and what the conformal band actually does
Negative controls collapse as they must: label permutation drops WofE to 0.506 and PU to 0.490, and a pure noise layer earns zero lift. The split-conformal band delivers its coverage guarantee (empirical 0.977 vs nominal 0.90), but only by flagging 88% of the belt, an honest near-vacuous set that correctly reports that regional geophysics cannot localize MVT under spatial transfer, rather than a false-confidence point map. This is target generation with its uncertainty stated, not a JORC or NI 43-101 resource estimate.
Technology Stack
In action
A short tour of the live app — the real interface, recorded from the deployed site.

Application Screenshots

