0% ont trouvé ce document utile (0 vote)
17 vues40 pages

Classification du Zellige Marocain par Deep Learning

Ce rapport présente un projet de recherche sur la classification du Zellige marocain à l'aide de techniques d'apprentissage profond. L'objectif est de développer un système automatisé capable d'analyser et de reconnaître les motifs de Zellige, en utilisant des modèles tels que MobileNetV2, ResNet18 et un CNN standard. Le projet vise à préserver et valoriser le patrimoine culturel marocain tout en facilitant l'accès à la documentation et à la restauration des motifs.

Transféré par

kimbra12398
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)
17 vues40 pages

Classification du Zellige Marocain par Deep Learning

Ce rapport présente un projet de recherche sur la classification du Zellige marocain à l'aide de techniques d'apprentissage profond. L'objectif est de développer un système automatisé capable d'analyser et de reconnaître les motifs de Zellige, en utilisant des modèles tels que MobileNetV2, ResNet18 et un CNN standard. Le projet vise à préserver et valoriser le patrimoine culturel marocain tout en facilitant l'accès à la documentation et à la restauration des motifs.

Transféré par

kimbra12398
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

UNIVERSITE Mohammed Premier

FACULTE DES SCIENCES OUJDA

DEPARTEMENT D’INFORMATIQUE

Rapport du projet

MASTER DE RECHERCHE
Intelligence Artificielle et Science de Données

Sous le thème :

Classification du Zellige Marocain en utilisant


l’apprentissage profond

Réalisé Par :
Sous la supervision :
Mr. Zarhmir Brahim
Pr. Serrhini Mohammed
Mme. Dkhissi Chaymae

Année universitaire 2024-2025


Remerciements

Tout d’abord, nous remercions ALLAH le Tout-Puissant de nous avoir accordé la santé, la

volonté et l’opportunité d’accomplir ce projet.

Nous exprimons notre gratitude envers Pr. Serrhini Mohammed, notre encadrant à la

Faculté des Sciences d’Oujda, pour son encadrement attentif, ses conseils avisés, sa générosité

et sa disponibilité tout au long de ce semestre. Nous lui sommes reconnaissants pour le temps

précieux qu’elle nous a accordé et pour avoir partagé avec nous son expertise et ses connaissances.

Un grand merci également à tous les enseignants qui ont contribué à notre formation et à

notre apprentissage tout au long de notre parcours universitaire. Leur dévouement et leur passion

pour l’enseignement ont été une source d’inspiration pour nous.

Brahim ZARHMIR
Chaymae DKHISSI

3
Table des matières

Remerciements 3

Introduction générale 1

1 Classification du Zellige Marocain 2

1.1 Introduction : . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2

1.2 Contexte et importance de classification du Zellige Ma-


rocain : . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2

1.3 Problématique : . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3

1.4 Objectif du projet : . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3

1.5 Conclusion : . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3

2 Collection des données 5

2.1 Introduction : . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5

2.2 Collecte des données : . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5

2.3 Exploration des données : . . . . . . . . . . . . . . . . . . . . . . . . . 6

2.3.1 Visualisation des données : . . . . . . . . . . . . . . . . . . . . 6

2.3.2 Les petits motifs du Zellige : . . . . . . . . . . . . . . . . . . 11

2.4 Prétraitement des données : . . . . . . . . . . . . . . . . . . . . . . . 13

2.5 Organisation des données : . . . . . . . . . . . . . . . . . . . . . . . . 16

2.6 Conclusion : . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17

3 L’apprentissage profond pour la classification du différents types de zellige 18

3.1 Introduction : . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18

3.2 Méthodologies : . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18

3.2.1 MobileNetV2 : . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18

3.2.2 CNN Standard : . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21

4
Chapitre 0 – TABLE DES MATIÈRES

3.2.3 ResNet-18 : . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24

3.3 Résultats : . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27

3.3.1 MobileNetV2 : . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27

3.3.2 CNN Standard : . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29

3.3.3 ResNet-18 : . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30

3.4 Démonstration : . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31

3.4.1 MobileNetV2 : . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31

3.4.2 CNN Standard : . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32

3.4.3 ResNet-18 : . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33

3.5 Conclusion : . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33

Conclusion générale 34

Références 35

5
Introduction générale

Le zellige marocain, patrimoine culturel riche en histoire et en complexité, représente une

forme d’artisanat unique, combinant précision géométrique et créativité artistique. Dans le cadre

de ce projet, nous avons exploré l’utilisation de techniques d’apprentissage profond pour clas-

sifier différents types de zellige en fonction de leurs motifs et de leurs caractéristiques distinctives.

L’objectif principal est de développer un système automatisé, capable d’analyser et de re-

connaître les motifs de zellige à partir d’images, en s’appuyant sur des modèles d’apprentissage

profond tels que MobileNetV2, un réseau CNN standard, et ResNet18. Ces architectures, lar-

gement reconnues pour leur efficacité dans les tâches de classification d’images, permettent de

relever le défi de différencier des motifs complexes, souvent subtils dans leurs variations.

Pour mener à bien ce projet, nous avons suivi une méthodologie rigoureuse incluant la col-

