Brevet FR3129229A1 — publié le 20230519

Un mode de réalisation concerne une méthode de détermination de configurations d’un système distribué d’unités de calcul pour la mise en œuvre d’un algorithme à apprentissage profond, ladite détermination mettant en œuvre une recommandation basée sur un modèle de connaissances, ladite méthode étant mise en œuvre par un dispositif comprenant un processeur qui conduit ledit dispositif à mettre en œuvre la méthode, la méthode comprenant : la détermination d’un algorithme à apprentissage profond destiné à être mis en œuvre dans le système distribué; l’obtention (S901) d’un domaine de connaissances comportant, pour ledit algorithme, au moins une configuration observée et une valeur d’au moins un indicateur de performance pour ladite au moins une configuration observée; la détermination (S902) d’un modèle paramétrique du ou des indicateurs de performance en fonction du domaine de connaissances ; la détermination (S903) d’au moins une configuration différente de ladite au moins une configuration observée et une estimation de la valeur du ou des indicateurs de performance associés à ladite configuration différente, sur base dudit modèle, dans le but de compléter le domaine de connaissances ; la sélection (S904) d’au moins une configuration parmi les configurations du domaine de connaissances complété et répondant à au moins une contrainte relative à l’au moins un indicateur de performance ; la génération d’un signal représentatif de ladite au moins une configuration sélectionnée. Des modes de réalisation concernent également un dispositif de mise en œuvre ainsi qu’un programme produit d’ordinateur. Figure pour l'abrégé : 9 PROCEDE, DISPOSITIF ET PRODUIT PROGRAMME D’ORDINATEUR POUR LA CONFIGURATION D’UN SYSTEME DE CALCUL DISTRIBUE Domaine technique de l’invention La présente invention concerne un procédé, un dispositif et un produit programme d’ordinateur pour la configuration d’un système de calcul distribué. L’invention porte plus particulièrement sur la détermination d’une ou plusieurs configurations pour la mise en œuvre d’un algorithme par le système distribué à configurer, la détermination se basant sur un modèle enrichi de connaissances. L’algorithme est par exemple un algorithme à apprentissage profond. Arrière-plan technique Les systèmes de recommandation informatiques peuvent être classés en quatre grandes catégories : les recommandeurs basés sur le filtrage collaboratif ; les recommandeurs basés sur la similarité de contenu ; les recommandeurs basés sur un modèle de connaissances ; les recommandeurs hybrides combinant les caractéristiques de plusieurs recommandeurs des catégories précédentes. Les algorithmes d’apprentissage profond sont très consommateurs de temps, de ressources informatiques et d’énergie. Avoir une recommandation spécifique sur la configuration de système distribué en fonction de ses besoins et/ou contraintes permet de limiter ces consommations. Les algorithmes d’apprentissage profond sont basés sur des optimisations stochastiques. Ces recommandeurs sont pertinents s’ils arrivent à proposer une certaine exhaustivité des choix possibles pour pouvoir au mieux répondre aux contraintes et besoins. Cependant, dû à l’optimisation stochastique préalablement citée, ainsi qu’au long coût pour l’entraînement sur base de données résultant d’expériences et d’observations réelles, l’obtention de l’ensemble des configurations possibles n’est souvent pas réalisable. Le document [1] décrit une planification de radiothérapies utilisant un système de recommandation basé sur la connaissance. Un mode de réalisation concerne une méthode de détermination de configurations d’un système distribué d’unités de calcul pour la mise en œuvre d’un algorithme à apprentissage profond, ladite détermination mettant en œuvre une recommandation basée sur un modèle de connaissances, ladite méthode étant mise en œuvre par un dispositif comprenant un processeur qui conduit ledit dispositif à mettre en œuvre la méthode, la méthode comprenant : la détermination d’un algorithme à apprentissage profond destiné à être mis en œuvre dans le système distribué; l’obtention d’un domaine de connaissances comportant, pour ledit algorithme, au moins une configuration observée et une valeur d’au moins un indicateur de performance pour ladite au moins une configuration observée; la détermination d’un modèle paramétrique du ou des indicateurs de performance en fonction du domaine de connaissances ; la sélection d’au moins une configuration parmi les configurations du domaine de connaissances complété et répondant à au moins une contrainte relative à l’au moins un indicateur de performance ; la génération d’un signal représentatif de ladite au moins une configuration sélectionnée. Ainsi, il n’est nécessaire que d’obtenir des données expérimentales que pour un nombre limité de configurations – le domaine de connaissances peut être complété par mise en œuvre du modèle paramétrique. C’est dans ce domaine de connaissance ainsi complété – de façon exhaustive ou non – que l’on peut ensuite procéder à filtrage des configurations correspondant à une ou plusieurs contraintes, par exemple des contraintes fixées par un utilisateur ou prédéterminées, pour sélectionner parmi les configurations répondant à ces contraintes une ou plusieurs configurations les mieux adaptées. Le signal généré peut être affiché, l’information qu’il contient peut être stockée ou servir de commande à un ou plusieurs serveurs d’unités de calcul. Selon un mode de réalisation particulier, la sélection est effectuée par un algorithme de décision en fonction d’une pondération d’au moins un indicateur de performance, la méthode comportant en outre l’affichage de la ou des configurations sélectionnées par mise en œuvre dudit signal et la réception d’une commande d’identification d’une configuration unique parmi les configurations sélectionnées qui sera à appliquer au système distribué. Selon un mode de réalisation particulier, la sélection est effectuée par un algorithme de décision qui sélectionne une configuration unique. Selon un mode de réalisation particulier, la méthode comprend en outre la réservation d’unités de calcul selon la configuration unique. Selon un mode de réalisation particulier, la méthode comprend en outre l’estimation de la variabilité dudit au moins indicateur de performance pour une configuration différente. Selon un mode de réalisation particulier, ledit au moins un indicateur de performance d’une configuration comprend un ou plusieurs parmi : le temps d’entraînement requis du système pour la configuration considérée ; la précision relative de calcul ; la puissance consommée par le système pour la configuration considérée. Selon un mode de réalisation particulier, les modèles paramétriques appliqués d’une part à l’inverse du temps d’entrainement et d’autre part à la précision de calcul sont des fonctions affines d’un nombre d’unités de calcul du système distribué mis en œuvre dans la configuration considérée, et la détermination du modèle paramétrique comporte la détermination des paramètres de la fonction affine associée à chaque indicateur de performance. Selon un mode de réalisation particulier, la puissance consommée est une fonction affine du carré du nombre d’unités de calcul du système distribué à utiliser dans la configuration envisagée. Selon un mode de réalisation particulier, l’algorithme de décision classe les configurations filtrées en fonction d’un score fonction du ou des indicateurs de performance et de coefficients de pondération de ces derniers. Selon un mode de réalisation particulier, la méthode comprend en outre l’obtention d’au moins une contrainte sur une caractéristique intrinsèque de configuration matérielle, ladite contrainte étant prise en compte dans le cadre du filtrage des configurations. Selon un mode de réalisation particulier, ledit algorithme à apprentissage profond met en œuvre un réseau de neurones convolutif. Selon un mode de réalisation particulier, la méthode ci-dessus est appliquée dans le cadre de la segmentation d’images. Un exemple de réalisation concerne un dispositif comprenant un processeur et une mémoire, ladite mémoire comportant des instructions qui, quand elles sont exécutées par le processeur, conduisent le dispositif à mettre en œuvre les étapes de l’une des méthodes décrites. Produit programme d’ordinateur comprenant des instructions qui, lorsque le programme est exécuté par un dispositif comprenant un processeur, conduit le dispositif à mettre en œuvre les étapes de l’une des méthodes décrites. Brève description des figures D'autres caractéristiques et avantages de l'invention apparaitront au cours de la lecture de la description détaillée qui va suivre pour la compréhension de laquelle on se reportera aux dessins annexés dans lesquels : – la est un diagramme d’un réseau neuronal pouvant être utilisé pour la mise en œuvre d’un algorithme à apprentissage profond selon l’état de l’art; – la est un diagramme bloc d’un système dans lequel un dispositif selon un mode de réalisation est mis en œuvre ; – la est un algorigramme d’un recommandeur basé sur un modèle de connaissances selon un exemple de réalisation ; – la est un graphique représentant l’accélération du temps d’entraînement en fonction du nombre d’unités de calcul ; – la est un exemple d’interface graphique permettant à un utilisateur d’interagir avec le recommandeur selon un exemple de réalisation ; – la est une vue agrandie d’une première partie de l’interface utilisateur de la proposant une fonctionnalité de choix de contraintes et de coefficients de pondération de ces contraintes ; – la est une vue agrandie d’une seconde partie de l’interface utilisateur de la proposant une fonctionnalité de choix de paramètres de visualisation de configurations du recommandeur ; – la est une vue agrandie d’une troisième partie de l’interface utilisateur de la et correspondant à une visualisation de différentes configurations ; – la est un organigramme d’une méthode selon un exemple de réalisation non limitatif. Méthode de détermination de configurations d’un système distribué d’unités de calcul pour la mise en œuvre d’un algorithme à apprentissage profond, ladite détermination mettant en œuvre une recommandation basée sur un modèle de connaissances, ladite méthode étant mise en œuvre par un dispositif comprenant un processeur qui conduit ledit dispositif à mettre en œuvre la méthode, la méthode comprenant : la détermination d’un algorithme à apprentissage profond destiné à être mis en œuvre dans le système distribué; l’obtention (S901) d’un domaine de connaissances comportant, pour ledit algorithme, au moins une configuration observée et une valeur d’au moins un indicateur de performance pour ladite au moins une configuration observée; la détermination (S902) d’un modèle paramétrique du ou des indicateurs de performance en fonction du domaine de connaissances ; la détermination (S903) d’au moins une configuration différente de ladite au moins une configuration observée et une estimation de la valeur du ou des indicateurs de performance associés à ladite configuration différente, sur base dudit modèle, dans le but de compléter le domaine de connaissances ; la sélection (S904) d’au moins une configuration parmi les configurations du domaine de connaissances complété et répondant à au moins une contrainte relative à l’au moins un indicateur de performance ; la génération d’un signal représentatif de ladite au moins une configuration sélectionnée. Méthode selon la revendication 1, dans laquelle la sélection est effectuée par un algorithme de décision en fonction d’une pondération d’au moins un indicateur de performance, la méthode comportant en outre l’affichage de la ou des configurations sélectionnées par mise en œuvre dudit signal et la réception d’une commande d’identification d’une configuration unique parmi les configurations sélectionnées qui sera à appliquer au système distribué. Méthode selon la revendication 1, dans laquelle la sélection est effectuée par un algorithme de décision qui sélectionne une configuration unique. Méthode selon l’une des revendications 2 ou 3, comprenant en outre la réservation d’unités de calcul selon la configuration unique. Méthode selon l’une des revendications précédentes, comportant en outre l’estimation de la variabilité dudit au moins indicateur de performance pour une configuration différente. Méthode selon l’une des revendications précédentes, dans laquelle ledit au moins un indicateur de performance d’une configuration comprend un ou plusieurs parmi : le temps d’entraînement requis du système pour la configuration considérée ; la précision relative de calcul ; la puissance consommée par le système pour la configuration considérée. Méthode selon la revendication 6, dans laquelle les modèles paramétriques appliqués d’une part à l’inverse du temps d’entrainement et d’autre part à la précision de calcul sont des fonctions affines d’un nombre d’unités de calcul du système distribué mis en œuvre dans la configuration considérée, et la détermination du modèle paramétrique comporte la détermination des paramètres de la fonction affine associée à chaque indicateur de performance. Méthode selon la revendication 6, dans laquelle la puissance consommée est une fonction affine du carré du nombre d’unités de calcul du système distribué à utiliser dans la configuration envisagée. Méthode selon l’une des revendications précédentes, dans laquelle l’algorithme de décision classe les configurations filtrées en fonction d’un score fonction du ou des indicateurs de performance et de coefficients de pondération de ces derniers. Méthode selon l’une des revendications précédentes comportant en outre l’obtention d’au moins une contrainte sur une caractéristique intrinsèque de configuration matérielle, ladite contrainte étant prise en compte dans le cadre du filtrage des configurations. Méthode selon d’une des revendications précédentes, dans laquelle algorithme à apprentissage profond met en œuvre un réseau de neurones convolutif. Méthode selon l’une des revendications précédentes, la méthode étant appliquée dans le cadre de la segmentation d’images. Dispositif (200) comprenant un processeur (201) et une mémoire (203), ladite mémoire comportant des instructions qui, quand elles sont exécutées par le processeur, conduisent le dispositif à mettre en œuvre les étapes de la méthode selon l’une des revendications 1 à 12. Produit programme d’ordinateur (213) comprenant des instructions qui, lorsque le programme est exécuté par un dispositif (200) comprenant un processeur (201), conduit le dispositif à mettre en œuvre les étapes de la méthode selon l’une des revendications 1 à 12.