WOW !! MUCH LOVE ! SO WORLD PEACE !
Fond bitcoin pour l'amélioration du site: 1memzGeKS7CB3ECNkzSn2qHwxU6NZoJ8o
  Dogecoin (tips/pourboires): DCLoo9Dd4qECqpMLurdgGnaoqbftj16Nvp


Home | Publier un mémoire | Une page au hasard

 > 

Construction d'un modèle prédictif basé sur le réseau de neurones profond pour la détection de cancer de la peau


par Eddy MUTOMBO SHANGA
Institut supérieur et pédagogique de Mbanza-Ngungu - Licence 2022
  

précédent sommaire suivant

Bitcoin is a swarm of cyber hornets serving the goddess of wisdom, feeding on the fire of truth, exponentially growing ever smarter, faster, and stronger behind a wall of encrypted energy

Conclusion partielle.

Dans ce chapitre, nous avons présenté l'apprentissage automatique et l'apprentissage profond. Nous avons d'abord commencé par la description de l'apprentissage automatique et ses différentes architectures proposées. Ensuite, nous avons passé à la description de l'apprentissage profond.

Dans cette démarche, nous avons décelé les caractéristiques de l'apprentissage artificiel, entre autres : adaptation, généralisation, reconnaissance, amélioration et intelligibilité. Ce sont les cinq (5) caractéristiques qu'on peut trouver dans le modèle de machine Learning.

Etant atteints, les objectifs fixés pour ce chapitre, nous aborderons dans le second chapitre, l'une de méthodes de l'apprentissage supervisé qui est le réseau de neurones artificiels précisément le réseau de neurones à convolution ( Convolutionnal Neural Network, en anglais) spécialisé dans le traitement d'images, la reconnaissance de formes, etc. Il fait partir de Deep Learning (Apprentissage Profond, en français).

P a g e | 31

Chapitre deuxième : Réseau des neurones à convolution (CNN).

2.1. Introduction.

Les réseaux neuronaux convolutionnels CNNs « Convontoinal neurone network » sont un type spécialisé de réseau neuronal pour le traitement de données qui a une topologie connue, ils sont des réseaux supervisé et non supervisé, cela dépend de l'exigence et l'utilisation, cependant, principalement sont supervisé (Patterson et al., 2017).

L'informaticien japonais « Kunihiko Fukushima » a jeté les bases du lancement de cette structure par son travaille sur Neocognitron en 1980 (Vázquez, 2018).

Comme une grille, ils appartiennent aux réseaux de neurones artificiels acycliques, le nom convolutionnel indique que le réseau emploie une opération mathématique appelée convolution, et cela signifie un type spécialisé d'opération linéaire (Goodfellow et al., 2016).

Un réseau de neurones convolutif (CNN) s'inspire du cortex visuel des mammifères afin d'analyser une image en profondeur. Cette architecture a été introduite par le chercheur "Yann Le Cun" Dans les années 90.

Dans ce chapitre, nous introduirons le réseau de neurones convolutif et les différents algorithmes qui le distingue d'un réseau de neurones classique (DNN6).

2.2. Motivations des réseaux de neurones convolutifs. Les principales motivations des CNN sont les suivantes :

A Un Deep Neural Network (DNN) profond pour analyser une images complexe dégrade rapidement. Il faut trouver une méthode moins coûteuse et plus intuitive afin de faire du traitement d'image en général et la détection de forme en particulier.

A Une image est composée de sous éléments, il faut donc exploiter cette hiérarchisation avec une détection de formes plus granulaire.

A Les positions, tailles, couleurs..etc sont compliqués à extraire pour les réseaux classiques afin d'avoir une compréhension générale de l'image.

A Réduire la dimensionnalité des paramètres d'un Deep Neural Network (DNN) classique et celle des images.

6 DNN : Dense/Deep Neural Network

P a g e | 32

? S'inspirer de la biologie afin de créer une intelligence artificielle fut un succès, se tourner une seconde fois vers elle afin de modéliser une nouvelle IA7 peut être fructueux.

2.3. Le cortex visuel.

Dans la définition suivante, à chaque étape, nous citerons entre parenthèses une notion analogue à celle des CNN.

