• Aucun résultat trouvé

La méthode proposée

6 .1 Un framework de régularisation pour la classifi- classifi-cation des images histopathologiques à l ’aide des

6.1.5 La méthode proposée

La figure 6.1 présente le schéma général du framework proposé. Ce schéma est composé de 3 modules principaux : prétraitement, apprentis-sage et méthodes ensemblistes. Dans ce qui suit, nous détaillerons chaque module séparément.

Prétraitement

La Figure 6.2 illustre le schéma général de prétraitement. Ce schéma est basé sur différentes techniques de prétraitement : normalisation moyenne, extraction des patchs, rotations, et corps aléatoires.

Les images colorées sont représentées par un ensemble de pixels sous forme d’une matrice, où chaque matrice est associée à un canal de couleur (rouge, vert, et bleu). Les valeurs des pixels sont des entiers compris entre 0 et 255. La standardisation des pixels à des valeurs comprises entre 0 et 1 est une étape importante, car les grandes valeurs de pixels peuvent perturber ou ralentir le processus d’apprentissage des réseaux DL si ces derniers sont associés à des poids de petites valeurs. La méthode la plus

Figure 6.1 – Les composants du framework proposé.

Figure 6.2 – Le schéma de prétraitement.

simple de normalisation divise chaque pixel par la valeur 225. Dans cette contribution, nous avons exploité une autre méthode de normalisation. Cette méthode consiste à soustraire la moyenne des valeurs des pixels de l’ensemble des pixels. Elle permet de centrer la distribution des valeurs des pixels autour de 0.

La méthode de centrage nécessite de calculer la valeur moyenne des pixels. Cela peut être réalisé en suivant différentes stratégies : par images, par mini batch, par base d’apprentissage. Dans cette étude, nous avons exploité la technique de centrage par base d’apprentissage. Premièrement, nous avons calculé la moyenne des images appartenant à la base d’appren-tissage. Ensuite, nous avons soustrait cette moyenne de toutes les autres images. L’équation 6.1 présente le processus de normalisation, où mi,j est la valeur de pixel de l’image m et N est le nombre des images.

mi,j(t) =mi,j(t−1) − ∑N

k=1m(i,jk)(t−1)

N (6.1)

La deuxième étape de prétraitement consiste à augmenter le nombre des images en entrée par la méthode d’extraction des patchs (Figure 6.3)

et par la technique de rotation. Les images histopathologiques sont carac-térisées par une haute résolution, par exemple, les images appartenant à la base d’apprentissage lymphoma ont une taille de 1388×1040.

Figure 6.3 – Le résultat d’extraction des patchs par la méthode de fenêtre coulissante (Lymphoma).

L’exploitation directe de ces images peut causer une augmentation ex-ponentielle dans le nombre de paramètres du réseau, et cela accroît les exigences des réseaux entrainés en termes de stockage et de capacité de calcul. En plus, les réseaux composés d’un nombre important de para-mètres ont plus de risque de sur-apprentissage. Afin de résoudre ces li-mitations et d’éviter le problème de sur-apprentissage sur les volumes limités des images histopathologiques, nous avons exploité la méthode de fenêtre coulissante, cette méthode permet d’extraire un nombre important de patchs à partir d’une seule image.

Dans cette contribution, nous avons choisi de diviser chaque image à des patchs non superposés de taille 144×144. La grande différence entre la taille du patch et l’image originale peut causer une perte d’information dans le cas des images naturelles, car le cadre du patch doit être centré autour de l’objet d’intérêt. Tandis que, dans le cas des images histopatho-logiques, la distribution régulière de certaines formes biologiques de base autorise l’exploitation des patchs de petite taille.

Après l’étape d’extraction, nous avons pivoté les patchs par des rota-tions de 0 et 90 degrés. La rotation est parmi les méthodes d’augmenta-tion de données qui ont été largement exploitées. Elle permet d’améliorer le processus d’analyse de ces images, car le pathologiste observe les biop-sies sous différents angles. En plus, elle protège les modèles générés des attaques contradictoires.

Enfin, nous avons extrait des échantillons aléatoires de taille 128×128

images dans le processus de génération des lots, car elle génère des images distinctes à partir d’une seule image durant différentes itérations. Le but principal de cette méthode est d’améliorer la généralisation durant le pro-cessus d’apprentissage.

Apprentissage et méthodes ensemblistes

Le temps de traitement et l’espace mémoire sont deux paramètres importants dans le déploiement réel des systèmes de vision par ordina-teur. Ces deux paramètres présentent des défis majeurs dans le cas des réseaux CNN. D’autre part, ces réseaux risquent les problèmes de sur-apprentissage sur les volumes limités de données. Afin de résoudre ces limitations, l’ exploitation des petits (small) modèles est parmi les solu-tions proposées [Howard et al. 2017].

Dans cette contribution, nous avons utilisé les réseaux MobileNetV1 et MobileNetV2. Ces deux réseaux ont été conçus pour les appareils mobiles et les systèmes de vision intégrés, et ils sont basés sur deux types de mo-dules de base : DSC et IRLB, respectivement. Le but principal de ces deux modules est de diminuer le nombre total des paramètres par des tech-niques de réduction de dimensionnalité. En plus de ces deux modules, les réseaux MobileNet utilisent les deux hyper-paramètres : le multiplicateur de largeur et le multiplicateur de résolution afin de réduire le nombre des paramètres et le coût de calcul, respectivement.

