Brevet FR3104768A1 — publié le 20210618

La présente invention concerne un système comportant un ordinateur fournissant une interface entre une application frontale configurée pour recevoir une ou plusieurs formulations orales d'utilisateur provenant d’un objet portable intelligent équipé d’un micro et haut-parleur pour émettre et recevoir dans un langage naturel et un système principal avec lequel il est en communication, le système principal comprenant un ou plusieurs processeurs configurés pour fournir un service à cet utilisateur, l’application frontend consistant à: recevoir d’un module de compréhension de langage naturel (NLU) une information en entrée représentative du texte formulé dans le langage naturel via l'application de l’objet intelligent; à structurer l’information reçue tenant compte l’historique des dialogues sous forme de plusieurs triplets ( de préférence trois) deux au moins concernant l’information utilisateur, l’information agent, et un éventuel troisième concernant des informations statistiques qui renseignent par leurs sous vecteurs sur le type d’action entreprise (question, réponse, formule de politesse, …), l’information fournie (dans le cas d’une action réponse par exemple) et l’information demandée (dans le cas d’une action question) et à regrouper ces triplets sous forme d’un vecteur d’observation de dialogue o t ; effectuer au moins un calcul sur chaque paramètre (A rs 0 , A rs 1 , ..A rs i ) de plusieurs vecteurs d’observation ainsi constitués en utilisant chacun d’une pluralité de vecteurs d’observation et au moins une couche de réseau de neurones récurrents de type LSTM par sous vecteurs d’informations , pour générer une représentation latente (notée h(A rs )) de plusieurs observations [o 0 , ...., o t ], à la suite à la suite sous forme d’un vecteur h(t), à appliquer le vecteur de sortie à un algorithme de renforcement FC pour calculer des Q-valeurs pour déduire l’action à réaliser suivant l’état h t ; communication de l'action identifiée au module de génération de langage naturel (NLG) pour fournir à l'application frontale une sortie texte en langage naturel en fonction de l'action identifiée ou exécuter l’action demandée. Finir par stocker les observations de nouveaux dialogues dans une mémoire (Experience Replay) pour pouvoir les réutiliser lors des prochains entrainements. Système et méthode d’exploitation d’un contexte d’événements historiques pour l’amélioration du gestionnaire de dialogue d’un chatbot Domaine technique de l’invention L’invention se rapporte au domaine d’interaction d’un robot avec des humains plus particulièrement par des agents conversationnels considérés comme étant des systèmes contenants chacun un gestionnaire de dialogue qui reçoit un agent d’environnement un résultat qui permet de proposer une action à réaliser. Etat de la technique antÉrieure Différentes approches existent pour le traitement des systèmes de dialogues oraux utilisant pour les plus performants des réseaux de neurones récurrents. Pour ce qui est des approches utilisant des algorithmes de renforcements récurrents dans un système de dialogue textuel, leur apport porte sur la mise en relation des modèles récurrents et de renforcements. Cela permet d’avoir suivant la composition des algorithmes, plus ou moins d’efficacité dans la capacité à retranscrire le contexte de la conversation. Ce qui impacte de manière importante la qualité des actions entreprises par l’agent et de ce fait le dialogue lui-même. Les autres approches de la littérature qui traitent de la même problématique se basent sur un remplissage de slots d’information pour retranscrire chaque information récupérée de chaque observation. Et contraignent leur modèle de renforcement à se charger des tâches d’interprétation des observations ainsi que de la prise de décision (proposition d’action). De manière générale.il est connu par le document US 2019/0278845 (D1) un procédé mis en œuvre par ordinateur pour fournir une interface entre une application frontale configurée pour recevoir une ou plusieurs entrées utilisateur en langage naturel et un système dorsal configuré pour fournir un service à un utilisateur. Le document D1 divulgue les étapes consistant à recevoir un texte saisi en langage naturel via l'application frontale ; effectuer un calcul en utilisant l'entrée de texte reçue et un réseau de neurones, Le document D1 divulgue un réseau de neurones comprenant : Une couche de convolution configurée pour générer des valeurs de caractéristiques en appliquant un ou plusieurs filtres à une matrice d'entrée obtenue à partir de l'entrée de texte reçue, Des filtres ayant une taille de fenêtre correspondant à un ou plusieurs mots contenus dans l'entrée de texte, L’utilisation de réseaux neuronaux LSTM, comprenant une ou plusieurs mémoires à long terme, Le document D1 divulgue des couches configurées pour générer des valeurs de sortie en traitant au moins une partie des valeurs de caractéristique générées par la couche à convolution. Dans D1 le travail se base sur de l’apprentissage uniquement supervisé, à travers les réseaux convolutifs et les réseaux récurrents LSTM. De plus la partie traqueur d’état (state tracker) n’inclut nullement la notion de temporalité contextuelle du dialogue. Le but dans D1 est de transformer l’information en une information exploitable. Par ailleurs, les LSTM dans D1 ont pour rôle de prédire une action à réaliser ce qui n’est nullement le cas de l’invention. La méthode de D1 ne prend pas en considération l’évolution du dialogue, elle est basée sur un contexte qui est précédemment appris à travers un apprentissage supervisé ainsi qu’une décision elle-même statique non évolutive dans le temps puisque supervisée. Un autre document US 10,055,403 (D2) divulgue un traqueur d’état qui utilise diverses règles : La présence de paires emplacement-valeur, qui constituent des états de dialogue, dans des énoncés ou une entrée conversationnelle du dialogue, Les synonymes des valeurs des paires emplacement-valeurs dans les énoncés, Les cohérences entre les énoncés et les énoncés précédents des sessions de dialogue, Les états de dialogue d'énoncés précédents et un état de dialogue d'énoncé actuel, L’approche dans D2 n’est pas évolutive et est basée sur une base de données qui apprend « bêtement » la relation entre les phrases et les états. L’invention s’applique dans le domaine d’interaction d’un robot avec des humains dans un environnement non borné au sens renforcement du terme (nombre d’états de transition de grande dimension), ce qui ne permet pas d’utiliser les méthodes dite ALE (Arcade Learning Environnent) ou de DeepMindLab. Un premier objectif est donc de modéliser de manière spécifique le traqueur d’état. Un autre objectif se situe dans le fait d’enrichir le traqueur d’état de façon à lui permettre de capturer la composante temporelle d’un dialogue de plusieurs interactions. Ainsi la vision du contexte conversationnel de l’agent s’en voit améliorée ce qui a pour but d’en affiner les réponses et de les rendre les plus naturelles et précises possible. La présente invention a donc pour objet de proposer un système contenant un gestionnaire de dialogue permettant de palier au moins une partie des inconvénients de l’art antérieur, ou d’atteindre un ou plusieurs des objectifs ci-dessus en proposant un système permettant d’obtenir un ou plusieurs des résultats suivants : Encodage spécifique des informations d’interaction dues au dialogue entre l’agent et l’humain. Capture de la composante contextuelle de la conversation (temporelle) et sa retranscription en une seule information pertinente. Gestion de la relation d’évolution de l’algorithme de renforcement et du traqueur d’état dans le but d’avoir les résultats les plus cohérents. Aboutir à un agent conversationnel dont les réponses sont proches d’un humain. A cet effet, l’invention concerne un système comportant un ordinateur fournissant une interface entre une application frontale configurée pour recevoir une ou plusieurs formulations orales d'utilisateur provenant d’un objet portable intelligent équipé d’un micro et haut-parleur pour émettre et recevoir dans un langage naturel et un système principal avec lequel il est en communication, le système principal comprenant un ou plusieurs processeurs configurés pour fournir un service de chatbot à cet utilisateur, l’application frontend consistant à: recevoir d’un module de compréhension de langage naturel (NLU) une information en entrée représentative du texte formulé dans le langage naturel via l'application de l’objet intelligent; à structurer l’information reçue sous forme de plusieurs triplets ou vecteurs ( de préférence trois) deux au moins concernant l’information utilisateur, l’information agent, et un éventuel troisième concernant une information temporelle et des informations statistiques qui renseignent par leurs sous vecteurs sur le type d’action entreprise (question, réponse, formule de politesse, …), l’information fournie (dans le cas d’une action réponse par exemple) et l’information demandée (dans le cas d’une action question) et à regrouper ces triplets sous forme d’un vecteur d’observation de dialogue o t ; effectuer au moins un calcul sur chaque paramètre (A rs 0 , A rs 1 , ..A rs i ) de plusieurs vecteurs d’observation ainsi constitués en utilisant chacun d’une pluralité de vecteurs d’observation et au moins une couche de réseau de neurones récurrents de type LSTM par sous vecteurs d’informations , pour générer une représentation latente (notée h(A rs )) de plusieurs observations [o 0 , ...., o t ], à la suite sous forme d’un vecteur h t , à appliquer le vecteur de sortie à un algorithme de renforcement FC pour calculer des Q-valeurs pour déduire l’action à réaliser suivant l’état h t ; communication de l'action identifiée au module de génération de langage naturel (NLG) pour fournir à l'application frontale une sortie texte en langage naturel en fonction de l'action identifiée ou exécuter l’action demandée. Finir par stocker les observations de nouveaux dialogues dans une mémoire (Experience Replay) pour pouvoir les réutiliser lors des prochains entrainements. Selon une particularité, le vecteur h t intègre une composante temporelle permettant de prendre en compte l’historique des interactions entre l’agent de dialogue et l’humain. Il y a donc plus besoin d’une composante temporelle dédiée comme coordonnée du sous vecteur statistique. Selon une particularité l’algorithme de renforcement consiste à appliquer chaque résultat hi sur un module de renforcement FC implémenté sous forme d’ un réseau de neurone et à déterminer une pluralité de valeurs Q(h 1 t), …, Q(h i t), pour déterminer la meilleure Q-valeur qui permettra de déduire par l’application à cette valeur Q d’un algorithme de politique epsilon-greedy (94) pour déterminer l‘action à réaliser suivant l’état h i t ( correspondant à cette meilleure Q-valeur). Selon une particularité, un module ABUS produit cette observation o t , augmentée avec les sous–vecteurs du module connaissance TC-Bot. Cette observation o t est traitée par le traqueur d’état, qui génère un état « belief state » h t , le réseau Q-N mettant en œuvre l’algorithme de renforcement prédit une valeur Q pour chaque action pour le h t , ensuite une politique « epsilon-greedy » est appliquée pour choisir une action a t , Enfin, une nouvelle observation o t+1 et la récompense r t sont produites, et un tuple de transition constitué par (o t , a t , r t , o t+1 )., est mémorisé dans la mémoire Experience Replay. Selon une particularité, le réseau DRQN (Deep Recurrent Q Network) réseau Q récurrent et profond est composé d’un LSTM (81, 82, …) et d’une couche DQN de réseau–Q complétement connecté (Q-network (FC, 70, 71,)) ; et dans lequel l’ apprentissage supervisé (SL) (Supervised Learning) et hybridé avec l’apprentissage renforcé RL (Re-inforcement Learning ) augmente DRQN avec 3 têtes FC (60 à 62) prédisant le comportement de l’utilisateur et permettant d’apprendre les représentations d’historiques– utilisant SL – et qui facilite l’apprentissage de l’agent RL. Selon une particularité, les informations concernant les futures répliques des utilisateurs (étiquettes (u i act , u i is et u i rs )) sont utilisées pour entrainer le réseau récurrent profond, composé du LSTM (82), afin d’améliorer l’encodage du contexte par le biais des réseaux neuronaux FC (60-62) pour générer un état « belief state » suivant h 1 envoyé sur le réseau de neurone (71 ) à l’étape suivante et dans les trois têtes FC (63 à 65) de l’étape suivante pour générer des résultats d’un nouvel état « belief state » h 2 permettant d’être le plus proche des étiquettes de l’étape suivante (u i+1 act , u i+1 is et u i+1 rs ) et ainsi de suite. Selon une variante, l’avancement se fait au fur et mesure de l’arrivée des observations. L’entrainement se fait sur des séquences d’observations. h 1 est le résultat de l’entrainement sur la première observation, h 2 est généré suite à l’arrivée d’une deuxième observation, h 3 une troisième ainsi de suite. Le critère est d’avoir le h final qui soit bien appris. En réalité h 1 , h 2 sont des vues de l’esprit représentant des étapes intermédiaires pour permettre la compréhension. Ce que le système utilise et entraine c’est h t . h t vaut h 1 si le système apprend que sur une seul observation, il vaut h 2 si le système apprend sur des séquences de 2 observations et vaut h n si le système traite n observations. Selon un mode de réalisation, l’ors de la phase d’entrainement du modèle le nombre d’observations dépend de la longueur des dialogues qui seront donnés à l’algorithme récurrent LSTM. Selon un mode de réalisation, les dialogues sont formés des observations stockées dans l’Experience Replay. Selon un mode de réalisation, concernant la phase d’inférence, la longueur « n » va dépendre de l’avancement en direct du dialogue en cours. Selon un autre mode de réalisation, à chaque nouvel échange un nouveau h t est généré et on incrémentera donc la valeur de t. Selon une autre variante, le critère de stabilisation est fait sur h t suivant le mécanisme de supervision FC (63 à 65) dans l’exemple ainsi que les retours sur les valeurs de l’algorithme de Q-learning FC. Selon un mode de réalisation, la qualité des h t est vérifiée par les retours sur la convergence de l’algorithme de renforcement ainsi que par la précision des estimations des valeurs étiquettes cibles. Selon une particularité, les sous vecteurs sont au nombre de 9, trois pour les informations « Utilisateur », trois autres pour les informations « d’agent », trois autres pour des statistiques sur le dialogue. Selon une particularité, les trois sous-vecteurs des informations utilisateurs ou des informations agent concernent l’acte de dialogue, l’information donnée, l’information requêtée. Selon une particularité, les trois sous-vecteurs des statistiques concernent le tour de dialogue, les résultats de base de données relative aux informations d’expertise du chatbot (par exemple dans celle du TC-bot). Selon une particularité, le gestionnaire de dialogue pour chatbot comprend un traquer d’état utilisant des observations o t structurées entre trois sous-vecteurs, un pour l’utilisateur, un pour l’agent et un troisième pour les statistique , chaque sous vecteur comprenant trois composants, chacun d’une pluralité de valeur d’un même composant d’un sous vecteur étant appliqué à un algorithme implémentant un réseau de neurones récurrents de type LSTM (81,82, …) pour générer une représentation latente, puis à appliquer ces résultats à un réseau Q profond composé d’une couche DQN de réseau–Q complétement connecté (Q-network (FC, 70, 71, …)) ; et dans lequel l’ apprentissage supervisé (SL) (Supervised Learning) et hybridé avec l’apprentissage renforcé RL (Re-inforcement Learning ) augmente DRQN (LSTM + DQN) avec 3 têtes FC (60 à 62) prédisant le comportement de l’utilisateur et permettant d’apprendre les représentation d’historiques (utilisant SL ) qui facilitent l’apprentissage de l’agent RL. Selon une particularité, la représentation latente des vecteurs d’observations h t intègre de manière native une composante temporelle cachée. Cette composante temporelle permet de prendre en compte historique et ainsi, procure une meilleure prise en compte du contexte ce qui au final contribue à l’amélioration de la qualité de l’interaction entre l’humain et l’agent. Selon une autre particularité, t correspond à la composante temps du dialogue donc à l’indice dans la séquence d’observation et donc à sa longueur. Un dialogue de longueur t contient une séquence d’observation de o 1 à o t . Dans une autre variante, le Gestionnaire de Dialogue pour chatbot contient les modules ABUS (90), LSTM (91) FC (93), ԑ-greedy (94), TC-Bot (95) coopèrent pour générer un certain nombre de nouvelles observations sans doublon d’abord regroupés dans un espace de stockage (Experience Replay) puis, utilisées pour ré entrainer le traqueur d’état et l’algorithme de renforcement, et ainsi permettre aux apprentissages de s’enrichir au fur et à mesure des dialogues. Dans une autre variante, chaque interaction de l’utilisateur passe dans un module NLU pour être transformé en une structure sémantique qui va remplir la partie utilisateur (11) du vecteur observation (voir ) ; cette observation seule, si première itération du dialogue, ou en compagnie des observations précédentes du dialogue vont être transformées par le traqueur d’état en une représentation latente du contexte nommée ht, cette représentation est passée à l’algorithme de renforcement qui va calculer la meilleure Q valeur pour ce contexte de dialogue ce qui va permettre à ԑ-greedy (94), de proposer une action, cette action se rajoutant à la partie réplique (12a) de l’agent dans le vecteur d’observation (voir [FIG.1] ). Dans un autre mode de réalisation, en fonction du type de demande utilisateur une requête à une base de données de connaissance extérieure (100) peut être nécessaire, dans un tel cas, l’information est récupérée et rajoutée à la valeur manquante de la réponse de l’agent et les statistiques (13b,13c) sur le résultat de la requête sont rajoutées au vecteur observation (voir ), suite à ces étapes, les valeurs du vecteur d’observation remplissent une structure sémantique de la réponse de l’agent qui une fois passée dans un module NLG est transformée en une phrase textuelle à renvoyer à l’utilisateur. Dans une autre variante, le dialogue est arrêté soit par la volonté de l’utilisateur soit parce qu’on a atteint le nombre maximal d’itérations autorisées pour l’agent conversationnel. Selon un autre mode de réalisation, après chaque arrêt de dialogue, chaque dialogue est noté par l’ajout de toutes les valeurs cumulées r t des observations, ce qui permet de distinguer les dialogues qui ont réussi de ceux qui ont échoué, l’affectation de ces valeurs r t de fin de dialogue est soit faite manuellement à postériori des dialogues, annotation manuelle qui va permettre de ré-entrainer l’agent grâce à ces dialogues annotés, soit de façon automatique par une analyse sémantique du dialogue, l’analyse sémantique. Selon une autre variante, l’invention propose une méthode de génération de dialogue entre un agent de dialogue (chatbot) et un utilisateur par un moteur hybride d’intelligence artificielle qui contient au moins trois modules M 1 , M 2 , et M 3 interdépendants réalisant chacune des étapes suivantes : Réception, formatage (31 à 39) d’une séquence d’observations et transfert de chaque composant dudit format par le module M 1 au module M 2 (pour fluidifier leurs utilisations futures par le module M 2 ) ; Utilisation par M 2 de chaque composant de la séquence d’observations formatée en entrées dans un champs de réseau de neurones récurrents (par exemple 41 à 49) et calcul d’une représentation latente h t du vecteur d’observation (51), des étiquettes (U i act , U i is , U i rs ), puis stabilisation par apprentissage supervisé dans M 2 de ladite représentation latente h t ; Echange d’informations entre le module M 2 et M 3 par un entrecroisement des itérations descente de gradient et une propagation du gradient régulière entre le traqueur d’état (91) et l’algorithme de renforcement (93) ; Déduction dans le module M 3 des informations proches notées (Û i rs , Û i is , Û i act ) par chacune des trois première tête FC (60 à 62) puis, calcul des Q-valeurs Q(h t,. ) (70, 71, …) ; Utilisation de la meilleure valeur de Q(h t ) pour générer les actions a t . Selon un autre mode de réalisation, l’invention propose une méthode de génération de dialogue entre un agent conversationnel (chatbot) et un utilisateur caractérisée en ce qu’elle comporte une étape de stockage de l’état du moteur (chaque partie de dialogue ; chaque dialogue en entier …) dans l’ordre chronologique de la dernière observation en date jusqu’à début du dialogue pour fournir tout le contexte antérieur à chaque nouvel état de croyance dans un espace de stockage (92). BrÈve description des figures D’autres caractéristiques, détails et avantages de l’invention ressortiront à la lecture de la description qui suit en référence aux figures. Ces figures, exemples de réalisation illustratifs et non limitatifs sont annexées, énumérées ci-après : illustre sous forme d’un tableau le vecteur représentant les éléments composant une observation d’un dialogue. représente le mécanisme d’entrainement des réseaux de neurones récurrents type LSTM pour l’apprentissage de la représentation latente du contexte du dialogue ht. représente le flux d’apprentissage récurrent de la représentation latente du contexte ht (généré par (81) composé de (41 à 49), (82) de même pour (82) et ainsi de suite …) et son utilisation par des composants (60 à 65) pour retrouver des valeurs et des composants (70,71) pour la prise de décision. Cette [FIG.3] illustre également un éclatement du LSTM (91) sur un exemple où l’on montre une séquence contenant deux étapes avec l’arrivée de deux observations. Elle s’étend à l’infini tant que de nouvelles observations arrivent. Cela permet de voir le traitement séquentiel des observations et l’évolution de la création de la représentation latente ht et sa transmission à chaque étape à un seul algorithme de renforcement FC noté (70) à l’étape 1, (71) à l’étape 2 etc. Autrement dit les têtes (60, 61, 62 et 70) sont les mêmes que (63, 64, 65 et 71) mais avec un temps de décalage lié à l’arrivée d’une nouvelle observation. représente le cycle d’un dialogue dans un environnement de simulation de conversation ainsi que les différentes parties LSTM, FC et Experience Replay nécessaires au fonctionnement de l’agent conversationnel. représente les différents blocs nécessaires au déroulement d’un dialogue entre un utilisateur et un chatbot où : Les têtes (60 – 65) sont des composants du traqueur d’état (91) du dialogue manager ; Chaque réseau récurrent (81) (82) sont une décomposition traqueur d’état du dialogue manager ( 91) ; Le nom « RL Algorithm » (93+94) représente le regroupement de Q-network (93, ) avec le module (94, [FIG.4]) epsilon greedy; Et « External Knowledge » la généralisation de la base de donnée (96). Dans chacune des Fig. 4 et Fig. 5, le « dialogue manager » est composé de (91) ainsi que de (93-94). La différence entre les deux étant que (93-94) (Q-network + epsilon greedy) sont regroupés sous le nom « RL Algorithm » dans la . description dÉTAILLÉe de diffÉrents modes de rÉalisation de l’invention De nombreuses combinaisons peuvent être envisagées sans sortir du cadre de l'invention ; l'homme de métier choisira l'une ou l'autre en fonction des contraintes économiques, ergonomiques, dimensionnelles ou autres qu'il devra respecter. Comme nous l’avons expliqué plus haut l’invention sera décrite en liaison avec les figures dans lesquelles ; représente le mécanisme d’entrainement des réseaux de neurones récurrents type LSTM pour l’apprentissage de la représentation latente du contexte du dialogue ht. On notera que cette [FIG.2] représente l’utilisation d’un réseau récurrent LSTM (41 à 49) pour chacun des 9 paramètres d’information combinant ainsi plusieurs paramètres de même type provenant chacun d’une pluralité d’observations, o1 (21), o2, (22), …, o6 (26) pour constituer 9 vecteurs (31, à 39) envoyés chacun sur un LSTM respectif (41) à (49); Il convient de remarquer que le nombre total d’observation représenté dans cet exemple non limitatif est égal à 6. Ainsi le nombre de tour t étant égal à 6, la composante temporelle partiellement masquée de l’observation notée 22 sur cette [FIG.2] est (t-4). représente le flux d’apprentissage récurrent (h1,…, hn) obtenu en sortie de chaque réseau récurrent LSTM (81,82, 8n) de la représentation latente du contexte ht et son utilisation par des composants (60 à 65) constitués par des réseaux de neurones FC (fully connected) (60 à 65, 6n) pour validation et par la partie de renforcement représentée par des composants constitués par des réseaux de neurones FC (fully connected) différents (70, 71, …,7n) pour la prise de décision; les composants (60 à 65) ont pour rôle d’améliorer l’encodage en représentation latente du contexte. Ainsi on oriente l’apprentissage de ht de façon à aider à prédire les répliques futures des utilisateurs ; Chaque composant FC (70, 71, …,7n) est un réseau de type DQN qui existe dans la littérature et qui a pour but d’estimer les Q valeurs par un apprentissage par renforcement. Les paramètres c1, c2, ... cn en sortie de chaque réseau LSTM ne sont pas utilisés dans l’approche de l’invention. Ils sont naturellement présents dans chaque LSTM. On les appelle les « cell states ». Ces « cell states » représentent le dernier état de la cellule LSTM. Quant aux hidden states (h1, h2, …) utilisés dans notre approche, ils représentent un résumé de l’ensemble des états de la cellule au travers toutes les occurrences passées (observations successives du dialogue). Il est à noter que cette est un éclatement du LSTM (91) de la [FIG.5] sur un exemple où l’on monte une séquence contenant deux étapes avec l’arrivée de deux observations. Cette [FIG.3] s’étend à l’infini tant que de nouvelles observations arrivent. Cela permet de voir le traitement séquentiel des observations et l’évolution de la création de la représentation latente ht et sa transmission à chaque étape à un seul algorithme de renforcement FC noté (70) à l’étape 1 (71) à l’étape 2 etc … Autrement dit les têtes (60, 61, 62 et 70) sont les mêmes que (63,64, 65 et71) mais avec un temps de décalage lié à l’arrivée d’une nouvelle observation. Enfin le réseau LSTM (81 de la ) est composé des réseaux LSTM (41 à 49 de la [FIG.2]) de même pour le réseau LSTM (82 ,[FIG.3] ) et ainsi de suite, en fonction du nombre d’observations. L’avancement se fait au fur et mesure de l’arrivée des observations. L’entrainement se fait sur des séquences d’observations. h 1 est le résultat de l’entrainement sur la première observation h 2 est généré suite à l’arrivée d’une deuxième observation h 3 une troisième ainsi de suite. En réalité h 1 , h 2 c’est une vue de l’esprit. Ce sont des étapes intermédiaires. Ce que le système utilise et entraine c’est h t . h t vaut h 1 si le système apprend que sur une seule observation il vaut h 2 si le système apprend sur des séquences de 2 observations et vaut h n si le système traite n observations. Le critère est d’avoir le h final qui soit bien appris. représente le cycle d’un dialogue dans un environnement de simulation de conversation ainsi que les différentes parties nécessaires au fonctionnement de l’agent conversationnel. Les éléments qui composent l’agent de gestion de dialogue sont : LSTM dans le traqueur d’état, (state tracker) (91), FC dans le Q-network (93) et une mémoire dénommée Experience Replay (92). Le traqueur d’état (91) reçoit des observations soit d’un module ABUS (90) soit d’un module TC-Bot exploitant les résultats d’une base de données (96) spécifique au domaine du chatbot pour enrichir les observations générées par le module ABUS. Enfin les Q-valeurs générées par le Q-network (93) sont exploitées par un module (94) de politique epsilon greedy pour déterminer l’action qui correspond au meilleur résultat. En effet, les dialogues et requêtes utilisateur qui y figurent, sont donnés par un agenda géré par ABUS. L’objectif est de simuler des besoins utilisateur pour entrainer un agent type Chat bot. TC-Bot est l’ensemble de cet environnement. Les vecteurs observations sont un encodage respectivement, de l’action demandée par l’utilisateur dans le dialogue, de l’information qu’il donne dans le cas d’une réponse à une question de l’agent ou d’une requête qu’il demande dans le cas d’une question. De même dans l’observation lors de la réponse de l’agent, ce dernier répond par une action et informe (inform slot) lors d’une réponse et questionne (request slot) s’il manque de précision. Le reste des informations sont un récapitulatif des éléments statistiques du déroulement du dialogue. Comme le Turn comme compteur pour renseigner sur l’itération dans l’échange (nombre d’échanges dans un dialogue), le nombre de résultats positifs dans la base de données sur une requête donnée ainsi que sa valeur. Le but de ABUS est de se substituer à un utilisateur afin de permettre un nombre d’itération suffisant pour permettre à l’algorithme de l’apprentissage par renforcement de converger (d’apprendre suffisamment). TC-Bot est un Framework qui permet de faire dialoguer l’ensemble des éléments nécessaires à l’entrainement et l’inférence du chatbot. ABUS a pour but de générer des scénarios d’utilisateur suivant différents besoins. Les données contenues dans la base de données de TC-Bot sont les données auxquelles peut répondre le chatbot contextuel. A savoir des informations sur le domaine d’expertise du chatbot. Le reste des données sont des informations concernant chaque phrase du dialogue (Observation) du point de vu de l’agent de l’utilisateur et de l’environnement. Tout ceci est encodé sous forme d’un vecteur composé de 3 sous-vecteurs. Le but de cette invention est de permettre à l’agent de capturer de manière dynamique sans l’aide du Framework (du banc d’essai) le contexte du dialogue. Cette contribution fait partie de la notion de State tracker. Le State tracker de l’invention est à base de l’algorithme récurrent LSTM qui est présenté dans la et [FIG.3] du document. La façon dont l’algorithme récurent LSTM a été conçu, est elle-même originale, comme présenté dans la avec différentes parties qui permettent de récupérer le belief state ht qui lui-même est entrainé grâce à d’autres sorties qui sont utilisés comme point de référence pour augmenter la qualité de renseignement intégrée dans la valeur ht du belief state. La contribution de l’invention se situe dans la simplification d’encoder le vecteur mais aussi dans la façon d’abord de générer le contexte indépendamment de la valeur simulée et fournie par l’environnement de TC-Bot, deuxièmement, dans la façon de renforcer et d’améliorer cet encodage de contexte par la partie supervisée via la génération d’ informations concernant les futures répliques des utilisateurs ( grâce aux étiquettes (u i act , u i is et u i rs ) en sortie des modules (60 à 65)) et enfin dans le fonctionnement conjoint hybride de la partie en charge du contexte et de la partie renforcement en charge de la prise de décision (sélection d’action). représente les différents blocs nécessaires au déroulement d’un dialogue entre un utilisateur et un chatbot avec notre proposition de dialogue management dans lequel l’utilisateur envoie par son objet portable intelligent (non représenté) des messages vocaux/textuels vers un module de traitement du langage naturel 97 pour générer pour chaque action un vecteur d’observation avec éventuellement l’aide de ABUS et TC-Bot en début d’apprentissage ou sans. Le vecteur d’observation est envoyé au traqueur d’état (91) et génère par l’algorithme de renforcement (RL algorithm) (correspondant aux références 93 et 94 de la [FIG.4]) une réponse traitée par le module de génération de langage naturel (98). La seule différence c’est que (93 ; ) qui représente Q-network et (94, [FIG.4]) qui représente le module epsilon greedy sont regroupés sous le nom « RL Algorithm » dans la [FIG.5]. Le module de dialogue (91) et (93-94) exploite également une base de connaissances extérieure (100 ou 96). Dans cette base de connaissances extérieure sont stockées les informations en rapport au contexte d’expertise du chatbot et accessibles par ce dernier (ex, non limitatif : dans le cas d’un chatbot de réservation de billet d’avion : la liste des vols, leur horaires, les compagnies, prix des billets, …). L’acronyme NL (« Natural Langage » en langue anglaise) veut dire langage naturel, SF (« Semantic Frame » en langue anglaise) veut dire structure sémantique et RL (« Reinforcement Learning » en langue anglaise) apprentissage par renforcement. Enfin un exemple de dialogue représenté en annexe (réserver un billet d’avion) est donné à titre purement indicatif. Ainsi une variante de l’invention concerne un système comportant un ordinateur fournissant une interface entre une application frontale (« frontend ») configurée pour recevoir une ou plusieurs formulations orales d'utilisateur provenant d’un objet portable intelligent équipé d’un micro et haut-parleur pour émettre et recevoir dans un langage naturel et un système principal avec lequel il est en communication. Selon un mode de réalisation, l’application frontale est configurée pour recevoir une ou plusieurs informations textuelles fournies par l’utilisateur par tout type de moyens pouvant servir à ces fins lui permettant d’interagir avec le système (par exemple un clavier, …). Selon un autre mode de réalisation, le système principal comprend un ou plusieurs processeurs exécutant les algorithmes décrits pour fournir un service à cet utilisateur. Les processeurs facilitent et fluidifient les échanges afin de fournir une réponse ou des propositions de services en temps réel. Dans un mode de réalisation, l’application frontale « frontend » reçoit d’un module de compréhension de langage naturel (NLU) une information en entrée représentative du texte formulé dans le langage naturel via l’application exécutée sur tout type d’objet intelligent. Dans un mode de réalisation, le texte formulé est exploité pour constituer des séquences d’observations qui sont structurées sous forme de vecteurs dans un espace de dimension quelconque (par exemple comme dans la dans un espace à neuf (9) dimensions ou 9 sous-vecteurs). Chaque observation contient un sous-vecteur représentant une itération (tour) d’un dialogue introduisant ainsi une notion temporelle de suivi de dialogue. Dans un mode de réalisation, les séquences d’observations contiennent de nombreuses informations de préférence les informations concernant la dernière réplique de l’utilisateur ( : Information Utilisateur 11), la dernière réplique de l’agent ([FIG.1] : Information Agent, 12), des statistiques sur la requête faite à la base de données ([FIG.1] Statistique sur dialogue, 13) et le numéro d’occurrence de l’observation dans le dialogue ([FIG.1], tour 13a). Concernant la valeur Tour (Turn) l’invention réalise un seul encodage (flottant) pour réduire la complexité. Par contre la valeur « Current Slots » habituellement présente et jugée cruciale dans les traqueurs de l’art antérieur puisque c’est celle qui définit le traqueur d’état (state tracker) et donc la cohérence du dialogue, n’est pas présente et n’est pas utilisée dans la présente invention. Un point inventif de l’approche de l’invention est de pouvoir se passer de cette valeur grâce à un mécanisme de calcul récurrent pour en générer un équivalent retraçant le contexte du dialogue. Ce mécanisme est mis en œuvre par LSTM présenté dans la , 3 et 4 dans la partie (91) et s’exprime dans la représentation latente ht. Dans un mode de réalisation, les séquences d’observations passées sont utilisées en entrée dans un algorithme de préférence un algorithme récurrent pour en apprendre le contexte. Dans un mode de réalisation, les informations traitées sont structurées sous la forme de plusieurs triplets ou vecteurs (de préférence trois) deux au moins : l’un concernant l’information utilisateur, l’autre l’information agent, et un éventuel troisième concernant des informations statistiques. Selon un mode de réalisation, les sous vecteurs sont au nombre de 9, trois pour les informations « Utilisateur », trois autres pour les informations « d’agent », trois autres pour des statistiques sur le dialogue. Selon un mode de réalisation, la représentation latente des vecteurs d’observations h t intègre de manière native une composante temporelle cachée. Cette composante temporelle permet de prendre en compte l’historique et ainsi, procure une meilleure prise en compte du contexte ce qui au final contribue à l’amélioration de la qualité de l’interaction entre l’humain et l’agent. Selon un autre mode de réalisation, les trois sous-vecteurs des informations utilisateurs ou des informations agent contiennent respectivement les informations représentant l’acte de dialogue (11a, 12a) respectif de l’utilisateur (11) ou de l’agent (12) dans la fente d’information « inform slots » (11b, 12b) respective de l’utilisateur (11) ou de l’agent (12) fournissant des chiffres ou une information dans la fente d’information et la fente de requête « request slots » (11c, 12c) respective de l’utilisateur (11) ou de l’agent (12) fournissant des chiffres ou une information dans la fente de requête. Dans un mode de réalisation les vecteurs sont un encodage respectivement, de l’action demandée par l’utilisateur dans le dialogue (11a), de l’information donnée par la fente ou créneau d’information « inform slot » (11b) qu’il donne dans le cas d’une réponse à une question de l’agent ou d’une requête par la fente ou créneau de requête « request slot » (11c) qu’il demande dans le cas d’une question. De même dans l’observation lors de la réponse de l’agent, ce dernier répond par une action et informe par une information donnée dans (inform slot) (12b) lors d’une réponse et questionne (request slot) (12c) s’il manque de précision. Il s’agit des créneaux de l’information elle-même soit en donnée soit en requête ou demande (exemple je donne la date pour réserver un billet c’est une information donnée par des chiffres dans « inform slot » de l’utilisateur) Je demande le prix d’un billet (c’est une information demandée par l’information prix dans « request slot » de l’utilisateur.) Ceci fonctionne de la même façon pour « l’inform slot » et la « request slot » de l’agent. Selon un mode de réalisation, les trois sous-vecteurs des statistiques contiennent respectivement les informations représentant le tour de dialogue (13a), les résultats (13b, 13c) d’une base de données BDD. La BDD dont on parle représente une base de données ((96) et (100) [FIG.5]) dans laquelle sont stockées les informations en rapport au contexte d’expertise du robot conversationnel « chatbot » et accessibles par ce dernier (ex : dans le cas d’un robot conversationnel « chatbot » de réservation de billet d’avion : la liste des vols, leur horaires, les compagnies, prix des billets, …). Dans le cas du vecteur de la [FIG.1] la valeur (Result BDD « Binaire ») (13b) est l’encodage de l’information trouvée et (Result BDD « Flottant ») (13c) le nombre de réponses trouvées lors de la requête. Dans un mode de réalisation chacun des triplets ci-dessus cités est un sous-vecteur à trois composants respectivement : U (U act (11a) ; U is (11b) ; U rs (11c)) pour l’utilisateur ; A (A act (12a) ; A is (12b) ; A rs (12c)) pour l’agent et S(t(13a) ; kb in (13b) ; kb cnt (13c)) pour les statistiques. Dans un mode de réalisation les composants U is ; U rs ; A is ; A rs et kb in sont des valeurs binaires ; Les composants U act ; A act sont exprimées en OHE (one hot encoding) et les composants t et kb cnt sont exprimés en flottant (Float) ce qui veut dire réel. Donc ce composant de vecteur représente une valeur réelle. OHE est une représentation où chaque composant de vecteur à un nombre de cases égales à l’ensemble des éléments qu’il faut encoder et qui prend la valeur « 1 » sur la case représentant l’index de l’élément concerné et « 0 » partout ailleurs. Ce type de codage permet une meilleure prédiction. L’information ainsi structurée renseigne simultanément : D’une part sur le type d’action entreprise (question, réponse, formule de politesse, …)., sur l’information fournie (dans le cas d’une action réponse par exemple) et l’information demandée (dans le cas d’un action question) et indépendamment de son origine ; D’autre part sur les statistiques. Cette structuration particulière contribue à simplifier la modélisation spécifique du traqueur d’état en l’enrichissant par l’inclusion d’une composante temporelle (t (13.a)) qui permet la prise en compte de l’historique des dialogues. Dans un mode de réalisation les triplets sont regroupés sous forme d’un vecteur d’observation de dialogue ; Les coordonnées d’un vecteur d’observation o t sont les triplets o t (U ; A ; S). Un avantage significatif de cette notation vient du fait que le vecteur d’observation contient une coordonnée qui correspond à une itération. Cette itération étant la composante temporelle d’un dialogue. Ainsi la composante temporelle est incluse et prise en compte dans chaque observation. Dans un autre mode de réalisation cette mise en forme est utilisée pour effectuer au moins un calcul sur chaque paramètre (U act ; U is ; U rs ; A act ; A is ; A rs ; t ; kb in ; kb cnt ) (A rs 0 ; A rs 1 ; … ; A rs i ) de plusieurs vecteurs d’observation (o i ) par au moins une couche de réseau de neurones récurrents de type LSTM par pluralité de paramètres d’informations , Dans un mode réalisation, une séquence de n observations ( ) est utilisée en entrée et appliquée à une pluralité d’algorithmes de préférence sous forme de 9 réseaux de neurones récurrents (par exemple LSTM0, LSTM1 …. LSTM9 ; n étant le nombre de case d’encodage de l’observation) et permet d’obtenir en sortie un vecteur ht de même dimension que les vecteurs d’observations d’entrées. L’indice t correspond à la composante temps du dialogue (un dialogue de longueur t contient une séquence d’observation de o1 à ot). Ledit vecteur ht est une représentation abstraite latente de plusieurs observations à la suite (la séquence d’observation d’entrée) [oo ; o1 … ot-1 ; ot ] où t est également l’indice dans la séquence d’observation et donc à sa longueur. Dans un mode de réalisation, le réseau de neurone (41 à 49) (implémenté par un algorithme récurent) est exécuté sur un ou plusieurs processeurs et permet de générer une représentation abstraite latente (notée ht de composantes h(DBcnt), h(DBin ) ,h(t) ,h(Ars ), h(Ais), h(Aact), h(Urs), h(Uis ) h(Uact )) ( ) de plusieurs observations [oo ; o1 … ot-1 ; ot ]. Cette transformation permet ainsi d’obtenir une interprétation unique inintelligible par l’être humain. Dans un mode de réalisation les observations sont mémorisées dans une mémoire (Experience Replay (92) ) sous forme d’un tuple. (ot, at, rt, ot+1). Dans un mode de réalisation le tuple qui est stocké dans la mémoire Experience Replay est le résultat d’une première observation type requête utilisateur notée o t , d’une réponse d’un agent via l’action qu’il sélectionne a t , de sa valeur en terme de récompense r t (voir plus bas), ainsi que de l’observation qui en résulte suite à cet échange o t+1 . Dans un mode de réalisation r t (reward) est la récompense qu’obtient l’agent pour chaque action. Ces r t sont produits par l’environnement TC-Bot (précisément ABUS). Il y a trois types de récompenses (reward) celle d’un dialogue en cours donc qui avance auquel on rajoute « -1 » à chaque itération, celui d’un dialogue échoué « -20 » et « +40 » si le dialogue a réussi. Ces valeurs sont données à titre d’indication. Elles ont pour objectif d’encourager un dialogue concis par le biais des « -1 » attribués à chaque itération (rallongement) supplémentaire du dialogue et d’encourager fortement un succès pour compenser les pénalités (-1) accumulées pendant le dialogue grâce au « +40 ». Bien sûr, la valeur « -20 » a pour but de punir un échec de dialogue qui n’aboutit pas. L’intérêt de stocker chaque tuple dans Experience Replay permet l’entrainement des prochaines phases d’évolution (entrainement) de l’algorithme de renforcement pour continuer à apprendre de nouvelles choses et aussi potentiellement classer ou sélectionner les observations en fonction de leur récompense (reward) afin de les faire rejouer plus ou moins souvent lors des phases d’entrainement. Dans un mode de réalisation, un modèle hybride combinant plusieurs types d’algorithmes est utilisé pour un entrainement conjoint du traqueur d’état et de l’agent conversationnel. Ceci permet de mettre en place une architecture collaborative entre le traqueur d’état et l’algorithme utilisé et améliore le cycle global du fonctionnement de l’agent conversationnel. Dans un mode de réalisation, un modèle hybride ( ) combinant : Un réseau récurrent (LSTM) qui transforme une séquence d'observations en un vecteur latent ht (croyance) ([FIG.3] ) ; Un réseau entièrement connecté au sommet composé de plusieurs (de préférence quatre) têtes (60 à 65) et (70, 71) chacune étant un réseau de neurone (implémentant un algorithme de renforcement) ; Est utilisé pour un entrainement conjoint du traqueur d’état et de l’agent conversationnel. Selon un autre mode de réalisation, l’algorithme de renforcement consiste à appliquer chaque résultat h t sur un module de renforcement FC implémenté sous forme d’un réseau de neurones de type DQN qui existent dans la littérature et qui ont pour but d’estimer les Q valeurs par un apprentissage par renforcement, afin de déterminer une pluralité de valeurs Q(h 1 t), …, Q(h i t), pour déterminer la meilleure Q-valeur par La politique d’un algorithme epsilon-greedy (94) qui sélectionne l’action avec la meilleure Q-valeur. La Q-valeur est estimée suivant les informations du contexte (h t ) constituant la formalisation de l’état associé. Selon un mode de réalisation, le module ABUS (90) produit une observation o t , augmentée avec les sous–vecteurs du module connaissance TC-Bot (95). TC-Bot (95) est un Framework qui permet de faire dialoguer l’ensemble des éléments nécessaires à l’entrainement et l’inférence du chatbot. ABUS (Agenda Based User Simulation) a pour but de générer des scénarios d’utilisateur suivant différents besoins. Les données contenues dans la base de données de TC-Bot sont les données auxquelles peut répondre le chatbot contextuel. A savoir des informations sur le domaine d’expertise du chatbot. Le reste des données sont des informations concernant chaque phrase du dialogue (Observation) du point de vu de l’agent de l’utilisateur et de l’environnement. Tout ceci est encodé sous forme d’un vecteur constitué de 3 sous-vecteurs utilisateur (11), agent (12), statistique (13). Dans un mode de réalisation TC-Bot est un système d’entrainement de bout en bout permettant d’entraîner un modèle sur des représentations de haut niveau des paroles d’utilisateur. TC-Bot permet de construire des vecteurs à base des éléments les plus importants du dialogue. En effet, les dialogues et requêtes utilisateur qui y figurent, sont donnés par un agenda géré par ABUS. L’objectif est de simuler des besoins utilisateur pour entrainer un agent type chatbot. TC-Bot est l’ensemble de cet environnement. Dans un mode de réalisation le reste des informations sont un récapitulatif des éléments statistiques du déroulement du dialogue. Comme le Tour (Turn) (13a) comme compteur (en deux encodages différents) pour renseigner sur l’itération dans l’échange (nombre d’échanges dans un dialogue), le nombre de résultats positifs dans la base de données sur une requête donnée ainsi que sa valeur. Le but de ABUS est de se substituer à un utilisateur afin de permettre un nombre d’itération suffisant pour permettre à l’algorithme de l’apprentissage par renforcement de converger (d’apprendre suffisamment). Dans un mode de réalisation, chaque observation o t est traitée par le traqueur d’état, qui génère un état « belief state » h t . Le réseau Q-N (93) prédit une valeur Q pour chaque action pour le h t , ensuite un module (94) implémentant une politique « epsilon-greedy » est appliqué pour choisir une action a t , Enfin, une nouvelle observation o t+1 et la récompense r t sont produites, et un tuple de transition constitué par (o t , a t , r t , o t+1 ), est mémorisé dans la mémoire Experience Replay (92). Selon un mode de réalisation, le réseau DRQN (Deep Recurrent Q Network) réseau Q récurrent et profond est composé d’un LSTM (81, respectivement 82, etc.) et d’une couche DQN réseau–Q complétement connecté (Q-network (FC, (70) respectivement (71)), etc.) ; et dans lequel l’apprentissage supervisé (SL) (Supervised Learning) est hybridé avec l’apprentissage renforcé RL (Re-inforcement Learning) en augmentant DRQN avec 3 têtes FC (60 à 62)respectivement (63 à 65) etc. … prédisant le comportement de l’utilisateur et permettant d’apprendre les représentation d’historiques– utilisant SL – qui facilite l’apprentissage de l’agent RL. Par etc. ici il faut comprendre qu’il existe un nombre de LSTM égal au moins à la dimension du vecteur observation et au moins un nombre de groupe de 4 FC (70) égal au moins à au nombre d’observations pour le réseau de Q-network FC. Dans un mode de réalisation, la représentation abstraite latente des observations ht ci-dessus décrite est utilisée en entrée dans les têtes décrites ci-dessus pour l’apprentissage supervisé lors de la phase d’apprentissage d’une part (60 à 62), (63 à 65) etc. et comme information principale de l’algorithme de renforcement (FC (ht,.) (70, 71, etc.) ), aussi bien dans les phases d’apprentissage que celle d’inférence. Dans un mode de réalisation, le critère de stabilisation est fait sur h t suivant le mécanisme de supervision FC (63 à 65) dans l’exemple ainsi que les retours sur les valeurs de l’algorithme de Q-learning FC. À l’issue de l’apprentissage, les trois premières têtes permettent de déduire des informations proches (valeur chapeau) notées (Ûirs, Ûiis , Ûiact ) des données labélisées relatives à l’utilisateur ( ). Ces données labelisées notées (Uirs, Uiis , Uiact ) (sans chapeau) sont stockées dans ABUS (puisque générées par ce dernier) et sont utilisées pour stabiliser l’apprentissage de la représentation abstraite du contexte passé ht. Cette représentation abstraite issue de l’apprentissage contient une meilleure prise en compte du contexte de la conversation et est nécessaire à la bonne prise de décision de l’algorithme de renforcement en charge des actions. La quatrième tête (70, respectivement 71, etc.) génère le résultat des valeurs (Q-valeurs) Q(ht, .) d’un vecteur noté ht ( ). Contrairement aux modèles hybrides classiques à deux têtes entrecroisant les itérations de descente du gradient stochastique (SGD) entre les mises à jour de d’apprentissage supervisée et de d’apprentissage renforcée, où une procédure d'entraînement commune aboutit à un modèle avec une représentation cachée plus riche et générale, car elle doit permettre à deux têtes de compléter des tâches complémentaires (choisir une action et prédire ce qui va se passer). L’utilisation d’un réseau récurrent (81 à 82, ) permet d’utiliser en entrée la composante du contexte passé ht (qui correspond à l'état de croyance) et d’obtenir à la sortie un flux de données. Chacune des étapes du réseau récurrent permet de prédire une partie différente de la partie suivante d'une observation liée de préférence à l'utilisateur. La séparation en ces différentes parties liées à l'utilisateur est due aux différentes significations et représentations qui leur sont attribuées. illustre le sous-vecteur Uact par exemple avec un codage de type OHE, qui signifie qu'il ne peut y avoir qu'une seule dimension activée (permet d’avoir des vecteurs creux qui simplifient le calcul au sein du réseau de neurone), alors que Uis et Urs sont des vecteurs binaires (plusieurs dimensions peuvent être activées). Ces types d’encodage sont repris de l’encodage utilisé dans TC-Bot. Dans un mode de réalisation, la représentation abstraite latente des observations ht issue de l’apprentissage décrit ci-dessus est appliquée en entrée à un algorithme (de préférence un algorithme de renforcement ( )) permet de calculer des valeurs d’un vecteur noté ht. Dans un autre mode de réalisation, pendant la phase d’inférence (grâce à l’information apprise durant l’entrainement de la partie supervisée via les étiquettes notées (U i rs , U i is , U i act )) une question future sous-jacente éventuellement utile à l’agent mais pas nécessairement à l’utilisateur peut être prédite sous une forme encapsulée dans représentation abstraite h t pendant l’apprentissage supervisée. Ceci permet à l’agent de proposer des actions de type anticipation afin de faire des propositions autres en plus de répondre aux questions. Dans un mode réalisation, le gestionnaire de dialogue ( ) est séparé en au moins deux parties ce qui permet d’avoir des cycles d’évolutions avec des rythmes différents entre le traqueur d’état (91, [FIG.4] ) et l’algorithme utilisé (de préférence l’algorithme de renforcement) (93 et 94 [FIG.4] ). La cohérence des résultats finaux est fortement dépendante de la fiabilité des données d’entrées. Dans un environnement ALE le fait d’observer l’environnement retourne l’intégralité des informations nécessaires à la construction d’un état or ; Selon un autre mode de réalisation, l’état récupéré est doublement complexe une fois pour cause d’informations partielles qui le compose (bribe de dialogue …) et une deuxième fois à cause de la composante temporelle du dialogue qu’il faut interpréter pour en déduire le contexte. Selon un mode de réalisation, l’état initial parce qu’il représente une estimation de ce qui s’est passé avant est appelé état de croyance. Ceci permet d’avoir un cycle apprentissage propre au traqueur d’état. Selon un autre mode de réalisation, le traqueur d’état consolide son savoir quant à la création par apprentissage d’une représentation latente du contexte robuste ht. Cette représentation latente robuste représente l’état de croyance du point de vue de l’algorithme d’apprentissage utilisé par exemple l’algorithme de renforcement (93 et 94 ) Selon un mode de réalisation, la représentation latente robuste est utilisée en entrée dans l’algorithme de renforcement pour calculer les Q-valeurs (Q(ht,.). (à 93 ). Selon un mode de réalisation, la « meilleure » valeur de Q(h t ) correspondant à celle pour laquelle, suivant un état donné, va aboutir à l’action la plus adéquate à la situation du point de vue de l’agent. Elle est utilisée pour déduire l’action à réaliser suivant l’état h t ; Selon un mode de réalisation, les différents cycles d’apprentissage peuvent ne pas être dissociés. Selon un autre mode de réalisation, les différents cycles d’apprentissage peuvent collaborer en suivant un rythme particulier (par exemple une fois le traqueur d’état stabilisé dans son apprentissage propre, un échange d’informations, entrecroisement des itérations de descente de gradient, et propagation du gradient s’effectue régulièrement entre le traqueur d’état et l’algorithme de renforcement). Selon un mode de réalisation, les informations échangées donnent des retours sur les résultats des actions choisies et permettent d’améliorer l’interprétation du contexte. Selon un mode de réalisation, le traqueur d’état reçoit par les informations échangées les modifications de la part de l’algorithme de renforcement en plus des nouvelles informations qu’il reçoit de l’environnement. Ainsi, la prise en compte du contexte est élargie et permet au final à l’agent conversationnel d’aboutir à une meilleure réponse possible (plus riche et plus générale). Selon un mode de réalisation, un espace de stockage (« Expérience Replay » (92 .) est utilisé pour regrouper les n dernières observations sans doublon. Cet espace sert à garder plusieurs observations d’un même dialogue, afin de pouvoir via le traqueur d’état retrouver le contexte de ce dernier, ou de dialogues différents. Ces données sont utiles pour trouver par apprentissage des généralisations de contexte pour plus de robustesse dans la construction de l’état de croyance. Selon un mode de réalisation, un algorithme de type RBS (« Replay Buffer Spiking » en langue anglaise) est utilisé pour initialiser l’espace de stockage « Experience Replay ». Dans un mode de réalisation, des dialogues « réels » dus à des cycles de dialogue de l’agent avec son environnement (ces dialogues (« réels »)) sont validés et notés via des récompenses par de vrais utilisateurs. Ceci a pour but de permettre au traqueur d’état et à l’algorithme de renforcement de partir sur de bonnes bases (bases vérifiées) dans leurs entrainements respectifs. Selon un mode de réalisation, des récompenses (rt) sont attribuées à chaque nouveau dialogue et stockées sous forme de tuples (comme étant des dialogues étalons) dans un espace de stockage appelé « Experience Replay » (92 .). Ces données ainsi marquées sont utilisées en entrée pour rajouter de la diversité aux dialogues déjà existant et validé par RBS dans l’Experience Replay. Ceci permet au traqueur d’état et à l’algorithme de renforcement d’apprendre de nouvelles choses et d’enrichir la base des observations de l’Experience Replay. Dans un mode de réalisation la communication de l'action identifiée est transmise au module de génération de langage naturel (NLG) (98 ). Dans un mode de réalisation le module de génération de langage naturel fournit à l'application frontale la sortie texte en langage naturel. Cette sortie produite en fin de cycle est dépendante de l'action identifiée. Cette action identifiée pouvant être soit une action demandée ou soit exécuter l’action demandée. En effet comme expliqué plus haut la contribution de l’invention se situe dans la façon particulière d’encoder le vecteur mais aussi et surtout dans la façon d’abord de générer le contexte indépendamment de la valeur simulée et fournie par l’environnement de TC-Bot, deuxièmement, dans la façon de renforcer et d’améliorer cet encodage de contexte par la partie supervisée via des informations concernant les futurs répliques des utilisateurs (grâce aux étiquettes (u i act , u i is et u i rs )) calculées à partir de l’encodage du contexte par les réseaux neuronaux FC (60-65) et enfin dans le fonctionnement conjoint hybride de la partie en charge du contexte (state tracker ) et de la partie renforcement en charge de la prise de décision (sélection d’action) (DQN). Pour une meilleure compréhension de l’invention nous expliquons ci-après son fonctionnement et donnons en annexe un exemple de dialogue géré par le gestionnaire de dialogue selon l’invention. Quand un utilisateur vient interagir avec l’agent conversationnel il s’opère alors un enchainement de questions réponses (observations o t ) qui va former un dialogue. Ces observations vont s’ajouter à l’Experience Replay cité précédemment pour constituer une nouvelle source d’observations à utiliser afin de mettre à jour l’agent conversationnel lors de la prochaine phase d’entrainement. Concernant le cheminement du dialogue. Chaque interaction de l’utilisateur passe dans le module NLU pour être transformé en une structure sémantique qui va remplir la partie utilisateur (11) du vecteur observation (voir ). Cette observation seule, si première itération du dialogue, ou en compagnie des observations précédentes du dialogue vont être transformées par le traqueur d’état en une représentation latente du contexte nommée ht. Cette représentation est passée à l’algorithme de renforcement qui va calculer la meilleure Q valeur pour ce contexte de dialogue ce qui va proposer une action. Cette action se rajoute à la partie réplique (12a) de l’agent dans le vecteur d’observation (voir [FIG.1]). En fonction du type de demande utilisateur une requête à la base de données de connaissance extérieure (100) peut être nécessaire. Si tel est le cas, l’information est récupérée et rajoutée à la valeur manquante de la réponse de l’agent et les statistiques (13b,13c) sur le résultat de la requête sont rajoutées au vecteur observation (voir ). Suite à ces étapes, les valeurs du vecteur d’observation remplissent une structure sémantique de la réponse de l’agent qui une fois passée dans le module NLG est transformée en une phrase textuelle à renvoyer à l’utilisateur. Le dialogue est arrêté soit par la volonté de l’utilisateur soit parce que qu’on a atteint le nombre maximal d’itérations autorisées pour l’agent conversationnel. Après chaque arrêt de dialogue, chaque dialogue est noté par l’ajout de toutes les valeurs cumulées r t des observations. Ceci permet de distinguer les dialogues qui ont réussi de ceux qui ont échoué. L’affectation de ces valeurs r t de fin de dialogue est soit faite manuellement à posteriori des dialogues, annotation manuelle qui va permettre de ré-entrainer l’agent grâce à ces dialogues annotés, soit de façon automatique par une analyse sémantique du dialogue. L’analyse sémantique peut être soit implicite (exemple : L’agent pose la question « Etes-vous satisfait de la réponse ? » et l’utilisateur répond par l’affirmative) ou bien explicite par l’analyse d’intention des répliques de l’utilisateur à la fin du dialogue (exemple : remerciement). Selon un mode de réalisation, les modules (ABUS, TC-Bot, …) et algorithmes sont composées par des séquences de codes exécutés par un ou plusieurs processeurs. Selon un mode de réalisation, le Gestionnaire de Dialogue pour chatbot contient les modules ABUS (90), LSTM (91) FC (93), ԑ-greedy (94), TC-Bot (95) coopèrent pour générer un certain nombre de nouvelles observations sans doublon d’abord regroupés dans un espace de stockage (Experience Replay) puis, utilisées pour ré entrainer le traqueur d’état et l’algorithme de renforcement, et ainsi permettre aux apprentissages de s’enrichir au fur et à mesure des dialogues. On comprend de la présente demande que divers modes de réalisation prévoient et visent à protéger une méthode de génération de dialogue entre un agent de dialogue (chatbot) et un utilisateur par un moteur hybride d’intelligence artificielle qui contient au moins trois modules M 1 , M 2 , et M 3 interdépendants réalisant chacune des étapes suivantes : Réception, formatage (31 à 39) d’une séquence d’observations et transfert de chaque composant dudit format par le module M 1 au module M 2 ; Utilisation par M 2 de chaque vecteur (31 à 39) de la séquence d’observations formatée en entrées dans un champs de réseau de neurones récurrents (par exemple 41 à 49) et calcul d’une représentation latente h t du vecteur d’observation (51), des étiquettes (u i act , u i is , u i rs ), puis stabilisation par apprentissage supervisé dans M 2 de ladite représentation latente h t ; Envoi de h t par le module M 2 en entrée du module M 3 et échange d’informations par un entrecroisement des itérations descente de gradient et une propagation du gradient régulière entre le traqueur d’état (91) et l’algorithme de renforcement (93); Déduction dans le module M 3 des informations proches notées (Û i rs , Û i is , Û i act ) par chacune des trois première tête FC (60 à 62) pour au moins une première observation puis, calcul des Q-valeurs Q(h t,. ) (70, 71, …) pour chacune des observations Utilisation de la meilleure valeur de Q(h t ) pour générer les actions a t Selon un mode de réalisation, l’invention propose une méthode de génération de dialogue entre un agent conversationnel (chatbot) et un utilisateur caractérisée en ce qu’elle comporte une étape de stockage de l’état du moteur (chaque partie de dialogue ; chaque dialogue en entier …) dans l’ordre chronologique de la dernière observation en date jusqu’à début du dialogue pour fournir tout le contexte antérieur à chaque nouvel état de croyance dans un espace de stockage (92). D1 ne suggère pas d’utiliser les réseaux récurrents LSTM dans le but de capturer le contexte sous-jacent à la conversation afin de fournir la vision la plus exhaustive possible du dialogue pour permettre à l’algorithme de renforcement de sélectionner l’action adéquate de façon non supervisée. Par ailleurs, Il n’est nullement question dans D2 d’encodage contextuel, ni d’amélioration supervisée de l’encodage des belief states par le biais de la fourniture lors de la phase d’apprentissage des étiquettes sur les réponses utilisateurs (u i act , u i is et u i rs ) permettant de stabiliser l’apprentissage d’une représentation abstraite latente h t . D2 n’enseigne pas non plus d’utiliser un environnement évolutif de renforcement qui permet une évolution native du chatbot au fur et mesure des dialogues qu’il rencontre. On comprend aisément à la lecture de la présente demande que contrairement à D1 ou D2, l’ensemble des informations du vecteur constitué de sous vecteur sont utilisées afin de constituer l’état de croyance (belief state) retraçant l’ensemble du contexte du dialogue en cours. Ce dernier (belief state) permet à l’algorithme de renforcement de se situer et donc de prendre une décision suivant l’expérience qu’il a pu apprendre jusqu’à présent. Ces informations sont utilisées et transformées de façon abstraite dans un réseau de neurone de type DQN afin d’aboutir à l’estimation d’une Q valeur. Cette Q valeur est utilisée comme point de repère pour prendre une décision via une politique gloutonne epsilon. Cette politique de sélection d’action sélectionne en général la meilleure des Q valeurs avec une probabilité (1- epsilon), mais des fois avec une faible probabilité epsilon, une valeur Q arbitraire pour garder une notion de diversité. Enfin l’encodage h t étant effectué au sein du LSTM en une conception abstraite, fait l’objet de transformations multiples via des combinaisons non linaires des valeurs données en entrée (les vecteurs d’observation o i ) pour en sortir des valeurs concaténant l’ensemble des informations des valeurs sur les observations données en entrée. A ce stade ces valeurs n’ont plus de signification humainement interprétable. On comprend aisément à la lecture de la présente demande que les particularités de la présente invention, comme généralement décrites et illustrées dans les figures, peuvent être arrangées et conçues selon une grande variété de configurations différentes. Ainsi, la description de la présente invention et les figures afférentes ne sont pas prévues pour limiter la portée de l'invention, mais représentent simplement des modes de réalisation choisis. L’homme de métier comprendra que les caractéristiques techniques d’un mode de réalisation donné peuvent en fait être combinées avec des caractéristiques d’un autre mode de réalisation à moins que l’inverse ne soit explicitement mentionné ou qu’il ne soit évident que ces caractéristiques sont incompatibles. De plus, les caractéristiques techniques décrites dans un mode de réalisation donné peuvent être isolées des autres caractéristiques de ce mode à moins que l’inverse ne soit explicitement mentionné. Enfin l’homme de métier comprendra que les informations contenues dans les figures, notamment celles des , [FIG.2], [FIG.3], [FIG.4], [FIG.5] seront des informations techniques incorporables au présent texte en tant qu’annexe. Il doit être évident pour les personnes versées dans l’art que la présente invention permet des modes de réalisation sous de nombreuses autres formes spécifiques sans l’éloigner du domaine défini par la protection demandée, ils doivent être considérés à titre d'illustration et l’invention ne doit pas être limitée aux détails donnés ci-dessus. ANNEXE : Exemple de dialogue illustrant l’intérêt de l’invention et du contexte : Utilisateur : bonjour Agent : Bonjour comment puis-je vous aider ? Utilisateur : J’aimerais réserver un vol. Agent : Quelle destination désirez-vous ? Utilisateur : New York, pour des vacances avec ma femme et mes deux enfants Agent : Quelle date aimeriez-vous ? Utilisateur : Du 22/05/2019 au 02/06/2019 Agent : Il y a deux vols un à 8h et un à 12h, quel horaire vous arrange le mieux ? Utilisateur : Le premier Agent : Ok, je réserve 4 billets pour un vol pour New York à 8h le 22/05/2019 pour un retour le 02/06/ 2019 On remarque que l’agent à travers le contexte (au niveau de la valeur nombre de personnes du champ « request slot » d’une observation o t particulière du dialogue) déduit par exemple le nombre de personnes remplissant la « request slot » avec la valeur 4 et déduit aussi l’ensemble des informations nécessaires à la réservation d’un billet d’avion à travers plusieurs étapes de dialogue successives sans que ce soit demandé de manière implicite. Système comportant un ordinateur fournissant une interface entre une application frontale configurée pour recevoir une ou plusieurs formulations orales d'utilisateur provenant d’un objet portable intelligent équipé d’un micro et haut-parleur pour émettre et recevoir dans un langage naturel et un système principal avec lequel il est en communication, le système principal comprenant un ou plusieurs processeurs configurés pour fournir un service à cet utilisateur, l’application frontend consistant à: recevoir d’un module de compréhension de langage naturel (NLU) une information en entrée représentative du texte formulé dans le langage naturel via l'application de l’objet intelligent; à structurer l’information reçue sous forme de plusieurs triplets ( de préférence trois) deux au moins concernant l’information utilisateur, l’information agent, et un éventuel troisième concernant des informations statistiques qui renseignent par leurs sous vecteurs sur le type d’action entreprise (question, réponse, formule de politesse, …), l’information fournie (dans le cas d’une action réponse par exemple) et l’information demandée (dans le cas d’une action question) et à regrouper ces triplets sous forme d’un vecteur d’observation de dialogue o t ; effectuer au moins un calcul sur chaque paramètre (A rs 0 , A rs 1 , ..A rs i ) de plusieurs vecteurs d’observation ainsi constitués en utilisant chacun d’une pluralité de vecteurs d’observation et au moins une couche de réseau de neurones récurrents de type LSTM par sous vecteurs d’informations , pour générer une représentation latente (notée h(A rs )) de plusieurs observations [o 0 , ...., o t ], à la suite sous forme d’un vecteur h(t), à appliquer le vecteur de sortie à un algorithme de renforcement FC pour calculer des Q-valeurs pour déduire l’action à réaliser suivant l’état h t ; communication de l'action identifiée au module de génération de langage naturel (NLG) pour fournir à l'application frontale une sortie texte en langage naturel en fonction de l'action identifiée ou exécuter l’action demandée puis, stocker les observations de nouveaux dialogues dans une mémoire (Experience Replay) pour pouvoir les réutiliser lors des prochains entrainements. Système selon la revendication 1 caractérisé en ce que le vecteur h(t) intègre une composante temporelle permettant de prendre en compte l’historique des interactions entre l’agent de dialogue et l’humain. Système selon la revendication 1, dans lequel l’algorithme de renforcement consiste à appliquer chaque résultat h i sur un module de renforcement FC implémenté sous forme d’ un réseau de neurone et à déterminer une pluralité de valeurs Q(h 1 t), …, Q(h i t), pour déterminer la meilleure Q-valeur qui permettra de déduire par l’application à cette valeur Q d’un algorithme de politique epsilon-greedy (94) pour déterminer l‘action à réaliser suivant l’état (h i t( correspondant à cette meilleure Q-valeur). Système selon la revendication 2, dans lequel un module ABUS produit cette observation o t , est augmentée avec les sous–vecteurs du module connaissance TC-Bot, cette observation o t après traitement par le traqueur d’état, génère un état de croyance « belief state » h t , sur lequel un réseau Q-N mettant en œuvre l’algorithme de renforcement prédit une valeur Q puis par un algorithme de politique « epsilon-greedy » choisit une action at, puis une nouvelle observation o t+1 et la récompense r t sont produites par ABUS, et un tuple de transition constitué par (o t , a t , r t , o t+1 ), est mémorisé dans la mémoire Experience Replay. Système selon la revendication 1, dans lequel le réseau DRQN (Deep Recurrent Q Network) réseau Q récurent et profond est composé d’un LSTM (81, 82, …) et d’une couche DQN de réseau–Q complétement connecté (Q-network (FC, 70, 71,)) ; et dans lequel l’apprentissage supervisé (SL) (Supervised Learning) et hybridé avec l’apprentissage renforcé RL (Re-inforcement Learning ) augmente DRQN avec 3 têtes FC (60 à 62) prédisant le comportement de l’utilisateur et permettant d’apprendre les représentation d’historiques– utilisant SL – qui facilite l’apprentissage de l’agent RL. Système selon la revendication 1, dans lequel les informations concernant les futures répliques des utilisateurs (étiquettes (u i act , u i is et u i rs )) sont utilisées pour entrainer le réseau récurrent profond, composé du LSTM (82), afin d’améliorer l’encodage du contexte par le biais des réseaux neuronaux FC (60-62) pour générer un état de croyance « belief state » suivant h 1 envoyé sur le réseau de neurone (71 ) à l’étape suivante et dans les trois têtes FC (63 à 65) de l’étape suivante pour générer des résultats d’un nouvel état de croyance « belief state » h 2 permettant d’être le plus proche des étiquettes de l’étape suivante (u i+1 act , u i+1 is et u i+1 rs ) et ainsi de suite. Système selon la revendication 1, dans lequel les sous vecteurs sont au nombre de 9, trois pour les informations « Utilisateur », trois autres pour les informations « d’agent », trois autres pour des statistiques sur le dialogue. Système selon la revendication 5, dans lequel les trois sous-vecteurs des informations utilisateurs ou des informations agent concernent l’acte de dialogue, l’information donnée (inform slot), l’information requêtée (request slot). Système selon la revendication 5, dans lequel les trois sous-vecteurs des statistiques concernent : le tour de dialogue, les résultats de la base de données (96) de TC-Bot relative aux informations d’expertise du chatbot. Gestionnaire de dialogue pour robot conversationnel (chatbot) comprend un traquer d’état utilisant des observations o t structurées entre trois sous-vecteur, un pour l’utilisateur, un pour l’agent et un troisième pour les statistique , chaque sous vecteur comprenant trois composants, chacun d’une pluralité de valeur d’un même composant d’un sous vecteur étant appliqué à un algorithme implémentant un réseau de neurones récurrents de type LSTM (81,82, …) pour générer une représentation latente, puis à appliquer ces résultats à un réseau Q profond composé d’une couche DQN de réseau–Q complétement connecté (Q-network (FC, 70, 71, …)) ; et dans lequel l’apprentissage supervisé (SL) (Supervised Learning) et hybridé avec l’apprentissage renforcé RL (Re-inforcement Learning ) augmente DRQN (LSTM + DQN) avec 3 têtes FC (60 à 62) prédisant le comportement de l’utilisateur et permettant d’apprendre les représentation d’historiques (utilisant SL ) qui facilitent l’apprentissage de l’agent RL. Gestionnaire de dialogue pour robot conversationnel (chatbot) selon la revendication 10, dans lequel la représentation latente des vecteurs d’observations h t intègre de manière native une composante temporelle cachée. Cette composante temporelle permet de prendre en compte historique et ainsi, procure une meilleure prise en compte du contexte ce qui au final contribue à l’amélioration de la qualité de l’interaction entre l’humain et l’agent. Gestionnaire de Dialogue pour robot conversationnel (chatbot) selon la revendication 10 ou 11 caractérisé en ce que les informations concernant les futures répliques des utilisateurs (étiquettes (u i act , u i is et u i rs )) sont utilisées pour entrainer le réseau récurrent profond, composé du LSTM (82), afin d’améliorer l’encodage du contexte par le biais des réseaux neuronaux FC (60-62)pour générer un état « belief state » suivant h 1 envoyé sur le réseau de neurone (71 ) à l’étape suivante et dans les trois têtes FC (63 à 65) de l’étape suivante pour générer des résultats d’un nouvel état « belief state » h 2 permettant d’être le plus proche des étiquettes de l’étape suivante (u i+1 act , u i+1 is et u i+1 rs ) et ainsi de suite. Gestionnaire de Dialogue pour robot conversationnel (chatbot) selon une des revendications 10 à 12 caractérisé en ce qu’il comprend les modules ABUS (90), LSTM (91) FC (93), ԑ-greedy (94), TC-Bot (95) coopèrent pour générer un certain nombre de nouvelles observations sans doublon d’abord regroupés dans un espace de stockage (Experience Replay) puis, utilisées pour ré-entrainer le traqueur d’état et l’algorithme de renforcement, et ainsi permettre aux apprentissages de s’enrichir au fur et à mesure des dialogues. Méthode de cheminement du dialogue utilisée par le Gestionnaire de Dialogue selon une des revendications 10 à 13 dans laquelle chaque interaction de l’utilisateur passe dans un module NLU pour être transformé en une structure sémantique qui va remplir la partie utilisateur (11) du vecteur observation (voir [FIG.1] ) ;cette observation seule, si première itération du dialogue, ou en compagnie des observations précédentes du dialogue vont être transformées par le traqueur d’état en une représentation latente du contexte nommée h t , cette représentation est passée à l’algorithme de renforcement qui va calculer la meilleure Q valeur pour ce contexte de dialogue ce qui va permettre à ԑ-greedy (94), de proposer une action, cette action se rajoutant à la partie réplique (12a) de l’agent dans le vecteur d’observation (voir [FIG.1] ). Méthode de cheminement du dialogue utilisée par le Gestionnaire de Dialogue selon une des revendications 10 à 13 dans laquelle en fonction du type de demande utilisateur une requête à une base de données de connaissance extérieure (100) peut être nécessaire, dans un tel cas, l’information est récupérée et rajoutée à la valeur manquante de la réponse de l’agent et les statistiques (13b,13c) sur le résultat de la requête sont rajoutées au vecteur observation (voir [FIG.1] ), suite à ces étapes, les valeurs du vecteur d’observation remplissent une structure sémantique de la réponse de l’agent qui une fois passée dans un module NLG est transformée en une phrase textuelle à renvoyer à l’utilisateur. Méthode de cheminement du dialogue utilisée par le Gestionnaire de Dialogue selon une des revendications 10 à 13 dans laquelle le dialogue est arrêté soit par la volonté de l’utilisateur soit parce qu’on a atteint le nombre maximal d’itérations autorisées pour l’agent conversationnel. Méthode de cheminement du dialogue utilisée par le Gestionnaire de Dialogue selon une des revendications 10 à 13 dans laquelle après chaque arrêt de dialogue, chaque dialogue est noté par l’ajout de toutes les valeurs cumulées r t des observations, ce qui permet de distinguer les dialogues qui ont réussi de ceux qui ont échoué, l’affectation de ces valeurs r t de fin de dialogue est soit faite manuellement à postériori des dialogues, annotation manuelle qui va permettre de ré-entrainer l’agent grâce à ces dialogues annotés, soit de façon automatique par une analyse sémantique du dialogue, l’analyse sémantique peut être soit implicite (exemple : L’agent pose la question « Etes-vous satisfait de la réponse ? » et l’utilisateur répond par l’affirmative) ou bien explicite par l’analyse d’intention des répliques de l’utilisateur à la fin du dialogue (exemple : remerciement). Méthode de génération de dialogue entre un agent de dialogue (chatbot) et un utilisateur par un moteur hybride d’intelligence artificielle qui contient au moins trois modules M 1 , M 2 , et M 3 interdépendants réalisant chacune des étapes suivantes : Réception, formatage (31 à 39) d’une séquence d’observations et transfert de chaque composant dudit format par le module M 1 au module M 2 ; Utilisation par M 2 de chaque vecteur (31 à 39) de la séquence d’observations formatée en entrées dans un champs de réseau de neurones récurrents (par exemple 41 à 49) et calcul d’une représentation latente h t du vecteur d’observation (51), des étiquettes (u i act , u i is , u i rs ), puis stabilisation par apprentissage supervisé dans M 2 de ladite représentation latente h t ; Envoi de h t par le module M 2 en entrée du module M 3 et échange d’informations par un entrecroisement des itérations descente de gradient et une propagation du gradient régulière entre le traqueur d’état (91) et l’algorithme de renforcement (93); Déduction dans le module M 3 des informations proches notées (Û i rs , Û i is , Û i act ) par chacune des trois première tête FC (60 à 62) puis, calcul des Q-valeurs Q(h t,. ) (70, 71, …) ; Utilisation de la meilleure valeur de Q(h t ) pour générer les actions a t Méthode de génération de dialogue entre un agent conversationnel (chatbot) et un utilisateur, caractérisée en ce qu’elle comporte une étape de stockage de l’état du moteur (chaque partie de dialogue ; chaque dialogue en entier …) dans l’ordre chronologique de la dernière observation en date jusqu’à début du dialogue pour fournir tout le contexte antérieur à chaque nouvel état de croyance dans un espace de stockage (92).