mirror of
https://github.com/Hestia-Homes/Model.git
synced 2026-07-12 13:29:04 +00:00
Build a geographically DENSE postcode-clustered corpus to test cross-postcode geo expansion (the handover's anticipated "real geo payoff"). The gov EPC API has no area/prefix search (a partial postcode 400s; the old opendatacommunities partial-search API is decommissioned), so neighbourhood enumeration is external: seed K postcodes nationally, expand each via postcodes.io's nearest-postcode endpoint into every unit within RADIUS_M, pull each one's full EPC cohort. postcodes.io is a corpus-BUILD dependency only — the predictor stays pure. Same on-disk layout as the scattered corpus, so load_corpus + the coords resolver consume it unchanged. MEASURE-FIRST RESULT — cross-postcode expansion is a NO-GO. On a 2-seed pilot (York YO19 + Islington N51, 81 postcodes / 1558 certs, 140 SAP-10.2 targets), pooling nearby postcodes regresses accuracy across the board: same-postcode FA_MAE 9.53 wall 92% age 72% floor_con 85% cylinder 91% cross <=0.3km FA_MAE 13.1 wall 80% age 61% floor_con 82% cylinder 79% Even as a thin-cohort top-up it hurts (thin n=18: FA 5.24 -> 7.15). Root cause: the postcode boundary is itself a strong homogeneity prior (a postcode is one coherent street/development), so same-postcode neighbours beat geographically near cross-boundary ones even when the home postcode is sparse (and they rarely are — median same-postcode cohort here is 34). Geo-proximity helps WITHIN a postcode (#1227) but does not survive crossing the boundary. Cross-postcode geo closed; geo weighting stays intra-postcode. Tooling kept (reusable). Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com> |
||
|---|---|---|
| .. | ||
| eon | ||
| analyse_api_sap_clusters.py | ||
| build_epc_prediction_fixture.py | ||
| decompose_api_cost_error.py | ||
| decompose_co2_pe_error.py | ||
| download_cotality_evidence.py | ||
| elmhurst_input_sheet.py | ||
| eval_api_sap_accuracy.py | ||
| fetch_2026_epc_sample.py | ||
| fetch_cohort2_api_jsons.py | ||
| fetch_corpus_coordinates.py | ||
| fetch_epc_bulk_sample.py | ||
| fetch_epc_dump.py | ||
| fetch_epc_prediction_corpus.py | ||
| fetch_epc_prediction_dense_corpus.py | ||
| historic_epc_demo.py | ||
| init_db.py | ||
| profile_api_error.py | ||
| profile_case34.py | ||
| run_audit_generator_local.py | ||
| run_modelling_cohort.py | ||
| run_modelling_e2e.py | ||
| run_property_report.py | ||
| validate_epc_prediction.py | ||