lecte et le prétraitement des données, l’entraînement de modèles robustes, et l’évaluation de

leurs performances. Les résultats obtenus mettent en lumière le potentiel des techniques mo-

dernes d’intelligence artificielle pour valoriser et préserver l’héritage culturel, tout en offrant des

applications pratiques pour des domaines tels que la restauration architecturale et la promotion

touristique.

En somme, ce projet allie tradition et technologie, démontrant comment les avancées en

apprentissage automatique peuvent contribuer à la préservation et à la valorisation de trésors

culturels comme le zellige marocain.

1
Chapitre 1

Classification du Zellige Marocain

1.1 Introduction :

Le Zellige marocain, un art traditionnel de motifs géométriques en céramique, nécessite

une classification complexe qui peut être automatisée grâce à l’apprentissage profond. Ce projet

explore l’utilisation de trois approches de deep learning pour la classification de ces motifs :

MobileNetV2, un modèle léger et efficace,ResNet18, et un CNN standard plus traditionnel. L’ob-

jectif est de comparer les performances des deux modèles pour améliorer l’automatisation de

cette tâche et contribuer à la préservation numérique du patrimoine marocain.

1.2 Contexte et importance de classification du Zellige Maro-

cain :

Le Zellige marocain est un art ancestral profondément enraciné dans l’histoire et la culture

du Maroc. Composé de carreaux de céramique émaillée, ce type de mosaïque orne de nombreux

bâtiments traditionnels à travers le pays, notamment dans les palais, les mosquées et les fon-

taines. Les motifs géométriques du Zellige sont non seulement un symbole de l’identité culturelle

marocaine, mais aussi une expression de l’habileté artisanale et de la diversité régionale. Cepen-

dant, la classification manuelle des motifs et styles du Zellige est une tâche complexe et nécessite

une expertise spécialisée.

La classification automatisée des motifs de Zellige est d’une importance capitale pour plu-

2
Chapitre 1 – Classification du Zellige Marocain

sieurs raisons. Premièrement, elle permet de préserver et de promouvoir cet héritage culturel

en facilitant la numérisation et la conservation des motifs. Deuxièmement, elle contribue à l’in-

dexation des motifs du Zellige, rendant ainsi leur étude et leur documentation plus accessibles

aux chercheurs, artisans et passionnés du patrimoine marocain. Enfin, l’automatisation de cette

tâche pourrait également aider à l’identification et à la restauration de motifs spécifiques, offrant

ainsi un soutien aux artisans dans la réplique de designs anciens.

Ainsi, en développant une méthode de classification efficace basée sur l’intelligence artificielle,

ce projet vise à offrir un outil de préservation et de valorisation du Zellige marocain, tout en

contribuant à la modernisation des techniques de conservation du patrimoine culturel.

1.3 Problématique :

Comment concevoir et mettre en œuvre une méthode basée sur l’apprentissage profond pour

classifier automatiquement les motifs du Zellige marocain, tout en garantissant précision, effica-

cité et respect de la diversité des styles, afin de préserver ce patrimoine culturel, d’en faciliter la

documentation, et d’assister les artisans dans leur processus de création ?

1.4 Objectif du projet :

Développer et comparer trois approches d’apprentissage profond – MobileNetV2, ResNet18

et un CNN standard – pour classifier les motifs du Zellige marocain. Ce projet vise à :

1. Fournir un outil automatisé pour la classification et la numérisation des motifs.

2. Promouvoir la préservation numérique du patrimoine culturel marocain.

3. Évaluer les performances des modèles afin d’identifier la solution la plus adaptée pour cette

tâche.

1.5 Conclusion :

Ce chapitre a mis en lumière l’importance culturelle et historique du Zellige marocain, ainsi

que les défis liés à sa classification manuelle. En abordant la problématique de l’automatisation

de cette classification, il a été souligné que l’utilisation de l’apprentissage profond représente une

3
Chapitre 1 – Classification du Zellige Marocain

solution prometteuse pour surmonter ces défis. Les objectifs du projet, centrés sur le développe-

ment et la comparaison de modèles tels que MobileNetV2, ResNet18 et un CNN standard, visent

à offrir des outils efficaces pour la préservation numérique et l’étude de ce patrimoine.

4
Chapitre 2

Collection des données

2.1 Introduction :

La qualité des données joue un rôle essentiel dans la réussite des projets d’apprentissage

profond, car les modèles dépendent fortement des informations qu’ils reçoivent pour effectuer

des prédictions précises. Ce chapitre aborde le processus de collecte des données nécessaires pour

classifier les motifs du Zellige marocain, ainsi que les étapes de prétraitement visant à garantir

que ces données soient adaptées à l’entraînement des modèles. L’objectif est de transformer les

données brutes en un format exploitable, tout en maximisant leur pertinence et leur qualité pour

améliorer les performances des modèles utilisés dans ce projet.

2.2 Collecte des données :

Pour constituer notre base de données, nous avons mené une collaboration avec plusieurs

acteurs du secteur. Nous avons d’abord organisé deux réunions avec le directeur général de la

Direction Régionale de l’Industrie Traditionnelle et avec la Maison de l’Industrie Traditionnelle.