L'oeil perçoit la lumière (image en entrée) à travers la pupille puis véhicule l'information vers le cortex visuel qui se situe derrière la tête. Cette information est sous forme de signaux électriques dont la fréquence correspond à une information codée (convolution). Au cours de leurs trajets, les informations passent d'une fibre nerveuse à une autre grâce aux synapses (connexion de neurones). Le cortex visuel est constitué de plusieurs aires spécialisées dans le traitement des messages nerveux (les filtres). Selon la fréquence des signaux électriques émanant de l'information, chaque air interprète une caractéristique de l'image comme suit (cartes de caractéristiques) (Maxicours, 2021).

Figure 9. Les différentes aires du cortex visuel. 2.4. CNN et structure générale.

Construire un CNN revient à superposer plusieurs couches de manière hiérarchique, chacune d'entre elles calcule une représentation abstraite de l'image au fur et à mesure (Nguyên, 2018). L'opération se présente en général de la manière suivante.

7 IA : Intelligence Articielle

P a g e | 33

Figure 10. Structure générale d'un CNN.

2.5. CNNs et fonctionnement.

Le fonctionnement de CNNs est inspiré à partir du fonctionnement du processus biologique, ils consistent en un empilage multicouche de perceptrons, dont le but est le prétraitement de petites quantités d'informations (Patterson et al., 2017).

Figure 11. L'architecture des réseaux de neurones convolutifs.

Cette architecture des réseaux neuronaux convolutifs (CNNs) ci - dessus regorge trois couches majeurs, dont :

? Couche d'entrée : la couche d'entrée accepte généralement l'entrée tridimensionnelle sous la forme (hauteur x largeur) de l'image et a une profondeur représentant les canaux de couleur (généralement trois pour les canaux de couleur RGB).

P a g e | 34

V' Couche d'entrainement : est construite de :

? Convolution couche.

? Fonction d'activation : Linéaire rectifiée « Relu ». ? Couche de mise en commun « pooling ».

V' Couche de classification : la couche de classification permet de produire des probabilités ou des scores de classe.

2.5.1. Les filtres (Kernel).

Un filtre est un petit groupe de neurones à partir desquels la couche suivante est connectée. Comme les filtres utilisés dans les traitements d'images classiques, ces derniers se distinguent des filtres ordinaires par leurs auto-apprentissages en effet, on ne connaît pas d'avance les paramètres qui les constituent, c'est au réseau de les apprendre (Aston et al., 2020).

Un filtre est une matrice de poids n X n qui analyse une partie m X m de l'image afin d'en extraire une valeur pertinente puis répéter le processus sur toute l'image.

Figure 12. Opération convolutive sur une image. 2.5.2. Cartes de caractéristiques.

Les cartes de caractéristiques (feature map) sont les images résultantes de l'opération convolutive.

Dans la pratique, plusieurs filtres sont appliqués à l'image de départ pour produire plusieurs cartes. Chacune d'entre elles a pour rôle de détecter une particularité : contraste, lumière et autres en comparaison avec les régions du cortex visuel comme suit.

P a g e | 35

Figure 13. Représentation générale des cartes de caractéristiques.

La figure ci-après est un exemple d'une première convolution sur une image histologique d'un cancer de la peau invasif. On remarque suite à une première couche de convolution une extraction générale des caractéristiques globales : couleur, contraste, luminosité...etc.

Figure 14. Convolution sur une histologie. 2.5.3. Profondeur de l'image et des filtres.

Une image est pour une machine une matrice de (n X n X k), n représente les lignes et les colonnes qui constituent ses pixels. Chaque pixel dispose de 3 valeurs du système de codage RGB : c'est la dimension k. Par conséquent, un filtre est en réalité de taille m X m X k.

P a g e | 36

Figure 15. Dimensions d'une image et des cartes de caractéristiques.

Résultat : le nombre poids est drastiquement diminué en terme de lignes et colonnes mais augmenté en profondeur par le rajout de la 3ème dimension k.

La dimension des images est également augmentée en profondeur à cause du nombre de cartes générées.

Un des objectifs primaires des CNN étant de réduire la dimension, celle-ci se voit augmentée (Aston et al., 2020).

2.5.4. Le Pooling.

Le Pooling (mise en commun) est un algorithme visant à réduire la dimension d'une image tout en gardant des sous-parties importantes.

