Se connecter Contactez-nous

Deep Learning pour la prévision

La modélisation prédictive chez Lokad s’appuie désormais sur la programmation différentiable plutôt que sur le deep learning. La programmation différentiable est une descendante du deep learning, mieux adaptée aux défis de la supply chain. En particulier, elle se prête mieux au whiteboxing que le deep learning.

De la prévision probabiliste au deep learning

Illustration du deep learning plongeant sous la surface des motifs de demande

Environ 18 mois avant cette cinquième génération, Lokad introduisait sa quatrième génération de technologie de prévision, la première capable de produire de véritables prévisions probabilistes. C’était essentiel, car les coûts supply chain se concentrent sur les extrêmes statistiques, lorsque la demande s’écarte fortement de ce qui était attendu. Les prévisions journalières, hebdomadaires ou mensuelles classiques se concentrent sur des moyennes ou des médianes et passent largement à côté de ces extrêmes. Elles génèrent donc souvent des résultats financiers décevants.

La cinquième génération n’a pas abandonné ces fondations. Au contraire, elle a repris la prévision probabiliste et s’est appuyée sur l’expérience acquise avec la génération précédente. Sa conception reposait sur une famille relativement récente de machine learning, le deep learning. En supply chain, une meilleure précision de prévision se traduit directement par un meilleur service, une exécution plus rapide et moins de risques sur les stocks.

En partie par hasard, le deep learning s’est révélé fortement aligné, par construction, avec la prévision probabiliste. Cette orientation ne venait pas du monde de la supply chain, mais l’adéquation est remarquable. Les méthodes de deep learning privilégient des points de vue probabilistes et bayésiens, avec des métriques comme l’entropie croisée qui produisent les gradients élevés nécessaires à la descente de gradient stochastique, l’ossature algorithmique qui a rendu le deep learning moderne praticable.

Dans le cas des supply chains, les fondements mathématiques du deep learning se trouvent être remarquablement alignés avec les besoins de l’entreprise.

Au-delà du battage médiatique autour de l’intelligence artificielle

L’intelligence artificielle, propulsée en pratique par le deep learning, est devenue le mot à la mode de 2017. Les promesses étaient ambitieuses, stimulantes et souvent vagues. Du point de vue de Lokad, la plupart des offres d’IA pour l’entreprise n’étaient pas à la hauteur des attentes. Très peu d’entreprises pouvaient réunir une équipe de deep learning de premier plan et les financements associés pour traiter un problème supply chain à partir de zéro.

Avec cette version, Lokad a rendu une technologie de prévision de niveau IA accessible à toute entreprise raisonnablement numérisée. Le système reposait toujours sur les données historiques de supply chain, qui devaient être rendues disponibles à Lokad, mais il ne demandait aucune expertise en deep learning côté client. Contrairement à de nombreuses offres d’IA d’entreprise, Lokad ne dépendait pas d’une ingénierie manuelle des variables. Pour les clients déjà utilisateurs de Lokad, le passage de l’ancien moteur probabiliste au deep learning était pensé pour être transparent.

Lokad faisait ainsi partie des premiers éditeurs à fournir une technologie de prévision de niveau IA clé en main, capable de fonctionner aussi bien pour un petit acteur du ecommerce que pour un grand réseau supply chain avec des milliers de sites et des millions de SKU.

L’ère du calcul sur GPU

Processeurs graphiques accelerant de vastes calculs de prevision Le deep learning est resté de niche jusqu'au moment où ses fondations logicielles ont été retravaillées pour exploiter les GPU, ou graphic processing units. Les GPU diffèrent fortement des CPU, ou central processing units, qui alimentent encore l'essentiel des logiciels. Historiquement, les jeux vidéo faisaient partie des rares usages grand public à s'appuyer fortement à la fois sur CPU et GPU. Avec ce moteur de prévision de cinquième génération, Lokad a aussi revu son infrastructure de bas niveau afin que la plateforme puisse exploiter les deux types de processeurs. Lokad a commencé à utiliser des machines Azure équipées de GPU. Grâce à cette puissance de calcul massive, les prévisions sont devenues non seulement plus précises, mais aussi sensiblement plus rapides. Sur des jeux de données significatifs, une grille de GPU permettait généralement d'obtenir des résultats trois à six fois plus vite.

Sur des jeux de données très petits, ce moteur de cinquième génération pouvait au contraire être un peu plus lent et demander quelques minutes supplémentaires, ce qui restait sans conséquence pratique.

Lancements de produits et promotions

Le moteur de cinquième génération a apporté des progrès substantiels sur certaines des situations de prévision les plus difficiles, en particulier les lancements de produits et les promotions. Du point de vue de Lokad, les lancements de produits, bien que difficiles, restaient un peu plus simples que les promotions. La différence vient surtout de la qualité des données: les données promotionnelles sont en général plus bruitées et moins fiables que les données de lancement, du moins tant que les bons processus qualité ne sont pas en place.

