0% ont trouvé ce document utile (0 vote)
242 vues36 pages

Rapport

Ce projet de fin de module vise à développer un modèle de prédiction des prix de voitures d'occasion sur le marché marocain en utilisant des techniques de machine learning. Les étapes incluent la collecte et la préparation des données, l'analyse exploratoire, la modélisation avec divers algorithmes, et le déploiement d'une interface utilisateur pour des estimations en temps réel. L'objectif est de fournir une solution précise et automatisée pour aider acheteurs et vendeurs à établir des prix justes et transparents.

Transféré par

oussama.kaich-etu
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
242 vues36 pages

Rapport

Ce projet de fin de module vise à développer un modèle de prédiction des prix de voitures d'occasion sur le marché marocain en utilisant des techniques de machine learning. Les étapes incluent la collecte et la préparation des données, l'analyse exploratoire, la modélisation avec divers algorithmes, et le déploiement d'une interface utilisateur pour des estimations en temps réel. L'objectif est de fournir une solution précise et automatisée pour aider acheteurs et vendeurs à établir des prix justes et transparents.

Transféré par

oussama.kaich-etu
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd

Mémoire de Projet de fin de Module

Département: Informatique et Mathématique

Filière: Intelligence artificielle

Module: Machine learning

Développement d’un modèle de prédiction des prix


de voitures pour le marché marocain

Réalisé par : Sous la direction de :


[Link] Douaa [Link] kaich
[Link] Abderrahman Nom du professeur du module :
Pr. Sanaa EL FILALI

Année Universitaire 2024-2025


Niveau : S6 – Licence d’Excellence en Intelligence Artificielle
Remerciements

Nous tenons à exprimer notre profonde gratitude à toutes les personnes qui ont
contribué de près ou de loin à la réalisation de ce projet.

Avant tout, nous remercions chaleureusement notre encadrant pour son


accompagnement précieux, ses conseils éclairés et sa disponibilité constante tout
au long de ce mini-projet. Son expertise et ses encouragements nous ont permis
d'avancer avec confiance à chaque étape.

Nos remerciements vont également à notre établissement, pour l’environnement


d’apprentissage stimulant et les ressources mises à notre disposition, ainsi qu’aux
enseignants qui nous ont transmis leur savoir avec passion et rigueur.

Un merci tout particulier à nos familles et amis, pour leur soutien moral, leur
patience et leur compréhension durant cette période de travail intensif.

Enfin, ce projet n’aurait pu voir le jour sans l’esprit de collaboration, de


persévérance et de curiosité que nous avons cultivé en tant qu’équipe. Il représente
le fruit de plusieurs semaines de recherche, de réflexion et d’expérimentation, et
nous sommes fiers du chemin parcouru.

Bousnitra Douaa Chmarkh Abderrahman


