125 lines
6.1 KiB
Markdown
125 lines
6.1 KiB
Markdown
# Fase 4 — Baselinebenchmark
|
||
|
||
## Beslissing
|
||
|
||
Het lokale evaluatieharnas is reproduceerbaar en groen. Een betrouwbare
|
||
baseline van het actieve GeoIntel-productiemodel is in deze omgeving niet
|
||
uitvoerbaar. De productbenchmark is `fail` door de bevestigde Phase-3-leakage;
|
||
andere productgates blijven `not_evaluable` zonder governed bewijs. Er wordt
|
||
daarom geen productie-accuracy-, België-brede of promotieclaim afgeleid.
|
||
|
||
| Statusveld | Waarde |
|
||
| --- | --- |
|
||
| Benchmark-ID | `geointel-p4-reference-harness-v2` |
|
||
| Lokale harnasstatus | `pass` |
|
||
| Productbenchmark | `fail` |
|
||
| Promotie toegestaan | `false` |
|
||
| Phase 4 done | `false` |
|
||
| Phase 5 ready | `false` |
|
||
|
||
## Referentie-implementatie als nulmeting
|
||
|
||
De bestaande productiecode in `backend/app/services/qa_service.py` is via
|
||
`scripts/run_golden_qa_benchmark.py` uitgevoerd op vier bevroren golden
|
||
QA-scenario's. De dynamische service-UUID wordt niet meegenomen in de
|
||
canonieke inhoudshash.
|
||
|
||
| Golden scenario | Precision | Recall | F1 | Mean matched IoU |
|
||
| --- | ---: | ---: | ---: | ---: |
|
||
| Partial match | 0,50 | 0,50 | 0,50 | 0,8339768339652592 |
|
||
| Perfect match | 1,00 | 1,00 | 1,00 | 1,00 |
|
||
| No overlap | 0,00 | 0,00 | `null` | `null` |
|
||
| Multipolygon match | 1,00 | 1,00 | 1,00 | 1,00 |
|
||
|
||
De canonieke referentiehash is
|
||
`aeb0f6510352f4e205e4fc4e8c423110ca72c2142016c7af846d758865f258c6`.
|
||
Dit bewijst de rekenkundige regressiestabiliteit van de QA-service, niet de
|
||
kwaliteit van een detector of segmentatiemodel.
|
||
|
||
## Multi-task evaluatorbaseline
|
||
|
||
Negen synthetische, deterministische `test`/`background-test`-cases oefenen
|
||
zeven evaluatorfamilies en 15 concrete capabilityrecords uit. De gecombineerde
|
||
resultaathash is
|
||
`55cdba9cce4dcdc88cee0829cd510d7e624a3472feb9d33f7e681621a792eba3`.
|
||
De cases zijn bewust klein; hun scores testen formules, null-semantiek,
|
||
raw-retentie, stratificatie en foutclassificatie, niet productkwaliteit.
|
||
|
||
| Familie | Voornaamste fixture-uitkomst | Claimgrens |
|
||
| --- | --- | --- |
|
||
| Objectdetectie | P 0,667; R 1,000; F1 0,800; AP50 1,000; AP50–95 0,901 | formule-/harnastest |
|
||
| Footprintsegmentatie | mean IoU 0,799; Dice 0,888; boundary F1 1,000 | formule-/harnastest |
|
||
| Categorisch raster | accuracy 0,833; macro F1 0,822; mean IoU 0,722 | metriekcontract, geen geleerd rastermodel |
|
||
| Vectorvergelijking | P/R/F1 0,500; mean matched IoU 1,000 | formule-/harnastest |
|
||
| Change detection | globale P/R/F1 0,500; afzonderlijke added/removed metrics | eventclassificatie zichtbaar |
|
||
| Terrein | MAE 0,275 m TAW; RMSE 0,287 m TAW; coverage 0,800 | eenheids-/coveragecontract |
|
||
| Datavalidatie | P/R/F1 0,667; één critical miss | fail-closed anomaliecontract |
|
||
|
||
Alle subgroepen hebben in deze kleine fixture onvoldoende statistische support.
|
||
Hun `release_gate_status` is daarom `not_evaluable`, met de supportreden apart
|
||
geregistreerd; geen gemiddelde kan dit omzetten in releasebewijs. De
|
||
95%-Wilsonintervallen zijn overeenkomstig breed.
|
||
|
||
## Ruwe voorspellingen en fouten
|
||
|
||
De workflow bewaart exacte referenties, pre-/postfiltervoorspellingen,
|
||
configuratie en lineage vóór iedere samenvatting. De failure gallery bevat 14
|
||
deterministische voorbeelden, waaronder FP/FN, boundary- en area-bias,
|
||
rastermisclassificatie, calibratie en een gemiste critical-validatieafwijking.
|
||
De failure-ID's zijn inhoudsgebonden en kunnen in regressietests worden
|
||
hergebruikt.
|
||
|
||
Relevante evidence:
|
||
|
||
- `baseline-raw-predictions.json` — exacte raw referenties, pre-/postfilteroutputs, config en lineage;
|
||
- `metric-report.json` — taak- en subgroepmetingen met support en intervallen;
|
||
- `failure-gallery.json` — machineleesbare fouttaxonomie en voorbeelden;
|
||
- `reference-implementation-baseline.json` — werkelijke QA-service-uitvoering;
|
||
- `benchmark-manifest.json` — alle input-, split-, code- en evaluatoridentiteiten.
|
||
|
||
De canonieke benchmarkmanifesthash is
|
||
`0ea5ab07f46c509a7a24943b31d5e9bfd6368920609227bc47613e18e52c4642`;
|
||
de exacte bestandshash is
|
||
`868dd7eb2dfa8344e417879ed3f5dd7c7d9e5673add7e3e2294c5cbde4b75d57`.
|
||
Evidence-run `p4-2.0.1-9677d0ef37db82bcf39b` bindt uitvoerbare codecommit
|
||
`70fb4b94e5cb7c248beec5a936ce186f38cc183c`. De evidence-manifestbestandshash
|
||
is `fdc15a95ee2a0754dfa169f4b41036e084b8d8909afc37fd8ea68ee6b9210f98`;
|
||
de release-gatereportbestandshash is
|
||
`e5f1c9c43c8da22acfa5486e641c010a278431f90634f91335b039ab7bdb50a4`.
|
||
Deze hashes bewijzen reproduceerbaarheid en integriteit, niet productaccuracy.
|
||
|
||
## Waarom de productbaseline niet uitvoerbaar is
|
||
|
||
De productgates zijn bewijsgebonden en kunnen niet vanuit losse statusvelden
|
||
groen worden gemaakt:
|
||
|
||
1. de actieve modelconfiguratie verwijst naar `/app/models/...pt`, die lokaal
|
||
niet als bestand beschikbaar is;
|
||
2. er is geen governed productmanifest met in-process herberekende raw evidence
|
||
voor alle zeven taakfamilies en een actueel CUDA/GPU-receipt;
|
||
3. een volledige GRB/PICC/UrbIS/DHMV/SPW/MDK-taak-/zoneportfolio ontbreekt;
|
||
4. een checksumgebonden reviewledger ontbreekt; historisch staat V56 op 0/180;
|
||
5. een productgebonden geometrische leakage-audit ontbreekt; historisch zijn er
|
||
24 cross-splitparen onder 2 km;
|
||
6. de Phase-3-leakagestatus is bevestigd `attention` en dus `fail`;
|
||
7. vaultisolatie met hash-chained accesslog is niet bewezen;
|
||
8. representatieve support over alle 13 vereiste subgroupdimensies ontbreekt.
|
||
|
||
Door de fail-first aggregatie maakt de bevestigde Phase-3-leakage de huidige
|
||
productbenchmark `fail`; ontbrekende productartefacten blijven afzonderlijk
|
||
`not_evaluable`. Geen van beide toestanden laat promotie toe.
|
||
|
||
Daarnaast waren Tower-corpora, gemounte modelvolumes en de productie-PostGIS/API
|
||
in Phase 3 expliciet onbereikbaar. Het harnas verzint daarvoor geen vervangende
|
||
ground truth en gebruikt OSM niet automatisch als gezagsbron voor gebouwen.
|
||
|
||
## Betekenis voor volgende training
|
||
|
||
Test- en challenge-data mogen niet worden geopend voor training,
|
||
thresholdselectie, modelselectie of iteratieve foutcorrectie. Eerst moeten de
|
||
representatieve review, nieuwe onafhankelijke splits, lokale gezagsdata,
|
||
protected vault en een checksumbare incumbent-run beschikbaar zijn. Daarna
|
||
worden modelkeuzes op `val` en operating points op `calibration` vooraf
|
||
vastgelegd; pas vervolgens mag één immutable kandidaat de protected test en
|
||
background-test doorlopen. Challenge-labels blijven sealed.
|