MINF226
MINF226
MINF226
LA RECHERCHE SCIENTIFIQUE
UNIVERSITE ABDELHAMID IBN BADIS - MOSTAGANEM
THEME :
Je dédie ce mémoire
À mes chers parents ma mère et mon père
À ma sœur
À toute ma famille
À mes amis
A tous ceux qui, par un mot, m’ont donné la force de
continuer…
Remerciements
Je souhaite manifester mes sincères remerciements à Dieu, le tout puissant, pour ses
faveurs et ses gratitudes de m’avoir donné le courage et la patience pour achever ce
modeste travail.
Je remercie aussi vivement les honorables membres du jury qui ont accepté d’évaluer
ce travail. Enfin, un grand remerciement à tous ceux qui, par un mot, m’ont donné la
force de continuer à travailler afin d’atteindre mes objectifs.
Liste des figures
Figure 8 Schéma d’un neurone à gauche et représentation d’un neurone formel à droit. 16
CNN Convolutional Neural Network. 17, 18, 19, 24, 28, 29, 30 ,31
TBT Tuberculosis Type 27, 35, 37, 38, 39, 40, 41, 42, 57
Table des Matières
Introduction générale ................................................................................................................................ 1
Chapitre 01 : Etat de l’art .......................................................................................................................... 3
1. Introduction partielle ................................................................................................................. 3
2. Tuberculose ............................................................................................................................... 3
2.1. Tuberculose pulmonaire ............................................................................................. 4
2.2. Types de tuberculose pulmonaire ............................................................................... 5
2.2.1. La tuberculose Infiltrative............................................................................ 5
2.2.2. Focale........................................................................................................... 6
2.2.3. Tuberculome ................................................................................................ 6
2.2.4. Miliaire ........................................................................................................ 6
2.2.5. Fibro-cavernous ........................................................................................... 6
3. Imagerie médicale ..................................................................................................................... 7
3.1. Formats d'images médicales ....................................................................................... 7
3.1.1. Analyze ........................................................................................................ 8
3.1.2. Nifti .............................................................................................................. 8
3.1.3. Minc ............................................................................................................. 9
3.1.4. Dicom .......................................................................................................... 9
4. Apprentissage automatique ..................................................................................................... 10
4.1. Apprentissage supervisé ........................................................................................... 11
4.1.1. Arbre de décision ....................................................................................... 11
4.1.2. Bagging ...................................................................................................... 12
4.1.3. Forêts aléatoires (Random forest) .............................................................. 13
4.1.4. Machine à Vecteurs de Support ............................................................... 14
4.2. Classification ............................................................................................................ 15
4.2.1. Classification Hiérarchique ....................................................................... 15
4.2.2. Classification Multi-classes ....................................................................... 15
4.3. Apprentissage profond.............................................................................................. 16
4.3.1. Réseaux de neurones ................................................................................. 16
4.3.2. Réseaux de neurones convolutifs .............................................................. 17
4.3.3. Réseaux de neurones convolutifs pour la classification d'images ............. 18
4.3.4. Architectures de réseaux profonds ............................................................ 19
4.3.4.1. AlexNet ....................................................................................... 19
4.3.4.2. VGG Net ..................................................................................... 19
4.3.4.3. GoogleNet ................................................................................... 20
4.3.4.4. ResNet ....................................................................................... 21
4.3.6. Descripteurs sémantiques ......................................................................... 22
4.3.7. Réseau neuronal récurrent ........................................................................ 22
4.3.8. Réseaux de mémoire à longue durée ........................................................ 23
4.3.9. Apprentissage profond pour l'analyse d'images médicales.......................23
4.3.10. NiftyNet: une plate-forme d’apprentissage profond pour l'imagerie médicale............. 24
5. Conclusion partielle................................................................................................................25
L’apprentissage machine (automatique) est devenu l’un des principaux outils pour l’analyse
d’images médicales. Les techniques d'apprentissage automatique constituent des solutions pour
développer des outils permettant d'aider les médecins à diagnostiquer, à prédire le risque
d'atteinte de maladies et à les prévenir avant qu'il ne devienne trop tard. L'apprentissage profond
(En anglais, Deep Learning) est un nouveau volet du domaine de l'apprentissage automatique
qui englobe un large éventail d’architectures de réseaux élaborés pour exécuter plusieurs tâches.
La première utilisation de réseaux de neurones pour l'analyse d'images médicales remonte à
plus de vingt ans [1], leur utilisation a augmenté de plusieurs ordres de grandeur au cours des
cinq dernières années. Des revues récentes [2] ont mis en évidence l'application de
l'apprentissage profond à un large éventail de tâches d'analyse d'images médicales
(segmentation, classification, détection, enregistrement, reconstruction d'image, amélioration,
etc.).
La tuberculose est une maladie infectieuse causée par une bactérie appelée Bacillus
mycobacterium-tuberculosis. Avec une estimation de 10,4 millions de nouveaux cas
tuberculeux et un taux de mortalité de 1,8 million dans le monde, cette maladie est restée l'une
des dix premières causes de mortalité dans le monde en 2015. La tuberculose attaque les
poumons, mais peut également affecter d'autres parties du corps. Un diagnostic précis et rapide
est la clé du contrôle de cette maladie, mais les tests traditionnels de TB produisent des résultats
inexacts ou trop longs pour être définitifs. Des chercheurs se sont intéressés à cette maladie,
notamment dans le cadre du défi international ImageCLEF 2017 [3] où deux tâches lui ont été
réservées. Des algorithmes impliquant l'apprentissage profond ont été testés pour diagnostiquer
la présence ou l'absence de tuberculose. Les résultats obtenus ont été intéressants. En effet, les
algorithmes ont atteint un taux de précision impressionnant de 96% [4] un résultat qui s'avère
meilleur que celui de l'intervention de nombreux radiologistes.
L'objectif de notre projet consiste à détecter automatiquement les types de TB via une analyse
d'images par tomodensitométrie (CT). Une des applications possibles de cette étude est
d'accélérer le diagnostic de la maladie à partir d'une image de radiologie sans avoir recours à
des analyses médicales couteuses. Ce travail s'inscrit dans le cadre de la tâche de classification
1
des types de tuberculose du défi ImageCLEF 2017 [3] qui a montré des résultats trés
prometteurs. Nous explorons dans ce mémoire les différents travaux effectués et les différentes
notions ayant un lien avec cette problématique.
Nous pouvons résumer les objectifs de notre système à travers les points suivants:
- Aider les médecins dans le diagnostic de la tuberculose par des techniques de traitement
d'image et d'apprentissage automatique
- Proposer un outil exploitant des méthodes peu coûteuses (en termes d'argent) et rapides
pour une détection précoce des types de tuberculose chez les patients
- Prévoir rapidement le type de tuberculose et son degré de gravité pour aider les
médecins à prendre des décisions rapides et à donner les traitements efficaces.
Le travail décrit dans ce mémoire a fait l'objet d'une participation à deux sous-tâches de la tâche
de Tubeculosis d’ImageCLEF 2018 [32] : Classification des types de tuberculose et Prédiction
du degré de sévérité du cas tuberculeux. Ce même travail a abouti à une soumission d'un article
de conférence.
Le reste du rapport est organisé en quatre chapitres suivis d’une conclusion générale, chacun
représente une partie du travail de ce projet qu'elle soit théorique ou pratique :
- Chapitre 1 : Etat de l’art
- Chapitre 2 : Classification types tuberculose
- Chapitre 3 : Contributions
- Chapitre 4 : Conception et réalisation
2
Chapitre 01 :
Etat de l’art
CHAPITRE 01 : ETAT DE L’ART
1. Introduction partielle
Nous présentons dans ce chapitre divers concepts sur la maladie de la Tuberculose ainsi que
l'apprentissage machine ayant un lien avec notre problématique de recherche.
2. Tuberculose
La tuberculose (TB) est une maladie infectieuse chronique provoquée par une bactérie
dénommée « Mycobacterium Tuberculosis» ou Bacille de Koch (BK). Sa forme la plus courante
et la plus répandue (85% des cas) est la tuberculose pulmonaire mais il existe également des
formes extra-pulmonaires comme la tuberculose osseuse, la tuberculose ganglionnaire et la
tuberculose rénale.
La tuberculose peut se développer rapidement après le 1er contact avec le microbe mais
elle peut aussi apparaitre plusieurs années plus tard.
On peut distinguer deux cas d'atteinte de la tuberculose:
Tuberculose active :
La tuberculose active est un état où les microbes sont actifs et entraînent des symptômes. Cela
indique que le système immunitaire d’une personne infectée par le microbe n’a pu se défendre
convenablement contre ce dernier. Cette forme de tuberculose est contagieuse.
3
CHAPITRE 01 : ETAT DE L’ART
4
CHAPITRE 01 : ETAT DE L’ART
Figure 3 - Exemples de types de TB. Première rangée, de gauche à droite: Infiltrative, Focale, et
Tuberculome. Deuxième rangée: Miliary, et les types Fibro-caverneux [3]
5
CHAPITRE 01 : ETAT DE L’ART
2.2.2. Focale
La TB focale est diagnostiqué en cas de lésion ne dépassant pas deux segments
pulmonaires. En pathologie, il se forme un petit nombre de foyers pathologiques d’un diamètre
d’environ 1 cm, qui se produisent à des moments différents [6].
La Diagnostic comprend: un test tuberculinique (Test de Manteux), un test sanguin biochimique
et la Radiographie.
2.2.3. Tuberculome
Un tuberculome ou granulome tuberculeux est une manifestation clinique de la
tuberculose qui conglomère les tubercules en une masse ferme et peut ainsi imiter les tumeurs
cancéreuses.
La taille du tuberculome est généralement inférieure à 3 cm mais peut atteindre 5 cm; il siège
préférentiellement dans les lobes supérieurs et sont multiples dans 20% des cas [7].
La Diagnostic comprend: un examen cytobactériologique et la biopsie pulmonaire.
2.2.4. Miliaire
La tuberculose miliaire est ainsi appelée en raison d’innombrables petites taches qui se
forment dans les poumons de la taille des grains de mil. La TB miliaire peut affecter un ou
plusieurs organes ou se propager dans tout l’organisme [8].
La tuberculose miliaire se développe le plus souvent chez les personnes suivantes :
- Les enfants âgés de moins de 4 ans;
- Les personnes dont le système immunitaire est affaibli;
- Personnes âgées.
La Diagnostic comprend: un test cutané tuberculinique, des tests sanguins pour détecter la
bactérie responsable de la tuberculose et une radiographie du thorax.
2.2.5. Fibro-cavernous
La tuberculose pulmonaire Fibro-Cavernous est une maladie chronique dans laquelle des
cavités s'y forment. Cette formation est un résultat de la nécrose tissulaire. Parmi tous les
patients tuberculeux, environ 4% souffrent de cette forme [9].
La Diagnostic comprend: Radiographie, la Bronchoscopie et un test sanguin.
6
CHAPITRE 01 : ETAT DE L’ART
3. Imagerie médicale
L'imagerie médicale est certainement l'un des domaines de la médecine qui a le plus
progressé ces vingt dernières années. Ces récentes découvertes permettent non seulement un
meilleur diagnostic mais offrent aussi de nouveaux espoirs de traitement pour de nombreuses
maladies comme le cancer, épilepsie, tuberculose, etc. L'identification précise de la lésion
facilite déjà le recours à la chirurgie. De telles techniques permettent également de mieux
comprendre le fonctionnement de certains organes encore mystérieux, comme le cerveau.
L’image médicale est une représentation discrète d’une partie du corps qui est décrite par une
matrice à 3 dimensions, comme la montre la figure 4:
7
CHAPITRE 01 : ETAT DE L’ART
3.1.1. Analyze
Analyse 7.5 a été créée à la fin des années 1980 sous forme de format utilisé par le logiciel
commercial Analyze développé à la Mayo Clinic à Rochester, MN, USA. Pendant plus d'une
décennie, le format était la norme pour le post-traitement de l'imagerie médicale. Le gros point
de vue du format Analyze est qu'il a été conçu pour des données multidimensionnelles
(volume). En effet, il est possible de stocker dans un fichier des données 3D ou 4D (la quatrième
dimension étant typiquement l'information temporelle). Un volume Analyze 7.5 comprend deux
fichiers binaires: un fichier image avec l'extension ".img" qui contient les données brutes de
voxel et un fichier d'en-tête avec l'extension ".hdr" qui contient les métadonnées (nombre de
pixels dans les trois dimensions, la taille du voxel et le type de données). L'en-tête a une taille
fixe de 348 octets et est décrit comme une structure dans le langage de programmation C. La
lecture et l'édition de l'en-tête nécessitent un utilitaire. Le format est aujourd'hui considéré
comme «ancien» mais il est encore largement utilisé et pris en charge par de nombreux logiciels
de traitement, visionneuses et utilitaires de conversion [14]
3.1.2. Nifti
Nifti est un format de fichier créé au début des années 2000 avec l'intention de créer un
format pour la neuro-imagerie en conservant les avantages du format Analyze, mais en résolvant
ses faiblesses. Le Nifti peut en fait être considéré comme un format "Analyse" révisé. Le format
remplit certains des champs inutilisés / peu utilisés présents dans l'en-têteAnalyze7.5 pour
stocker de nouvelles informations comme l'orientation de l'image avec l'intention d'éviter
l'ambiguïté gauche-droite dans l'étude du cerveau. De plus, Nifti inclut la prise en charge du
type de données non envisagé dans le format Analyze comme le format 16 bits non signé. Bien
8
CHAPITRE 01 : ETAT DE L’ART
que le format permette également le stockage des données d'en-tête et de pixel dans des fichiers
séparés, les images sont généralement enregistrées sous la forme d'un fichier ".nii" unique dans
lequel l'en-tête et les données de pixel sont fusionnées. L'en-tête a une taille de 348 octets dans
le cas de stockage de données ".hdr" et ".img", et une taille de 352 octets dans le cas d'un seul
fichier ".nii". Cette différence de taille est due à la présence de quatre octets supplémentaires à
la fin, essentiellement pour faire de la taille un multiple de 16, et aussi pour fournir un moyen
de stocker des métadonnées supplémentaires, auquel cas ces 4 octets sont différents de zéro
[14].
3.1.3. Minc
Le format de fichier Minc a été développé en 1992 pour fournir un format de données
flexible pour l'imagerie médicale. La première version du format Minc (Minc1) était basée sur
le format standard de réseau commun (NetCDF). Par la suite, pour surmonter la limite de prise
en charge de fichiers de données volumineux et pour fournir d'autres nouvelles fonctionnalités,
l'équipe de développement de Minc a choisi de passer de NetCDF à Hierarchical Data Format
version 5 (HDF5). Cette nouvelle version, non compatible avec la précédente, s'appelait Minc2
[14].
3.1.4. Dicom
DICOM (Digital Imaging and Communications in Medicine), est la norme internationale
pour transmettre, stocker, récupérer, imprimer, traiter et afficher des informations d'imagerie
médicale.
Dicom ne peut stocker que des valeurs de pixels en tant qu'entier. Dicom ne peut actuellement
pas enregistrer les données de pixel en virgule flottante alors qu'il prend en charge divers types
de données, y compris les flottants, pour stocker les métadonnées. Chaque fois que les valeurs
stockées dans chaque voxel doivent être mises à l'échelle, Dicom utilise un facteur d'échelle
utilisant deux champs dans l'en-tête définissant la pente et l'ordonnée à l'origine de la
transformation linéaire à convertir en valeurs réelles. Dicom prend en charge les données
d'image compressées via un mécanisme qui permet d'encapsuler un document non-Dicom dans
un fichier Dicom. Les systèmes de compression pris en charge par Dicom sont les suivants:
JPEG, RLE (Run-Length Encoding), JPEG-LS, JPEG-2000 et MPEG2 / MPEG4 [14].
9
CHAPITRE 01 : ETAT DE L’ART
4. Apprentissage automatique
Le « machine Learning », ou littéralement l’apprentissage automatique, fait partie de
l’une des approches de l’intelligence artificielle. C’est une discipline consacrée à l’analyse des
données. Le but de cette discipline est de créer de la connaissance de manière automatique à
partir de données brutes (échantillons). Cette connaissance (ou bien modèle) peut alors être
exploitée pour prendre des décisions [26].
En fonction de la nature des échantillons (labellisés ou pas), il existe trois types d’apprentissage:
10
CHAPITRE 01 : ETAT DE L’ART
11
CHAPITRE 01 : ETAT DE L’ART
- Les critères de choix l'entropie et l'indice de Gini, pour choisir le meilleur couple
(attribut; test) pour créer un nœud :
- Le gain d'information est basé sur la diminution de l'entropie après la division d'un
ensemble de données sur un attribut. Construire un arbre de décision est une question
de trouver un attribut qui renvoie le gain d'information le plus élevé :
4.1.2. Bagging
Il consiste à sous-échantillonner (ou ré-échantillonner au hasard avec doublons) le
training set et de faire générer à l’algorithme voulu un modèle pour chaque sous-échantillon.
On obtient ainsi un ensemble de modèles dont il convient de moyenner (lorsqu’il s’agit d’une
régression) ou de faire voter (pour une classification) les différentes prédictions.
Cette technique concerne les apprenants dont l'erreur est due en plus grande partie à la variance,
c'est-à-dire des apprenants qui réagissent à de petites modifications de l'ensemble
d'apprentissage en produisant des hypothèses différentes à chaque fois.
La solution proposée est justement d'utiliser plusieurs fois l'apprenant pour obtenir autant
d'hypothèses et les combiner au sein d'un vote. Pour obtenir des hypothèses différentes, le
bagging propose de construire de nouveaux échantillons à partir des données initiales.
12
CHAPITRE 01 : ETAT DE L’ART
Algorithme :
1- Échantillonnage :
- Entrée : A un ensemble des données d'apprentissage contenant n exemples ;
- Sortie : A' un nouvel ensemble de données de même taille ;
- Tirer avec remise n exemples de A et les placer dans A'.
2- Bagging :
- Entrées : un ensemble d'exemples A = {(Xi,Yi)}, un nombre d'itérations T à
effectuer, un apprenant L ;
- Sortie : H le classifier final ;
- Pour t allants de 1 à T
At = Échantillonnage(A)
ht = L(At)
𝑇
- Retourner (la décision) : 𝐻(𝑥) = 𝑠𝑖𝑔𝑛( ∑𝑡=1(ℎ𝑡(𝑥)) )
13
CHAPITRE 01 : ETAT DE L’ART
14
CHAPITRE 01 : ETAT DE L’ART
4.2. Classification
4.2.1. Classification Hiérarchique
La classification hiérarchique est une méthode de classification itérative dont le principe est
simple :
- Considérer une hiérarchie de classes;
- Classer les échantillons dans les classes du niveau ancêtre (le plus haut)
Descendre dans la hiérarchie pour classer les échantillons dans les classes du niveau
courant. Le niveau suivant sera celui atteint en passant par la classe prédite dans le
niveau actuel.
- Itérer jusqu'à arriver au niveau le plus bas de la hiérarchie.
- Il existe toutefois, des méthodes qui effectue la classification dans le sens inverse, en
commençant par les classes du niveau le plus bas puis continuent le traitement en allant
vers les niveaux de haut: Down-Top stratégie.
L'ensemble des classifications successives réalisées produisent un arbre où chaque nœud d'un
niveau correspond à la classe prédite dans ce niveau.
15
CHAPITRE 01 : ETAT DE L’ART
1 𝑠𝑖 ∑ 𝑊𝑘𝑖𝑘 > 𝑏
𝑌= { 𝑘
0 𝑠𝑖𝑛𝑜𝑛
Figure 8 - Schéma d’un neurone à gauche et représentation d’un neurone formel à droit. [12].
16
CHAPITRE 01 : ETAT DE L’ART
17
CHAPITRE 01 : ETAT DE L’ART
18
CHAPITRE 01 : ETAT DE L’ART
4.3.4.1. AlexNet
AlexNet est la première architecture profonde qui a été introduite par l'un des pionniers
de l'apprentissage en profondeur (Geoffrey Hinton et ses collègues). Il s'agit d'une architecture
de réseau simple mais puissante, qui a ouvert la voie à une recherche révolutionnaire dans le
Deep Learning telle qu'elle soit actuellement.
Alexnet dispose de huit couches. Les cinq premières sont convolutives et les trois dernières
sont des couches entièrement connectées. Entre les deux, nous avons également des
«couches» appelées Pooling et Activation. L'architecture AlexNet peut être vue sur la figure 11.
19
CHAPITRE 01 : ETAT DE L’ART
4.3.4.3. GoogleNet
GoogleNet (ou Inception Network) est une architecture conçue par des chercheurs de
Google. Elle contient 22 couches par rapport à VGG qui dispose de 19 couches. Les chercheurs
ont également développé une nouvelle approche appelée le module Inception (figure 13).
20
CHAPITRE 01 : ETAT DE L’ART
4.3.4.4. ResNet
ResNet est l'abréviation du nom composé RESidiual NETwork (Réseaux résiduels).
ResNet est l'une des architectures qui définissent véritablement la profondeur d'une architecture
d'apprentissage en profondeur. Les ResNets sont constitués de plusieurs modules résiduels
subséquents, qui constituent le bloc de construction de base de l'architecture ResNet. Ces
modules résiduels sont empilés les uns sur les autres pour former un réseau complet.
Une représentation de l'architecture ResNet-50 est la suivante :
L'apprentissage par transfert s'est avéré utile dans les tâches d'analyse d'image et de vidéo.
De plus, cette approche donne très souvent des résultats satisfaisants en particulier lorsque
l'ensemble de données d'entraînement est relativement riche.
21
CHAPITRE 01 : ETAT DE L’ART
Les réseaux récurrents permettent de traiter des données séquentielles une suite d'entrées x. En
effet au temps t ils calculent leur sortie en fonction de l'entrée x(t) mais aussi de l'état de la
couche cachée au temps précédent.
22
CHAPITRE 01 : ETAT DE L’ART
Tous les réseaux neuronaux récurrents ont la forme d'une chaîne de modules répétitifs de réseau
neuronal. Dans les RNN standard, ce module répétitif a une structure très simple, telle qu'une
couche de « tanh » unique (figure 12).
23
CHAPITRE 01 : ETAT DE L’ART
quotidiennement des milliers d'images. De nouvelles méthodes sont donc nécessaires pour
extraire et représenter les données de ces images plus efficacement.
Bien que l'une des applications les plus courantes d'apprentissage machine dans le domaine
médicale ait été en réalité l'imagerie médicale, ce n'est que récemment que des algorithmes
d'apprentissage profond ont été introduits [15] Le tableau ci-dessous présente des résultats de
certaines applications de Deep Learning dans l'analyse d'images médicales. La première
colonne contient les tâches traités, la seconde contient les noms des auteurs ayant réalisé le
travail en question. La troisième colonne présente la performance atteinte par les différents
travaux en termes de précision.
Tableau 2 - Résultats de certaines applications de Deep Learning dans l'analyse d'images médicales
24
CHAPITRE 01 : ETAT DE L’ART
5. Conclusion partielle
Nous avons présenté dans ce chapitre la maladie de Tuberculose ainsi que ses différents
types. Nous avons exploré également les différents prérequis en apprentissage machine pour le
traitement de notre problématique. Nous présenterons dans le chapitre suivant un état de l'art
sur les travaux ayant été réalisés pour la classification des types de tuberculose.
25
Chapitre 2 :
Classification des types de tuberculose
CHAPITRE 02 : CLASSIFICATION DES TYPES DE TUBERCULOSE
1. Introduction partielle
Dans cette section, nous présentons des travaux récents qui ont été réalisés dans la
compagne d'évaluation ImageCLEF, en se focalisant sur la tâche de classification des types de
tuberculose.
3. Organisation de la tâche
Dans la tâche de la classification des types de tuberculose, les organisateurs mettent à
disposition un corpus d'apprentissage (Les étiquettes des données d'apprentissage sont fournies
également) et définissent une mesure d'évaluation à utiliser pour mesurer la performance des
systèmes. Pour participer, une équipe doit faire partie d'une institution officielle et signer une
charte d'utilisation de données. Une fois inscrits, Les participants peuvent accéder et exploiter
le corpus d'apprentissage pour entraîner leurs modèles. Ensuite, les organisateurs fournissent
un corpus de test. Les classes des exemples de test ne sont pas fournies bien évidemment. Les
participants doivent interroger leurs modèles afin de prédire les classes des différents exemples
de test. Ces prédictions sont soumises sur la plateforme du défi avant un délai défini au préalable
par les organisateurs. Les participants ont le droit de soumettent jusqu'à 10 soumissions. Les
organisateurs évaluent les résultats et les publient avant d'organiser une conférence pour la
présentation de l'ensemble des travaux effectués dans ce défi.
4. Données
L'ensemble de données utilisé comprend des images tomodensitométriques thoraciques
(format de fichier NIFTI avec extension de fichier .nii.gz) de patients tuberculeux. Le type de
tuberculose pour chaque patient est fourni comme donnée uniquement dans le corpus
d'apprentissage. Le tableau 3 présente.la composition des deux corpus d'apprentissage et de test
par rapport aux cinq types de tuberculoses considérés. Ces corpus ont été fournis dans
ImageCLEF 2 2017 (tableau 3).
1 : http://www.imageclef.org
2 : http://www.imageclef.org/2017/tuberculosis
26
CHAPITRE 02 : CLASSIFICATION DES TYPES DE TUBERCULOSE
Tableau 3 - Les données pour la tâche TBT dans ImageClef 2017 [3]
5. Mesures d’évaluation
Dans cette compagne, le coefficient kappa de Cohen et la précision moyenne (accuracy)
sont utilisés comme mesures d'évaluation.
𝑉𝑃 + 𝑉𝑁
ACC =
𝑉𝑃 + 𝑉𝑁 + 𝐹𝑃 + 𝐹𝑁
27
CHAPITRE 02 : CLASSIFICATION DES TYPES DE TUBERCULOSE
Pa − Pe
𝐾=
1 − Pe
Où :
28
CHAPITRE 02 : CLASSIFICATION DES TYPES DE TUBERCULOSE
Un autre ensemble d'entraînement est généré appelé ensemble d'entraînement basé sur les
des fichiers appelés masques. Puisque seules les zones dans les poumons contiennent des
informations pertinentes, ils ont utilisé les fichiers de masque fournis par ImageCLEF pour
extraire la zone pulmonaire. Les fichiers de masque sont également des données 3D avec une
valeur de 0, 1 et 2. La valeur 0 représente la zone non pertinente; 1 et 2 représentent
respectivement le côté gauche et le côté droit du poumon. L'objectif de l'utilisation des fichiers
de masque est de former uniquement la zone pulmonaire dans les images [14].
29
CHAPITRE 02 : CLASSIFICATION DES TYPES DE TUBERCULOSE
Pour la phase d'entrainement (Training), les auteurs ont utilisé deux ensembles d'entraînement,
l'ensemble original et l'ensemble masqué. Puisque les deux ensembles d'apprentissage sont
constitués d'images 2D, les tranches d'image de tous les patients ont été mélangées et entraînées
en tant qu'images individuelles. Toutes les tranches ont été redimensionnées à 256×256 afin
d'ajuster les tailles du lot et d'accélérer l'entraînement. Ils ont utilisé le Max-pooling au lieu de
l'average-pooling pour que la couche de regroupement (pooling) puisse extraire la
caractéristique des tranches pertinentes et réduire l'influence des données d'apprentissage
bruyantes. Ils ont utilisé la descente de gradient stochastique (SGD) comme optimiseur. Pour
affiner le CNN (fine-tuning), les couches après la dernière couche de regroupement (pooling)
sont connues pour être affinées davantage par rapport aux autres couches du réseau de neurones,
car les premières couches contiennent des caractéristiques génériques telles que des bords ou
des blobs pertinents pour de nombreuses tâches de traitement d'image.
À l'étape du test, les tranches d'un patient sont introduites dans le réseau neuronal une par
une et pour chaque tranche le réseau renvoie une sortie. Les auteurs ont calculé la moyenne
des sorties des tranches d'un patient comme sortie finale. Il est à rappeler que l'entraînement sur
des tranches individuelles introduit du bruit dans les données d'entraînement, car certaines
tranches ne contiennent pas de tuberculose. Par conséquent, l'approche de la moyenne des
scores au moment du test peut réduire l'impact des données d'entraînement bruyantes pour une
sortie plus fiable [14].
30
CHAPITRE 02 : CLASSIFICATION DES TYPES DE TUBERCULOSE
31
CHAPITRE 02 : CLASSIFICATION DES TYPES DE TUBERCULOSE
Figure 21 - Résultats obtenus par les participants à la Tâche de tuberculose (Imageclef 2017). [3]
Nous pouvons remarquer que SGEast a obtenu les meilleures performances dans cette tâche en
termes de coefficient kappa de Cohen. Le meilleur résultat en termes de précision moyenne est
obtenue par l'équipe "Image Processing" classée cinquième dans le classement de la figure 13.
La figure 22 contient les matrices de confusion de la meilleure série de chaque équipe. Ces
matrices montrent le pourcentage de patients de chaque classe classés dans chaque type de TB.
Lors de l'analyse de ces matrices, nous pouvons constater que la meilleure performance par type
de TB se trouve dans les 4 premières équipes (SGEast, MEDGIFT UPB, traitement d'image et
UIIP). Ces méthodes semblent être complémentaires. Les organisateurs de la tâche ont effectué
une fusion tardive avec la meilleure soumission de ces 4 meilleures équipes. L'évaluation de
cette approche a atteint une valeur Kappa de 0,3263 Cohen. Ce résultat est une amélioration
importante par rapport à la meilleure soumission des participants et montre à quel point les
approches de ces quatre participants sont complémentaires. Cependant, en analysant
profondément les résultats, il a été constaté que méthode de fusion a principalement amélioré
la performance pour le premier type T1. Dans toutes les autres classes, la performance est
inférieure à la meilleure performance obtenue dans la classe correspondante par au moins l'une
32
CHAPITRE 02 : CLASSIFICATION DES TYPES DE TUBERCULOSE
des méthodes fusionnées. Dans tous les cas, la précision moyenne obtenue par la fusion est
supérieure (0,4867) à celles de toutes les soumissions avec une marge importante.
Figure 22 - Matrices de confusion de la meilleure exécution par groupe et la fusion des meilleurs 4
groupes. [3]
8. Discussion
Les résultats obtenus pour la classification de Tuberculose dans la tâche imageclef 2017
sont clairement basés sur l'adéquation des techniques d'imagerie. Les meilleures soumissions
semblent exploiter des aspects très différents et chacun d'entre elles s'avère la meilleure pour
une classe spécifique. Cependant, il y a encore place à l'amélioration, notamment dans les types
Focal (T2), Tuberculome (T3), Miliary (T4) et Fibro-caverneux (T5). Pour cette tâche
particulière, les méthodes d'apprentissage en profondeur ont mieux fonctionné que les autres
approches. Néanmoins, la fusion effectuée par les organisateurs combinant la prédiction de trois
techniques d'apprentissage en profondeur et celle basée sur des caractéristiques de texture 3D a
dépassé la meilleure soumission des participants. Ceci suggère que différents types de TB
peuvent être décrits par des approches différentes et qu'une telle approche peut conduire à des
résultats optimaux [3].
33
CHAPITRE 02 : CLASSIFICATION DES TYPES DE TUBERCULOSE
9. Conclusion partielle
Nous avons présenté dans ce chapitre la tâche Tuberculosis du défi international ImageClef
2017 dans laquelle plusieurs travaux de classification des types de tuberculose ont été
considérés. Les résultats obtenus ont été intéressants, mais il est toujours possible d'améliorer
les performances en adoptant différentes stratégies permettant de contourner les inconvénients
des approches proposées. Nous présenterons dans le chapitre suivant nos contributions dans le
cadre de ce travail.
34
Chapitre 03 :
Contribution
CHAPITRE 03 : CONTRIBUTION
1. Introduction partielle
Dans le présent chapitre, nous allons présenter notre contribution en décrivant l’approche
utilisée.
L’ensemble de ces expérimentations réalisées ont fait l’objet d’une participation aux deux
taches de tuberculose du défi international ImageCLEF 2018: Classification des types de
tuberculose (TBT) et score de gravité de la tuberculose (SVR). En outre, le travail a abouti à
une soumission d'un article de conférence (Annexe 1).
Nous décrivons dans ce chapitre ces deux tâches et nous détaillerons les expérimentations
réalisées ainsi qu’une discussion des résultats d’évaluation obtenus.
3. Contribution
Nous avons proposé d'extraire des descripteurs sémantiques à partir d’images par
tomodensitométrie (images CT). 3D. Nous avons remarqué que les participants de la tâche TBT
(ImageCLEF 2017) utilisaient chaque tranche (Slices en anglais) extraite comme un échantillon
séparé. Ainsi, des centaines slices sont considérées comme des échantillons d'apprentissage
distincts alors que ces slices représentent le même patient. Cela introduit beaucoup de bruit. De
plus, chaque slice recevra l'étiquette du patient (son type) même ceux dont le contenu ne
présente aucune information permettant d'identifier le type de cas de tuberculose. Cela introduit
plus de bruit. La majorité des participants [17] d'ImageCLEF 2017 ont mis en évidence ce
problème et son impact sur les résultats.
Pour surmonter ce problème, nous pensons que la solution la plus simple consiste à trouver un
seul descripteur pour chaque patient. Ceci constitue l'idée clé de notre contribution.
Notre système proposé passe par trois étapes principales:
- Prétraitement des données d'entrée
- Extraction des descripteurs sémantique
- Apprendre un modèle de classification
35
CHAPITRE 03 : CONTRIBUTION
Nous rappelons que dans les deux tâches, les images CT 3D sont fournies au format Nifti
compressé. Premièrement, nous décompressons les fichiers et extrayons les tranches. À la fin,
nous avons trois ensembles de slices correspondant aux trois dimensions de l'image 3D. Pour
chaque dimension et pour chaque image Nifti, nous obtenons un nombre de slices allant de 40
à 400 images JPEG.
Le contenu visuel des images extraites des différentes dimensions n'est pas similaire. En
effet, les images de chaque dimension sont prises sous un angle de vue différent. Nous avons
remarqué, à partir de nos expériences, que les slices de la dimension «Y» donnent de meilleurs
résultats que les deux autres (X et Z). Cependant, les étapes suivantes peuvent être appliquées
aux slices de l'une des trois dimensions.
D'un autre côté, certain slices ne contiennent pas des informations pertinentes qui peuvent
être utiles pour identifier les types de tuberculose. C'est pourquoi il est essentiel de filtrer les
slices en ne conservant que celles qui peuvent être informatives et peuvent contenir des
informations pertinentes. De plus, comme nous voulons extraire un seul descripteur par patient,
il est essentiel de conserver le même nombre de slices pour chaque patient. Nous avons constaté
qu'il y a habituellement un maximum de 60 slices visuellement informatives. Puisque les slices
sont ordonnées, les 60 les plus informatives sont habituellement au centre de la liste. Nous
proposons ensuite de conserver les 60 slices du milieu. Ce n'est pas optimal mais nous avons
opté pour ce choix pour une approche entièrement automatique. Ce choix peut être amélioré en
effectuant un filtrage manuel avec l'intervention d'un expert humain, de préférence avec des
compétences médicales sur la maladie de tuberculose. La figure 23 résume le processus.
36
CHAPITRE 03 : CONTRIBUTION
Après l'extraction et le filtrage des slices, nous proposons d'extraire un seul descripteur
par patient. L'apprentissage par transfert présente dans ce contexte une piste intéressante qui
peut être exploitée. Les résultats de SGEast [17] et même d'autres équipes dans la même tâche
d'ImageCLEF 2017 prouvent l’efficacité de cette approche [3, 17]. En effet, SGEast a opté pour
l'apprentissage par transfert où ils ont exploité la sortie de l'architecture d'apprentissage en
profondeur Resnet-50[19]. Cependant, cette idée présente un problème de taille de descripteur.
En effet, par exemple, SGeast a considéré un descripteur par slice et non par patient. Cependant,
puisque nous voulons avoir un seul descripteur, il est important que l'information extraite de
chaque slice ne soit pas très grande. Par conséquent, nous proposons de décrire chaque slice par
des informations sémantiques. Cette idée est inspirée par le travail présenté dans [31].
Nous choisissons d'exploiter les probabilités prédites par un apprenant profond formé sur
l'ensemble des slices. Si K est le nombre de classes considérées, cette information correspond
typiquement aux K valeurs de probabilité prédites pour les classes K (cinq probabilités des
cinq types pour la tâche TBT, ou les cinq degrés de gravité pour la tâche SVR). On obtient
alors pour chaque slice K des valeurs correspondant au nombre des classes considérées.
De plus, K sous-descripteurs sont générés: D1, D2, D3, D4, ... Dk. Chaque sous-descripteur Di
contient les probabilités prédites pour la classe i pour toutes les tranches du patient. Un
descripteur sémantique final est construit en concaténant les sous-descripteurs K. La figure 24
détaille le processus d'extraction des caractéristiques sémantiques pour un patient.
37
CHAPITRE 03 : CONTRIBUTION
Dans cette étape, nous proposons d'exploiter les descripteurs sémantiques des patients
obtenus à l'étape précédente. Toute approche de classification supervisée peut être appliquée
comme indiqué dans la figure 25.
38
CHAPITRE 03 : CONTRIBUTION
4. Expérimentations et résultats
Nous décrivons dans les sections suivantes nos soumissions (Runs) soumis aux tâches
TBT et SVR.
Nous avons implémenté l'approche du descripteur sémantique décrite dans la section 3. Nous
avons utilisé pour cela les outils suivants:
- Le Framework Caffe pour l'apprentissage en profondeur;
- Weka pour tester plusieurs algorithmes d'apprentissage et de classification;
- med2image pour la conversion des images médicales Nifti au format JPEG.
Nous avons choisi d'utiliser des slices de dimension «Y» car nos expériences ont montré qu'elles
sont plus adaptées que celles des deux autres et ont obtenu de meilleurs résultats.
Pour l'extraction des descripteurs, notre approche consiste à former un modèle profond
pour générer des informations sémantiques. Malheureusement, nous avons eu des problèmes
avec nos machines pour former notre apprenant en profondeur. En raison du manque de temps,
nous n'avons pas pu réaliser le processus d'apprentissage. Comme alternative à cette étape, nous
avons déployé le même modèle que celui proposé par l'équipe SGeast [17] lors de la tâche TBT
ImageCLEF 2017. Le modèle est basé sur un Resnet50 [19] et a obtenu les meilleurs résultats
à la tâche TBT de l'édition 2017. Nous avons donc exploité les sorties de la dernière couche
(nommée prob) du Resnet-50 correspondant aux probabilités des 5 classes considérées.
Apprentissage Test
TB Types #Patients #CTs #Patients #CTs
Type 1 228 376 89 176
Type 2 210 273 80 115
Type 3 100 154 60 86
Type 4 79 106 50 71
Type 5 60 99 38 57
Total 677 1008 317 505
39
CHAPITRE 03 : CONTRIBUTION
40
CHAPITRE 03 : CONTRIBUTION
4.1.3. Résultats
Le tableau 5 montre les résultats obtenus par nos soumissions sur l’ensemble de validation.
Le tableau 6 montre les résultats obtenus par nos soumissions sur l'évaluation réalisée par le
comité ImageCLEF.
Comme indiqué sur les résultats de validation, 3eme soumission obtient les meilleurs résultats
sur l’ensemble de test (et de validation) par rapport aux 1er et 2eme soumissions.
Les figures 27 et 28 décrivent les résultats et le classement de toutes les soumissions sur la tâche
TBT en termes de coefficient kappa et de précision, respectivement.
Figure 27 - Résultats et classement en termes de coefficient Kappa sur l'ensemble de test pour la
tâche TBT
41
CHAPITRE 03 : CONTRIBUTION
Figure 28 - Résultats et classement en termes de précision sur l'ensemble de test pour la tâche TBT.
Nous rappelons que nos descripteurs sémantiques ont été extraits en utilisant un modèle qui
n'était pas très bien formé. En fait, nous avons rencontré des problèmes avec nos machines
pendant la phase d'apprentissage de notre modèle de deep learning. En effet, bien que le modèle
déployé de SGEast ait obtenu les meilleurs résultats à la tâche TBT ImageCLEF 2017, nous
n'avions pas la possibilité d'effectuer exactement le même prétraitement effectué par cette
équipe comme décrit dans [17]. Nous pensons que nos descripteurs sémantiques pourraient
donner de meilleurs résultats s'ils sont extraits d'un modèle plus profond et mieux adapté.
42
CHAPITRE 03 : CONTRIBUTION
Apprentissage Test
sévérité Faible 90 62
sévérité Haute 80 47
Total 170 109
- Problème de classification multi-classes: nous avons considéré les cinq scores comme
des classes séparées. Nous avons ensuite testé plusieurs classificateurs. Nous en avons
sélectionné deux qui ont été les plus efficaces comparés à ceux qui ont été testés:
Random Forest, Bagging d'un ensemble d'apprenants Random Forest.
- Classification hiérarchique: Nous avons organisé nos données afin d'effectuer une
classification hiérarchique. Nous avons considéré la hiérarchie décrite dans la figure 29.
Ensuite, une classification hiérarchique à deux niveaux est effectuée. Au premier
niveau, les échantillons sont classés en classes "High" ou "Low". Au deuxième niveau,
les échantillons sont reclassés dans les classes décroissantes de celui prévu dans le
premier niveau.
43
CHAPITRE 03 : CONTRIBUTION
4.2.3. Résultats
Le tableau 8 montre les résultats obtenus par nos soumissions sur la collecte de validation.
Tableau 8 - Résultat sur l'ensemble de validation pour la tâche SVR en termes de precision moyenne et
RMSE
44
CHAPITRE 03 : CONTRIBUTION
Le tableau 6 montre les résultats obtenus par nos soumissions sur l'évaluation réalisée par le
comité ImageCLEF.
Nous pouvons voir que notre 3eme soumission a obtenu les meilleurs résultats en termes de
RMSE par rapport à nos autres soumissions sur l’ensemble de validation et même sur
l’ensemble de test. Cependant, en termes d'AUC, la 2eme soumission semble être plus efficace.
Les figures 30 et 31 décrivent les résultats et le classement de toutes les soumissions sur la tâche
SVR en termes de valeurs RMSE et AUC, respectivement.
45
CHAPITRE 03 : CONTRIBUTION
Nous pouvons voir que notre meilleur résultat est classé 12e sur 36 soumissions. Cependant, la
différence entre les performances des 12 meilleures soumissions n'est pas très significative.
Nous rappelons que notre meilleur résultat est obtenu par une approche de classification
hiérarchique utilisant un Bagging d'un ensemble d'apprenants Random Forest à chaque niveau
de la hiérarchie. Nous croyons que notre approche pourrait donner de meilleurs résultats en
utilisant un modèle profond bien entrainé dans l'étape d'extraction des caractéristiques
sémantiques
5. Conclusion partielle
Dans ce chapitre, nous avons décrit nous contributions dans le cadre de ce projet. Nous
avons proposé une approche qui consiste à extraire un seul descripteur sémantique pour chaque
« image CT » / Patient pour faire l’apprentissage. Ensuite nous avons détaillé les différentes
expérimentations ainsi que les résultats obtenus sur l’ensemble de validation et sur l’évaluation
réalisée par le comité ImageCLEF Ces résultats montrent que cette approche pourrait donner
des résultats plus intéressants si elle est appliquée de manière optimale. Dans ce qui suit nous
allons présenter les différentes étapes de conception et d’implémentation de notre système.
46
Chapitre 04 :
Conception et Implémentation
CHAPITRE 04 : CONCEPTION ET REALISATION
1. Introduction partielle
Dans ce chapitre nous abordons les aspects de conception de notre système, en montrant
les différents diagrammes de conception, qui décrit l’architecture et le fonctionnement de notre
système de classification de types de tuberculose. Nous entamons ensuite la présentation de
l’environnement de travail, en détaillants les différents outils utilisés. Nous allons présenter
aussi, les différentes interfaces principales du système.
2. Conception
Nous avons modélisé les besoins de notre système de classification de types de
tuberculose, en se basant sur le langage de modélisation UML «Unified Modeling Language».
Nous avons choisi pour cette modélisation deux diagrammes principaux, le diagramme de cas
d’utilisation et le diagramme d’activité, qui représentent les besoins fonctionnels ainsi que
l’architecture du système.
Nous avons utilisé comme outils de modélisation UML, l’outil StarUML qui est un logiciel de
modélisation, qui aide à tracer les différents diagrammes UML. Cet outil donne la possibilité
d’exporter les diagrammes réalisés en images de format «png» ou «jpg» afin de les insérés au
sein du document. La Figure montre l’interface principale de l’outil de modélisation StarUML
version 5.0.
47
CHAPITRE 04 : CONCEPTION ET REALISATION
Nous avons commencé la modélisation par le diagramme de cas d'utilisation, qui permet
de recueillir, d'analyser et d'organiser les besoins, et de recenser les grandes fonctionnalités du
système.
La figure 33 représente le diagramme de cas d'utilisation générale qui fait preuve d'un acteur
appelé utilisateur qui admet les fonctionnalités suivantes :
Dans la section suivante, nous allons détailler le fonctionnement de chaque cas à travers les
diagrammes d'activités.
48
CHAPITRE 04 : CONCEPTION ET REALISATION
Les diagrammes d'activités permettent de mettre l'accent sur les traitements. Ils sont donc
particulièrement adaptés à la modélisation du cheminement de flots de contrôle et de flots de
données. Ils permettent ainsi de représenter graphiquement le comportement d'une méthode ou
le déroulement d'un cas d'utilisation. Les figures suivantes montrent les diagrammes d'activités
de chaque cas (ou bien interface de notre application) :
49
CHAPITRE 04 : CONCEPTION ET REALISATION
50
CHAPITRE 04 : CONCEPTION ET REALISATION
51
CHAPITRE 04 : CONCEPTION ET REALISATION
52
CHAPITRE 04 : CONCEPTION ET REALISATION
3. Implémentation
- Nous avons utilisé l’outil Qt Designer pour réaliser les interfaces graphiques de notre
système.
- Nous avons utilisé le langage de programmation Python, utilisant l’outil Sublime Text
et le framework de l’apprentissage profond Caffe, pour extraire les descripteurs.
- Nous avons utilisé l’outil med2image3 et le langage de script shell (.sh), utilisant l’outil
gedit pour convertir les fichiers Nifti en format jpg.
3
: https://github.com/FNNDSC/med2image
53
CHAPITRE 04 : CONCEPTION ET REALISATION
54
CHAPITRE 04 : CONCEPTION ET REALISATION
A partir de cette interface l’utilisateur peut extraire un descripteur sémantique pour un seul
patient ou bien pour un ensemble de patients
La figure 40 montre l’interface graphique de l’apprentissage :
55
CHAPITRE 04 : CONCEPTION ET REALISATION
L’utilisateur peut utiliser les descripteurs sémantiques pour faire l’apprentissage (figure 40).
Après il peut utiliser le modèle de classification qui a été généré dans la phase Apprentissage
pour faire la prédiction (figure 41).
4. Conclusion partielle
A travers ce chapitre nous avons pu présenter les différentes étapes de conception de
notre système, en montrant les différents diagrammes UML utilisés. Nous avons présenté
l’environnent de travail, et détaillé ensuite les différents langages et outils utilisés pour le
développement de notre système. Nous avons terminé par une présentation des interfaces
graphiques principales de fonctionnement du système. Dans ce qui suit nous allons présenter
une conclusion générale.
56
Conclusion générale
Nous avons présenté dans ce rapport la description d'un système de classification de
types de tuberculose pulmonaire.
Dans un premier temps, nous avons mené une étude bibliographique sur la tuberculose
pour avoir une idée claire sur cette maladie et les différences entre ses cinq types.
Ensuite, nous avons survolé divers concepts en lien avec notre problématique, concernant
l'imagerie médicale et l'apprentissage automatique. Nous avons présenté également les
travaux qui ont été effectuées dans le cadre du défi international ImageCLEF 2018
concernant la classification des types de tuberculose pulmonaire, et qui ont obtenu des
résultats prometteurs.
Nous avons proposé comme contribution une approche qui consiste à extraire un seul
descripteur sémantique pour chaque "image CT" / patient au lieu de considérer toutes les
tranches (slices) comme des échantillons distincts. Nous avons participé pour tester notre
approche au défi international ImageCLEF 2018 dans ses deux sous tâches: TBT et SVR. Nous
avons atteint un Kappa de 0,0629 dans la tache de TBT et notre meilleur résultat dans la tache
SVR a été classé 12ème sur 36 soumissions.
Nous notons que ces résultats ont été obtenus malgré les problèmes rencontrés dans la
phase d’apprentissage de notre apprenant en profondeur qui n'a pu être achevée. Cependant, les
résultats obtenus montrent que cette approche pourrait être beaucoup plus efficace et donner
des résultats plus intéressants si elle est appliquée correctement.
57
Bibliographie
[1] LO, S.-CB, LOU, S.-LA, LIN, Jyh-Shyan, et al. Artificial convolution neural network
techniques and applications for lung nodule detection. IEEE Transactions on Medical
Imaging, 1995, vol. 14, no 4, p. 711-718.
[2] SHEN, Dinggang, WU, Guorong, et SUK, Heung-Il. Deep learning in medical image
analysis. Annual review of biomedical engineering, 2017, vol. 19, p. 221-248.
[3] CID, Yashin Dicente, KALINOVSKY, Alexander, LIAUCHUK, Vitali, et al. Overview of the
ImageCLEF 2017 Tuberculosis Task—Predicting Tuberculosis Type and Drug Resistances.
[11] LECUN, Yann, BOTTOU, Léon, BENGIO, Yoshua, et al. Gradient-based learning
applied to document recognition. Proceedings of the IEEE, 1998, vol. 86, no 11, p. 2278-
2324.
[12] LAWRENCE, Steve, GILES, C. Lee, TSOI, Ah Chung, et al. Face recognition: A
convolutional neural-network approach. IEEE transactions on neural networks, 1997, vol.
8, no 1, p. 98-113.
[13] WEI, Jun, CHAN, Heang‐Ping, ZHOU, Chuan, et al. Computer‐aided detection of breast
masses: Four‐view strategy for screening mammography. Medical physics, 2011, vol. 38,
no 4, p. 1867-1876.
[14] LAROBINA, Michele et MURINO, Loredana. Medical image file formats. Journal of digital
imaging, 2014, vol. 27, no 2, p. 200-206.
[15] RAZZAK, Muhammad Imran, NAZ, Saeeda, et ZAIB, Ahmad. Deep Learning for
Medical Image Processing: Overview, Challenges and the Future. In : Classification in
BioApps. Springer, Cham, 2018. p. 323-350.
58
[16] GIBSON, Eli, LI, Wenqi, SUDRE, Carole, et al. NiftyNet: a deep-learning platform for
medical imaging. arXiv preprint arXiv:1709.03485, 2017.
[17] SUN, Jiamei, CHONG, Penny, TAN, Yi Xiang Marcus, et al. ImageCLEF 2017:
ImageCLEF tuberculosis task-the SGEast submission. In : CLEF2017 Working Notes.
CEUR Workshop Proceedings, Dublin, Ireland, CEUR-WS. org< http://ceur-ws.
org>(September 11-14 2017).
[18] STEFAN, L. D., DICENTE CID, Y., JIMENEZ-DEL-TORO, O., et al. Finding and
classifying tuberculosis types for a targeted treatment: MedGIFT-UPB participation in
ImageCLEFtuberculosis (2017). In : CLEF2017 Working Notes. CEUR Workshop
Proceedings, Dublin, Ireland, CEUR-WS. org< http://ceurws. org>(September 11-14
2017).
[19] WORLD HEALTH ORGANIZATION. World health statistics 2015. World Health Organization,
2015.
[27] H. B. Barlow. Unsupervised Learning. Neural Computation, vol. 1, no. 3, pages 295-
311, 1989.
[30] B. E. Boser, I. Guyon, and V. Vapnik. A Training Algorithm for Optimal Margin
Classifiers. Proc. of the 5thACM Conf. on Computational Learning Theory
(COLT'92), pp. 144-152, Pittsburgh, PA, USA, July, 1992.
[31] Hamadi, A., Mulhem, P., Quénot, G.: Extended conceptual feedback for semantic
multimedia indexing. Multimedia Tools Appl.74(4), 1225–1248 (2015)
[32] Dicente Cid, Y., Liauchuk, V., Kovalev, V., , M ̈uller, H.: Overview of ImageCLEF
tuberculosis 2018 detecting multi-drug resistance, classifying tuberculosis type and
assessing severity score. In: CLEF2018 Working Notes. CEUR Workshop Pro-ceedings,
59
Webographie
[5] http://respiratory.vsebolezni.com/tuberkulez/infiltrativnyj-tuberkulez-legkix-chto-eto-
takoe.html. - Consulté le 19/06/2018
[6] http://medicalformat.com/1194-focal-pulmonary-tuberculosis-causes-symptoms-diagnosis-
and-treatment.html. - Consulté le 19/06/2018
[8] http://www.msdmanuals.com/home/infections/tuberculosis-and-leprosy/miliary-
tuberculosis-tb. - Consulté le 19/06/2018
[9] http://respiratory.vsebolezni.com/tuberkulez/fibrozno-kavernoznyj-tuberkulez-legkix.html.
- Consulté le 19/06/2018
[20] http://www.physiotherapiepourtous.com/symptomes-de-la-tuberculose/.
- Consulté le 19/06/2018
[22] https://www.pyimagesearch.com/2017/03/20/imagenet-vggnet-resnet-inception-xception-
keras/. - Consulté le 19/06/2018
[23] http://www.shortscience.org/paper?bibtexKey=journals/corr/SzegedyLJSRAEVR14.
- Consulté le 19/06/2018
[24] https://medium.com/@siddharthdas_32104/cnns-architectures-lenet-alexnet-vgg-
googlenet-resnet-and-more-666091488df5. - Consulté le 19/06/2018
[26] https://blogs.msdn.microsoft.com/big_data_france/2014/06/05/lapprentissage-automatique-
machine-learning-comment-a-marche - Consulté le 19/06/2018
60
Annexes
Annexe 1 : ImageCLEF 2018: Semantic descriptors for Tuberculosis CT Image
Classification, 2018
[email protected]
[email protected]
1 Introduction
61
2 A. Hamadi et al.
We can summarize the objectives of the Tuberculosis task through the fol-
lowing points:
We present in the following our work that has been made in the context of our
participation to the two sub-tasks of ImageCLEF 2018 Tuberculosis Task: Tu-
Berculosis Types classification (TBT) and Tuberculosis Severity Scoring (SVR).
In this paper, we focus on our participation in the TBT and the SVR sub-tasks
that we describe in the following sections.
In both tasks the data is provided as 3D CT scans. For some patients sev-
eral 3D CT scans are given while for some others only one is provided. All the
CT images are stored in NIFTI file format with .nii.gz extension file (g-zipped
.nii files). For each of the 3-dimensions of the CT image, we find a number of
slices varying from about 50 to 400. Each slice has a size of about 512×512 pixels.
A training collection is provided at the beginning of the task with its ground-
truth (labels of samples). Participants prepare and train their systems on this
dataset. A test collection is provided at a later date. Participants interrogate
their system and return their predictions to the organizers’ committee. An eval-
uation is performed by the latter to compare the performance of the systems.
Semantic descriptors for Tuberculosis patients 3
1. Infiltrative
2. Focal,
3. Tuberculoma
4. Miliary
5. Fibro-cavernous
SVR task aims to predict the degree of severity of TB cases. Given a TB pa-
tient, the main goal is to predict its severity score based on his 3D CT scan.The
degree of severity is modeled according to 5 discrete values : from 1 (“criti-
cal/very bad”) to 5 (“very good”). The score value is simplified so that values 1,
2 and 3 correspond to “high severity” class, and values 4 and 5 correspond to
“low severity”.
The classification problem are evaluated using ROC-curves (AUC) produced
from the probabilities provided by the participants. For the regression problem,
the root mean square error (RMSE) is used.
3 Our contribution
On the other hand, not all slices necessarily contain relevant information
that can be useful to identify types of TB. This why, it is essential to filter slices
by keeping only those that can be informative and may contain relevant
information. Moreover, since we want to extract a single descriptor per patient,
it is essential to keep the same number of slices for each patient. We found that
there is usually a maximum of 60 slices visually informative. Since the slices are
ordered, the 60 most informative are usually at the center of the list. We propose
then to keep the 60 middle slices. This is not optimal but we opted for this choice
for a fully automatic approach. This choice can be improved by performing a
manual filtering with the intervention of a human expert, preferably with medical
skills on TB disease. Figure 1 summarizes the process.
After slices extraction and filtering, we propose to extract a single descriptor per
patient. The transfer learning presents in this context an interesting track that
can be exploited. The results of SGEast [10] and even other teams in the same
task of ImageCLEF 2017 prove its efficiency of this approach [4, 10]. Indeed,
Semantic descriptors for Tuberculosis patients 5
SGEast opted for the transfer learning where they exploited the output of a
Resnet-50 [8] deep learner layer. However, this idea presents a problem of the
resulting descriptor size. Indeed, for example, SGeast considered a descriptor per
slice and not per patient. However, since we want to have a single descriptor, it
is important that the information extracted from each slice must not be very
large. Therefore, we propose to describe each slice by semantic information. This
idea is inspired by the work presented in [7].
So, we choose to exploit the probabilities predicted by a deep learner trained
on the set of slices. If K is the number of classes considered, this information
typically corresponds to the K predicted probability values for the K classes (five
probabilities of the five types for the TBT task, or the five severity degrees for
the SVR task). We obtain then for each slice K values corresponding to the
number of the considered classes.
Semantic descriptor 1
.
Semantic descriptor 2
Semantic Features extraction
.
.
Semantic descriptor n
.
Predicting a class / K-classes
Train Test
TB types #Patients #CTs #Patients #CTs
Type 1 228 376 89 176
Type 2 210 273 80 115
Type 3 100 154 60 86
Type 4 79 106 50 71
Type 5 60 99 38 57
Total 677 1008 317 505
Results: Table 2 shows the results obtained by our runs on validation collection.
Table 3 shows the results obtained by our runs on the evaluation performed
by the ImageCLEFcommittee.
Semantic descriptors for Tuberculosis patients 9
As shown on validation results, Run 4 has been our best submission and got
also the best results on test collection compared to run 1 and run 2.
Figures 5 and 6 describes the results and ranking of all submissions on TBT
task in terms of kappa coefficient and accuracy, respectively.
TBT_Task
0,26
0,24
0,1
KAPPA
0,08
SVMirene.txt
TBTLast.csv
TBT-Run-01-sk-LDA-Update-317.txt
0,06
TBT-Run-04-Mohan-VoteRFLMT-7F.txt
TBT_combined.txt
TBT-Run-02-Mohan-RF-F20I1500S20-317.txt
TBT-Run-01-sk-LDA-Update-317-New.txt
TBTLIST.txt
TBT_w_combined.txt
TBT_m2p01_small.txt
TBT_m2.txt
TBT_m1.txt
T2SVMFinal.txt
T23nnFinal.txt
TBT_Riesz_AllCols_euclidean_TST.csv
3nnconProbabilidad2.txt
TBT_modelsimple_lmbdap1_norm.txt
TBT_m4_weighted.txt
TBT_m3_weighted.txt
TBTTask_2_128.csv
Task2Submission64a.csv
TBT_Riesz_std_euclidean_TST.csv
TBT_HOG_AllCols_euclidean_TST.csv
TBT_AllFeats_AllCols_correlation_TST.csv
TBT_mostaganemFSEI_run1.txt
TBT_AllFeats_std_euclidean_TST.csv
TBT_AllFeats_AllCols_correlation_TST.csv
TBT_HOG_std_correlation_TST.csv
TBT_HOG_std_correlation_TST.csv
TBT_AllFeats_std_correlation_TST.csv
TBT_AllFeats_mean_euclidean_TST.csv
TBT-Run-03-Mohan-RF-7FF20I1500S20-Age.txt
TBT_mostaganemFSEI_run3.txt
TBT_mostaganemFSEI_run4.txt
TBT_MostaganemFSEI_run2.txt
TBT_MostaganemFSEI_run6.txt
TBT_run_TBdescs2_zparts3_thrprob50_rf150.csv
TBT-Run-06-Mix-RF-5FF20I2000S20.txt
TBT-Run-05-Mohan-RF-F20I2000S20.txt
0,04
RUN
Fig. 5. Results and ranking in terms of Kappa coefficient on test data for TBT Task.
Although the results achieved by our submissions are not very efficient com-
pared to those of well ranked runs, we can notice several runs belong to the same
teams that had good results. On the other hand, we recall that our semantic de-
scriptors were extracted using a model that was not very well trained. In fact,
we met problems with our machines during the training of our deep learner.
Indeed, although SGEast’s deployed model got the best results at ImageCLEF
2017 Tuberculosis TBT task, we did not have the ability to perform exactly the
same pre-processing performed by this team as described in [10]. We believe that
our semantic descriptors could give better results if they are extracted from a
more adapted and well-developed deeper model.
10 A. Hamadi et al.
ACCURACY
SVMirene.txt
TBT_HOG_std_correlation_TST.csv TBT-
TBTLIST.txt
TBT_m2.txt
TBT_m1.txt
TBT_AllFeats_AllCols_correlation_TST.csv
TBT_HOG_std_correlation_TST.csv
TBT-Run-02-Mohan-RF-F20I1500S20-317.txt
Run-04-Mohan-VoteRFLMT-7F.txt
TBT-Run-01-sk-LDA-Update-317-New.txt
TBT-Run-01-sk-LDA-Update-317.txt
T2SVMFinal.txt
TBT_m4_weighted.txt
TBT_m3_weighted.txt
Task2Submission64a.csv
TBTTask_2_128.csv
TBTLast.csv
TBT_w_combined.txt
TBT_combined.txt
3nnconProbabilidad2.txt
TBT_mostaganemFSEI_run1.txt
TBT_AllFeats_AllCols_correlation_TST.csv
TBT_modelsimple_lmbdap1_norm.txt
TBT_Riesz_std_euclidean_TST.csv
TBT-Run-03-Mohan-RF-7FF20I1500S20-Age.txt
TBT-Run-05-Mohan-RF-F20I2000S20.txt
TBT-Run-06-Mix-RF-5FF20I2000S20.txt
TBT_m2p01_small.txt
TBT_mostaganemFSEI_run4.txt
TBT_mostaganemFSEI_run3.txt
TBT_AllFeats_mean_euclidean_TST.csv
TBT_HOG_AllCols_euclidean_TST.csv
TBT_AllFeats_std_correlation_TST.csv
T23nnFinal.txt
TBT_Riesz_AllCols_euclidean_TST.csv
TBT_MostaganemFSEI_run2.txt
TBT_MostaganemFSEI_run6.txt
TBT_AllFeats_std_euclidean_TST.csv
TBT_run_TBdescs2_zparts3_thrprob50_rf150.csv
Fig. 6. Results and ranking in terms of accuracy on test data for TBT Task.
Train Test
Low severity 90 62
High severity 80 47
Total 170 109
the samples are classified into “High” or “Low” classes. In the second level,
the samples are reclassified into the descending classes of the one predicted
in the first level.
Results: Table 5 shows the results obtained by our runs on validation collection.
Table 5. Results on validation set for SVR task in terms of Accuracy and Root Mean
Square Error (RMSE).
Table 6 shows the results obtained by our runs on the evaluation performed
by the ImageCLEF committee on test collection.
We can see that our run 3 got best results in terms of RMSE compared to our
other runs on validation collection and even on test data. However, in terms of
AUC, the run 2 seems to be more efficient.
SVR_Task
1,6
0,9
0,8
0,7
SVR-Run-01-sk-LDA.txt
SVR_RanFrst.txt
SVR_mostaganemFSEI_run3.txt
SVR_mostaganemFSEI_run6.txt
SVR_mostaganemFSEI_run4.txt
SVR_mostaganemFSEI_run1.txt
SVR_mostaganemFSEI_run2.txt
SVR_LinReg_part.txt
SVR_RanFRST_depth_2_new.txt
SVR_DTree_Features_Best_Bin.txt
SVR_DTree_Features_Best.txt
SVR9.csv
SVR_RanFRST_depth_2_new_new.txt
SVR_DTree_Features_Best_All.txt
SVR_RanFRST_depth_2_Ludmila_new_new.txt
SVR-Gao-April27.txt
SVR-Run-06-Mohan-VoteMLPSL-5F.txt
SVR-Run-02-Mohan-RF.txt
SVR-Run-07-Mohan-MLP-6FTT100.txt
SVR-Gao-May4.txt
SVR-Run-05-Mohan-RF-3FI300S20.txt
SVR-Run-03-Mohan-MLP.txt
SVR-Run-04-Mohan-RF-F5-I300-S200.txt
SVRSubmission.txt
SVR_mostaganemFSEI.txt
SVR_HOG_std_euclidean_TST.csv
SVR_HOG_AllCols_euclidean_TST.csv
SVR_Riesz_AllCols_correlation_TST.csv
SVR_Riesz_std_correlation_TST.csv
SVR_AllFeats_AllCols_euclidean_TST.csv
SVR_HOG_AllCols_correlation_TST.csv
SVR_HOG_mean_euclidean_TST.csv
SVR_AllFeats_AllCols_correlation_TST.csv
SVR_AllFeats_mean_euclidean_TST.csv
SVR_HOG_mean_correlation_TST.csv
SVR_run_TBdescs2_zparts3_thrprob50_rf100.csv
RUN
Fig. 8. Results and ranking in terms of Root Mean Square Error on test collection.
Figures 8 and 9 describes the results and ranking of all submissions on SVR
task in terms of RMSE and AUC values, respectively.
We can see that our best run is ranked 12th out of 36 submissions. However,
the difference between the performances of the 12 best runs is not very significant.
We recall that our best result is achieved by a hierarchical classification approach
using a bagging of random forest learners at each level of the hierarchy. We
believe that our approach could give better results using a well-trained deep
model in the semantic features extraction step.
Semantic descriptors for Tuberculosis patients 13
SVR_Task
0,9
AUC 0,8
0,7
Mean = 0,64
SVR-Run-05-Mohan-RF-3FI300S20.txt
SVR-Run-04-Mohan-RF-F5-I300-S200.txt
SVR-Gao-April27.txt
SVR-Run-07-Mohan-MLP-6FTT100.txt
SVR-Run-02-Mohan-RF.txt
SVR-Run-03-Mohan-MLP.txt
SVR-Gao-May4.txt
SVR_Riesz_AllCols_correlation_TST.csv
SVR_HOG_AllCols_euclidean_TST.csv
SVRSubmission.txt
SVR_AllFeats_AllCols_euclidean_TST.csv
SVR_RanFrst.txt
SVR9.csv
SVR_HOG_std_euclidean_TST.csv
SVR_HOG_AllCols_correlation_TST.csv
SVR_Riesz_std_correlation_TST.csv
SVR-Run-01-sk-LDA.txt
SVR_AllFeats_AllCols_correlation_TST.csv
SVR_LinReg_part.txt
SVR_HOG_mean_euclidean_TST.csv
SVR_mostaganemFSEI.txt
SVR_AllFeats_mean_euclidean_TST.csv
SVR_HOG_mean_correlation_TST.csv
SVR_mostaganemFSEI_run2.txt
SVR_mostaganemFSEI_run4.txt
SVR_mostaganemFSEI_run6.txt
SVR_mostaganemFSEI_run3.txt
SVR_mostaganemFSEI_run1.txt
SVR_RanFRST_depth_2_new.txt
SVR_DTree_Features_Best.txt
SVR_DTree_Features_Best_Bin.txt
SVR_DTree_Features_Best_All.txt
SVR_RanFRST_depth_2_new_new.txt
SVR_run_TBdescs2_zparts3_thrprob50_rf100.csv
SVR-Run-06-Mohan-VoteMLPSL-5F.txt
SVR_RanFRST_depth_2_Ludmila_new_new.txt
0,6
0,5
0,4
Fig. 9. Results and ranking in terms of Area Under ROC curve on test collection.
References
1. med2image: https://github.com/fnndsc/med2image. Last check: 30/05/2018.
2. Sgeast model for imageclef 2017 tubeculosis task :
https://github.com/maizesix92/imageclef2017 tb sgeast. Last check: 30/05/2018.
14 A. Hamadi et al.