Table des matières
Remerciements ...................................................................................................................................2
Introduction ........................................................................................................................................6
Objectifs du projet ..............................................................................................................................8
I. Collecter et préparer un dataset représentatif du marché marocain : ................................8
II. Explorer les données pour identifier les facteurs influents: .............................................8
III. Tester plusieurs modèles prédictifs : .................................................................................8
IV. Valider la performance du modèle choisi : .......................................................................8
V. Créer une interface utilisateur pour une estimation en temps réel :....................................8
Diagramme de Gantt ...........................................................................................................................9
Background théorique ............................................................................................................... 10
Background théorique ............................................................................................................ 11
I. Introduction ......................................................................................................................... 11
II. Généralités sur l’Intelligence Artificielle et le Machine Learning .............................. 11
III. Lien entre notre projet et l’IA/ML .............................................................................. 11
IV. Conclusion du chapitre ................................................................................................ 12
Méthodologie et résultats .................................................................................................................. 13
Méthodologie et résultats .................................................................................................................. 14
Etape 1 : Collecte et Préparation des Données .......................................................................... 14
1. Récupération des données ............................................................................................................ 14
2. Structure du dataset ..................................................................................................................... 15
3. Gestion des Valeurs Manquantes .................................................................................................. 15
4. Nettoyage et Transformation des Données ................................................................................... 17
a. Kilométrage : ............................................................................................................................. 17
b. Puissance Fiscale : ..................................................................................................................... 17
c. Prix : .......................................................................................................................................... 17
5. les valeurs aberrantes ................................................................................................................... 18
6. Encodage des variables catégorielles............................................................................................. 18
Etape 2 : Analyse Exploratoire des Données (EDA) .................................................................. 20
Etape 3 : Étude des Tendances du Marché ................................................................................ 28
I. Marques les plus populaires ............................................................................................ 28
II. Types de véhicules les plus demandés ......................................................................... 28
III. Évolution des motorisations ........................................................................................ 28
IV. Kilométrage et année de mise en circulation............................................................... 28
Etape 4 : Modélisation et Entraînement .................................................................................... 29
I. Choix du modèle final ...................................................................................................... 30
Etape 5 : Validation et Optimisation .......................................................................................... 31
Etape 6 : Déploiement et Interface Utilisateur ........................................................................... 33
Conclusion Générale ......................................................................................................................... 35
Table des figures
Figure 1: Analyse de la Distribution du Prix des Voitures .................................................................. 20
Figure 2:Analyse de la Répartition du Kilométrage des Voitures ........................................................ 21
Figure 3:Analyse de la Distribution des Marques de Véhicules .......................................................... 22
Figure 4: Distribution de la Puissance des Véhicules ........................................................................ 23
Figure 5:Répartition des Types de Carburant des Véhicules............................................................... 24
Figure 6:Répartition des Types de Transmission des Véhicules .......................................................... 25
Figure 7:Répartition des Annonces par Marque avec le Nombre d'Annonces .................................... 26
Figure 8:matrice de corrélation ......................................................................................................... 27
Introduction
Dans un contexte où le secteur automobile connaît une évolution rapide et soutenue au
Maroc, notamment avec l’essor des technologies et la transformation des modes de
consommation, la question de l’estimation des prix de vente des véhicules d’occasion
devient un enjeu central. Cette problématique concerne à la fois les acheteurs,
soucieux de ne pas surpayer un véhicule, et les vendeurs, désireux de proposer un prix
cohérent avec la valeur réelle de leur bien. Actuellement, la fixation des prix repose
souvent sur des critères subjectifs et non uniformisés, qu’il s’agisse des plateformes de
vente en ligne, des concessionnaires ou des particuliers. Ce manque d’objectivité peut
entraîner d’importantes disparités entre le prix affiché et la véritable valeur marchande
du véhicule, créant ainsi de la confusion et parfois un déséquilibre dans les
transactions.

C’est dans ce contexte que s’inscrit notre mini-projet, qui a pour ambition de
concevoir un modèle prédictif basé sur le Machine Learning, permettant d’estimer de
manière précise et automatisée le prix des voitures d’occasion sur le marché marocain.
Pour ce faire, nous avons collecté et exploité un vaste ensemble de données issues
d’annonces réelles, comprenant des informations telles que la marque, le modèle,
l’année de mise en circulation, le kilométrage, le type de carburant, la transmission, la
région de vente et d’autres caractéristiques techniques du véhicule. L’objectif est de
faire ressortir, à travers l’analyse statistique et l’apprentissage automatique, les
variables les plus déterminantes dans la formation du prix d’un véhicule.

Le projet s’est articulé autour de plusieurs étapes méthodologiques : une phase


d’analyse exploratoire approfondie des données pour comprendre leur structure et
détecter les corrélations pertinentes, suivie d’un prétraitement rigoureux, comprenant
la gestion des valeurs manquantes, la normalisation des données numériques et
l’encodage des variables catégorielles. Nous avons ensuite expérimenté plusieurs
modèles de régression, tels que la régression linéaire, les k-nearest neighbors, le
random forest et le gradient boosting, afin d’identifier celui offrant le meilleur
compromis entre précision, stabilité et capacité de généralisation.

Le résultat de ce travail est un modèle prédictif fiable et performant, intégré à une


interface utilisateur intuitive, qui permet à tout utilisateur de saisir les caractéristiques
d’un véhicule d’occasion et d’obtenir une estimation instantanée de sa valeur. Cette
solution vise non seulement à faciliter les décisions d’achat et de vente, mais aussi à
instaurer plus de transparence et d’équité sur le marché. Elle représente une
application concrète et pertinente de l’intelligence artificielle dans un domaine en
pleine croissance, répondant à un besoin réel et actuel au sein de la société marocaine.
Objectifs du projet
Objectifs du projet
I. Collecter et préparer un dataset représentatif du
marché marocain :
 Rassembler des données sur les véhicules (marque, modèle, année, carburant,
kilométrage, etc.).
 Nettoyer et préparer les données en supprimant les valeurs manquantes et en