La fenêtre de Pooling est une matrice m x m, qui parcours l'image afin de produire un seul pixel de sortie parmi mxm pixels voisins. Plusieurs méthodes de production de pixels sont mises en place en fonction de la pertinence de l'information voulue.

Parmi ces méthodes, on compte l'average-Pooling, max et min-Pooling (Aston et al., 2020).

2.5.4.1. Average-Pooling.

Le principe de l'average-Pooling est de prendre la moyenne des m X m pixels voisins. Dans le traitement d'image, on parle de " lissage". La fenêtre de Pooling la plus utilisée est de 2 X 2.

P a g e | 37

2.5.4.2. Max-Pooling.

Le Max-Pooling permet d'extraire uniquement la plus grande valeur dans un ensemble de pixels. Ce type de Pooling est avantageux pour analyser une image dont le fond est noir. Le but est ainsi d'ignorer tous les pixels de faible valeur (en noir) et d'en extraire l'avant-plan (plus clair).

2.5.4.3. Min-Pooling.

Le Min-Pooling permet d'extraire le pixel le plus faible parmi ses m X m pixels voisins. Cette méthode est adaptée dans les cas où le fond de l'image est clair et l'avant plan sombre.

La figure suivante illustre les différents résultats de Pooling et leurs effets réducteurs.

Figure 16. Exemple applicatif des différents Pooling.

Remarque : théoriquement, l'Average-Pooling semble être la méthode la plus adéquate car on ne perd ni trop ni peu d'informations. Cependant, les expériences ont montré que dans la plupart des problèmes de traitement d'images, le Max-Pooling semble être la plus adéquate. La figure suivante représente un test de différents Pooling sur une histologie.

P a g e | 38

Figure 17. Résultat de différents Pooling sur une histologie.

Résultat : Le Max-Pooling permet d'extraire de meilleurs contours afin de détecter les anomalies (grosseur de cellules) tandis que l'Average-Pooling ne fait que lisser l'image. Quant au Min-Pooling, il permet que de réduire la luminosité de l'image, les contours sont donc négligés.

2.5.5. Le Stride.

L'opération de convolution s'effectue en déplaçant successivement la fenêtre du filtre dans l'image. Le Stride est donc la taille du pas de déplacement en matière de ligne et colonne qu'on veut effectuer pour parcourir l'image.

Remarque : Les Strides les plus utilisées sont de (1; 1) ou (2; 2) afin d'avoir une meilleure corrélation entre pixels.

Figure 18. Stride(ligne,colone).

P a g e | 39

2.5.6. Le zero-Padding.

Le Zero-Padding est une technique qui permet d'ajouter des pixels à valeur nulle à chaque côté des frontières de l'image. Le but est de compléter celle-ci dans le cas où le Stride et la taille du filtre ne sont pas compatibles à celle de l'image.

Figure 19. Exemple de dépassement d'une image par un filtre.

Les pixels aux extrémités de l'image sont faiblement traités par rapport aux pixels au centre suite au déplacement du filtre. La figure suivante illustre ce phénomène.

Figure 20. Exemple de filtre passant par un pixel.

P a g e | 40

2.5.7. Padding-valid, Padding-Same.

Le Padding-Valid est caractérisé par l'absence de Padding. Quand la taille du filtre et de l'image adhère, il n'y a pas nécessité de rajouter des zéros. Le PaddingSame est introduit de sorte à avoir la taille de l'image en entrée égale à celle en sortie. C'est le plus utilisé car tous les pixels seront traités le même nombre de fois par le filtre (Aston et al., 2020).

Figure 21. Exemple applicatif d'un Padding-Same.

2.6. Fonction Relu.

L'opération de convolution sur une image impose de la linéarité à celle-ci, or les images sont naturellement non linéaires. Afin d'avoir une meilleure interprétation, Relu permet de casser cette linéarité8. Pratiquement, la fonction relu supprime tous les éléments noirs, en ne gardant que ceux qui portent une valeur positive (les couleurs grises, blanches et autres).

De plus, quand deux couches de convolution sont appliquées, les poids des filtres de la 2ème convolution peuvent prendre soit des valeurs positives ou négatives. Si la carte de caractéristique de la 1ère convolution est négative, le produit d'une réponse négative et d'un poids de filtre négatif produira une valeur positive. Pourtant, le produit d'une réponse positive et d'un filtre positif produira également une valeur positive. En conséquence, le système ne peut pas différencier ces deux cas (Jay Kuo, 2016).

