• Aucun résultat trouvé

4.3 Expériences, résultats et analyses

4.3.1 Construction des paires

Pour simuler les paires à partir du jeu de donnée de F-Actine contenant des couples (Ii, qi),

toutes les paires possibles entre les images du jeu de données sont tout d’abord construites pour former des triples (Ii,1, Ii,2, ∆i) où ∆i = qi,1 − qi,2, c’est-à-dire la différence entre les

scores de qualité de l’expert-e. Toutes les paires où |∆| < 0.01 sont ensuite éliminées, celles-ci étant considérées comme comparables. Finalement, ∆i est remplacée par une classe binaire yi ∈ {0, 1} où yi= 0 si ∆i < 0 et yi= 1 si ∆i > 0.

4.3.2 Procédure d’entraînement

RankCNN et CNN classique Pour tous les entraînements du CNN classique, le jeu de données de F-Actine est utilisé avec des translations de pixels stochastiques dans un intervalle de [−2, 2] pixel ainsi que des rotations stochastiques de 0, 90, 180 et 270 degrés. Toutes les images sont mises à l’échelle individuellement à l’aide d’une normalisation min-max. Le modèle est entraîné pour 2000 itérations avec des lots de 32 images. Un petit jeu de données comptant pour 10% du jeu de données d’entraînement est extrait de celui-ci pour faire office de jeu de validation. Le réseau avec les meilleures performances sur ce jeu de validation est considéré comme étant le réseau entraîné, simulant une procédure de early stopping. Pour tous les hyperparamètres suivants, les valeurs sont déterminées manuellement. L’optimiseur Adam (Kingma and Ba, 2014) est choisi pour l’entraînement avec un taux d’apprentissage initial de η = 2 × 10−4 et ses paramètres de mémoire fixés à β = (0.9, 0.999). Le taux d’apprentissage est réduit à 2 × 10−5 après 1000 itérations tout en réinitialisant la mémoire

de l’optimiseur Adam. La fonction d’erreur utilisée est l’erreur moyenne quadratique ou Mean Squared Error (MSE) pour le CNN classique et la fonction de perte de hinge avec une marge de 1 pour le RankCNN. Le réseau est entraîné 10 fois en changeant la graine d’initialisation aléatoire chaque fois. Non seulement ce changement a pour effet de modifier les poids de départ du réseau, mais également de modifier l’ordre des images présentées au réseau.

RankSVM Avant tout, puisque le SVM ne peut être entraîné sur les images directement, un réseau CNN classique pré-entraîné sur les images de microscopie est utilisé sur chaque image pour extraire un vecteur de caractéristiques de 256 dimensions (dernière couche pleinement connectée) pour chaque image (Zhang et al., 2018). Ensuite, le RankSVM est entraîné avec un noyau gaussien avec approximation de Nyström (Williams and Seeger,2001) à 100 compo- santes. L’approximation de Nyström estime la matrice de Gram à partir d’un sous-échantillon de m  n vecteurs. La complexité initiale requise de O(n3) en est réduite à O(m2n), ce qui accélère grandement le SVM. Les hyperparamètres du SVM sont déterminés grâce à une recherche en grille et sont fixés à C = 8.5724 et σ = 0.0004. Pour mesurer les performances de chaque couple d’hyperparamètres, une validation croisée à trois plis est utilisée. Puisque la sélection des vecteurs par approximation de Nyström est aléatoire, 10 essais sont effectués avec des graines aléatoires différentes afin de réduire son influence lors de l’analyse. Finalement, pour être égal entre les algorithmes, le RankSVM est entraîné sur un sous-ensemble de 64000 paires, ce qui correspond au nombre de paires vues par les CNN en 2000 itérations.

4.3.3 Analyse de la performance

Cette sous-section analyse les résultats et évalue la possibilité d’utiliser un humain dans la boucle (Zanzotto, 2019) pour améliorer les performances. Le tableau 4.1 compare la perfor- mance en ordonnancement de chaque algorithme à l’aide de la SROCC (à maximiser, équa- tion 1.8) et la figure 4.3présente une visualisation de chaque fonction apprise. Ces résultats permettent deux constats sur le RankCNN.

1. L’entraînement par paires est possible : Le RankCNN obtient des performances statistiquement comparables en SROCC que l’algorithme CNN classique. De plus, les deux CNN obtiennent des performances légèrement supérieures (environ 2 à 3%) au RankingSVM, qui a l’avantage d’être entraîné sur des caractéristiques extraites à partir d’un réseau pré-entraîné en régression sur le jeu d’entraînement et qui a donc déjà appris à extraire des caractéristiques intéressantes pour la tâche visée.