Pour plus de détails sur les architectures MobileNetV1 et Mobile-NetV2, le chapitre 2 explique leurs principes. D’après l’étude compara-tive entre différentes architectures (tableau2.1), nous avons constaté que le nombre de paramètres des réseaux MobileNet est réduit par rapport aux autres. Par exemple, le réseau MobileNet contient 28 couches au total et 4.2 millions de paramètres, tandis que l’architecture AlexNet a 60 millions paramètres et seulement 8 couches.

Le tableau 6.2 illustre le nombre de paramètres des réseaux MobileNet en fonction de la taille des patchs (128×128) utilisés dans cette contribu-tion.

Paramètres MobileNetV1 MobileNetV2

Total 3 231 939 2 261 827

Entraînables 3 210 051 2 227 715

Non entraînables 21 888 34 112

Table 6.2 – Le nombre de paramètres des architectures MobileNet utilisées.

Les modèles robustes sont caractérisés par leur bonne performance sur les données non exploitées durant l’apprentissage et l’optimisation. Afin d’éviter les problèmes de sur-apprentissage, nous avons sélectionné les bons modèles en fonction de leur efficacité en termes de généralisation. La stratégie proposée consiste à suivre le processus d’apprentissage et de mesurer l’écart entre les courbes de performance des modèles sur les bases d’apprentissage, de validation, et de test. Afin de générer plusieurs mo-dèles, nous avons utilisé différents optimiseurs durant le processus d’ap-prentissage : SGD et RmsProp.

La performance des modèles sur les données d’apprentissage et de validation était mesurée sur les patchs extraits séparément. Cependant, durant l’inférence la classe de l’image entière doit être prédite. Pour cela, dans le cas des données de test, nous avons généré les classes par un vote majoritaire entre les classes des patchs appartenant à cette image. L’algorithme 2 illustre le processus de vote, où C est le nombre des classes, P est le nombre des patchs : si le t éme patch est classifié par la classe j alors di,j =1 si non di,j =0.

Algorithme 2 :Le calcul des classes des données de test Input :Test, Modèle

Output :Test_Précision Patches← ∅;

foreach (ImageTest) do Classes← ∅;

Patchs ←Patch_Extraction(Image); foreach (PatchPatchs ) do

Classes←Classes∪Modele.Classi f ier(Patch); end

Class←argmaxje{1,2,..,c}P t=1dt,j; end

Test_Précision←Calculer_Test_Précision(Test) ;

Le dernier processus dans cette contribution combine plusieurs mo-dèles MobileNet afin de réduire la grande variance de ces réseaux. En plus, la combinaison des décisions permet d’améliorer la généralisation.

Une méthode ensembliste est composée de 3 traitements : la génération des modèles, la sélection des modèles à combiner, et la combinaison de ces modèles.

Généralement, afin de générer un ensemble de modèles, plusieurs ap-prentissages sont effectués. Ce processus est couteux en termes de temps d’exécution, où le temps de traitement de chaque modèle est multiplié par le nombre total des modèles appartenant à l’ensemble. Afin de réduire la complexité temporelle, nous avons enregistré les états du modèle en cours d’apprentissage dans plusieurs points d’apprentissage. Dans le processus d’apprentissage des réseaux de neurones, les poids sont mets à jour dans chaque itération, et cela permet de générer différents modèles dans un seul processus d’apprentissage. De cette façon, la nature itérative du processus d’apprentissage des ANN peut assurer la construction d’un ensemble de modèles dans un seul apprentissage, et donc optimise la complexité tem-porelle. Dans ce cadre, nous avons enregistré l’ensemble de modèles dans des intervalles de 3 minutes.

Ensuite, nous avons sélectionné un sous ensemble de modèles à partir de l’ensemble généré dans l’étape précédente. Le but de cette sélection est de choisir un sous ensemble de modèles pertinents afin d’assurer l’effica-cité de la combinaison à réaliser. Dans ce traitement, il est préférable de diminuer le nombre de modèles à combiner afin de réduire les exigences en termes de stockage et temps d’inférence.

sélec-tion statique : les modèles les plus performants sur la base de validasélec-tion et les derniers modèles enregistrés. Nous avons choisi cette sélection, car les meilleurs modèles sont caractérisés par leur bonne performance et les derniers modèles sont connus par leur stabilité.

Dans la dernière étape, nous avons combiné entre les modèles sélec-tionnés par les techniques de vote et de moyenne non pondérée. L’équa-tion 6.2 illustre le processus de vote majoritaire, où J est la classe sélecL’équa-tion- sélection-née, C est le nombre des classes, et N est le nombre des modèles : si le t éme classificateur choisit la classe j alors di,j = 1 si non di,j = 1. L’équa-tion 6.3 présente le processus de moyenne non pondérée, où yt(x) est le vecteur des poids du t éme classificateur pour l’échantillon x.

J = argmaxje{1,2,..,c} N

t=1 dt,j (6.2) y(x) = ∑N t=1yt(x) N (6.3)

L’algorithme 3 résume le processus de la méthode ensembliste propo-sée dans cette contribution.

Algorithme 3 :La combinaison entre plusieurs modèles MobileNet. Input :Modèles, Validation, Test, Sélection∈{Meilleurs, derniers} ,

Combinaison∈{Vote, moyenne} , N : nombre de modèles sélectionnés.

Output :Test_Précision if (Sélection = Meilleurs) then

Modèles← Descending_Sort (Models, Validation) ; Sous_Modèles←Modèles[1, N];

if (Combinaison = Vote ) then

Test_Précision←vote(Sous_Modèles, Test) ; else

Test_Précision←moyenne(Sous_Modèles, Test) ;