Ces échanges ont permis d’établir des contacts avec le directeur de la Direction Régionale de

l’Industrie Traditionnelle de Fès ainsi que le ministère de l’Industrie, qui nous ont fourni des

images de différentes catégories de Zellige marocain.

Afin de mieux comprendre les spécificités des types de Zellige, nous avons sollicité l’expertise

5
Chapitre 2 – Collection des données

d’un Maalem Hirafi de 63 ans d’expérience, spécialiste de cet art, qui nous a aidés à distinguer

et classer les motifs et styles. Cette collaboration nous a permis d’obtenir des informations pré-

cieuses concernant la classification et l’origine de chaque type de Zellige.

Enfin, pour compléter notre collection et enrichir la diversité des motifs, nous avons également

utilisé des ressources en ligne comme Pinterest et Google Images, où nous avons trouvé des images

supplémentaires de Zellige marocain. Ces données nous ont permis de constituer une base de

données riche et variée, essentielle pour l’entraînement de nos modèles de classification.

2.3 Exploration des données :

Dans le cadre de ce projet, les données collectées pour la classification du Zellige marocain se

composent de huit catégories principales de motifs. Ces catégories représentent différents styles

de Zellige, chacun ayant ses propres caractéristiques géométriques et esthétiques uniques. Les

catégories sont les suivantes :

— Zellige Bejmat

— Zellige Alandaloussi Alfassi Mrabba

— Zellige El Werda

— Zellige Mourek

— Zellige Mkacher

— Zellige Alandaloussi Alfassi Alaakaboutia

— Zellige Alandaloussi Alfassi Mtemen Qtib

— Zellige Alandaloussi Alfassi Sabaini

Chaque catégorie contient 300 images, ce qui donne un total de 2400 images.

En plus de ces catégories principales, les données incluent également les petits motifs qui

constituent ces types, apportant une granularité supplémentaire à l’analyse et à la classification.

Ces petits motifs sont essentiels pour mieux comprendre la structure interne des styles et pour

entraîner les modèles à reconnaître des éléments spécifiques des motifs.

2.3.1 Visualisation des données :

6
Chapitre 2 – Collection des données

1. Zellige Bejmat

Ce type de Zellige, originaire de Fès, se caractérise par des tuiles rectangulaires au style

minimaliste. Largement utilisé dans les patios et les cours traditionnels de la région, il

est composé du motif Mrabba, connu pour sa simplicité et son adaptabilité à divers

environnements décoratifs.

Figure 2.1 – Zellige Bejmat

2. Zellige Alandaloussi Alfassi Mrabba

Conception carrée traditionnelle de l’art andalous, originaire de Fès. Elle se compose

de Mrabba, agencés de manière à créer une illusion visuelle de grands carrés élégants et

harmonieux

Figure 2.2 – Zellige Mrabba

7
Chapitre 2 – Collection des données

3. Zellige ElWarda

Motif floral emblématique de Marrakech, reflétant la grâce et l’élégance des roses. Il se

compose de Zouaqa et Tna’chria, habilement agencés pour concevoir des designs floraux

délicats et raffinés.

Figure 2.3 – Zellige ElWerda

4. Zellige Mourek

Style dynamique de Marrakech, puisant son inspiration dans des motifs naturels tels que

les feuilles et les fleurs. Il se compose de Zouaqa, Mrabba, Oqda, Sebsib et parfois de

Mehara, permettant de créer des compositions variées et empreintes de naturalité.

8
Chapitre 2 – Collection des données

Figure 2.4 – Zellige Mourek

5. Zellige Mkacher

Style distinctif de Rabat, reconnu pour ses découpes nettes et son caractère islamique. Il

se compose de Alkhat Alarabi, apportant une touche traditionnelle et géométrique.

Figure 2.5 – Zellige Mkacher

6. Zellige Alandaloussi Alfassi Alaankaboutia

Zellige complexe originaire de Fès, inspiré des styles andalous. Il se compose de Mehara,

Louza, Thaleth, Mrabba, Nzaq, Seft Thna’achri et Qri’a, créant ainsi un design

sophistiqué et artistique.

9
Chapitre 2 – Collection des données

Figure 2.6 – Zellige Alaankaboutia

7. Zellige Alandaloussi Alfassi Mtemen Qtib

Modèle classique de Fès, alliant des motifs entrelacés et des formes étoilées. Il se compose

de Khatam Tmenia, Seft Tna’chri, Saft, Kamarchounna Bid Dwaïr et Louza,

créant ainsi un design raffiné et sophistiqué.

Figure 2.7 – Zellige Mtemen Qtib

8. Zellige Alandaloussi Alfassi Sabaini

Motif complexe andalous composé de 64 pièces, illustrant la richesse artisanale de Fès. Il se

compose de Takssira, Seft Tna’chri, Yaghnoubi, Mkinsa, Khatem Tmnia, Qandil,

Louza, Kef Amel et Miyal, créant ainsi un design riche et minutieusement détaillé.

10
Chapitre 2 – Collection des données

Figure 2.8 – Zellige Sabaini

2.3.2 Les petits motifs du Zellige :

11
Chapitre 2 – Collection des données