2. Fonction apprise plus lisse pour la fonction de perte de hinge : La fonction apprise par les algorithmes utilisant la fonction de perte de hinge, soit le RankCNN et le RankSVM, est plus lisse que celle apprise par régression. En effet, on voit en figure 4.3

que l’écart-type des scores prédits est plus bas pour les rangs cibles entre 0 et 100 et contient moins de discontinuités (courbe moyenne en rouge).

Figure 4.3 – Comparaison entre les fonctions d’ordonnancement pour les trois modèles. Pour chaque algorithme, le modèle qui est le plus proche de la moyenne de la SROCC sur les 10 essais est choisi. Guide : Pour chaque image du jeu de test, le score prédit par chaque modèle est illustré par rapport au rang de la qualité cible ((a), (b) et (c), points bleus). Les cibles identiques obtiennent le même rang et le score prédit est mis à l’échelle avec une normali- sation min-max. Une fonction parfaite, suivant exactement celle de l’expert-e, est monotone et croissante. Puisque la fonction est bruitée, une courbe des scores lissée avec une moyenne coulissante de taille 5 ((a), (b) et (c), en rouge) est tracée pour donner un meilleur aperçu. Lorsque plusieurs images ont la même cible, la moyenne de leurs scores prédits est choisie pour tracer ces dernières. L’écart-type des scores prédits pour chaque rang cible est aussi présenté ((d), (e) et (f), en bleu transparent) avec une courbe générée à l’aide d’une moyenne coulis- sante de taille 10 ((d), (e) et (f), en rouge) pour aider à l’interprétation. Observation : Pour les trois modèles, les scores sont dispersés autour de la courbe moyenne quel que soit le rang cible, mais les deux modèles entraînés par paires (RankCNN et RankSVM) ont des scores plus concentrés autour de celle-ci pour les petits rangs (rangs sur l’intervalle de 0 à 100). Il en découle que ces deux algorithmes ont des moyennes plus lisses et se rapprochant davantage d’une fonction monotone et croissante que le CNN classique entraîné en régression.

(a) RankCNN 0 100 200 300 400 500 Rang de la cible 0.0 0.2 0.4 0.6 0.8 1.0 Score prédit (b) CNN 0 100 200 300 400 500 Rang de la cible 0.0 0.2 0.4 0.6 0.8 1.0 Score prédit (c) RankSVM 0 100 200 300 400 500 Rang de la cible 0.0 0.2 0.4 0.6 0.8 1.0 Score prédit (d) RankCNN 0 100 200 300 400 500 Rang de la cible 0.0 0.1 0.2 0.3 0.4

Écart-type des scores prédits

(e) CNN 0 100 200 300 400 500 Rang de la cible 0.0 0.1 0.2 0.3 0.4

Écart-type des scores prédits

(f) RankSVM 0 100 200 300 400 500 Rang de la cible 0.0 0.1 0.2 0.3 0.4

Table 4.1 – Comparaison entre les performances du RankCNN, du CNN classique et du RankSVM. Mesure : La SROCC (à maximiser) est utilisée pour comparer la performance en ordonnancement de chaque algorithme. Guide : Les flèches représentent une relation entre deux combinaisons et pointent vers celle améliorant les mesures de performance. Un test t de Welch (Welch,1947) est effectué pour vérifier l’égalité statistique de chaque relation. Celles qui obtiennent un test d’égalité avec une p-value > 0.001 sont considérées comme statistiquement identiques et sont indiquées par une flèche bidirectionnelle.

RankCNN CNN classique RankSVM

SROCC 0.826 ± 0.006 ↔ 0.832 ± 0.006 ← 0.802 ± 0.008

Proportionnalité des distances prédites par rapport aux distances cibles Il est plus difficile de choisir la meilleure image entre une paire avec des scores de qualité très proches (|∆| = |q1 − q2| < τ où τ est un seuil arbitraire). Il est alors intéressant de mettre les distances entre les scores prédits par le RankCNN | ˆ∆| = |s1− s2| en perspective avec celle

entre les scores de qualité cible. En effet, si les distances entre les scores prédits par le réseau sont proportionnelles à celles des cibles, les distances prédites donnent une indication sur la probabilité que le RankCNN commette une erreur.

