Optimiser la gestion de ses entrepôts avec la prévision de ventes

arnold zephir
Prevision.io
7 min readAug 6, 2020

--

Avec les techniques d’IA et de Machine Learning modernes, il devient possible de bâtir des modèles de prévision des ventes.

Ceux-ci permettent de connaître le nombre de produits à commander ainsi que le nombre de colis à livrer. Par conséquent, il devient possible d’optimiser l’espace requis au sein d’un entrepôt et d’optimiser la gestion des transporteurs d’un lieu A à un lieu B. Cette connaissance entraîne une meilleure réactivité et rentabilité.

Nous vous proposons ici un tutoriel pour mettre en application le cas d’usage suivant : optimiser les emplacements réservés dans les entrepôts avec la prévision des ventes.

Cadrage du projet de Data Science

La première étape dans un projet de data science est de poser la problématique. Il est important de savoir très précisément ce que l’on souhaite prédire,la fréquence de prédiction et la portée de la prédiction.

Dans notre cas, nous souhaitons prédire toutes les semaines (Fréquence de la prédiction) le nombre de ventes par jour (cible) pour le mois d’avril (portée de la prédiction) en fonction des ventes par jour des mois de février et Mars (passé).

Note : Plus la prédiction a une portée lointaine moins elle sera précise.

Un fois que la problématique est claire, il faut se demander :”De quelles données disposons-nous”. Ce sont en effet les données qui alimentent les algorithmes de machine learning qui vont par la suite faire la précision du modèle

Posez-vous les questions suivantes par exemple :

Qu’est ce qui impacte mes ventes ? (météo ? événement particulier ? vacances scolaires ? etc)

Y’a t-il de la concurrence à proximité ?

Pour intégrer ses données au future modèle, nous allons connecter à Prevision.io des sources de données externes en plus des données relatives à votre activité.

Le projet de machine learning automatisé

Le machine learning pouvant se traduire par Machine qui apprend, demande un grand nombre de données pour apprendre. En effet, la machine va corréler des données entre elles afin de trouver des patterns communs.

Dans notre situation, il s’agit de faire la même chose, c’est-à dire de faire apprendre au modèle comment prédire les ventes grâce à un historique de vente de 2 ans. Chez Prevision.io nous demandons à nos clients de fournir un maximum de données, car plus il y a de données, plus le modèle devient précis.

Intégrer son data set dans Prevision.io

Notre plateforme de machine learning automatisée est accessible à tous. Il est possible de connecter la plateforme aux outils métiers directement, de connecter des bases de données open sources externes mais aussi tout simplement, de déposer une fichier .CSV directement.

De plus, la plateforme va reconnaître le type de données qui lui sont envoyées : son, image, texte, données brutes.

Dans le cadre de ce tutoriel, le data set (jeu de donnée en français) utilisé a été adapté à la problématique et anonymisé. Il se présente sous la forme d’un fichier .CSV constitué de 8 colonnes et environ 8 000 lignes. Il représente 2 ans de données (janvier 2013-décembre 2015) pour 10 magasins de vente de produit de sport.

Les différentes colonnes du DataSet

Store: nous avons attribué un identifiant unique à chaque magasin concerné. Ici, il y aurait 10 magasins concernés et numéroté de 1 à 10.

DayOfWeek: nous avons numéroté les jours de la semaine, du lundi au vendredi, de 1 à 7.

Date : la colonne de date, qui va servir d’index temporelle de notre modèle (ici au format DD/MM/YYYY. (Notre plateforme accepte plusieurs formats de dates)

Sales: représente le volume de ventes réalisées par le magasin sur un jour donné

Customers: représente le nombre de clients. Attention, cette information est énormément corrélée avec les “Sales” donc il faut choisir l’une ou l’autre en cible et enlevé la colonne non retenue.

Open: O ou 1, indique si le magasin est ouvert ou non. O pour fermer, 1 pour ouvert.

Promo: O ou 1, indique si le magasin a une promotion ou non. O pour sans promo interne, 1 pour journée avec promotion

StateHoliday: 0 ou 1, indique si un jour de congé national . O pour n’est pas un jour de congé national, 1 pour une journée de congé national.

SchoolHoliday: Indique un jour de vacance scolaires

Choisir le projet

Une fois les données connectées à la plateforme, vous pouvez démarrer un “nouveau usecase”

La première chose ) faire est de choisir le type de projet. Dans le cas présent, il s’agit d’une Regression Timeserie

