Sämbosjön direct observed-pollen evaluation¶
The protocol fixed a new Swedish physical-site target, the
existing 16 exact-label closed pollen response, 500-cal-BP bins, 84 prior
training sites and three fixed predictors. The prepared input receipt,
deterministic gzip training profile,
prediction freeze, predictions,
scores, coverage and machine report
preserve the separate preparation, prediction and scoring reads. The shared
source screen parsed the raw observation partition, including Sämbosjön taxon
rows, for validation during preparation; it discarded those rows before
writing prepared training or prediction inputs. Target composition was
interpreted and aggregated for scoring only after a prediction freeze. The
retained freeze SHA-256 is
8337d7b6316295b2506dd2efff73d2c3e08a2ecd35d3690a5b2047280c3337ec.
Before opening target outcomes, scoring verifies the prepared Neotoma manifest
and all 13 recorded relational source-part hashes, including the sample,
age-claim and observation parts. A source-part mutation is refused before the
target outcome reader runs.
| Fixed method | Scored bins | Equal-bin MAE | Equal-bin Hellinger |
|---|---|---|---|
| Inverse distance squared, primary | 22 | 0.022991 | 0.184176 |
| Nearest site | 22 | 0.026202 | 0.233673 |
| Training mean | 22 | 0.037466 | 0.283108 |
All 22 candidate bins had two or more positive-count training physical sites, were predicted, and were scored. There were zero refused or failed bins. The 111 distinct source samples contribute 393,822 native NISP pollen counts: 224,291 on the declared 16-label axis and 169,531 outside it. The closed response is 56.95% of native pollen mass. Missing exact labels are zero cells only within this observed source subcomposition; outside labels are not interpreted as absent vegetation.
The target is Neotoma/EPD site 3398, its single SAMBOTOT core 4262, and
its single pollen dataset 4403 (dataset DOI).
The source records a core collection date of 1977-01-01; that recorded date
is not evidence for a verified sampling day. Its 111 unique depths are
2.5–552.5 cm. One source-default MADCAP/IntCal09 calibrated chronology
(neotoma:chronology:4262:30017) assigns one comparable sample age to each
depth, 964–11,285 cal BP, with younger and older bounds. A separate
radiocarbon chronology supplies 111 context-only claims. The 15 retained
chronology controls were not used to infer a new age model; age uncertainty was
not propagated through the fixed 500-year bins. The source site is a WGS84
point at 12.41426° E, 57.16313° N. Spatial predictors use site-center
distance. The nearby LandClim SAM point is 3.316459 km away and the
source review
refuses a same-core identity. It is not a target alias or another observation.
The dataset names Gunnar Digerfeldt as investigator. The retained Neotoma
provider publication response identifies one primary source: Digerfeldt,
G. (1982), The Holocene development of Lake Sämbosjön. 1. The regional
vegetation history, Lundqua report 23, Lund University, pp. 1–24. The
response is retained at
bijux-pollenomics-data/neotoma/publication-links/2026-09-29/responses/dataset-4403-publications.json.
Neotoma's 2025 Data Use and Embargo Policy
permits available data under CC BY 4.0 with Neotoma, the European Pollen
Database, original-investigator, primary-publication and dataset-DOI
attribution. The Neotoma/EPD source transport used here is
data/neotoma/raw/neotoma_pollen_dataset_downloads/part-003.json at row 14,
SHA-256 d7b9f9e0616b71ab74be03e15ae3f81fa856582463d51e0c1559d763bb3552af.
The relational manifest SHA-256 is
6f6777a40b67bd0704eb1a982f19e6d451cad0d6e4a41dfebf5e3f28be33105b.
Aggregate native and 16-label count mass and positive-bin support were
inspected before the first prediction freeze. An initial scoring process
completed under freeze
f30cec9b3a9aec925b4b92beadc8eb33cc5fca69336aabb98362dcfdcb7e671a,
but its metrics and compositions were not opened. Review corrected the nearby
SAM identity annotation, then froze the same prediction bytes under
6f0682edf83c8b8575a5a0c45e5f9c4294de61261a15055a0ddc42cb04ab636a.
Aggregate scores were inspected after that freeze. The final annotation now
states the preparation read boundary explicitly; its predictions remain
byte-identical (prediction file SHA-256
97a2b45ce51e2e42c851e64ba5b91ea721e887fac6c1e92e16f3938b428f4e65).
After aggregate-score exposure, the same 5,145,874 training JSON bytes were
stored as deterministic gzip with mtime=0 (121,413 bytes). The input and
freeze hashes changed from the prior uncompressed freeze
c70fd1b6c87f4ab0ad86855f6e092980cf159319978b08b2f42a0f956f7fd0bc;
decompression restores the original training bytes exactly, and the fixed
prediction, score and coverage files remain byte-identical.
This is descriptive development evidence for one newly
evaluated physical site. It has prior aggregate-count and later aggregate-score
exposure, so it is not an independent confirmation or untouched lockbox. One
site cannot support between-site uncertainty or a broad Swedish claim. It is
neither LRA nor measured-vegetation validation.
The separate source age-bound screen finds that 58 of 111 selected sample intervals span a nominal 500-cal-BP boundary. It leaves this point-age score and its prediction freeze unchanged. The contained-age sensitivity keeps 53 samples and 21 bins on those identical predictions. Primary equal-bin MAE is 0.023054 versus 0.022881 for original counts on the same bins. The unsupported first bin is explicitly refused; this marginal-support comparison is no age posterior or independent confirmation.
To replay into absent directories under artifacts/, run the three stages in
order and pass the actual freeze digest to scoring:
PYTHONDONTWRITEBYTECODE=1 .venv/bin/python -m \
bijux_pollenomics_dev.source_completion.sambosjon_direct_pollen prepare \
--repository . --output artifacts/jobs/sambosjon-replay/prepared
PYTHONDONTWRITEBYTECODE=1 .venv/bin/python -m \
bijux_pollenomics_dev.source_completion.sambosjon_direct_pollen predict \
--repository . --prepared artifacts/jobs/sambosjon-replay/prepared \
--output artifacts/jobs/sambosjon-replay/frozen
freeze_sha=$(shasum -a 256 artifacts/jobs/sambosjon-replay/frozen/freeze.json | cut -d ' ' -f 1)
PYTHONDONTWRITEBYTECODE=1 .venv/bin/python -m \
bijux_pollenomics_dev.source_completion.sambosjon_direct_pollen score \
--repository . --prepared artifacts/jobs/sambosjon-replay/prepared \
--frozen artifacts/jobs/sambosjon-replay/frozen \
--freeze-sha256 "$freeze_sha" \
--output artifacts/jobs/sambosjon-replay/scored