12
Chapitre 2 – Collection des données

2.4 Prétraitement des données :

Le prétraitement des données est une étape cruciale dans le processus d’entraînement des

13
Chapitre 2 – Collection des données

modèles de deep learning, notamment pour la classification des motifs du Zellige marocain. Cette

phase vise à préparer les images de manière optimale afin de garantir une meilleure performance

des modèles. Les étapes suivantes ont été réalisées pour prétraiter les données :

1. Redimensionnement des images : Étant donné que les images collectées proviennent

de différentes sources et peuvent avoir des résolutions variées, nous avons redimensionné

toutes les images à une taille uniforme (par exemple, 224x224 pixels) afin de les rendre

compatibles avec les entrées des réseaux de neurones, notamment MobileNetV2, ResNet18

et les CNN standards.

Figure 2.9 – Avant Redimensionnage des images

Figure 2.10 – Après Redimensionnage des images

14
Chapitre 2 – Collection des données

2. Conversion du BGR à RGB : Les images téléchargées à partir de certaines ressources en

ligne, comme Pinterest ou Google Images, peuvent être dans l’ordre de couleur BGR (Blue,

Green, Red) plutôt qu’RGB (Red, Green, Blue). Nous avons donc converti les images de

BGR à RGB afin de garantir une cohérence dans le traitement des couleurs, en particulier

pour l’entraînement des modèles.

3. Normalisation des pixels : Pour faciliter l’apprentissage et améliorer la convergence des

modèles, les valeurs des pixels des images ont été normalisées. Chaque pixel a été divisé

par 255 afin que les valeurs des pixels soient comprises entre 0 et 1, ce qui aide à stabiliser

l’entraînement des réseaux neuronaux.

4. Augmentation des données : L’augmentation des données a été utilisée pour enrichir

notre dataset et éviter le surapprentissage (overfitting). Cela a impliqué des transformations

telles que des rotations aléatoires, des inversions horizontales, des zooms et des translations.

Ces techniques ont permis de simuler une plus grande diversité de motifs Zellige et d’aug-

menter ainsi la robustesse du modèle.

5. Étiquetage des données : Chaque image a été étiquetée en fonction de sa catégorie

de motif, conformément à la classification établie avec l’aide des experts du domaine. Les

étiquettes ont été ensuite converties en formats numériques (par exemple, des entiers ou

des vecteurs one-hot) pour être utilisées dans l’entraînement des modèles.

6. Equilibrage du jeu de données : Dans le cadre de ce projet, le jeu de données est

équilibré, avec 300 images pour chaque catégorie de motifs du Zellige marocain, totalisant

ainsi 2400 images. Chaque type de Zellige, que ce soit le Zellige Bejmat, le Zellige Alan-

daloussi Alfassi Mrabba, ou l’un des autres types mentionnés, dispose d’un nombre égal

d’exemples. Cette répartition homogène entre les différentes classes garantit que le modèle

d’apprentissage profond n’est pas biaisé par des classes surreprésentées, ce qui permet une

classification plus juste et précise des motifs. Grâce à cet équilibrage, le modèle peut ap-

prendre de manière optimale les caractéristiques spécifiques de chaque type de Zellige sans

être influencé par un déséquilibre des données.

15
Chapitre 2 – Collection des données

Ces étapes de prétraitement ont permis de garantir que les données étaient prêtes pour

l’entraînement des modèles de classification et ont joué un rôle clé dans l’amélioration de la

précision du modèle.

2.5 Organisation des données :

Afin de garantir un apprentissage optimal des modèles, le jeu de données a été divisé en trois

ensembles distincts : l’ensemble d’entraînement, l’ensemble de validation et l’ensemble de test.

La répartition des données est la suivante :

— Ensemble d’entraînement : 80 % des données (1920 images) sont utilisées pour l’entraî-

nement des modèles. Cet ensemble permet aux modèles d’apprendre les caractéristiques

des différents types de Zellige.

— Ensemble de validation : 10 % des données (240 images) sont utilisées pour ajuster

les hyperparamètres et évaluer les performances du modèle pendant l’entraînement. Cet

ensemble aide à éviter le sur-apprentissage en fournissant une évaluation continue de la

généralisation du modèle.

— Ensemble de test : 10 % des données (240 images) sont utilisées pour tester les perfor-

mances finales des modèles après l’entraînement. Ce jeu de données permet d’obtenir une

évaluation objective de l’efficacité du modèle dans des conditions réelles.

Cette répartition assure une bonne couverture des classes tout en garantissant que les modèles

16
Chapitre 2 – Collection des données

peuvent être évalués de manière juste et équilibrée.

2.6 Conclusion :

Dans ce chapitre, nous avons collecté et préparé le jeu de données pour l’apprentissage pro-

fond. Nous avons d’abord structuré les images selon les différentes catégories du Zellige marocain,

puis équilibré le jeu de données avec 300 images par catégorie, pour un total de 2400 images.

Ensuite, les données ont été organisées en trois ensembles : entraînement, validation et test, avec

une répartition de 80 % pour l’entraînement, 10 % pour la validation et 10 % pour le test. Cette

préparation minutieuse est essentielle pour garantir que les modèles d’apprentissage profond se-

