Plusieurs caractéristiques
Fait partie de la section Apprentissage supervisé du Journey Machine Learning de Coddy. Leçon 12 sur 58.
Le prix d’une maison dépend de plus que de sa superficie : un long trajet à pied jusqu’à la gare le fait baisser. En apprenant à partir des deux facteurs, un modèle trace des droites parallèles :
Dans le code, X récupère les deux colonnes et coef_ une pondération par caractéristique :
X = houses[["area_m2", "minutes_walk"]]
model = LinearRegression()
model.fit(X, houses["price"])
print(np.round(model.coef_, 1))Cela affiche :
[ 2.6 -5.1]Les poids suivent les colonnes de X. Chaque m² supplémentaire ajoute 2,6 milliers de dollars ; chaque minute de marche supplémentaire en retranche 5,1 milliers, l’autre caractéristique restant constante.
L’unité d’un poids est celle de la cible par unité de sa caractéristique : milliers par m², par minute.
Défi
MoyenUn traiteur établit des devis pour de nouveaux événements à partir de 40 événements passés dans events.csv : guests, courses, months_ahead (combien de temps à l’avance la réservation a été faite) et cost en dollars. Le code de départ lit les données d’un nouvel événement dans new_event.
- Ajustez une
LinearRegressiondu coût en fonction desfeatures. - Pour chaque caractéristique, affichez ce qu’une unité supplémentaire ajoute ou retranche (2 décimales).
- Affichez le devis pour le nouvel événement (2 décimales).
Pour un autre traiteur :
Each extra guest adds 41.5 dollars
Each extra course adds 198.25 dollars
Each extra month booked ahead takes off 22.8 dollars
Quote: 4312.6 dollarsEssayez vous-même
import numpy as np
import pandas as pd
from sklearn.linear_model import LinearRegression
# Une ligne par événement passé : nombre d'invités, nombre de plats, nombre de mois de réservation à l'avance, coût en dollars
events = pd.read_csv("events.csv")
features = ["guests", "courses", "months_ahead"]
units = ["guest", "course", "month booked ahead"]
# Le nouvel événement, sous forme de tableau à une ligne
guests = int(input())
courses = int(input())
months = int(input())
new_event = pd.DataFrame({"guests": [guests], "courses": [courses], "months_ahead": [months]})
# Écrivez votre code ci-dessous
Cette leçon comprend un petit quiz. Commencez la leçon pour y répondre et suivre votre progression.
Toutes les leçons de Apprentissage supervisé
1Votre premier modèle
Apprendre à partir d’exemplesJeux d’entraînement et de testAjuster et prédireÉvaluer un modèleRécapitulatif : trieur de graines4Régression logistique
Prédictions oui ou nonLe seuil de décisionLes poids comme indicesPlusieurs classesRécapitulatif : filtre anti-spam2Plus proches voisins
Comment k-NN prend ses décisionsChoisir kFrontières de décisionMettre les voisins à l’échelleRécapitulatif : voisins et vin5Évaluer les classificateurs
La matrice de confusionPrécision et rappelLe score F1Classes déséquilibréesCourbes ROCRécapitulatif : test de dépistage8Validation croisée
Validation K-foldComparer les modèles équitablementRecherche par grilleRécapitulatif : réparations de skateboard11Projet : espèces de manchots
À la rencontre des manchotsPréparer les donnéesChoisir un modèleOptimiser le modèle gagnantDéployer le modèle3Régression linéaire
Prédire des nombresPlusieurs caractéristiquesMesurer les erreursGraphiques des résidusRécapitulatif : locations de vélos6Arbres de décision
Les arbres posent des questionsLire un arbreProfondeur de l’arbreImportance des caractéristiquesRécapitulatif : décisions de prêtEntraînez-vous par vous-même : Compilateur Python en ligne