Fiches pratiques · Data, BI & données de référence · Python pour l'analyse de données

Prévision et optimisation en Python

Logiciel

Bibliothèques de prévision (statsmodels, Prophet) et d'optimisation (PuLP, OR-Tools).

Principe

statsmodels propose les lissages exponentiels et ARIMA ; Prophet et les modèles d'apprentissage gèrent les séries complexes ; scikit-learn le machine learning ; PuLP et OR-Tools l'optimisation linéaire et les tournées. On peut ainsi prototyper rapidement avant d'investir dans un outil.

Comprendre pas à pas

1. La situation

Un planificateur veut tester plusieurs méthodes de prévision sur ses 500 articles principaux, ce que son tableur ne permet pas. Question : comment prévoir et comparer des méthodes en Python ?

2. Les bibliothèques courantes

BibliothèqueUsage
statsmodelslissage exponentiel (Holt-Winters), ARIMA
statsforecastméthodes statistiques rapides sur de nombreuses séries (ETS, ARIMA, Croston)
scikit-learn, LightGBMapprentissage automatique avec variables explicatives
pandaspréparation des séries

3. L'idée

Python permet d'appliquer automatiquement plusieurs méthodes à des centaines de séries et de les comparer sur une période de test (backtesting). Le principe : on cache les derniers mois, on prévoit avec chaque méthode, on mesure l'erreur, et on retient la meilleure méthode par article ou par segment.

Pour chaque article : apprentissage sur les mois 1 à 24, test sur les mois 25 à 30, erreur WMAPE par méthode

4. L'étude

Préparation. Historique mensuel nettoyé de 500 articles (pandas).

Méthodes. Moyenne mobile, lissage simple, Holt-Winters, Croston pour les articles intermittents.

Comparaison. WMAPE sur 6 mois de test : Holt-Winters gagne sur 60 % des articles saisonniers ; Croston sur les intermittents.

Résultat. Erreur globale de 31 % à 24 % en choisissant la méthode par segment. Le simulateur ci-dessous permet de tester une méthode sur vos propres données.

5. À vous de jouer : testez une méthode

Testez le lissage exponentiel sur l'exemple ou sur vos propres données (bouton « Essayer avec mes données »).

6. Ce qu'il faut retenir

  • Appliquer plusieurs méthodes à de nombreuses séries automatiquement.
  • Comparer sur une période de test cachée (backtesting).
  • Retenir la meilleure méthode par segment.

Mise en œuvre

Acteurs
Analystes
Durée
—
Livrables
Usage maîtrisé, gains mesurés
  1. Préparer les sériesNettoyage, fréquence.
  2. Tester plusieurs modèlesLissages, ARIMA, machine learning.
  3. Comparer sur une période de testAvec les mêmes indicateurs.
  4. Industrialiser ou passer à un outilSelon les résultats.

Exemple d'application

Prototype de prévision sur 500 articles avec statsmodels : comparaison de 4 méthodes sur 12 mois de test, qui sert de base au cahier des charges de l'APS.

Points de vigilance

  • Prototype mis en production sans maintenance