ront capables de s’entraîner efficacement et de fournir des performances optimales. Grâce à ces

étapes, nous pouvons nous attendre à des résultats plus précis et fiables lors de l’évaluation des

modèles.

17
Chapitre 3

L’apprentissage profond pour la


classification du différents types de
zellige

3.1 Introduction :

Ce chapitre présente les trois architectures de réseaux de neurones utilisés pour la classifi-

cation des motifs du Zellige marocain : MobileNetV2, un modèle léger adapté aux ressources

limitées, CNN standard, utilisé comme base pour des modèles plus classiques, et ResNet-18,

qui exploite des blocs résiduels pour améliorer la performance en profondeur. Chaque modèle sera

évalué pour déterminer celui qui offre les meilleurs résultats pour cette tâche de classification.

3.2 Méthodologies :

3.2.1 MobileNetV2 :

18
Chapitre 3 – L’apprentissage profond pour la classification du différents types de zellige

[Link] Architecture MobileNetV2 :

1. Convolutions Séparables en Profondeur Les convolutions séparables en profondeur

sont un élément clé de MobileNetV2, permettant de réduire les coûts computationnels.

Elles se divisent en deux étapes :

— Convolution de profondeur (depth-wise convolution) : Utilise un filtre par canal

d’entrée, réduisant ainsi le nombre de paramètres nécessaires.

— Convolution par point (point-wise convolution) : Après avoir obtenu les cartes de

caractéristiques filtrées, cette étape combine les résultats via des noyaux 1x1 pour

créer des nouvelles caractéristiques.

2. Bloc Inversé de Résidus Chaque bloc inversé commence par une expansion des caracté-

ristiques (via une convolution 1x1), suivie d’une convolution de profondeur (3x3) pour un

filtrage spatial, puis d’une réduction dimensionnelle avec une autre convolution 1x1. Une

connexion résiduelle est souvent ajoutée pour favoriser la propagation des gradients.

[Link] Fonction de Perte de MobileNetV2 :

MobileNetV2 est principalement utilisé pour des tâches de classification d’images. La fonction

de perte typique utilisée est la Categorical Cross-Entropy :

19
Chapitre 3 – L’apprentissage profond pour la classification du différents types de zellige

N
X
L=− yi log(ŷi )
i=1

Où :

— L : La valeur de la perte à minimiser.

— N : Le nombre de classes.

— yi : La valeur réelle pour la classe i (1 si correcte, sinon 0).

— ŷi : La probabilité prédite pour la classe i, obtenue via l’activation softmax.

[Link] Optimisation :

1. Descente de Gradient

La mise à jour des paramètres du modèle suit la formule :

θ ← θ − η · ∇θ L

Où :

— θ : Paramètres du modèle.

— η : Taux d’apprentissage.

— ∇θ L : Gradient de la fonction de perte par rapport aux paramètres θ.

2. Optimisation Adam Adam, un optimiseur populaire, ajuste dynamiquement le taux

d’apprentissage pour chaque paramètre. Les mises à jour suivent cette formule :

mt = β1 mt−1 + (1 − β1 )∇θ L

vt = β2 vt−1 + (1 − β2 )(∇θ L)2

mt
θ ←θ−η· √
vt + ϵ

Où :

— mt et vt sont les moyennes mobiles des gradients (premiers et deuxièmes moments).

— β1 et β2 sont des hyperparamètres (souvent β1 = 0.9, β2 = 0.999).

— ϵ est un terme de stabilisation pour éviter la division par zéro.

20
Chapitre 3 – L’apprentissage profond pour la classification du différents types de zellige

[Link] Problème du Vanishing Gradient :

MobileNetV2 utilise plusieurs stratégies pour atténuer le problème du vanishing gradient :

— Connexions résiduelles : Permettent aux gradients de se propager plus facilement à

travers les couches profondes.

— Activation ReLU6 : Limite la sortie des activations entre 0 et 6 pour éviter des activations

trop grandes, stabilisant ainsi les gradients et améliorant l’efficacité numérique.

La formule de ReLU6 est :

ReLU 6(x) = min(max(0, x), 6)

Ces concepts combinés permettent à MobileNetV2 d’atteindre une efficacité élevée tout en

restant léger, ce qui le rend adapté aux applications mobiles et embarquées.

3.2.2 CNN Standard :

[Link] Architecture des Réseaux de Neurones Convolutifs (CNN) :

Les réseaux de neurones convolutifs (CNN) sont largement utilisés pour le traitement d’images,

grâce à leur capacité à extraire des caractéristiques locales et à capturer des informations spa-

tiales. L’architecture des CNN comprend généralement plusieurs types de couches :

1. Couches Convolutives Les couches convolutives sont responsables de l’extraction des

caractéristiques des images. Chaque couche utilise des filtres (ou noyaux) pour effectuer

des convolutions sur les images d’entrée. L’opération de convolution est définie comme suit :

21
Chapitre 3 – L’apprentissage profond pour la classification du différents types de zellige

XX
S(i, j) = (X ∗ W )(i, j) = X(m, n) · W (i − m, j − n)
m n

Où :

— X : L’image d’entrée.