Le Time serie s’utilise à condition d’avoir un data set temporel ce qui est notre cas, dûe à la variable « Date ». De plus la time serie est la série la plus adéquate pour déterminer une tendance temporelle à long terme et nous souhaitons prédire jusqu’à 30 jours.

Note : connaître les différentes tendances saisonnières est important pour ajuster correctement les approvisionnements en marchandise, le besoin en emplacement réservé en entrepôts, les livraisons puis la force commerciale nécessaire.

Paramétrer son projet de Data Science

l’écran de paramétrage de l’entrainement de Séries temporelles

Paramétrer votre projet vous prendra en tout et pour tout 2 minutes de vérification. En effet, notre plateforme récupère l’ensemble des informations dont il a besoin pour pré remplir les cases correspondantes.

Sélectionner la colonne temporelle

En sélectionnant la colonne “date”, la plateforme calcule automatiquement l’écart compris entre chaque échantillon (entre chaque ligne de la colonne “Date” du dataset). Ici, il s’agissait d’un data set de 2 ans, chaque ligne représente une journée de vente pour un magasin. La plateforme nous indique donc « 1 j ».

Sélectionner les Colonnes

Chaque colonne du data set est reconnue et reprise par la plateforme. Il suffira de sélectionner ou désélectionner les colonnes que vous souhaitez prendre en compte ou non. De plus, pour certaines colonnes, vous pouvez indiquer qu’elles sont connus ‘a priori’, dans le cas où ce sont des données dont vous connaissez déjà la valeur future (par exemple, les vacances scolaires ). Si il y a des variables dont vous ne connaissez pas encore les valeurs futures (par exemple les pannes de transport en commun) , la colonne “ a priori” ne doit pas être choisie.

Attention, dans notre exemple,la colonne” magasin” est sélectionnée “groupe”, pour indiquer que l’ensemble des données (lignes) correspondant au magasin N°1 ou N°2 etc doit rester groupé.

La jauge temporelle

À partir des données de J-227 à j-28 (un trimestre de données d’apprentissage), on veut pouvoir prédire les ventes du prochain mois (j+28)

Suite à ce paramétrage, cliquez sur « lancer l’entraînement ».

3-clic pour obtenir le meilleur modèle prédictif

La première partie du projet vient de se finir, l’entraînement est lancé à la recherche du meilleur modèle prédictif de prévision des ventes de J+30. Pendant tout le processus de modélisation, le dataset va être optimisé à l’aide de techniques de Feature Engineering enfin pour construire un modèle prédictif.

Le tableau de bord indique la progression dans le travail, le nombre de modèles entraînés, la performance de chacun, le temps espéré etc. L’utilisateur sera averti dès que l’entrainement sera terminé

La phase numéro un est terminée, il est désormais possible de d’intégrer un nouvel historique au sein de la plateforme pour réaliser des prédictions.

Prédire le mois prochain

Après 3-clic et 1½ journée d’entrainement environ, vous obtenez le meilleur modèle prédictif. La plateforme de machine learning a appris une tendance dans la prévision des ventes sur 2 ans d’historique. Prevision.io pourra prédire les ventes à +30 jours et ainsi répondre à notre problématique de départ.
L’automatisation de de la prédiction est là ! Sélectionnez l’onglet “Predictions” et intégrez le fichier contenant les données des mois de février et mars 2018 afin d’avoir une prévision de ventes précise pour le mois d’avril 2018.

Une fois la prédiction réalisée, il ne vous reste plus qu’à télécharger le fichier générée.

Vous obtenez ainsi l’ensemble des informations nécessaires pour ajuster l’ensemble de votre chaîne d’approvisionnement : commandes & quantité produit, espace de stockage en entrepôts, contrat avec la société de transport, force commerciale sur le lieu de vente etc.

Humain VS Machine

L’homme doit s’incliner face au travail des logiciels intelligents. Le croisement de nombreuses données fournies par l’historique des ventes des 2 dernières années sur 10 magasins permet au Machine Learning de réaliser une prévision optimale de toutes les actions de l’entreprise au sein de votre entrepôt : chaîne logistique, réalisation des commandes et gestion des stocks.

De plus, certaines variables (colonnes) peuvent être sans intérêt ou, à contrario essentielles. L’humain doit veiller à présenter à l’outil des données fiables. La puissance de calcul qu’offre le Machine Learning est sans pareil ! Et la plateforme automatisée de Prevision.io répond aux besoins des entreprises qui souhaitent obtenir une prévision des ventes optimales.

--

--