La figure4.4 présente des exemples de paires avec la prédiction du RankCNN et les cibles de l’expert associées. On y voit que ce dernier apprend à calibrer la différence entre les scores prédits d’une paire pour quelle soit proportionnelle à la différence entre les scores de qualité donnés par l’expert. Ainsi, la différence entre le score prédit pour chaque image peut être utilisée pour juger de la possibilité que le RankCNN fasse une erreur.

Amélioration possible avec corrections humaines : Puisque la différence entre les images d’une paire peut être utilisée comme un indicateur de confiance du RankCNN en ses prédic- tions, si celle-ci est sous un certain seuil, on peut décider qu’il est trop risqué d’utiliser la prédiction de l’algorithme et recourir à un humain, technique appelé human-in-the-loop (Zan- zotto,2019).

La figure 4.5illustre que la performance en SROCC peut être améliorée en questionnant un-e expert-e lorsque la distance entre les deux images d’une paire est plus basse qu’un certain seuil. Par exemple, en questionnant un humain lorsque la distance est plus petite que la marge, c’est- à-dire τ = 1, les performances augmentent de 15%. Par contre, cette augmentation demande en contrepartie de questionner le-la scientifique en moyenne un peu plus qu’une image sur trois. Un seuil plus bas permet tout de même une amélioration plus modeste en questionnant moins souvent l’expert-e.

4.4

Discussion

Ce chapitre démontre la possibilité d’utiliser l’apprentissage de l’ordonnancement par paires pour l’évaluation automatique de la qualité des images (IQA) de microscopie super-résolution

Figure 4.4 – Distances des scores prédits par le RankCNN mis en perspective avec la distance des scores cibles. Le réseau choisi est celui qui obtient la SROCC la plus proche de la moyenne sur les 10 essais. Guide : (a) Trois paires sont présentées pour trois différences absolues classées de gauche à droite de la plus élevée (plus certaine) à la basse (moins certaine). La différence absolue entre les images, celle prédite comme étant supérieure en qualité ainsi que la qualité donnée par l’expert-e sont rajoutées. (b) Pour chaque paire dans le jeu de test, la différence absolue des scores prédits | ˆ∆| = |s1−s2| en fonction de la différence absolue des cibles

|∆| = |q1− q2| est présentée. Observations : Plus la différence de qualité entre les images est

petite, plus la confiance de l’algorithme est basse. Par exemple, pour la paire avec une différence de 8.75, la différence de qualité est de 0.83, tandis que pour la paire avec une différence de 0.52, elle n’est que de 0.19. Visuellement, pour la première paire (| ˆ∆| = 8.75), la différence de signal sur bruit (SNR) est très importante, alors que pour la troisième (| ˆ∆| = 0.52), le SNR est élevé dans les deux images et la différence tient davantage d’une légère différence dans la résolution. La tendance générale est confirmée en (b).

(a) Exemple de paires.

| ˆ∆| = 8.75 | ˆ∆| = 1.46 | ˆ∆| = 0.52 Prédite meilleure Prédite moins b onne → Moins de certitude →

(b) Croissance de la différence absolue entre les scores.

0.0

0.2

0.4

0.6

0.8

0

2

4

6

|

|

Figure 4.5 – Performance du RankCNN avec correction des paires incertaines. L’ordonnance- ment pour les paires où la différence absolue entre les scores prédits est strictement inférieure au seuil choisi est remplacé par celui donné par les valeurs de qualité de l’expert-e. Cette procédure simule un algorithme human-in-the-loop (Zanzotto, 2019) où l’humain répond à la place du modèle lorsque celui-ci obtient un niveau de confiance trop faible. Guide : La pro- portion de paires incertaines (a) permet d’évaluer le nombre de requêtes devant être faites à l’humain, tandis que la précision sur les paires (b) et la SROCC (c) permettent d’évaluer les performances de l’algorithme avec l’aide de celui-ci. Pour chaque courbe, la moyenne sur les 10 essais (trait plein), un écart-type (transparent) et la valeur de la marge choisie (rouge) sont tracés. Observations : Les trois courbes augmentent très rapidement pour ralentir autour d’un seuil de 3, mais à partir d’un seuil de 1.12, l’augmentation de SROCC n’est déjà plus significative (vérifié avec un test t de Welch (Welch,1947)). Avec un seuil de 1, ce qui corres- pond à la marge choisie pour entraîner le réseau, l’augmentation de la SROCC est significative et d’environ 15%, mais il faut questionner l’humain en moyenne à chaque 3 images.

(a) Proportion de paires incertaines 0.0 2.5 5.0 7.5 10.0 Différence absolue 0 20 40 60 80 100 Proportion (%)