— W : Le filtre de convolution.

— S(i, j) : La sortie de la convolution pour un emplacement donné.

Cette opération permet de créer une carte de caractéristiques qui capture les motifs dans

l’image.

2. Couches de Pooling

Les couches de pooling (max-pooling ou average-pooling) sont utilisées pour réduire la

dimensionnalité des cartes de caractéristiques. Cela permet de diminuer le coût compu-

tationnel et de rendre le modèle plus robuste aux translations et déformations dans les

images.

La formule pour une opération de max-pooling est :

S(i, j) = max (X(i, j), X(i + 1, j), X(i, j + 1), X(i + 1, j + 1))

Où l’on sélectionne la valeur maximale dans une fenêtre 2 × 2 de l’image d’entrée X.

3. Couches Complètement Connectées Après plusieurs couches convolutives et de poo-

ling, les CNN utilisent des couches complètement connectées (dense layers) pour effectuer

la classification ou la régression. Ces couches traitent les informations extraites par les

convolutions pour les mapper à des sorties prédictives.

[Link] Fonction de Perte des CNN :

Les CNN sont souvent utilisés pour des tâches de classification. La fonction de perte la plus

courante est la Categorical Cross-Entropy, utilisée pour la classification multi-classes :

N
X
L=− yi log(ŷi )
i=1

Où :

— L : La valeur de la perte à minimiser.

22
Chapitre 3 – L’apprentissage profond pour la classification du différents types de zellige

— N : Le nombre de classes.

— yi : La valeur réelle pour la classe i (1 si correcte, sinon 0).

— ŷi : La probabilité prédite pour la classe i, obtenue via l’activation softmax.

Pour les tâches de régression, la Mean Squared Error (MSE) est souvent utilisée :

N
1 X
L= (yi − ŷi )2
N
i=1

Où yi est la vraie valeur et ŷi est la prédiction du modèle.

[Link] Optimisation des CNN :

1. Descente de Gradient La descente de gradient est l’algorithme principal utilisé pour

optimiser les CNN. Les paramètres du modèle sont mis à jour en suivant la règle :

θ ← θ − η · ∇θ L

Où :

— θ : Les paramètres du modèle (poids et biais).

— η : Le taux d’apprentissage.

— ∇θ L : Le gradient de la fonction de perte par rapport aux paramètres θ.

2. Optimisation Adam Adam est un optimiseur avancé qui ajuste dynamiquement le taux

d’apprentissage pour chaque paramètre, en utilisant les premiers et deuxièmes moments

des gradients :

mt = β1 mt−1 + (1 − β1 )∇θ L

vt = β2 vt−1 + (1 − β2 )(∇θ L)2

mt
θ ←θ−η· √
vt + ϵ

Où :

— mt et vt sont les moyennes mobiles des gradients (premiers et deuxièmes moments).

— β1 et β2 sont des hyperparamètres (souvent β1 = 0.9, β2 = 0.999).

23
Chapitre 3 – L’apprentissage profond pour la classification du différents types de zellige

— ϵ est un terme de stabilisation pour éviter la division par zéro.

[Link] Problème du Vanishing Gradient dans les CNN :

Le problème du vanishing gradient se produit lorsque les gradients deviennent trop petits,

surtout dans les couches profondes du réseau. Cela ralentit l’apprentissage et peut rendre certaines

couches inutiles.

Pour atténuer ce problème, plusieurs stratégies sont utilisées :

— Initialisation des poids : L’initialisation correcte des poids (par exemple, avec la méthode

de Xavier ou He) aide à prévenir la disparition des gradients.

— Activation ReLU : La fonction d’activation ReLU (ReLU (x) = max(0, x)) permet d’évi-

ter les gradients trop petits en fournissant des valeurs non nulles pour les activations posi-

tives.

— Batch Normalization : Cette technique normalise les activations des couches pour main-

tenir les gradients dans une plage raisonnable.

Ces stratégies font des CNN un choix optimal pour des tâches complexes de vision par

ordinateur.

3.2.3 ResNet-18 :

Figure 3.1 – ResNet18 Architecture

Le ResNet18 (Residual Network avec 18 couches) est un modèle de réseau neuronal convolutif

(CNN) conçu pour résoudre les limitations des réseaux profonds, en particulier le problème de

dégradation et le gradient qui disparaît. Il repose sur une idée centrale : les connexions résiduelles,

qui permettent à l’information et au gradient de circuler plus efficacement dans les couches

profondes.

24
Chapitre 3 – L’apprentissage profond pour la classification du différents types de zellige

[Link] Connexions résiduelles :

Les connexions résiduelles permettent à l’entrée d’un bloc de couches d’être directement

ajoutée à la sortie. Cela forme une sorte de "raccourci" qui aide à préserver l’information.

Formulation mathématique :

Soit x l’entrée d’un bloc résiduel, et F(x, {Wi }) la transformation apprise par les couches

convolutives (poids Wi ) à l’intérieur du bloc. La sortie y du bloc est donnée par :

y = F(x, {Wi }) + x

Notations :

— x : Entrée du bloc (raccourci).

— F(x, {Wi }) : Fonction apprise (par exemple, convolutions suivies de normalisation batch

et ReLU).

