• Aucun résultat trouvé

6.5 Caractérisation des voxels

6.5.2 Apprentissage de dictionnaires

L’idée est d’utiliser un dictionnaire dont les éléments de base (appelés atomes dans la terminologie de l’apprentissage de dictionnaires) sont estimés à partir des caractéristiques descriptives et fonctionnelles décrites précédemment.

Comme expliqué précédemment, VCA fait l’hypothèse de la présence de pixels "purs" dans l’ensemble d’apprentissage. Cette hypothèse est très certainement fausse de par les non-linéarités introduites lors de l’acquisition des images IRM ainsi que lors du calcul des caractéristiques descriptives et fonctionnelles. Néanmoins, les méthodes linéaires basées sur l’apprentissage de dictionnaires parcimonieux sont de prometteuses alternatives aux

6.5. CARACTÉRISATION DES VOXELS

méthodes linéaires basées sur l’hypothèse de la présence de pixels pures. Bien qu’apparte-nant à cet ensemble de méthodes dites linéaires, celles-ci sont plus robustes et permettent l’estimation des éléments du dictionnaire sans présence de pixels purs dans les données [8]. En effet, elles peuvent aussi encoder des variations non-linéaires car les éléments de base du dictionnaire sont directement appris de la de départ et plusieurs éléments de base peuvent représenter un unique et même tissu.

Suivant le modèle général de l’équation6.2, les méthodes d’apprentissage de dictionnaires parcimonieux (DL) sont basées sur l’optimisation d’une fonction de coût dont le but est de trouver une représentation d’un dictionnaire D représentant au mieux les données tout en encourageant une représentation parcimonieuse. La forme générale du problème d’optimisation est décrit par :

+ + min D∈C,αi∈Rk 1 n n X i=1 kxi− Dαik2 2+ λkαik1 (6.2)

où n est le nombre de voxels de l’ensemble de données d’apprentissage, λ un paramètre de régularisation de la parcimonie et C est un ensemble convexe dans lequel se trouvent les éléments dk du dictionnaire.

Notion de parcimonie. D’une manière générale, la parcimonie en traitement du si-gnal a pour but de décrire un vecteur de manière "économique", i.e. le représenter à l’aide de quelques coefficients non-nuls, les autres étant supposés nuls ou de faible valeur. Les applications sont nombreuses, notamment en compression de données, où des vecteurs parcimonieux occupent donc beaucoup moins d’espace en mémoire puisqu’ils ne sont re-présentés que par quelques coefficients non-nuls. En optimisation, la parcimonie permet un gain de temps dans les calculs ainsi que d’une meilleure approche des solutions. Intuitive-ment, la norme l0, consistant à compter le nombre de coefficients non nuls, est la mesure de parcimonie la plus adéquate mais aussi une des plus contraignantes lors de la minimisation d’une fonction. Afin de relâcher ces contraintes, on cherche plutôt à mesurer la vitesse de décroissance à l’aide de la norme l1 ou d’une quasi-norme lqoù ||x||q=

PN

i=1|xi|q1/qavec 0 < q < 1. Dans l’équation 6.2, la norme l1 est utilisée comme mesure de parcimonie et introduite par le terme λkαik1. Cette norme l1 est la plus utilisée dans le domaine de l’op-timisation convexe et a prouvé son efficacité à approcher la solution la plus parcimonieuse

l0 sans ses contraintes.

Algorithme d’apprentissage de dictionnaires. Dans le but de résoudre le problème 6.2, nous avons choisi d’utiliser une méthode d’apprentissage de dictionnaires dite "on-line" proposée par Mairal et al. [55] et décrite par l’algorithme 2. Il s’agit d’une méthode dite "online" car elle traite, à chaque itération de l’algorithme, un échantillon xt, de taille fixée. Cette manière de procéder est particulièrement intéressante en termes de temps de calculs et en présence d’une base d’apprentissage volumineuse. L’approche employée ici

CHAPITRE 6. CHOIX MÉTHODOLOGIQUES POUR LA RÉALISATION DU CADE

estime alternativement α et D. A chaque itération t, un échantillon xt de taille fixe est tirée aléatoirement et l’algorithme estime dans un premier temps αt, les coefficients de dé-composition de l’échantillon xt, avec le dictionnaire Dt−1 acquis à l’itération précédente. Le dictionnaire Dt est ensuite mis à jour à l’aide des coefficients αt et du dictionnaire

Dt−1. On notera également les matrices At et Bt, dont le rôle est de conserver l’infor-mation contenue dans les coefficients αt du cycle précédent. Cette information est mise à profit dans le calcul de la mise à jour du dictionnaire Dt. L’algorithme 2 présente le principe de la méthode pour un unique échantillon (voxel) xt tiré à chaque itération t.

Input : xt∈ Rf ∼ p(x) ; λ ∈ R ; D0 ∈ Rf ×k ; T

A00 , B0←0

for t:= 1 to T do Draw xtfrom p(x) ; Calcul des coefficients :

αt= argmin α∈Rk 1 2kxt− Dt−1αk22+ λkαk1; At← At−1+ αtα>t ; Bt← Bt−1+ xtα>t ; Calcul de Dt: Dt= argmin D∈C 1 t Pt i=112kxt− Dt−1αk22+ λkαk1; Dt= argmin D∈C 1 t(1 2T r(D>DAt) − T r(D>Bt)) ; end return DT

Algorithme 2 :"Online dictionary learning for sparse coding" par Mairal et al. [55] ; D0

est le dictionnaire initial, xt est l’échantillon tiré aléatoirement suivant la loi p(x) dans la base d’apprentissage, T est le nombre d’itérations, λ le paramètre de régularisation de la parcimonie.

Extension mini-batch. Le principal avantage de cette méthode, dont la convergence est prouvée, est son adaptabilité à de grands volumes. Afin d’accélérer le processus de conver-gence, cette méthode permet de choisir aléatoirement à chaque itération t, un échantillon

xtde plusieurs voxels. Nous avons réglé ce paramètre, appelé mini-batch extension, à 512 voxels et le nombre d’itérations à T = 100. En effet, Mairal et al [54] ont montré que le gain en performance est négligeable lorsque l’on augmente considérablement ces 2 paramètres, au détriment du temps de calcul.

Application à notre base d’apprentissage et à la classification. La méthode dé-crite précédemment permet d’estimer un dictionnaire D sur un ensemble d’échantillons d’apprentissage. Ensuite, pour la phase de classification, nous ré-estimons, à partir de D, les coefficients α de chacun des voxels de notre base d’apprentissage. Dans le cadre de nos travaux, nous avons choisi d’estimer deux types de vecteurs de coefficients, αDL et αssDL,

6.6. CLASSIFICATION

issus de deux dictionnaires différents. le premier type de vecteur est issu d’un dictionnaire global D estimé par tirage aléatoire sur les voxels de la base d’apprentissage. Le second vec-teur αssDL est calculé sur un dictionnaire D construit par concaténation de dictionnaires élémentaires Di estimés individuellement sur chacune des 4 classes (N),(NS),(Gleason 6) et (Gleason >6). Ainsi ce deuxième vecteur de coefficients a pour but d’introduire la notion de classe dans l’estimation du dictionnaire D, rendant ainsi la démarche semi-supervisée.

6.6 Classification