Combien de vélos louera-t-on demain ?
Faire une prédiction, c'est estimer une valeur qu'on ne connaît pas encore à partir de ce qu'on a déjà vu. La droite de meilleur ajustement est la façon la plus simple d'en faire une.
Le loueur sait qu'il fera 20 degrés demain. Combien de vélos doit-il sortir ? Aujourd'hui, tu tires une droite dans les données et tu vérifies qu'elle ne se trompe pas trop.
À la fin de cette leçon
Remarque
Je peux faire une prédiction avec une droite et la tester sur des données gardées de côté.
Mots clés
| Mot | Ce que ça veut dire | Exemple |
|---|---|---|
| Prédiction | une valeur estimée avant de la connaître | |
| Droite de meilleur ajustement | la droite qui passe au plus près de tous les points | |
| Pente | de combien la droite monte quand on avance de un | 11,1 |
| Erreur | l'écart entre la valeur prédite et la valeur réelle | |
| Jeu de test | des données gardées de côté pour vérifier la prédiction |
Les cellules que les étudiants remplissent restent vides dans cet aperçu.
Qu'est-ce que la droite de meilleur ajustement ?
Sur un nuage de points, on trace la droite qui passe au plus près de tous les points. Elle s'écrit avec deux nombres.
La pente dit de combien la valeur monte pour un degré de plus. L'ordonnée à l'origine est la valeur prédite à 0 degré. Pour prédire, on part de l'ordonnée et on ajoute la pente fois la température.
Avant de commencer
Remarque
Appuie sur Start the lab dans la barre en haut et attends que JupyterLab soit prêt. Chaque bouton Run tape docker exec jupyter puis un petit programme de Python qui lit les locations et la météo.
Ajuste les locations à la température
docker exec jupyter python3 steps/line.pyAffichée ici, non exécutée. Créez un compte gratuit pour appuyer sur Exécuter et la saisir dans le terminal de votre propre labo.
Exemple : lire la sortie du Run
| Ligne affichée | Valeur | Ce qu'elle veut dire |
|---|---|---|
| slope | 11,1 | Un degré de plus, environ 11 locations de plus |
| intercept | 149,4 | À 0 degré, environ 149 locations |
| at 10 and 20 degrees | 261 et 372 | 149,4 + 11,1 × 10 et 149,4 + 11,1 × 20 |
Les cellules que les étudiants remplissent restent vides dans cet aperçu.
Comment mesurer l'erreur d'une prédiction ?
Une prédiction se trompe presque toujours un peu. L'erreur d'un jour est l'écart entre la valeur prédite et la valeur réelle, sans tenir compte du signe.
L'erreur moyenne est la moyenne de ces écarts sur tous les jours. Plus elle est petite, plus la droite colle aux données.
Exemple : trois jours et leur erreur
| Jour | Prédit | Réel | Erreur |
|---|---|---|---|
| 1 | 261 | 240 | 21 |
| 2 | 261 | 290 | 29 |
| 3 | 372 | 372 | 0 |
| Moyenne | 16,7 |
Les cellules que les étudiants remplissent restent vides dans cet aperçu.
Pourquoi garder des données de côté ?
Si tu ajustes la droite sur tous les jours puis la juges sur ces mêmes jours, tu te flattes : elle les a déjà vus. Ce qui compte, c'est un jour qu'elle ne connaît pas.
On coupe donc les données. On apprend sur environ trois quarts, le jeu d'entraînement. On vérifie sur le reste, le jeu de test.
Apprends sur des jours et teste sur d'autres
docker exec jupyter python3 steps/split.pyAffichée ici, non exécutée. Créez un compte gratuit pour appuyer sur Exécuter et la saisir dans le terminal de votre propre labo.
Une erreur fréquente
Attention
Beaucoup pensent qu'une droite qui colle aux données d'entraînement prédira aussi bien l'avenir. Non : le Run donne 0,608 sur les jours appris et 0,554 sur les jours gardés de côté. Un score sur de nouveaux jours est presque toujours un peu plus bas.
Pour aller plus loin : ajouter la pluie
Ouvre JupyterLab depuis la page du lab, puis ouvre start.ipynb et lis la dernière cellule de code. Elle ajuste les locations à la température et à la pluie.
La pente de la pluie est négative, autour de -8. Que veut dire ce signe pour le loueur ? Prédirais-tu mieux avec deux colonnes qu'avec une ?