transformant les variables pour les rendre adaptées à l’analyse.

II. Explorer les données pour identifier les facteurs


influents:
 Analyser les relations entre les variables et le prix des véhicules à l’aide de techniques
d’analyse exploratoire (visualisations et statistiques).
 Identifier les caractéristiques les plus influentes pour prédire le prix, comme le
kilométrage, l’année, la marque, etc.

III. Tester plusieurs modèles prédictifs :


Essayer plusieurs modèles de machine learning (régression linéaire, forêts aléatoires, SVM,
etc.) pour prédire le prix des véhicules.

Comparer les performances des modèles et sélectionner celui qui donne les meilleurs
résultats.

IV. Valider la performance du modèle choisi :


Tester le modèle sélectionné sur un jeu de données de test pour évaluer sa précision.

Effectuer des ajustements si nécessaire pour améliorer la performance du modèle.

V. Créer une interface utilisateur pour une estimation en


temps réel :
Développer une interface simple permettant aux utilisateurs de saisir des informations sur un
véhicule et obtenir une estimation de son prix.

Intégrer cette interface à une API en temps réel pour offrir une expérience interactive et
fluide.
Diagramme de Gantt
Background théorique
Background théorique

I. Introduction
Ce chapitre présente les fondements théoriques nécessaires à la compréhension de notre
projet. Nous y exposons les concepts clés de l’intelligence artificielle (IA) et du Machine
Learning (ML), puis nous expliquons en quoi ces technologies sont directement liées à notre
objectif de prédire les prix des voitures d’occasion sur le marché marocain.

II. Généralités sur l’Intelligence Artificielle et le Machine


Learning
L’intelligence artificielle désigne l’ensemble des techniques permettant à des machines de
simuler une forme d’intelligence humaine, telles que la reconnaissance d’images, le traitement
du langage naturel ou encore la prise de décision autonome. Parmi les sous-domaines de l’IA,
le Machine Learning occupe une place centrale.

Le Machine Learning (apprentissage automatique) est une approche basée sur l’analyse de
données. Plutôt que de programmer explicitement une tâche, un algorithme apprend à partir
de données d’entraînement. Il ajuste ses paramètres internes pour effectuer des prédictions ou
des classifications avec le moins d’erreurs possible.

Le Machine Learning peut être divisé en plusieurs catégories :

 Apprentissage supervisé : les données d'entraînement contiennent les entrées et les


sorties attendues (comme dans notre cas, où chaque voiture a un prix connu).
 Apprentissage non supervisé : les données ne comportent pas de sortie, l’algorithme
cherche des structures cachées (comme les clusters).
 Apprentissage par renforcement : un agent apprend à maximiser une récompense en
interagissant avec un environnement.

III. Lien entre notre projet et l’IA/ML


Notre projet repose sur une approche de Machine Learning supervisé, où l’objectif est de
prédire une variable continue : le prix d’un véhicule.

Les données collectées (kilométrage, année, carburant, puissance, etc.) servent de variables
explicatives, et le modèle de ML apprend à établir une relation entre ces caractéristiques
et le prix réel observé.

Nous avons testé plusieurs algorithmes, dont :

 la régression linéaire, pour établir une première base simple ;


 les arbres de décision, capables de gérer des relations non linéaires ;
 le Random Forest et le Gradient Boosting, qui combinent plusieurs modèles pour
améliorer les performances.

Ces techniques sont typiques du domaine du Machine Learning appliqué aux problèmes de
régression.

L’utilisation de bibliothèques comme scikit-learn, pandas, matplotlib et Streamlit s’inscrit


pleinement dans une démarche moderne d’intelligence artificielle orientée données.

IV. Conclusion du chapitre


Ce chapitre a permis d’exposer les bases théoriques sur lesquelles s’appuie notre projet. Le
Machine Learning, et plus particulièrement l’apprentissage supervisé, fournit un cadre
puissant pour modéliser la relation entre les caractéristiques d’un véhicule et son prix. La suite
du rapport détaillera comment ces concepts ont été mis en œuvre concrètement pour
construire, évaluer et déployer notre solution de prédiction.
Méthodologie et résultats
Méthodologie et résultats

Etape 1 : Collecte et Préparation des Données


1. Récupération des données

Dans le cadre de ce projet, nous avons procédé à la collecte de données en utilisant la


technique du scraping web, qui consiste à extraire automatiquement des informations
depuis un site web. Pour cela, nous avons ciblé le site [Link], une plateforme
marocaine très populaire pour la vente de véhicules d’occasion.

