Prédire des nombres
Fait partie de la section Apprentissage supervisé du Journey Machine Learning de Coddy. Leçon 11 sur 58.
Les modèles de ce chapitre prédisent des nombres. À la fin, un graphique des erreurs d’un modèle révélera ce qu’il n’a pas remarqué :
Commence avec une droite que tu connais. LinearRegression l’apprend à partir d’un tableau X, avec une ligne par échantillon et une colonne par caractéristique :
from sklearn.linear_model import LinearRegression
area = np.array([60, 75, 90, 110, 130, 150]) # maisons, en m²
price = np.array([215, 248, 290, 335, 385, 428]) # milliers de dollars
X = area.reshape(-1, 1) # 6 lignes, 1 colonne
model = LinearRegression()
model.fit(X, price)
print(np.round(model.coef_, 2), np.round(model.intercept_, 2))
print(np.round(np.polyfit(area, price, 1), 2))Cela affiche la même ligne deux fois :
[2.39] 71.59
[ 2.39 71.59]coef_ contient une pente par caractéristique : chaque m² supplémentaire ajoute 2.39 milliers de dollars. intercept_ correspond au point de départ de la droite, à 0 m². Ensuite, model.predict([[100]]) estime le prix de 100 m² à environ 310.85 milliers.
Défi
MoyenUne imprimerie ne publiait jamais ses tarifs, mais tu disposes de 10 travaux précédents : pages et price en dollars. Le programme lit le nombre de pages d’un nouveau travail.
- Ajuste une
LinearRegressionau nombre de pages, sous la forme d’un tableau à une colonne. - Affiche le prix par page (3 décimales) et les frais de mise en service, l’ordonnée à l’origine (2 décimales).
- Affiche le prix prédit du nouveau travail (2 décimales).
Pour une autre imprimerie et 120 :
Per page: 0.095 dollars
Setup fee: 4.1 dollars
120 pages: 15.5 dollarsEssayez vous-même
import numpy as np
from sklearn.linear_model import LinearRegression
# 10 travaux d'impression précédents : nombre de pages imprimées et prix payé, en dollars
pages = np.array([40, 75, 120, 160, 210, 260, 300, 380, 450, 520])
price = np.array([7.38, 12.6, 17.65, 20.69, 26.63, 32.18, 37.76, 46.4, 55.17, 60.89])
new_pages = int(input())
# É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