Evaluation de l’algorithme d’apprentissage
L’objectif de cette partie est de détailler les caractéristiques de notre algorithme d’apprentissage. Dans une première partie nous établissons une comparaison entre deux algorithmes classiques d’apprentissage pour la réalisation de perceptrons multicouches : l’algorithme d’apprentissage en cascade et l’algorithme de construction incrémentale proposé par Dunkin et al. La seconde partie porte sur une étude des performances de ces algorithmes dans le domaine applicatif de la radiothérapie externe. Enfin la dernière partie de cette section détaille l’influence des différents paramètres sur le déroulement et les performances de l’apprentissage incrémental en parallèle.
Etude de l’algorithme d’apprentissage incrémental
Test sur une fonction classique La première fonction utilisée pour comparer notre algorithme d’apprentissage est une fonction classique qui est régulièrement utilisée dans la littérature. Cette fonction, présentée à la figure 5.1, est de la forme suivante : f(x, y) = (exp(cos(4 ∗ (x + y)))/2) (5.1) Pour évaluer la qualité de l’apprentissage, nous avons présenté au réseau de neurones différents ensembles de tailles différentes. L’objectif est de voir l’influence de la taille de l’ensemble des données sur la qualité de l’apprentissage. Nous avons donc réalisé dix apprentissages à l’aide d’ensembles contenant respectivement 20, 30, 40, 50, 60, 70, 80, 90, 100 et 125 points distribués sur l’intervalle [0, 1]2 . Ces points sont pour la majorité d’entre eux uniformément distribués sur le domaine d’apprentissage (en utilisant la racine carrée du nombre de points), le reste étant placé aléatoirement. Pour chaque test, le seuil d’apprentissage est fixé à une précision de 1.10−4 . Fig. 5.1 – Présentation de la fonction classique utilisée pour l’apprentissage Ensuite, sur tous les réseaux entraînés, nous avons calculé la racine carrée de l’erreur (TSE 1 ) sur un ensemble de 25 points choisis aléatoirement sur le domaine de la fonction approchée. L’objectif de ce test est de vérifier la propriété de généralisation du réseau de neurones. Les résultats sont donnés dans la figure 5.2 dans laquelle la TSE est tracée en fonction de la taille de l’ensemble de données pour chaque méthode d’apprentissage. Ces résultats représentent une moyenne de 10 apprentissages successifs pour chaque algorithme. Il est possible de voir que l’algorithme de Dunkin ainsi que celui que nous avons proposé présentent le même comportement. Les deux sont nettement plus performants que l’algorithme d’apprentissage en cascade. Toutefois, le comportement de notre algorithme est légèrement plus oscillant que celui proposé par Dunkin, tout en conservant la 1Total Squared Error même décroissance générale, ce qui est le plus important, puisque notre algorithme doit être utilisé avec des ensembles de données de grandes tailles.
Application à la radiothérapie
Toujours dans le but de présenter les avantages de notre algorithme, cette section présente une comparaison entre l’algorithme de Dunkin et le nôtre en se basant sur un apprentissage lié à notre domaine d’application : la radiothérapie externe. Ce comparatif est construit en se basant sur un ensemble d’apprentissage provenant du résultat d’une irradiation d’un volume se situant dans l’alignement de la tête d’irradiation, schématisé dans la figure 5.3 (gauche). La structure de données utilisée pour représenter le domaine d’apprentissage est une grille de discrétisation à deux dimensions, permettant d’enregistrer la valeur de la dose déposée à chaque position discrète. Un exemple de courbe de distribution de dose est donné à la figure 5.3 (droite) pour une irradiation d’un volume entièrement composé d’eau. De tels résultats peuvent être obtenus soit directement par des mesures physiques, soit à l’aide d’un simulateur. Ceux-ci ont été établis à l’aide du simulateur BeamNrc [7] basé sur les techniques de Monte Carlo. L’ensemble d’apprentissage utilisé pour réaliser notre comparaison est donc composé de deux courbes distinctes de dépôt de doses ; la première étant le résultat d’une irradiation d’un volume d’eau, la seconde étant le résultat de la même irradiation mais cette fois-ci pour un volume composé de titane2 . Cet ensemble d’apprentissage est représenté à la figure 5.4. On peut voir que les principales différences entre ces deux courbes se situent sur l’inclinaison de la pente de la courbe en profondeur et également sur la valeur du point maximum pris par chacune des courbes. Cet ensemble est constitué de 40 000 points au total (20 000 points par courbes) uniformément distribués sur le domaine d’apprentissage.Les résultats de l’algorithme de Dunkin et ceux de notre algorithme sont présentés dans le tableau 5.1. Les résultats de l’algorithme en cascade ne sont pas présentés car celui-ci nécessite un temps avant convergence beaucoup plus important que les deux autres. De plus, au vu de son comportement lors du test précédent, il ne semble pas qu’il puisse obtenir de bons résultats. C’est pourquoi nous ne réalisons une comparaison qu’entre les deux autres algorithmes d’apprentissage. Il peut être remarqué que le temps d’apprentissage ainsi que la taille finale de notre architecture est plus important que pour l’algorithme de Dunkin. L’augmentation du temps d’apprentissage vient en réalité du fait que dans notre algorithme, tous les poids des différents neurones peuvent être modifiés à chaque pas d’apprentissage. Cette méthode implique un nombre plus important de calculs par pas d’apprentissage, et donc, un temps d’apprentissage plus important. Concernant la taille du réseau de neurones, notre algorithme ne semble pas être optimal. Toutefois, il est relativement difficile d’interpréter de tels résultats alors que l’architecture du réseau est directement en lien avec la précision globale du réseau. Ainsi, si l’algorithme de Dunkin atteignait la même précision finale que le nôtre, il est sˆur que son architecture serait un avantage par rapport à notre algorithme, mais dans ce cas, notre défaut d’architecture est comblé par notre performance concernant la précision d’apprentissage. En analysant les résultats, on peut voir que notre algorithme a une plus grande performance sur l’ensemble des critères. Même si l’erreur moyenne est le critère le plus avantageux pour notre algorithme, il est aussi intéressant de remarquer que la valeur de biais, ainsi que les valeurs minimales et maximales des erreurs sont à notre avantage. Ceci est très important car le critère seul de l’erreur moyenne n’est pas suffisant pour garantir une bonne approximation de fonction. C’est pourquoi, nous pouvons dire que notre algorithme produit actuellement un très bon réseau pour l’approximation de fonctions. Ce point est confirmé par l’aspect global des courbes obtenues avec chacun des réseaux résultants. Ces courbes sont présentées dans la figure 5.5 et on peut voir que la courbe issue du réseau “Dunkin” présente des oscillations non désirées à sa surface et que celles-ci ne sont pas présentes sur la courbe issue de notre réseau.
Etude de la version parallélisée
Influence du taux de recouvrement Ce premier test porte sur l’étude de l’impact du recouvrement sur la précision d’apprentissage. Pour valider ce test nous avons utilisé un domaine d’apprentissage ne contenant qu’une seule courbe de dépôt de doses. Tout l’intérêt est de montrer l’influence de ce paramètre sur la gestion des zones limites entre les sous-réseaux de neurones. Nous avons donc utilisé une configuration de décomposition en trois parties pour les dimensions propres au positionnement latéral et en profondeur.. Ce tableau représente l’écart obtenu sur l’étude d’un milieu homogène composé d’eau entre les données de référence et celle calculées à l’aide du réseau de neurones. Comme il est possible de le voir, l’augmentation du taux de recouvrement permet d’améliorer dans un premier temps l’écart du réseau de neurones. Mais, cette amélioration de la gestion des interfaces entre milieux est ensuite atténuée par l’augmentation importante des domaines d’apprentissage. Le fait d’augmenter la taille du domaine d’apprentissage, augmente en proportion équivalente le degré de complexité de ce domaine. Ce premier test permet donc de montrer que la mise en place du recouvrement est indispensable afin de garantir les performances de notre algorithme d’apprentissage. Il est toutefois important de noter que le choix du taux de recouvrement ne peut être fait sans une étude de performance préalable.
Influence de la décomposition du domaine d’apprentissage
Pour réaliser cette série d’apprentissages, nous avons utilisé un ensemble de données obtenu à l’aide du simulateur BeamNrc s’appuyant sur les techniques de Monte Carlo. Le jeu de données représente les résultats d’irradiation d’une cuve d’eau en utilisant trois valeurs différentes (98, 100 et 102 cm) pour la distance entre la source et la surface d’entrée dans le milieu. Cet ensemble est donc composé de cinq paramètres d’entrée (trois pour le positionnement du point, la densité, et la distance de la cuve à la source) et d’un paramètre de sortie, la valeur de l’énergie déposée. Il est composé de 1 500 000 points. Tout l’intérêt de ce test est de montrer que la parallélisation de l’apprentissage ne réduit pas la précision globale, et que, de plus, elle apporte un gain important sur la durée d’apprentissage. Les résultats de ce test sont disponibles dans le tableau 5.3. Ce tableau montre l’évolution des performances de notre algorithme parallèle d’apprentissage en fonction de la décomposition du domaine d’apprentissage. Cette décomposition porte uniquement sur les paramètres d’entrée correspondant au positionnement spatial. La configuration de l’apprentissage utilisée pour réaliser cette série de test privilégie la vitesse d’apprentissage à la précision finale. Cette configuration se traduit en favorisant l’ajout de nouveaux neurones sur la couche cachée en diminuant la période sur laquelle la performance de l’apprentissage est étudiée. Le taux de recouvrement choisi pour ce test correspond à celui présentant les meilleurs résultats au test précédent, c’est à dire 7 %. La première série d’indicateurs étudiés porte sur l’erreur finale obtenue par les différents sous-réseaux. Il est possible de voir que la décomposition de l’ensemble des différentes entrées permet de faciliter la convergence globale du processus d’apprentissage, et que dès que le domaine d’apprentissage est découpé sur l’ensemble de ses dimensions, l’apprentissage converge au niveau global, c’est à dire que l’erreur obtenue correspond à l’erreur souhaitée. Le taux de convergence sur chacun des sous-réseaux s’améliore aussi en conséquence pour atteindre un taux supérieur à 90% lorsque chacune des dimensions est décomposée en 3. Le taux de convergence correspond au nombre de sous-réseaux ayant convergé par rapport au nombre total de sous-réseaux composant le réseau global. La seconde partie des paramètres étudiés porte sur le temps nécessaire à l’apprentissage d’un sous-réseau. Du fait de la grande taille de l’ensemble d’apprentissage, les premiers essais utilisant des ensembles de grande taille ont des taux de convergence faibles. De fait le premier test ayant un temps relativement faible ne correspond pas à l’obtention d’un réseau correctement entraîné. Il est à noter que comme les différents apprentissages sont réalisés en parallèle, le temps maximum nécessaire pour réaliser un entraînement correspond au temps global d’apprentissage. Ces résultats montrent donc bien que la discrétisation permet de réduire de manière importante le temps d’apprentissage.
Influence de la décomposition sur la réactivité du réseau
Le dernier test de cette version parallélisée est de montrer l’influence de la parallélisation sur le temps de réponse du réseau de neurones. Pour montrer cette influence nous avons testé la différence de temps de réponse des réseaux sur le même domaine d’apprentissage. Les points testés sont uniformément répartis sur l’ensemble du domaine applicatif. Pour évaluer cette influence, nous avons construit une série de réseaux de neurones couvrant un important intervalle de parallélisation, de 1 à 5 découpages sur les dimensions −→x et −→z . A l’aide de ces réseaux, nous avons effectué trente évaluations successives dans un ` milieu homogène d’eau de dimension 100×1×200. La seule différence entre ces différentes exécutions porte sur le niveau de décomposition du domaine d’apprentissage, c’est à dire sur le nombre de sous-réseaux composant le méta-réseau complet. Ce nombre de sousréseaux varie de 1, lorsqu’il n’y a aucune décomposition du domaine, à 25, quand les axes, −→x et −→z sont découpés en 5 parties. Comme il est possible de le voir dans le tableau 5.4 présentant le temps d’évaluation d’un milieu homogène en fonction du nombre de sous-réseaux, ce paramètre n’est pas réellement influant sur le temps de réaction du réseau de neurones. Quel que soit le nombre de sous-réseaux, le temps d’évaluation reste constant aux alentours de 2,5 secondes. Ce peu d’influence s’explique par la grande efficacité du mécanisme mis en place pour le choix du réseau, et aussi, par le fait que le temps nécessaire à l’évaluation du choix du sous-réseau et négligeable devant le calcul du résultat du sous-réseau.