make building results authority-first after V74 evaluation
GeoIntel release gates / Compile, test, contracts and builds (push) Canceled after 0s
GeoIntel release gates / Python and npm vulnerability policy (push) Canceled after 0s
GeoIntel release gates / GIS image, SBOM and container scan (push) Canceled after 0s

This commit is contained in:
Jens
2026-08-10 04:44:29 +02:00
parent 98188e0a44
commit 4b0cab3ce5
27 changed files with 13067 additions and 6 deletions
+6
View File
@@ -1712,6 +1712,12 @@ Returns persisted detections for a dataset as a GeoJSON FeatureCollection. Optio
Compares persisted detection geometries from an analysis run against persisted `vector_features` from a reference vector dataset.
The map-driven building workflow immediately loads the persisted evidence from
the resulting quality check. For current Flemish building validation it labels
strict matches as GRB-confirmed, unmatched detections as unconfirmed AI-only
proposals and unmatched reference footprints as official GRB buildings missed
by AI. AI-only proposals are never promoted to authoritative building results.
Request:
```json
+20
View File
@@ -1,3 +1,23 @@
## 2026-08-10 - V74 root-cause remediation en authority-first uitvoer
### Opgeleverd
- De volledige V72 failure gallery gerenderd en AI-assisted geïnspecteerd;
terugkerende foutpositieven omvatten spoorinfrastructuur, voertuigen, bomen
en schaduwen.
- Een hard-negative proposal-filter en twee rehearsal-kandidaten getraind op
de Tower RTX 4080 SUPER en alle drie afgewezen op de onafhankelijke V72-set.
- De experimentele trainer bindt nu expliciet AdamW, zodat Ultralytics niet
stilzwijgend de gevraagde learning rate vervangt via `optimizer=auto`.
- De kaartwerkstroom laadt het GRB-QA-bewijs automatisch en onderscheidt
GRB-bevestigde, AI-only en door AI gemiste gebouwobjecten.
### Grens
- Het productiecheckpoint bleef ongewijzigd. Er is geen landelijke of
100%-accuratesseclaim gedaan en de visuele review blijft AI-assisted.
- Evidence: `artifacts/evidence/accuracy/model-training/20260810-v74-root-cause/`.
## 2026-07-29 - V31 closed-loop iteration 3 assessment and semantic correction
- Iteration 3 stopped deterministically after epoch 21 with epoch 3 retained as
+10
View File
@@ -1,5 +1,15 @@
# GeoIntel TODO
## V74 authority-first gebouwresultaten (2026-08-10)
- [x] Voer een V72-foutanalyse, hard-negative proposal-filter en rehearsal
training uit; wijs alle regresserende kandidaten af en behoud het actieve
checkpoint.
- [x] Laad na gebouwdetectie automatisch het bewaarde GRB-QA-bewijs en splits
de kaartuitvoer in GRB-bevestigd, AI-only en door AI gemist.
- [ ] Laat een onafhankelijke menselijke reviewer de bevroren contact sheets
en labels ondertekenen voordat een kandidaat ooit promoveerbaar wordt.
## PyTorch-modelprogramma
Uitvoeringsbord: `docs/PYTORCH_TRAINING_ROADMAP_BELGIUM.md`.
@@ -0,0 +1,71 @@
# V74 foutoorzaak en authority-first resultaten
## Uitkomst
V74 heeft geen nieuw productiemodel opgeleverd. De actieve checkpoint blijft
ongewijzigd omdat zowel de experimentele proposal-filter als twee
rehearsal-kandidaten op de bevroren V72-calibratie slechter presteren. GeoIntel
presenteert de automatische gebouwanalyse daarom niet langer als één uniforme
resultaatlaag: de GRB-vergelijking maakt voortaan zichtbaar welke AI-kandidaten
officieel bevestigd zijn, welke alleen modelvoorstellen zijn en welke
GRB-gebouwen door AI gemist zijn.
## Visuele foutanalyse
De volledige V72-portfolio van 24 onafhankelijke tegels is met het actieve model
op confidence 0,30 gerenderd. De contact sheet toont terugkerende foutpositieven
op spoorlijnen, voertuigen, bomen, schaduwen en andere contrastrijke structuren.
Daarnaast ontbreken veel gebouwen. Dit ondersteunt de conclusie dat extra
epochs op alleen de nieuwe Vlaamse shard de hoofdoorzaak niet oplossen.
De review is AI-assisted en niet menselijk. Het bewijs mag dus geen menselijke
acceptatie of promotiegate vervangen.
## Afgewezen proposal-filter
Een experimentele ResNet18-filter werd op afzonderlijke V73-AOI's getraind om
building proposals van moeilijke negatieve patches te onderscheiden. De interne
V73-validatie behaalde F1 0,8068, maar die score generaliseerde niet naar V72.
De beste globale V72-combinatie behaalde precision 0,2161, recall 0,2241 en F1
0,2200. Het actieve model zonder filter behaalt op confidence 0,30 F1 0,2504.
De filter kan precision verhogen bij een vaste detectordrempel, maar halveert
dan de recall. Hij blijft daarom experimenteel en wordt niet geladen in
productie.
## Afgewezen rehearsal-training
De trainingsset combineert 180 historische trainingstegels met de 48 nieuwe
V73-tegels, waarbij V73 tweemaal voorkomt. V72 is alleen evaluatie en komt niet
in de fitdata voor.
| Model | Precision | Recall | mAP50 | mAP50-95 | Besluit |
|---|---:|---:|---:|---:|---|
| Actief | 0,1577 | 0,1178 | 0,0568 | 0,0218 | behouden |
| Rehearsal, optimizer auto, 10 epochs | 0,0710 | 0,0776 | 0,0262 | 0,0098 | afgewezen |
| Rehearsal, AdamW 0,0001, 6 epochs | 0,0839 | 0,1034 | 0,0349 | 0,0136 | afgewezen |
De eerste run bracht bovendien een reproduceerbaarheidsfout aan het licht:
Ultralytics `optimizer=auto` negeerde de gevraagde learning rate en koos AdamW
0,002. De wrapper bindt daarom nu expliciet `optimizer=AdamW` en legt dit vast
in het trainingsmanifest. De gecorrigeerde low-learning-rate-run bleef eveneens
onder de actieve baseline.
## Productcorrectheid
Voor actuele gebouwvalidatie in Vlaanderen is GRB de gezagsbron binnen de
beschikbare editie en dekking. De kaartwerkstroom laadt na detectie automatisch
het bewaarde QA-bewijs en toont afzonderlijk:
- GRB-bevestigde AI-kandidaten;
- AI-only, onbevestigde onderzoeksvoorstellen;
- officiële GRB-gebouwen die het model miste.
AI-only voorstellen worden niet als officiële gebouwen voorgesteld. Dit maakt
de productuitvoer aantoonbaar correcter zonder de zwakke modelscore te verbergen
of een niet-bewezen nauwkeurigheidsclaim te maken.
## Evidence
Alle ruwe contact sheets, foutmanifesten, filtermatrices, trainingssamenvattingen
en modelhashes staan onder
`artifacts/evidence/accuracy/model-training/20260810-v74-root-cause/`.