Nous avons utilisé les bibliothèques requests et BeautifulSoup de Python afin


d’extraire les annonces de voitures. Le script a parcouru plusieurs pages (de 500 à 502)
pour extraire les liens des annonces individuelles.

Pour chaque lien, nous avons accédé à la page de l’annonce afin d’extraire les
caractéristiques suivantes :

 Marque
 Modèle
 Kilométrage
 Année
 Carburant
 Puissance fiscale
 Prix
 Type de véhicule
 Équipements (ABS, Airbag, Climatisation, Jantes aluminium, Radar de recul)

Les données extraites ont ensuite été stockées dans un DataFrame à l’aide de la
bibliothèque pandas, avant d’être sauvegardées dans un fichier CSV sous le nom
cars_avito.csv.
2. Structure du dataset

Le dataset obtenu présente une ligne par annonce, et chaque colonne correspond à une
caractéristique du véhicule. Voici les colonnes retenues dans notre fichier :

 Marque (brand)
 Modèle (model)
 Kilométrage (kilometrage)
 Année (annee)
 Carburant (carburant)
 Puissance fiscale (puissance_fiscale)
 Type de véhicule (type_voiture)
 Prix (prix)
 Équipements : champs booléens (valeurs 0 ou 1) pour indiquer la présence de :
o ABS
o Airbag
o Climatisation
o Jantes aluminium
o Radar de recul

Ces informations nous permettent de disposer d’un jeu de données riche, utile à la fois
pour l’exploration statistique et la modélisation.

3. Gestion des Valeurs Manquantes

Lors de l’analyse du dataset, plusieurs colonnes présentaient des valeurs manquantes.


Chaque cas a été traité selon son importance :

 Colonne Kilométrage : certaines annonces ne mentionnaient pas le


kilométrage exact. Étant donné l’importance de cette variable pour l’estimation
du prix, les valeurs manquantes ont été remplacées par la médiane à l’aide de la
commande

df['Kilometrage'].fillna(df['Kilometrage'].median(), inplace=True).

 Colonne Prix : certaines valeurs étaient manquantes à cause d’annonces


incomplètes ou de prix masqués. Comme cette colonne représente la variable
cible, les lignes concernées ont été supprimées avec

df = df[df['Prix'].notna()].

 Colonne Puissance : afin de conserver un maximum de données, les valeurs


manquantes ont été remplacées par la moyenne grâce à

df['Puisance'].fillna(df['Puisance'].mean(), inplace=True).
Avant :

Après :
4. Nettoyage et Transformation des Données

Certaines colonnes contenaient des valeurs sous forme de texte brut ou contenant des
unités. Il a donc été nécessaire de les nettoyer avant de pouvoir les utiliser pour la
modélisation.

a. Kilométrage :

 Suppression des espaces.


 En cas d’intervalle (ex. "70 000-90 000"), la moyenne a été calculée.

b. Puissance Fiscale :

 Suppression du suffixe "CV" et conversion en entier (Int).

c. Prix :

 Suppression du mot "DH", des espaces et des caractères spéciaux (ex. \u202f).
 Conversion en entier.

Toutes les colonnes ont été converties dans un format cohérent et


sauvegardées dans un fichier .csv.
5. les valeurs aberrantes

Lors de l’analyse des colonnes numériques comme Prix et Kilométrage, nous avons identifié
la présence de valeurs extrêmes qui déviaient fortement de la majorité des données. Par
exemple, une voiture de 10 ans affichée à 500 000 MAD, ou un kilométrage supérieur à 1 000
000 km, sont considérés comme des aberrations statistiques.

Solution : Nous avons utilisé la méthode des percentiles (1er et 99e percentiles) pour détecter
et filtrer ces valeurs extrêmes. Ensuite, nous avons appliqué une règle inspirée de l’intervalle
interquartile (IQR) pour ne garder que les données cohérentes.

Code appliqué pour la variable Prix :

Q1 = df['Prix'].quantile(0.01)

Q3 = df['Prix'].quantile(0.99)

IQR = Q3 - Q1

df = df[(df['Prix'] > (Q1 - 1.5 * IQR)) & (df['Prix'] < (Q3 + 1.5 * IQR))]

6. Encodage des variables catégorielles