Pour les marques de mode, le deep learning était particulièrement prometteur, car les lancements dominent les ventes et les variantes de couleur et de taille gonflent fortement le nombre de SKU à prévoir.

FAQ prévisions

Quels modèles de prévision utilisez-vous ?

Notre moteur de prévision deep reposait sur un modèle unique construit selon les principes du deep learning. Contrairement aux modèles statistiques classiques, il comptait des dizaines de millions de paramètres entraînables, soit environ 1 000 fois plus que notre modèle non deep le plus complexe de l’époque. Le deep learning surpassait nettement les approches plus anciennes comme les random forests ou les gradient-boosted trees. Ces méthodes faisaient déjà mieux que les classiques des séries temporelles, tels que Box-Jenkins, ARIMA, Holt-Winters ou lissage exponentiel.

Apprenez-vous de vos erreurs de prévision ?

Oui. Le processus d’entraînement statistique qui produit le modèle de deep learning exploite l’ensemble des données historiques disponibles chez Lokad. Cet historique est exploité à travers le backtesting. Plus l’historique disponible est riche, plus le modèle a d’occasions d’apprendre de ses propres erreurs.

Votre moteur gère-t-il la saisonnalité, les tendances et les effets jour de semaine ?

Oui. Le moteur gère les cyclicités courantes ainsi que les quasi-cyclicités, dont l’importance métier est souvent sous-estimée. Le modèle deep learning utilise une approche multi-séries temporelles pour capturer les cyclicités observées sur des produits liés tout en adaptant la prévision à chaque article. Deux produits peuvent partager la même saisonnalité tout en présentant des profils différents selon les jours de la semaine, et le modèle peut saisir ces différences. Le deep learning aide également à prendre en compte la variabilité de la saisonnalité elle-même, par exemple lorsqu’une saison commence plus tôt ou plus tard selon la météo.

De quelles données avez-vous besoin ?

Au minimum, le moteur a besoin d’un historique quotidien de la demande. Un historique des commandes désagrégé est encore préférable. En pratique, plus l’historique est long, meilleurs sont les résultats. Avec moins de deux ans d’historique, il devient difficile de détecter la saisonnalité ; trois ans, c’est bien, et cinq ans, c’est excellent. Pour prévoir les délais, le moteur a en général besoin des bons de commande avec les dates de commande et de livraison. Les attributs produit ou SKU affinent aussi fortement les prévisions. Les niveaux de stock sont également utiles, car ils permettent à Lokad de produire une première analyse des stocks.

Pouvez-vous prévoir ma feuille Excel ?

En règle générale, si toutes vos données tiennent dans une seule feuille Excel, il y a peu de chances que Lokad, ou qui que ce soit, puisse faire grand-chose d’utile. Les données de tableur sont souvent agrégées par semaine ou par mois, ce qui fait perdre trop de signal. Elles contiennent aussi rarement les catégories et hiérarchies nécessaires pour comprendre finement le comportement produit. Le moteur de Lokad tire parti de toute la richesse des données disponibles, et un minuscule échantillon produit rarement des résultats significatifs.

Qu’en est-il des ruptures et des promotions ?

Les ruptures de stock comme les promotions introduisent un biais dans les ventes historiques. Puisque l’objectif est de prévoir la demande et non les ventes, ce biais doit être traité explicitement. Une approche fréquente, mais défectueuse, consiste à réécrire l’historique en comblant les creux et en écrasant les pics. Nous évitons cela, car cela revient à réinjecter des prévisions dans le moteur de prévision, avec un fort risque de surapprentissage. À la place, Lokad prend en charge des indicateurs natifs pour signaler les moments où la demande a été censurée ou gonflée.

Prévoyez-vous les nouveaux produits ?

Oui. Pour prévoir les nouveaux produits, le moteur a besoin des dates de lancement des anciens produits comparables ainsi que de leur demande historique au moment du lancement. Les catégories produit et les hiérarchies sont également utiles. Le moteur identifie les produits plus anciens comparables aux nouveaux. Comme aucune demande n’a encore été observée pour les nouveaux articles, les premières prévisions reposent entièrement sur les attributs associés à ces articles.

Utilisez-vous des données externes pour affiner les prévisions ?

Oui, lorsque ces données sont disponibles et fiables. Par exemple, Lokad peut exploiter des données de prix concurrents collectées par des tiers spécialisés, ainsi que des données de trafic web. En pratique, le principal goulot d’étranglement n’est pas le moteur de prévision lui-même, mais l’effort nécessaire pour construire et maintenir un pipeline de données de haute qualité autour de ces sources externes.

Ask Lokad