8 C'est - à - dire remplacés les résultats négatifs par zéro.

P a g e | 41

Figure 22. Opération convolutive sans Relu.

La figure suivante illustre l'impact de la rectification linéaire sur les cartes de caractéristiques résultantes en effet, deux filtres de signes différents produisent deux cartes différentes.

Figure 23. Opération convolutive avec Relu. 2.7. Couche de Correction (RELU).

Après chaque opération de convolution, le réseau de neurones convolutif applique une transformation ReLU (unité de rectification linéaire) à la fonction convoluée, afin d'introduire la non-linéarité dans le modèle. La fonction ReLU, F(x) = max (0, x), renvoie x pour toutes les valeurs de x > 0 et renvoie 0 pour toutes les valeurs de x = 0.

2.8. Couche entièrement connectée (FC).

Après plusieurs couches de convolution et de max-pooling, le raisonnement de haut niveau dans le réseau neuronal se fait via des couches entièrement connectées. Les neurones dans une couche entièrement connectée ont des connexions vers toutes les sorties de la couche précédente. Leurs fonctions d'activations peuvent

P a g e | 42

donc être calculées avec une multiplication matricielle suivie d'un décalage de polarisation.

2.9. Couche de perte (LOSS).

La couche de perte spécifie comment l'entrainement du réseau pénalise l'écart entre le signal prévu et réel. Elle est normalement la dernière couche dans le réseau. Diverses fonctions de perte adaptées à différentes tâches peuvent y être utilisées. La fonction « Softmax » permet de calculer la distribution de probabilités sur les classes de sortie.

2.10. Deep Neural Network (DNN) final.

Un CNN est une succession de couches convolution/Relu appliquées aux cartes de caractéristiques résultantes. Ces opérations s'achèvent par un réseau de neurones complètement connecté afin d'assembler toutes les informations apprises et ainsi effectuer les opérations classiques d'un DNN à savoir : prédiction, estimation de l'erreur, propagation de gradients puis mise à jour des poids.

2.11. Structure générale d'un CNN.

Figure 24. Architecture générale d'un CNN. 2.12. L'application des réseaux neuronaux convolutifs.

Les réseaux neuronaux convolutifs (CNNs) ont de larges applications, notamment :

V' La reconnaissance d'image et vidéo.

V' Les systèmes de recommandation.

V' Le traitement du langage naturel.

V' L'efficacité des CNN dans la reconnaissance de l'image (Voir Figure 25) est l'une des principales raisons pour lesquelles le monde reconnaît le pouvoir de l'apprentissage profond (Patterson et al., 2017).

P a g e | 43

Figure 25. Reconnaissance d'une image avec CNN. 2.13. Avantages de CNNs.

L'utilisation d'un poids unique associé aux signaux entrant dans tous les neurones d'un même noyau de convolution est un avantage majeur des réseaux convolutifs. Par cette méthode, il y'a réduction de l'empreinte mémoire, amélioration des performances et permet une invariance du traitement par translation. C'est le principal avantage du CNN par rapport au MLP, qui lui considère chaque neurone indépendant et donc affecte un poids différent à chaque signal entrant. Lorsque le volume d'entrée varie dans le temps (vidéo ou son), il devient intéressant de rajouter un paramètre de temporisation (delay) dans le paramétrage des neurones. On parlera dans ce cas de réseau neuronal à retard temporel (TDNN).

Comparés à d'autres algorithmes de classification de l'image, les réseaux de neurones convolutifs utilisent relativement peu de prétraitement. Cela signifie que le réseau est responsable de faire évoluer tout seul ses propres filtres (apprentissage sans supervision), ce qui n'est pas le cas d'autres algorithmes plus traditionnels. L'absence de paramétrage initial et d'intervention humaine est un atout majeur des CNN.

P a g e | 44

précédent sommaire suivant






Bitcoin is a swarm of cyber hornets serving the goddess of wisdom, feeding on the fire of truth, exponentially growing ever smarter, faster, and stronger behind a wall of encrypted energy








"Je voudrais vivre pour étudier, non pas étudier pour vivre"   Francis Bacon