Geneva Residential Real Estate Valuation Platform
An end-to-end ML system that combines Geneva cadastral records and transaction history to produce address-based price estimates, comparable properties, and explainable valuations.










OVERVIEW
Turning Geneva Property Data Into Defensible Valuations
For a residential real estate client in Geneva, I built an end-to-end valuation platform that predicts transaction prices from cadastral, property, geographic, and local-market signals.
The work went beyond training a model. I designed the data pipeline, feature layer, leakage-safe evaluation cohorts, model registry, ensemble logic, comparable-property search, and FastAPI service used to request a valuation from an address and a small set of property attributes.
The result is a reproducible system that can move from raw public records to an explainable price estimate, with the data lineage, model versions, intervals, and audit records needed to understand how the number was produced.
The Challenge
Real estate pricing looks like a regression problem, but the difficult part is creating a trustworthy observation for each property and each point in time:
Linking transaction records to addresses, parcels, buildings, and property types across multiple cadastral sources
Converting nested legal and property descriptions into usable attributes without losing provenance
Engineering location and market-context features without leaking future transactions into training
Serving a valuation for an address that may never have appeared in the historical transaction table
Explaining an estimate clearly enough for a client to use it, rather than presenting a black-box score
The system therefore had to solve data integration, temporal ML, model serving, and product trust as one connected problem.
Links
Links are not available, as this is a private client project.
APPROACH
The Approach
I built the platform as a connected ETL, ML, and serving workflow:
Extracted Geneva address, parcel, and building data from SITG alongside residential transaction records, then joined them into a BigQuery-centered analytical model
Engineered building age, floor, surface, ownership, geography, landmark-distance, property-object, and rolling local-market features
Separated training, calibration, and prediction into disjoint chronological cohorts so tuning and ensemble weighting never used future holdout observations
Built config-driven XGBoost and random-forest pipelines with Optuna optimization, versioned artifacts, out-of-sample predictions, and model metadata
Combined eligible component models using calibration-cohort MAE weights, with a consistent batch and online scoring path
Added address-based valuation, online k-nearest-neighbor comparable search, grouped SHAP explanations, and auditable prediction responses through FastAPI
The emphasis throughout was reproducibility: the same feature definitions, model configurations, and weighting logic are used from offline evaluation through the API.
Core architecture:
SITG ArcGIS cadastral data and FAO transaction records as the source layer
Python ETL with BigQuery checkpoint tables for addresses, parcels, buildings, transactions, and ML-ready features
Config-driven XGBoost and random-forest training, prediction, and Optuna optimization on Vertex AI or Docker
Google Cloud Storage for versioned model artifacts and BigQuery for predictions, performance, ensemble weights, and audit records
MAE-weighted model ensembles plus a fitted k-NN index for comparable-property retrieval
FastAPI endpoints for batch-result reads, on-demand valuations, comparable properties, and grouped SHAP explanations
Prefect flows for recurring ETL, training, prediction, calibration, and ensemble runs
Docker, CI tests, data-quality gates, structured run logging, and readiness checks for operational reliability
Technical Stack
Python
BigQuery
Vertex AI
XGBoost
FastAPI
Prefect
Docker
Google Cloud Platform
RESULTS
Key Outcomes
A complete data-to-valuation system spanning raw Geneva records, feature engineering, model training, prediction, and API delivery
Leakage-safe chronological cohorts for fitting, calibration, and out-of-sample prediction
An address-based valuation API with comparable-property search and grouped, consumer-facing SHAP drivers
Shared ensemble weights and model artifacts across batch predictions and on-demand estimates
Auditable requests, model versions, feature provenance, quality gates, and readiness checks built into the platform
Why This Matters
A property estimate is only useful when the client understands what it represents and the system can reproduce it. This project treats valuation as more than an accuracy contest:
Point-in-time features and chronological cohorts protect the model from temporal leakage
Comparable properties and grouped SHAP drivers give users context for the estimate
Versioned artifacts, ensemble weights, and audit records make predictions traceable
Address resolution and strict serving rules prevent the API from fabricating transaction-only inputs
The broader lesson applies to any high-consideration ML product: the model earns trust through the data pipeline, evaluation design, explanation layer, and operating controls around it.
Looking Forward
Next steps:
Explicit champion/challenger promotion so production scoring uses approved model snapshots rather than the latest artifact
API authentication, rate limits, and versioned endpoints for external client access
Incremental cadastral refreshes and automated transaction ingestion
Managed orchestration, failure notifications, and model-performance alerting
Bulk valuations and expansion beyond the initial Geneva coverage
Interested in building something similar?
We help organizations design scalable AI and analytics infrastructure for:
forecasting
growth analytics
operational automation
machine learning platforms
agentic AI workflows
cloud-native data systems
Let’s build systems that turn data into operational leverage.