— y : Sortie du bloc résiduel.

Avantages des connexions résiduelles :

— Facilite l’apprentissage : Les couches apprennent à affiner l’entrée au lieu d’apprendre

une transformation complète.

— Propagation des gradients : Les gradients traversent les connexions résiduelles sans être

fortement atténués.

— Résolution du problème de dégradation : Les couches supplémentaires n’entraînent

pas de dégradation des performances car elles peuvent être "ignorées" si nécessaire.

[Link] Structure de ResNet18 :

Étapes principales

1. Convolution initiale :

— Convolution 7×7, stride 2, suivie d’une normalisation batch et d’une activation ReLU.

— Pooling max 3 × 3, stride 2.

25
Chapitre 3 – L’apprentissage profond pour la classification du différents types de zellige

2. Blocs résiduels :

— Chaque bloc contient 2 convolutions 3 × 3, suivies de normalisation batch et ReLU.

— Une connexion résiduelle (skip connection) est ajoutée pour chaque bloc.

3. Classification finale :

— Global Average Pooling pour réduire les dimensions.

— Couche entièrement connectée (fully connected ) pour produire les probabilités de

chaque classe.

Organisation en blocs

Étape Nombre de blocs Nombre de filtres Dimensions de sortie

Convolution initiale 1 64 112 × 112

Bloc rsiduel 1 2 64 56 × 56

Bloc rsiduel 2 2 128 28 × 28

Bloc rsiduel 3 2 256 14 × 14

Bloc rsiduel 4 2 512 7×7

Global Average P ooling − − 1×1

F ully Connected − Nombre de classes 1 × classes

[Link] Fonctionnement interne d’un bloc résiduel :

Un bloc résiduel est une unité fondamentale de ResNet. Voici comment il fonctionne :

1. Entrée : x, les caractéristiques d’entrée.

2. Transformation : Deux couches convolutives 3×3 appliquées séquentiellement avec Batch-

Norm et ReLU.

3. Connexion résiduelle : L’entrée x est ajoutée directement à la sortie des convolutions.

4. Sortie :

y = F(x, {Wi }) + x

Cas spécial : Si les dimensions changent ( lors d’un changement de stride ou de nombre de

canaux), une projection linéaire (via une convolution 1 × 1) est utilisée pour ajuster x.

26
Chapitre 3 – L’apprentissage profond pour la classification du différents types de zellige

[Link] Théorie sous-jacente : Pourquoi ça marche ? :

— Hypothèse d’identité : Les couches apprennent plus facilement une fonction résiduelle

(F(x) = 0) qu’une transformation complète (H(x)).

— Amélioration des gradients : Les connexions résiduelles agissent comme des "raccour-

cis" pour les gradients, facilitant leur propagation vers les couches précédentes.

— Modularité : Les blocs résiduels peuvent être empilés pour augmenter la profondeur sans

risque de dégradation des performances.

3.3 Résultats :

En termes de résultats, MobileNetV2 a obtenu une précision de 0,98 et une perte de 0,0707,

ce qui témoigne de son efficacité dans la classification des différents types de zellige. De son côté,

le modèle CNN classique a atteint une précision de 0,92 avec une perte de 0,19, indiquant sa

capacité à bien généraliser sur les données tout en conservant une erreur relativement faible.

Enfin, le modèle ResNet-18 a surpassé les deux autres avec une précision de 0,99 et une perte de

0,007, démontrant une performance exceptionnelle dans la classification des motifs. Ces résultats

montrent que, bien que les trois modèles soient performants, ResNet-18 offre une précision et

une efficacité supérieures, suivi de près par MobileNetV2.

3.3.1 MobileNetV2 :

MobileNetV2 est une architecture de réseau de neurones convolutifs efficace, particulièrement

adaptée aux applications mobiles et embarquées en raison de sa petite taille et de ses faibles

besoins en calcul. Les graphiques ci-dessus illustrent les performances du modèle, où le premier

graphique montre l’évolution de la précision du modèle au fil des itérations, tandis que le deuxième

représente la perte, un indicateur de l’erreur du modèle durant l’entraînement. L’optimisation

de ces deux paramètres est cruciale pour obtenir un modèle performant, tout en maintenant une

faible consommation de ressources, typique des modèles mobiles comme MobileNetV2.

27
Chapitre 3 – L’apprentissage profond pour la classification du différents types de zellige

Figure 3.2 – Accuracy Figure 3.3 – Perte

Voici les paramètres principaux de MobileNetV2, obtenus avec la méthode [Link]() :

............

Figure 3.4 – Paramétres du MobileNetV2

28
Chapitre 3 – L’apprentissage profond pour la classification du différents types de zellige

3.3.2 CNN Standard :

Le CNN standard est un modèle de réseau de neurones convolutifs qui a fait ses preuves

pour de nombreuses tâches de classification d’images. Les graphiques ci-dessus présentent les

performances du modèle CNN standard, avec le premier graphique montrant l’évolution de la

précision au cours de l’entraînement, tandis que le second illustre la variation de la perte, qui

représente l’erreur du modèle. La réduction de la perte et l’amélioration de la précision sont des