Certaines colonnes du dataset, comme Marque, Model, ou Carburant, sont de type catégoriel
(textuel). Or, les algorithmes de machine learning ne peuvent traiter que des variables
numériques. Il était donc nécessaire de convertir ces colonnes en une forme exploitable par les
modèles.
Solution : Nous avons appliqué l’encodage one-hot (encodage binaire), qui permet de
transformer chaque modalité d’une variable en une nouvelle colonne contenant 0 ou 1. Cela
évite d’introduire un ordre arbitraire entre les catégories.

df = pd.get_dummies(df, columns=['Marque', 'Model', 'Carburant'], drop_first=True)

7. Normalisation des données numériques

Les colonnes comme Kilométrage et Prix présentent des échelles de valeurs très différentes.
Par exemple, le prix peut atteindre des centaines de milliers de dirhams, alors que le
kilométrage se compte aussi en centaines de milliers. Ce déséquilibre d’échelle peut fortement
influencer le comportement de certains algorithmes, notamment ceux basés sur les distances
comme les k-NN ou les SVM.

Solution : Nous avons appliqué la normalisation Min-Max, qui ramène chaque valeur dans
une échelle comprise entre 0 et 1. Cela permet de garantir que toutes les variables ont la
même importance relative dans l’entraînement du modèle.
Etape 2 : Analyse Exploratoire des Données (EDA)

L'analyse exploratoire des données (EDA) est cruciale pour comprendre la répartition des données et
identifier les relations entre les différentes caractéristiques des véhicules et leur prix. Cette étape
permet également de détecter d'éventuelles anomalies, erreurs dans les données, et guide la sélection
des modèles prédictifs. Elle peut être réalisée avant ou après la préparation des données, mais elle est
essentielle pour une modélisation efficace.

Figure 1: Analyse de la Distribution du Prix des Voitures

La majorité des véhicules se situe dans une gamme de 50 000 à 200 000 dirhams, avec un pic
notable autour de 150 000 dirhams, ce qui reflète la fourchette de prix la plus recherchée sur
le marché marocain.

On observe une forte concentration des données dans ces prix moyens, correspondant aux
modèles les plus accessibles et les plus populaires.

En revanche, les véhicules dont le prix dépasse 300 000 dirhams sont nettement moins
nombreux, ce qui laisse penser qu'ils appartiennent principalement à une niche de voitures de
luxe ou haut de gamme.
De manière générale, le marché marocain est donc dominé par des véhicules abordables,
tandis que les prix élevés représentent une part marginale, mais stratégique, du marché,
souvent associée à des modèles exclusifs.

Figure 2:Analyse de la Répartition du Kilométrage des Voitures

L'analyse du kilométrage des véhicules révèle plusieurs tendances intéressantes. Tout


d'abord, la majorité des voitures disponibles affichent un kilométrage autour de 250
000 km, ce qui constitue la plage la plus courante sur le marché. En revanche, les
véhicules ayant parcouru plus de 300 000 km sont relativement rares, traduisant une
usure importante et une demande plus faible. Enfin, il apparaît que les voitures ayant
un kilométrage compris entre 100 000 km et 250 000 km représentent le meilleur
compromis entre prix et état général, ce qui en fait une période optimale pour la
revente.
Figure 3:Analyse de la Distribution des Marques de Véhicules

L'analyse du graphique montre que Volkswagen reste l'une des marques les plus
représentées, indiquant sa popularité sur le marché automobile marocain. Toutefois,
Dacia, très prisée pour son excellent rapport qualité-prix, figure également parmi les
marques dominantes, aux côtés de Renault, Peugeot et Citroën. En revanche, des
marques comme SEAT et certains constructeurs moins présents affichent une part de
marché plus limitée. Ce graphique reflète bien la dynamique du marché, mettant en
avant la forte demande pour des véhicules à la fois abordables et fiables.
Figure 4: Distribution de la Puissance des Véhicules

L'analyse de la distribution de la puissance des véhicules révèle que la majorité des voitures
possèdent une puissance comprise entre 5 et 10 unités, formant ainsi le cœur de la
distribution. Cette concentration importante souligne une préférence du marché pour des
véhicules équilibrant performance et consommation énergétique.

À l'inverse, les véhicules ayant une puissance supérieure à 20 unités sont rares dans le dataset.
Ces modèles plus puissants correspondent souvent à des voitures haut de gamme ou sportives,
destinées à une clientèle plus spécifique.

De manière générale, cette tendance montre que la majorité des consommateurs marocains
privilégient des voitures adaptées à un usage quotidien, tandis qu’une minorité recherche des
performances plus élevées.
Figure 5:Répartition des Types de Carburant des Véhicules

