À propos de l'outil et du modèle

Un estimateur de prix de maisons pour l'agence Chasseurs d'appart', construit de bout en bout : nettoyage des données, sélection des variables, comparaison d'algorithmes et mise à disposition sous forme d'application web.

0,909R² sur le jeu de test
63 291 $erreur absolue moyenne (MAE)
12,09 %erreur relative moyenne (MAPE)
106 317 $racine de l'erreur quadratique (RMSE)

Le jeu de données

House Sales in King County, USA (Kaggle) : 21 613 ventes de maisons individuelles enregistrées entre mai 2014 et mai 2015 dans le comté de King (Seattle et sa banlieue), avec 21 colonnes décrivant le bien, sa localisation et sa date de vente.

Après nettoyage, 21 586 lignes sont conservées :

  • correction d'une faute de saisie manifeste (33 chambres pour 150 m²) ;
  • suppression de 16 ventes sans chambre ni salle de bain (valeurs manquantes codées 0) ;
  • suppression de 9 propriétés de plus de 8 000 sqft (segment hors périmètre d'une agence classique) ;
  • suppression de 2 prix extrêmes (règle de Tukey à 3 × IQR sur l'échelle logarithmique).

Le jeu est ensuite scindé en 80 % d'entraînement (17 268 ventes) et 20 % de test (4 318 ventes) tenues à l'écart jusqu'à l'évaluation finale.

La sélection des variables

Toute variable dérivée du prix est exclue d'office pour éviter une fuite d'information. Sur les 22 variables candidates, trois méthodes ont été croisées :

  1. Boruta (forêt aléatoire contre des variables « ombres » permutées) — retient 15 variables ;
  2. Forward selection (ajout pas à pas selon le gain en validation croisée) — retient 10 variables ;
  3. importance par permutation pour arbitrer les désaccords.

Le jeu final compte 14 variables numériques plus le code postal encodé en indicatrices :

bathroomssqft_livinglog_sqft_lotwaterfrontviewconditiongradesqft_aboveyr_builthouse_agelatlongsqft_living15sqft_lot15 zipcode (70 indicatrices)

Le modèle prédit le logarithme du prix, ce qui stabilise la variance et rend les erreurs relatives comparables entre une maison à 200 k$ et une autre à 2 M$.

Le choix du modèle

Six algorithmes ont été entraînés sur les deux jeux de variables (toutes / sélection) avec validation croisée à 5 plis, puis évalués une seule fois sur le jeu de test. Une recherche par grille (grid search) sur les deux meilleurs a fixé les hyperparamètres du modèle final : LightGBM — 800 arbres, taux d'apprentissage 0,03, 31 feuilles, minimum 10 observations par feuille.

Le jeu de 14 variables sélectionnées a été préféré au jeu complet : la perte de précision est négligeable (moins de 0,3 point de R²) pour un formulaire deux fois plus court et un modèle plus lisible.

ModèleVariablesR² (test)MAEMAPER² CV (log)
LightGBM toutes (22) 0,9124 60 926 $ 11,65 % 0,9079 ± 0,0023
LightGBM sélection (14) 0,9097 62 181 $ 11,94 % 0,9032 ± 0,0034
XGBoost toutes (22) 0,9093 60 814 $ 11,59 % 0,9094 ± 0,0028
Gradient Boosting toutes (22) 0,9034 64 248 $ 12,23 % 0,9033 ± 0,0028
XGBoost sélection (14) 0,9033 63 116 $ 11,99 % 0,9047 ± 0,0032
Gradient Boosting sélection (14) 0,8977 66 362 $ 12,58 % 0,8989 ± 0,0038
Random Forest sélection (14) 0,8772 68 797 $ 12,80 % 0,8886 ± 0,0031
Random Forest toutes (22) 0,8746 68 912 $ 12,75 % 0,8898 ± 0,0025
Ridge toutes (22) 0,8640 75 201 $ 13,96 % 0,8820 ± 0,0030
Régression linéaire toutes (22) 0,8634 75 180 $ 13,95 % 0,8821 ± 0,0030
Ridge sélection (14) 0,8601 75 708 $ 14,04 % 0,8799 ± 0,0030
Régression linéaire sélection (14) 0,8598 75 541 $ 14,01 % 0,8803 ± 0,0030
KNN sélection (14) 0,8543 75 718 $ 14,10 % 0,8652 ± 0,0020
KNN toutes (22) 0,8107 85 718 $ 15,71 % 0,8344 ± 0,0020

La ligne surlignée correspond au modèle servi par cette application (avant grid search ; les métriques finales figurent en haut de page).

Comment lire une estimation

  • Prix estimé : valeur prédite par le modèle, arrondie au millier de dollars.
  • Fourchette : ± 12,1 % autour du prix, soit l'erreur relative moyenne mesurée sur le jeu de test. Environ une vente sur deux tombe dans cette fourchette ; les biens atypiques (bord de l'eau, très grandes surfaces) sont moins bien estimés.
  • Prix au m² : prix estimé divisé par la surface habitable saisie.
  • Comparaison au secteur : écart entre l'estimation et le prix médian des ventes du même code postal dans le jeu de données.

Limites

  • Les prix sont ceux du marché de mai 2014 à mai 2015 ; l'outil ne modélise pas l'évolution du marché depuis.
  • Le modèle ne connaît que King County (70 codes postaux) : aucune estimation hors de ce périmètre.
  • Les surfaces sont converties depuis les m² (1 m² = 10,7639 sqft) ; la surface « au-dessus du sol » est déduite du sous-sol déclaré.
  • Si la position GPS et la taille du voisinage ne sont pas renseignées, les médianes du code postal sont utilisées, ce qui lisse l'estimation.