(b) Précision sur les paires

0.0 2.5 5.0 7.5 10.0 Différence absolue 85 90 95 100 Précision (%) (c) SROCC 0.0 2.5 5.0 7.5 10.0 Différence absolue 85 90 95 100 SROCC (%) Marge

STED. En effet, les performances en ordonnancement, calculées avec la SROCC (équation1.8), sont comparables au réseau CNN classique entraîné au chapitre 2. De plus, lorsqu’il entraîné avec la fonction de perte de hinge en ordonnancement à la place de la MSE en régression, la fonction de score apprise par le réseau est plus lisse sur le jeu de test, et donc plus stable. Pour augmenter les performances de l’algorithme, le chapitre propose une technique de human- in-the-loop demandant au scientifique de prédire laquelle des deux images d’une paire est de meilleure qualité lorsque la différence entre les scores prédits | ˆ∆| est trop faible. Les résultats montrent qu’en utilisant la marge comme valeur de seuil τ = 1, la SROCC augmente de 15%, mais, pour ce faire, il faut requérir au scientifique en moyenne un peu plus qu’une image sur trois.

Les analyses effectuées dans ce chapitre se veulent une première exploration de l’apprentissage de l’ordonnancement pour l’évaluation automatique de la qualité des images. Plusieurs direc- tions pourraient être explorées pour comprendre davantage les différences avec l’apprentissage en régression ou pour améliorer davantage les prédictions :

1. Comparaison sur plus de jeux de données : Les expériences effectuées dans ce chapitre utilisent un seul jeu de données de microscopie super-résolution STED, c’est- à-dire le jeu de F-Actine. Il serait intéressant de voir quelles sont les performances du RankCNN sur les autres jeu de données et si l’apprentissage en ordonnancement permet d’obtenir un transfert de connaissance plus efficace qu’avec le CNN classique.

2. Utiliser l’apprentissage actif (Active Learning ) : Les différences prédites entre les images pourraient être utilisées dans un processus d’apprentissage actif pour sélectionner des sous-ensembles d’un jeu de donnée non étiqueté où le réseau n’est pas confiant. 3. Autres fonctions de perte : À la place d’utiliser la fonction de perte de hinge, d’autres

fonctions d’erreurs pourraient être utilisées dont l’entropie croisée binaire, ou Binary Cross-Entropy (BCE). Celle-ci aurait par exemple l’avantage de donner une interpréta- tion probabiliste aux distances prédites entre les images | ˆ∆|.

Conclusion

L’objectif de ce mémoire est d’offrir un aperçu du potentiel des réseaux de neurones pour l’apprentissage de préférence dans le cadre d’une application en sciences de la vie. Plus préci- sément, le mémoire rapporte et complète les contributions apportées par l’auteur dans le sys- tème d’optimisation entièrement automatique développé dans Durand et al. (2018). Celui-ci, schématisé dans l’introduction, vise à produire des images de qualité tout en limitant le photo- blanchiment ainsi que le temps d’exposition pour acquérir une image. Les travaux développés dans ce mémoire sont justifiés par le besoin de remplacer les rétroactions d’un-e scientifique dans la boucle d’optimisation par un algorithme automatique pour le rendre complètement autonome. En effet, puisque le score de qualité n’est pas une notion physique clairement définie et mesurable, l’intervention humaine est encore nécessaire pour noter les images sortant du microscope. De plus, puisqu’il faut résoudre un compromis entre plusieurs objectifs, l’expert-e est appelé-e à choisir un ensemble d’objectifs parmi un nuage de possibilités se trouvant sur le front de Pareto (Ehrgott,2012).

Pour ce faire, le chapitre 2 présente deux architectures de réseaux de neurones convolutifs (CNN) pour résoudre le problème d’évaluation automatique des images (IQA) posé par le premier problème. En plus de motiver l’utilisation de CNN pour résoudre le problème du IQA, leur capacité à généraliser à de nouveaux jeux de données formés d’images de microscopie STED est mesurée.

Pour sa part, le chapitre 3 s’attaque au problème de la résolution de compromis à l’aide d’un réseau de neurones entraîné pour l’ordonnancement de paires. le chapitre démontre la supériorité de l’algorithme comparativement à un algorithme plus classique, le RankSVM. De plus, celui-ci analyse la fonction de l’expert et propose de la résumer dans un modèle simple. Finalement, le chapitre 4 utilise la méthode d’entraînement pour l’ordonnancement par paire développée en chapitre 3 pour résoudre le problème de IQA du chapitre 2. Le chapitre ex- plique comment l’entraînement du réseau pour l’ordonnancement par paires peut simplifier l’acquisition de données nécessaire à son entraînement et démontre que les performances sont statistiquement comparables au réseau entraîné pour la régression. Une technique de human- in-the-loop est aussi proposée pour augmenter significativement les performances de l’algo- rithme.