L'analyse des types de carburant révèle que le diesel prédomine largement, avec environ 20
000 véhicules recensés. Cette domination confirme la préférence des consommateurs
marocains pour le diesel, apprécié pour sa rentabilité et son efficacité sur de longues
distances.

En deuxième position, l’essence compte environ 5 000 véhicules, tandis que les motorisations
hybrides et électriques restent encore minoritaires, avec respectivement 1 000 et 500
véhicules.

De manière générale, le marché marocain reste fortement axé sur le diesel. Toutefois, la
présence croissante des motorisations alternatives suggère une évolution progressive des
habitudes de consommation, offrant des opportunités futures pour les technologies plus
respectueuses de l’environnement.
Figure 6:Répartition des Types de Transmission des Véhicules

L'analyse du type de transmission montre que la transmission manuelle est clairement


dominante, avec environ 15 000 véhicules. Cette prédominance reflète les préférences locales
pour ce type de boîte, souvent perçue comme plus économique et plus robuste.

La transmission automatique, bien que moins répandue avec environ 8 000 véhicules, révèle
une adoption croissante, notamment parmi les voitures haut de gamme ou les modèles récents.

Globalement, la forte différence entre manuel et automatique confirme que la transmission


manuelle reste largement majoritaire. Toutefois, l'évolution des attentes des consommateurs et
la modernisation du parc automobile pourraient favoriser une progression continue des boîtes
automatiques dans les années à venir.
Figure 7:Répartition des Annonces par Marque avec le Nombre d'Annonces

L'analyse des marques révèle que Volkswagen arrive en tête avec 2844 annonces, suivie de
Renault (2669 annonces) et Peugeot (2078 annonces). Ces marques dominent le marché des
véhicules d’occasion, traduisant leur forte popularité et accessibilité auprès des
consommateurs.

En revanche, des marques plus spécifiques ou haut de gamme comme Lincoln et Iveco
n'apparaissent qu'avec 1 seule annonce, ce qui témoigne d'une faible disponibilité ou d'une
demande limitée sur le marché.

Globalement, les marques les plus présentes sont celles qui bénéficient d'une demande
soutenue et d'une large base de clientèle. La présence non négligeable de marques premium
comme BMW et Mercedes indique aussi un segment haut de gamme actif dans l'occasion,
répondant aux besoins d'un public plus exigeant.
Figure 8:matrice de corrélation

L'analyse de la matrice de corrélation met en évidence plusieurs relations importantes.

D'abord, le Prix présente des corrélations positives fortes avec l'Année (0.29) ainsi qu’avec
des équipements comme la Climatisation (0.28) et le Radar de recul (0.20), ce qui confirme
que les voitures récentes et bien équipées sont généralement plus chères.

À l'inverse, des corrélations négatives significatives apparaissent : le Prix est négativement


corrélé avec le Type (-0.32), suggérant que certains types de véhicules, notamment les
utilitaires, tendent à avoir des prix plus bas. De même, le Kilométrage est négativement
corrélé avec l’Année (-0.28), traduisant le fait que les voitures anciennes affichent souvent un
kilométrage élevé.

Concernant les équipements, des corrélations très fortes (environ 0.88) existent entre des
éléments comme Airbag, Climatisation et Jantes en aluminium, indiquant que les véhicules
haut de gamme regroupent souvent plusieurs équipements de confort.

Enfin, les variables catégorielles telles que Marque ou Modèle montrent peu de corrélations
fortes avec les autres caractéristiques numériques, ce qui signifie qu'elles influencent moins
directement les relations quantitatives observées.

En résumé, cette matrice de corrélation fournit des insights essentiels pour identifier les
facteurs les plus déterminants dans la prédiction du prix des véhicules.
Etape 3 : Étude des Tendances du Marché
Dans le cadre de notre étude, nous avons analysé les tendances actuelles du marché des voitures
d’occasion au Maroc, en nous appuyant sur le dataset AvitoData. Cette analyse nous a permis
d’identifier plusieurs éléments clés influençant le prix des véhicules et les comportements des
consommateurs.

I. Marques les plus populaires


Les données recueillies révèlent une nette préférence des Marocains pour certaines marques.
En 2022, les marques les plus recherchées étaient Renault, Dacia et Volkswagen, représentant
respectivement 11%, 9,4% et 9,4% des intentions d'achat sur [Link]. Cette tendance s'est
maintenue en 2023, avec Citroën et Ford faisant leur entrée dans le top 3 des marques les plus
sollicitées, aux côtés de Volkswagen.