objectifs majeurs dans l’entraînement d’un modèle CNN, car elles indiquent un apprentissage

efficace des caractéristiques des données d’entrée tout en évitant le surapprentissage (overfitting).

Figure 3.5 – Accuracy


Figure 3.6 – Perte

Voici les paramètres principaux de CNN Standard, obtenus avec la méthode [Link]() :

Figure 3.7 – Paramétres du CNN Standard

29
Chapitre 3 – L’apprentissage profond pour la classification du différents types de zellige

3.3.3 ResNet-18 :

ResNet-18 est un modèle de réseau de neurones convolutifs profond basé sur une architecture

à connexions résiduelles, qui a démontré une grande efficacité pour de nombreuses tâches de

classification d’images. Les graphiques ci-dessus présentent les performances du modèle ResNet-

18, avec le premier graphique montrant l’évolution de la précision au cours de l’entraînement,

tandis que le second illustre la variation de la perte, représentant l’erreur du modèle. Grâce à

son architecture avancée, ResNet-18 parvient à réduire efficacement la perte et à améliorer la

précision, tout en atténuant le problème de dégradation observé dans les réseaux profonds. Ces

performances témoignent de sa capacité à apprendre efficacement les caractéristiques des données

d’entrée tout en maintenant une généralisation optimale.

Figure 3.8 – Accuracy Figure 3.9 – Perte

Voici les paramètres principaux de ResNet-18, obtenus avec la méthode [Link]() :

30
Chapitre 3 – L’apprentissage profond pour la classification du différents types de zellige

.............

Figure 3.10 – Paramétres ResNet-18

3.4 Démonstration :

Les templates de cette application sont développés en Flask. Lors de la démo, une image

d’un zellige est affichée, et le modèle prédit la classe du zellige, en fournissant des informations

détaillées à son sujet, telles que sa catégorie, ses caractéristiques principales et sa probabilité

d’appartenance à cette classe. Cela permet de visualiser comment le modèle effectue l’analyse de

l’image et génère des résultats pertinents pour l’utilisateur.

3.4.1 MobileNetV2 :

31
Chapitre 3 – L’apprentissage profond pour la classification du différents types de zellige

3.4.2 CNN Standard :

32
Chapitre 3 – L’apprentissage profond pour la classification du différents types de zellige

3.4.3 ResNet-18 :

3.5 Conclusion :

Ce projet a démontré l’efficacité des modèles de deep learning, en particulier l’utilisation

de MobileNetV2, ResNet-18 et de CNN standard, pour l’analyse et la classification d’images

de zelliges. MobileNetV2, avec son architecture légère et optimisée, a permis de réaliser des

prédictions rapides tout en maintenant une haute précision, ce qui en fait un modèle adapté aux

applications mobiles et embarquées.

En combinant ces trois approches dans notre application, déployée via Flask, nous avons pu

fournir une interface simple qui permet à l’utilisateur d’obtenir la classe prédite pour un zellige,

accompagnée de détails pertinents sur ce dernier. Ce projet illustre non seulement les capacités

des réseaux convolutifs dans la reconnaissance d’images, mais aussi la richesse de l’art marocain,

en mettant en lumière la diversité et la beauté de ces motifs traditionnels à travers l’innovation

technologique.

33
Conclusion générale :

Ce projet marque une avancée significative dans l’application des techniques d’apprentissage

profond à la classification des motifs traditionnels de zellige marocain. En exploitant des mo-

dèles performants tels que MobileNetV2, ResNet18 et un CNN standard, nous avons démontré

la capacité des réseaux de neurones convolutifs à capturer des détails complexes et à différencier

les subtilités des motifs.

La méthodologie adoptée, incluant une collecte rigoureuse des données, un prétraitement mi-

nutieux, et une répartition équilibrée des ensembles d’entraînement, de validation, et de test,

a permis de garantir des résultats robustes. Les performances élevées des modèles, avec des

précisions atteignant 99 % pour ResNet18, soulignent le potentiel des approches basées sur l’in-

telligence artificielle pour résoudre des problèmes de classification complexes dans des domaines

spécifiques.

Au-delà de l’aspect technique, ce travail contribue à la valorisation du patrimoine culturel

marocain, en offrant des outils innovants pour l’analyse et la préservation du zellige. Il ouvre

également la voie à de futures applications, telles que la restauration architecturale assistée par

l’IA, la création de bases de données culturelles ou encore le développement de solutions éduca-

tives interactives.

En conclusion, ce projet illustre l’harmonie entre tradition et innovation technologique, en

mettant en lumière comment les progrès en apprentissage automatique peuvent servir à préserver

et à promouvoir des trésors culturels uniques comme le zellige marocain.

34
Références :

Les Liens et ressources :

[1] Pinterest Pour l’artisanat Marocaine :

[Link]

[2] Google Image pour Zellige :

[Link] [Link]/zellige

[3] Le site meduim pour CNN Standard :

[Link]

[4] Le site meduim pour MobileNetV2 :

[Link]

[5] Le site geeksforgeeks pour ResNet18 :

[Link]

[6] Le site de LATEX en ligne :

[Link]

35

Vous aimerez peut-être aussi