PASCAL YIM / apprendreKNN et normalisation

KNN / 07 · EXERCICE

Maisons : avec et sans mise à l’échelle

Trois variantes KNN sont comparées sur exactement les mêmes cinq plis : données brutes, standardisation, min–max.

EXPLICATION DU CODE

Le test final reste réservé. Les pipelines empêchent les informations de validation d’entrer dans la normalisation. Les calculs portent sur tout l’ensemble de développement ; la première exécution peut prendre un peu de temps.

Exemple expliqué

  1. 1
    modeles = {
        "KNN brut": KNeighborsRegressor(n_neighbors=5),
        "KNN standard": make_pipeline(StandardScaler(), KNeighborsRegressor(n_neighbors=5)),
        "KNN min–max": make_pipeline(MinMaxScaler(), KNeighborsRegressor(n_neighbors=5)),
    }

    Même nombre de voisins et mêmes caractéristiques : seule la mise à l’échelle change.

  2. 2
    scores = -cross_val_score(modele, X_dev, y_dev,
        cv=cv, scoring="neg_root_mean_squared_error", n_jobs=1)

    Le même objet cv, avec mélange et graine fixée, recrée les mêmes plis pour chaque variante.

  3. 3
    resultats = pd.DataFrame(lignes).sort_values("RMSE moyenne")

    Une ligne par variante, classée par erreur croissante. Une baisse est une amélioration pour ce protocole, pas une garantie universelle.

  4. 4
    resultats.round(0)

    Arrondi d’affichage pour lire les prix ; resultats conserve les valeurs non arrondies pour les calculs.

Exemple de référence · La consultation conserve le crédit de l’exercice.
EXERCICE / PYTHON

Code à compléter

Comparer les trois KNN avec les mêmes cinq plis ; construire resultats avec les colonnes modele, RMSE moyenne et Écart type puis afficher le tableau.

Saisie autonome · crédit complet après réussite

Le résultat apparaîtra ici.
Session Python

Les variables restent disponibles entre les pages. Un rechargement efface les variables ; le code et l’utilisation de l’aide restent enregistrés dans cet onglet.

Parcours · chapitres

Voisins, scalers, pipelines et comparaison sur les maisons.

01 / Rappels de Python

02 / Classes et objets en Python

03 / Pandas et DataFrames

04 / Régression linéaire et métriques

05 / Régressions multiple et polynomiale

06 / Évaluer les modèles

07 / KNN et normalisation

Quiz de synthèse · 24 questions →Rejoindre une session →