II. Types de véhicules les plus demandés


L’analyse des types de véhicules montre une préférence pour les berlines, suivies des SUV
compacts et des fourgons. En 2023, les berlines représentaient 25% des intentions d'achat, les
C-SUV et fourgons 20% chacun, et les B-SUV 18%.

III. Évolution des motorisations


Une tendance marquante est l'augmentation de la demande pour les véhicules à motorisation
alternative. Entre 2021 et 2022, les demandes de voitures hybrides ont augmenté de 89%,
tandis que celles des véhicules électriques ont progressé de 21%. En revanche, les demandes
pour les motorisations diesel et essence ont diminué respectivement de 15% et 34%.

IV. Kilométrage et année de mise en circulation


La majorité des véhicules listés sur Avito ont été mis en circulation entre 2005 et 2013,
affichant un kilométrage moyen de 110.000 km. Cette information est cruciale pour évaluer
l'usure et la valeur d'un véhicule d'occasion.

1. Prix moyen des véhicules


Le prix moyen des véhicules d’occasion mis en vente sur Avito avoisine les 110.000 dirhams.
Cependant, des modèles haut de gamme, tels que la Lamborghini Huracán, ont été proposés à des prix
dépassant les 1.500.000 dirhams, illustrant la diversité du marché.
Etape 4 : Modélisation et Entraînement
Dans cette étape cruciale du projet, nous avons cherché à prédire le prix des véhicules à partir
des caractéristiques disponibles dans notre dataset extrait d’Avito Maroc. Pour cela, nous avons
exploré plusieurs modèles d’apprentissage automatique afin d’identifier celui qui offre les
meilleures performances de prédiction.

ous avons commencé par diviser nos données en deux ensembles : un ensemble
d'entraînement (80%) et un ensemble de test (20%). Ensuite, Nous avons testé quatre
algorithmes différents :

 Régression Linéaire : un modèle de base qui permet d’avoir un point de comparaison


simple
 Arbre de Décision : un modèle non-linéaire simple à interpréter
 Gradient Boosting : un modèle plus avancé basé sur des ensembles d’arbres
 Random Forest (Forêt Aléatoire) : un modèle robuste basé sur l’agrégation de
plusieurs arbres
Pour comparer les modèles, nous avons utilisé les métriques suivantes :

 MAE (Mean Absolute Error) : moyenne des écarts absolus entre les prix prédits et réels
 MSE (Mean Squared Error) : moyenne des carrés des erreurs
 RMSE (Root Mean Squared Error) : racine carrée du MSE, plus sensible aux grandes
erreurs
 R² (Score de détermination) : indique la proportion de la variance des prix expliquée par
le modèle (plus proche de 1 = meilleur)

I. Choix du modèle final


Le Random Forest a donné les meilleurs résultats avec :

La plus faible erreur absolue moyenne (MAE ≈ 21 388 DH)

Le meilleur score de détermination R² = 0.815, ce qui signifie qu’il explique plus de 81% de
la variance des prix

Grâce à sa précision et sa robustesse, le modèle Random Forest a été retenu comme modèle
final pour la prédiction du prix des véhicules.
Etape 5 : Validation (Métriques de Performance)
Pour évaluer la qualité de notre modèle de prédiction, nous avons utilisé les métriques
d’évaluation suivantes :

1. MAE – Mean Absolute Error

Elle mesure l’erreur moyenne absolue entre les prix prédits et les prix réels.
Plus la MAE est faible, plus les prédictions sont proches de la réalité.

2. RMSE – Root Mean Squared Error

C’est la racine carrée de la moyenne des carrés des erreurs.


Elle pénalise davantage les grandes erreurs que la MAE.
Plus le RMSE est bas, plus le modèle est précis.

3. R² – Coefficient de Détermination

Il indique la proportion de la variance des prix expliquée par le modèle.


R² varie entre 0 et 1 :

 Un R² proche de 1 signifie que le modèle explique bien les variations du prix.


 Un R² proche de 0 signifie que le modèle est peu informatif.
Visualisation des prédictions du modèle

Dans cette étape, on a utilisé les prédictions du modèle qui a été entraîné sur les données
transformées en log. Pour interpréter les résultats dans leur échelle réelle, on a appliqué la
fonction exponentielle inverse sur les prédictions ainsi que sur les valeurs réelles, afin de
revenir aux prix originaux.