Défis et travaux futurs

Si le mémoire remplit son objectif en démontrant le potentiel des réseaux de neurones pour résoudre le problème de l’apprentissage de préférence dans un contexte concret en sciences de la vie, il permet aussi de détecter deux importants défis souvent caractéristiques des jeux de données réels :

1. Petite taille du jeu de donnée : Tous les jeux de données utilisés dans ce mémoire sont de petites tailles, ce qui représente un défi de taille pour l’entraînement des algo- rithmes d’apprentissage machine. En effet, la petite taille du jeu de donnée augmente les probabilités de sur apprentissage (Friedman et al., 2001), limite les performances atteignables par un réseau de neurones (Halevy et al.,2009) et rend oblige le chercheur à utiliser de petits jeux de validation et de test.

2. Haut niveau de bruit : Le niveau de bruit dans les cibles des jeux de données est très élevé, ce qui non seulement nuit à l’entraînement de l’algorithme d’apprentissage, mais également peut injustement diminuer les performances de l’algorithme sur le jeu de test également bruité.

Pour approcher le problème de la petite taille du jeu de donnée, les directions suivantes sont proposées :

— Modélisation à partir de recherche a priori : Une recherche plus approfondie dans le domaine permettrait d’ajouter davantage des informations a priori dans le modèle. Le réseau pleinement convolutif présenté en section2.6et le modèle simple proposé en3.3.3

sont des manifestations de cette idée. La recherche pourrait être approfondie.

— Modélisation à partir des données : Une direction future serait d’utiliser la technique du variational autoencoder VAE (Kingma and Welling,2013) pour en premier modéliser l’espace des donnée. Les algorithmes pourraient ensuite tirer profit de ce fort a priori pour faire apprendre rapidement une nouvelle tâche sur un jeu de donnée connexe. — Analyse plus de jeux de données en microscopie : Les performances pourraient

devraient être évaluées sur davantage de jeux de données pour vérifier l’étendue du transfert de connaissance. Des techniques de clustering comme T-SNE (Maaten and Hinton,2008) pourraient être utilisée pour analyser le recouvrement entre les différents jeux de données et étudier davantage la capacité à transférer les connaissances en fonction de la distance entre les jeux de données.

Pour le problème de bruit dans les données, les méthodes suivantes devraient être considérées : — Analyse du bruit dans le jeu de données : Une fonction de similarité entre les exemples où une méthode de clustering comme T-SNE (Maaten and Hinton,2008) pour- rait être utilisée afin de calculer le bruit pour les exemples similaires.

— Estimation de la confiance de l’algorithme : Inspiré par les travaux de Kendall and Gal (2017), le problème du bruit présent dans les données pourrait être approché en ajoutant une estimation de l’incertitude dans le réseau. L’incertitude pourrait être utilisée de manière similaire à la procédure de human-in-the-loop au chapitre 4 pour aider l’algorithme lorsque celui-ci n’est pas confiant envers sa prédiction. De plus, une procédure d’apprentissage actif, ou active learning (Settles,2009), pourrait être dévelop- pée pour faire étiqueter de nouvelles données où le réseau de neurones est incertain dans ses prédictions et ainsi augmenter ses performances à un coup moindre d’acquisition de données.

Ces directions sont vivement recommandées par l’auteur pour le futur chercheur s’intéressant à l’apprentissage de la préférence pour des applications réelles. Particulièrement lorsque les données se font plus coûteuses et lorsque le niveau de bruit est élevé.

Annexe A

Publications

A.1

Publié

Les travaux présentés sur l’évaluation automatique de la qualité des images à l’aide du CNN classique (chapitre 2, section 2.3) font suite à la publication :

— Louis-Émile Robitaille, Audrey Durand, Marc-André Gardner, Christian Gagné, Paul De Koninck, and Flavie Lavoie-Cardinal. Learning to become an expert: deep networks applied to super-resolution microscopy. In Thirty-Second AAAI Conference on Artificial Intelligence, 2018

A.2

Contributions

Les travaux présentés sur l’évaluation automatique de la qualité des images à l’aide du CNN pleinement convolutif (chapitre2, en section2.6) ainsi que ceux présentés sur l’apprentissage

Documents relatifs