On a ensuite visualisé la performance du modèle à travers deux graphiques :

 Le premier graphique montre la comparaison entre les prix réels et les prix prédits sur
l'ensemble d'entraînement.
 Le deuxième graphique montre la même comparaison, mais sur l'ensemble de test.

Chaque graphique utilise un nuage de points (scatter plot) où chaque point représente une
observation. La ligne rouge en pointillé indique la position où les prix prédits seraient égaux
aux prix réels (c’est-à-dire une prédiction parfaite).

L’objectif de ces graphiques est de vérifier visuellement la qualité des prédictions :

 Si les points sont proches de la ligne rouge, cela signifie que le modèle prédit bien les
prix.
 Une dispersion importante autour de cette ligne indiquerait des erreurs plus grandes.

Cette visualisation est un outil important pour détecter les tendances, biais, ou erreurs
systématiques du modèle.
Etape 6 : Déploiement et Interface Utilisateur
Une fois le modèle final sélectionné et optimisé, nous avons procédé à son déploiement afin de
le rendre accessible à travers une application conviviale. Pour cela, nous avons utilisé Flask afin
de créer une API REST qui prend en entrée les caractéristiques d’un véhicule (marque,
kilométrage, carburant, etc.) et retourne une estimation du prix basée sur le modèle de machine
learning entraîné.

En parallèle, nous avons développé une interface utilisateur interactive avec Streamlit,
permettant une utilisation simple et rapide même pour des utilisateurs non techniques. Cette
interface comprend :

Des champs de saisie pour toutes les caractéristiques du véhicule ;

Un bouton de prédiction ;

Une sortie affichant directement l’estimation du prix en dirhams marocains.


Conclusion Générale
Ce mini-projet nous a permis d'explorer de manière concrète les différentes étapes de
conception d’un modèle de Machine Learning appliqué à un problème réel : la prédiction des
prix des voitures sur le marché marocain. À travers un pipeline structuré – de la collecte des
données jusqu’au déploiement d’une interface fonctionnelle – nous avons pu mobiliser des
compétences en nettoyage de données, analyse exploratoire, modélisation, évaluation et
déploiement.

La préparation rigoureuse des données a constitué une étape fondamentale pour assurer la
qualité des résultats. L’encodage des variables catégorielles, le traitement des données
manquantes, la normalisation, ainsi que l’harmonisation des types ont permis d'obtenir un
dataset propre, prêt pour l’entraînement. Les analyses exploratoires ont mis en évidence les
facteurs déterminants du prix des véhicules, notamment la marque, l’année, le kilométrage ou
le type de carburant.

Nous avons ensuite expérimenté différents algorithmes de prédiction, évalués selon des
métriques standards comme le MAE, le RMSE et le R². Cette phase nous a permis de
sélectionner le modèle le plus performant, en tenant compte à la fois de la précision et de la
généralisation.

Enfin, la mise en place d’une API et d’une interface utilisateur via Streamlit a permis de
concrétiser notre modèle sous forme d’un outil simple, accessible, et directement exploitable
par tout utilisateur souhaitant estimer le prix d’un véhicule.

Ce projet nous a offert une expérience pratique complète, renforçant notre compréhension des
concepts fondamentaux du Machine Learning, tout en nous sensibilisant aux défis techniques
liés au traitement des données du monde réel.
Références
 Sites utilisés pour la collecte de données :

 [Link] – Plateforme marocaine de petites annonces pour véhicules d’occasion.

Environnements de développement utilisés :

 Google Colab – Pour l’entraînement et les tests du modèle de Machine Learning.


[Link]
 Visual Studio Code (VS Code) – Pour le développement de l’interface et l’API.
[Link]

Bibliothèque
Bibliothèques Python utilisées :

 pandas – Pour la manipulation et le nettoyage des données.


[Link]
 numpy – Pour les opérations mathématiques.
[Link]
 matplotlib et seaborn – Pour la visualisation des données.
[Link] et [Link]
 scikit-learn – Pour l’entraînement, la normalisation et l’évaluation des modèles.
[Link]
 BeautifulSoup et Selenium – Pour le web scraping.
o [Link]
o [Link]

 Déploiement et interface utilisateur :

 Streamlit – Création d’interfaces interactives.


[Link]
 Flask – Création d’une API pour le modèle.
[Link]

Vous aimerez peut-être aussi