Brevet FR3060797A1 — publié le 20180622

BASE DE DONNÉES PRÉDICTIVE POUR DES PROCESSUS D'ORDINATEUR DOMAINE TECHNIQUE [0001] La présente invention concerne de façon générale des processus d'ordinateur, et plus particulièrement, des systèmes, des procédés et des produits-programmes d'ordinateur pour implémenter une base de données prédictive afin d'améliorer le taux de succès des processus d'ordinateur. CONTEXTE 10 [0002] Lorsqu'ils demandent des processus d'ordinateur, les utilisateurs doivent souvent saisir plusieurs éléments d'information afin que le processus d'ordinateur aboutisse. Par exemple, selon le type de processus d'ordinateur qui est demandé par un utilisateur, l'utilisateur peut devoir saisir un nom, une adresse, une information de connexion, des informations de paiement, et/ou d'autres éléments d'information spécifique à l'utilisateur demandeur. Si une des 15 informations nécessaire est omise et/ou n'est pas saisie correctement, le processus d'ordinateur demandé peut échouer produire un résultat inattendu. En outre, plus le nombre d'éléments d'information demandé à un utilisateur par un processus d'ordinateur est élevé, plus il y a de chance qu'une information soit omise ou mal saisie et que le processus d'ordinateur échoue. [0003] Par conséquent, des systèmes, procédés, et produits-programme d'ordinateur 20 améliorés sont nécessaires pour prédire l'information d'un utilisateur et ainsi améliorer le taux de succès des processus d'ordinateur. RÉSUMÉ [0004] Dans un mode de réalisation exemplaire, un procédé pour implémenter une base 25 de données prédictive pour un processus d'ordinateur inclut la réception, par un ou plusieurs processeurs, d'une donnée de saisie historique incluant des objets de donnée saisis pour chacun des processus d'ordinateur aboutis demandés par des utilisateurs. Par la suite, le procédé inclut la détermination de relations sur la base de la donnée de saisie historique. Chacune des relations inclut un premier des objets de donnée saisis pour un des processus d'ordinateur aboutis, lié à un 30 second des objets de donnée saisis pour le processus d'ordinateur abouti. Le procédé inclut par ailleurs la génération d'un arbre de décision sur la base des relations, et le filtrage de l'arbre de 3060797 décision sur la base d'un seuil d'optimisation pour réduire l'arbre de décision. En outre, le procédé inclut la génération de règles sur la base de l'arbre de décision filtré. Chacune des règles inclut un troisième objet de donnée lié à un quatrième objet de donnée, dans lequel, pour chaque règle le troisième objet de donnée de la règle respective inclut au moins une portion du premier objet de donnée d'une des relations, et le quatrième objet de donnée de la règle respective inclut le second objet de donnée de ladite relation. Le procédé inclut aussi le stockage des règles dans la base de données prédictive. [0005] De plus, le procédé peut aussi inclure la réception d'une donnée de saisie partielle entrée par un utilisateur dans le cadre d'une requête pour le processus d'ordinateur. La saisie partielle de donnée peut inclure le troisième objet de donnée de l'une des règles. En réponse à la réception de la saisie partielle de donnée, le procédé inclut la récupération des règles dans la base de données prédictive, la détermination d'une règle à partir des règles récupérées sur la base d'une saisie partielle de donnée. et l'apport d'un quatrième objet de donnée de ladite règle au processus d'ordinateur demandé. [0006] Par ailleurs, l'arbre de décision peut inclure plusieurs chemins, chacun des chemins correspondant à une ou plusieurs relations. À cette fin, le filtrage de l'arbre de décision sur la base d'un seuil d'optimisation pour réduire l'arbre de décision peut inclure d'enlever de l'arbre de décision chaque chemin pour lequel le nombre de relations lui correspondant est au-dessous du seuil d'optimisation. Additionnellement ou alternativement, chaque chemin peut aussi être associé à une probabilité basée sur le nombre de relations correspondant au chemin respectif et sur le nombre total de relations déterminées. À cette fin, le filtrage de l'arbre de décision basé sur un seuil d'optimisation pour réduire l'arbre de décision peut inclure d'enlever de l'arbre de décision, chaque chemin pour lequel la probabilité qui lui est associée est en dessous du seuil d'optimisation. [0007] En outre, l'arbre de décision peut comprendre un premier noeud et plusieurs seconds noeuds liés au premier noeud, chacun des seconds noeuds correspondant à une ou plusieurs relations différentes. À cette fin, le premier noeud peut suivre le nombre de relations correspondant à chacun des seconds noeuds, et le filtrage de l'arbre de décision sur la base d'un seuil d'optimisation pour réduire l'arbre de décision peut inclure d'enlever chaque second noeud pour lequel le nombre de relations suivies par le premier noeud est en dessous du seuil d'optimisation. En outre ou alternativement, le premier noeud peut suivre une probabilité pour 3060797 chaque second noeud sur la base du nombre de relations correspondant au second noeud, et du nombre total de relations correspondant à tous les seconds noeuds, À cette fin, le filtrage de l'arbre de décision basé sur un seuil d'optimisation pour réduire l'arbre de décision peut inclure d'enlever chaque second noeud pour lequel la probabilité suivie par le premier noeud est en 5 dessous du seuil d'optimisation. [0008] En outre, une des règles peut inclure un cinquième objet de donnée lié au troisième objet.de donnée de la première règle. Le cinquième objet de donnée peut être différent du quatrième objet de donnée de ladite règle, et peut inclure le second objet de donnée d'une seconde relation parmi les relations. Par ailleurs, le premier objet de donnée de la seconde des 10 relations peut inclure le troisième objet de donnée de la première règle. Ladite règle peut aussi inclure une première probabilité associée au quatrième objet de donnée de ladite règle et une seconde probabilité associée au cinquième objet de donnée de ladite règle. La première probabilité peut être plus élevée que la seconde probabilité. À cette fin, le procédé peut aussi inclure la réception d'une donnée de saisie partielle entrée par un utilisateur dans le cadre d'une 15 requête pour le processus d'ordinateur, la donnée de saisie partielle incluant le troisième objet de donnée de la première règle. En réponse à la réception de la saisie partielle de donnée, le procédé peut inclure la récupération des règles dans ka base de données prédictive, et la détermination d'une règle à partir des règles récupérées sur la base de de la saisie partielle de donnée. En réponse à la détermination de la règle, le procédé peut aussi inclure la détermination 20 d'un quatrième objet de donnée de ladite règle comme premier résultat et d'un cinquième objet de donnée de ladite règle comme second résultat sur la base de la première probabilité et de la seconde probabilité et l'apport du premier résultat au processus d'ordinateur demandé. Une fois que le premier résultat est apporté au processus d'ordinateur demandé, et en réponse au processus d'ordinateur demandé n'ayant pas abouti, le procédé peut inclure par ailleurs l'apport 25 du second résultat au processus d'ordinateur demandé. [0009] Dans un autre mode de réalisation exemplaire, un système pour implémenter une base de données prédictive pour un processus d'ordinateur inclut un ou plusieurs processeurs et une mémoire. La mémoire stocke des instructions qui, lors de l'exécution par le ou plusieurs processeurs, amènent le système, en réponse à la réception de la saisie partielle de donnée 30 incluant des objets de donnée entrés pour chacun des processus d'ordinateur aboutis demandés par des utilisateurs, à déterminer des relations sur la base d'une donnée de saisie historique. 3060797 4 Chacune des relations inclut un premier des objets de donnée saisis pour un des processus d'ordinateur aboutis, lié à un second des objets de donnée saisis pour ledit processus d'ordinateur abouti. Lors de l'exécution, les instructions amènent par ailleurs le système à générer un arbre de décision basé sur les relations, et à filtrer l'arbre de décision sur la base d'un seuil 5 d'optimisation pour réduire l'arbre de décision, Par la suite, les instructions lors de l'exécution amènent le système à générer des règles sur la base de l'arbre de décision filtré. Chacune des règles inclut un troisième objet de donnée lié à un quatrième objet de donnée, dans lequel pour chaque règle, le troisième objet de donnée de la règle respective inclut au moins une portion du premier objet de donnée d'une première des relations, et le quatrième objet de donnée de la règle 10 respective inclut le second objet de donnée de la première des relations. Lors de l'exécution, les instructions amènent également le système à stocker les règles dans la base de données prédictive. [00101 Les instructions enregistrées dans la mémoire peuvent également. lors de l'exécution, amener le système à implémenter etfou à mettre en oeuvre une ou plusieurs 15 caractéristiques relatives au procédé exemplaire décrit ci-dessus. [00111 Dans un autre mode de réalisation, un produit-programme d'ordinateur peut inclure un support durable lisible par ordinateur et des instructions enregistrées sur le support durable lisible par ordinateur. Les instructions, exécutées par un ou plusieurs processeurs d'un système, amènent ledit système, en réponse à la réception d'une donnée de saisie historique 20 incluant les objets de données saisies pour chacun des processus d'ordinateur aboutis demandés par des utilisateurs, à déterminer des relations sur la base de la donnée de saisie historique. Chacune des relations inclut un premier des objets de donnée saisis pour un des processus d'ordinateur aboutis, Hé à un second des objets de donnée saisis pour ledit processus d'ordinateur abouti. Lors de l'exécution, les instructions amènent par ailleurs le système à générer un arbre 25 de décision basé sur les relations, et à filtrer l'arbre de décision sur la base d'un seuil d'optimisation pour réduire l'arbre de décision. Par la suite, les instructions lors de l'exécution amènent le système à générer des règles sur la base de l'arbre de décision filtré. Chacune des règles inclut un troisième objet de donnée lié à un quatrième objet de donnée, dans lequel pour chaque règle, le troisième objet de donnée de la règle respective inclut au moins une portion du 30 premier objet de donnée d'une première des relations, et le quatrième objet de donnée de la règle respective inclut le second objet de donnée de la première des relations. Lors de l'exécution, les 3060797 instructions amènent également le système à stocker les règles dans la base de données prédictive. [0012] Les instructions enregistrées sur le support durable lisible par ordinateur peuvent aussi, lors de l'exécution, amener le système à implémenter et/ou à mettre en oeuvre une ou 5 plusieurs des caractéristiques relatives au procédé exemplaire décrit ci-dessus. [0013] Le résumé ci-dessus apporte une vue d'ensemble simplifiée de certains des modes de réalisation de l'invention afin de donner une compréhension basique de certains aspects de l'invention discutée dans les présentes. Le résumé ne prétend pas apporter une vue d'ensemble exhaustive de l'invention et n'est pas destiné à identifier tout élément clé ou critique ou à limiter 10 la portée de l'invention. Le seul but du résumé est de présenter simplement quelques concepts sous une forme simplifiée comme préambule à la description détaillée présentée ci-dessous. BRÈVE DESCRIPTION DES DESSINS [0014] Les modes de réalisation de la présente invention seront mieux compris et seront 15 appréciés plus pleinement grâce à la description détaillée ci-après qui complète les dessins. [0015] La FIG. 1 est une vue schématique d'un environnement d'exploitation exemplaire incluant une pluralité de systèmes pour implémenter une base de données prédictive afin d'améliorer le taux de succès de processus d'ordinateur. [0016] La FIG. 2 est une vue schématique du système informatique exemplaire de la 20 FIG. 1. [0017] La FIG. 3 est une vue schématique d'une architecture de traitement exemplaire pouvant être implémentée par un ou plusieurs des systèmes informatiques de la FIG. 1. [0018] La FIG. 4 est un diagramme séquentiel d'un processus exemplaire pour implémenter et utiliser une hase de données prédictive qui peut être mise en oeuvre par 25 l'architecture de traitement de la FIG. 3. [0019] La FIG. 5 est une vue schématique d'un arbre de décision exemplaire pouvant être généré par l'architecture de traitement de la FIG. 3 pendant la mise en oeuvre du processus de la FIG. 4. [0020] La FIG. 6 est une vue schématique d'un arbre de décision partiel exemplaire 30 pouvant être généré par l'architecture de traitement de la FIG. 3 pendant la mise en oeuvre du processus de la FIG. 4. 3060797 6 [00211 La FIG. 7 est une vue schématique d'un autre arbre de décision partiel exemplaire pouvant être généré par l'architecture de traitement de la FIG. 3 pendant la mise en oeuvre du processus de la FIG. 4. 5 DESCRIPTION DÉTAILLÉE [0022] Plusieurs des modes de réalisation décrits dans les présentes concernent l'implémentation d'une base de données de prédiction pour améliorer le taux de succès des processus d'ordinateur demandés par les utilisateurs. En particulier, ces modes de réalisation utilisent la donnée de saisie entrée par les utilisateurs en rapport avec les processus d'ordinateur 10 aboutis pour générer et stocker des règles dans la base de données de prédiction. Par la suite, lorsqu'un utilisateur soumet une demande de processus d'ordinateur. l'utilisateur peut n'avoir à entrer que certaines données de saisie spécifiques à l'utilisateur qui sont nécessaires pour que le processus d'ordinateur aboutisse. Sur la base de la donnée de saisie partielle qui est entrée par l'utilisateur, les règles peuvent être utilisées pour déterminer une donnée de saisie spécifique à 15 l'utilisateur supplémentaire qui est nécessaire pour le processus d'ordinateur demandé. En réduisant le volume de données de saisie qui doit être saisi par un utilisateur pour un processus d'ordinateur, les modes de réalisation augmentent la probabilité que le processus d'ordinateur aboutisse. [0023] Passons à présent aux dessins, la FIG. 1 illustre un environnement d'exploitation 20 exemplaire 10. L'environnement d'exploitation 10 peut inclure un système client 12, un ou plusieurs systèmes de traitement 14 et/ou un système d'apprentissage automatique 16. Chacun de ces systèmes peut être activé de façon communicative pour interagir les uns avec les autres via un ou plusieurs réseaux 24. tel qu'Internet. De plus, un ou plusieurs de ces systèmes peut être intégré dans un autre. Par exemple, le système d'apprentissage automatique 16 peut être hébergé 25 sur un ou plusieurs systèmes de traitement 14. [0024] Le système client 12 peut être un dispositif électronique permettant à un utilisateur d'accéder à des informations et à des services à distance via Internet. En particulier, le système client 12 peut inclure un navigateur et/ou une ou plusieurs applications qui permettent à un utilisateur d'accéder aux systèmes de traitement 14 et par là-même d'instruire les systèmes de 30 traitement 14 de mettre en oeuvre un processus d'ordinateur basé sur une donnée de saisie entrée par l'utilisateur. Des exemples non limitatifs d'un système client 12 incluent un ordinateur de 3060797 7 bureau, un ordinateur portable et un appareil mobile électronique tel qu'un téléphone portable ou une tablette. [0025] Les systèmes de traitement 14 peuvent inclure des systèmes u reçoivent une donnée de saisie entrée par un utilisateur. par exemple via le système client 12 et qui mettent en 5ouvre ou déclenchent les processus d'ordinateur demandés par l'utilisateur sur la base de la donnée de saisie reçue. Par exemple, les systèmes de traitement 14 peuvent inclure les systèmes d'un commerçant, qui peuvent être configurés pour vendre des biens et/ou des services à un utilisateur via Internet. À cette fin, la donnée de saisie entrée par l'utilisateur peut inclure les informations de paiement de l'utilisateur, tels que les données de carte de crédit de l'utilisateur, 10 pour une transaction en ligne. En réponse à la réception des informations de paiement de l'utilisateur pour une transaction en ligne donnée, les systèmes commerçants peuvent être configurés pour initier un processus d'ordinateur dans lequel les informations de paiement de l'utilisateur sont autorisées pour la transaction en ligne, par exemple en communiquant les informations de paiement de l'utilisateur à un ou plusieurs systèmes reliés à la banque via 15 Internet. À la réception d'un message indiquant que les informations de paiement de l'utilisateur sont autorisées pour la transaction en ligne ; ce qui peut arriver presque en même temps que ta soumission des informations de paiement au système commerçant, le commerçant peut ensuite poursuivre pour fournir les biens et/ou les services achetés à l'utilisateur, par exemple en préparant une expédition, en créant une réservation pour l'utilisateur, etc. 20 [0026] En plus des systèmes commerçants, les systèmes de traitement 14 peuvent également inclure d'autres systèmes impliqués dans l'autorisation de paiement et les processus de règlement. Par exemple, les systèmes de traitement 14 peuvent inclure les systèmes d'une banque d'un commerçant (par ex., la banque acquéreuse), les systèmes d'une banque de l'utilisateur (par ex., la banque émettrice), les systèmes d'une association de crédit liée aux 25 informations de paiement de l'utilisateur (par ex., VISAS, AMERICAN EXPRESS'', DISCOVERe, MASTERCARDe), et/ou des systèmes tierces qui facilitent les processus d'autorisation et de règlement pour le compte d'un commerçant (par ex., les centres d'échanges de données, les plans de règlement de facturation, les plates-formes de paiement tierces). [0027] Comme décrit précédemment, dans le but de réduire le volume de données de 30 saisie qui nécessite d'être entré par un utilisateur pour qu'un processus d'ordinateur aboutisse, et en conséquence pour améliorer le taux de réussite du processus d'ordinateur, certains systèmes 3060797 de traitement 14 peuvent être configurés de sorte à permettre à un utilisateur de saisir uniquement certaines données de saisie nécessaires pour mettre en oeuvre avec succès le processus d'ordinateur. Par exemple, au moment de demander les informations de paiement d'un utilisateur pour une transaction en ligne, un système de traitement 14 peut être configuré de 5 sorte que l'utilisateur est capable de saisir uniquement des informations partielles de sa carte de crédit. En particulier, le système de traitement 14 peut présenter à l'utilisateur une interface utilisateur graphique (GUI) qui inclut des champs pour saisir certains détails de carte de crédit, tels qu'un numéro de carte de crédit. et qui omet des champs pour saisir d'autres détails de carte de crédit, tels que le type de carte de crédit (par ex., VISA`, AMERICAN EXPRESSe, 10 DISCOVERe, MASTERCARDe) Parce que les détails de carte de crédit omis peuvent être nécessaires pour que les systèmes de traitement 14 mettent en oeuvre avec succès un processus d'ordinateur pour la transaction en ligne (par ex., un processus d'autorisation ou de règlement), les systèmes de traitement 14 peuvent devoir déterminer d'une manière ou d'une autre les détails omis avant de poursuivre pour mettre en oeuvre le processus d'ordinateur. [0028] Une approche conventionnelle pour déterminer les détails fournis consiste à récupérer et à consolider des tableaux de tierces parties qui lient la donnée de saisie partielle éventuelle pour un processus d'ordinateur à une autre donnée de saisie nécessaire à l'aboutissement du processus d'ordinateur. Cependant, cette approche a des inconvénients. Par exemple, les tableaux doivent être périodiquement conservés et mis à jour ; ce qui nécessite 20 l'envoi de demandes répétées aux tierces parties. De plus, les tableaux récupérés peuvent être incomplets et/ou non fiables concernant la donnée de saisie partielle éventuelle qui peut être entrée par un utilisateur ; ce qui peut amener de nombreux processus d'ordinateur à échouer. [0029] Afin de surmonter les inconvénients de l'approche conventionnelle, le système d'apprentissage automatique 16 peut être configuré pour déterminer un ensemble de règles sur la 25 base de la donnée de saisie historique entrée par les utilisateurs pour une pluralité de processus d'ordinateur aboutis. En particulier, le système d'apprentissage automatique 16 peut générer des règles sur la base de relations dérivées de la donnée de saisie historique et stocker les règles dans une base de données prédictive. En général, un processus d'ordinateur abouti peut inclure un processus d'ordinateur qui se termine, comme souhaité par l'utilisateur, sans erreur et/ou sans 30 rejet de la donnée de saisie entrée par l'utilisateur (par ex.. informations de connexion invalides, informations de carte de crédit invalides). Par conséquent, les relations dérivées de la donnée de 3060797 saisie entrée par les utilisateurs en rapport avec des processus d'ordinateur aboutis sont typiquement assez fiables et constituent donc une bonne base pour déterminer les règles. Une fois déterminées et stockées, les règles peuvent être utilisées par le système d'apprentissage automatique et/ou les systèmes de traitement 14 pour déterminer la donnée de saisie 5 supplémentaire qui est omise à partir de la donnée de saisie partielle entrée par un utilisateur en rapport avec un processus d'ordinateur demandé et qui est nécessaire pour que les systèmes de traitement 14 mettent en oeuvre avec succès le processus d'ordinateur demandé. [0030] Faisant maintenant référence à la FIG. 2, le système client 12, les systèmes de traitement 14 et le système d'apprentissage automatique 16 peuvent être implémentés sur un ou 10 plusieurs dispositifs ou systèmes informatiques, tels que le système informatique exemplaire 26. Le système informatique 26 peut inclure un processeur 28, une mémoire 30, un dispositif de stockage de mémoire de masse 32, une interface entrée/sortie (1/0) 34, et une interface homme-machine (HMI) 36. Le système informatique 26 peut aussi être couplé de façon fonctionnelle à une ou plusieurs ressources externes 38 via le réseau 24 ou l'interface 1)0 34. Les ressources 15 externes peuvent inclure, de façon non exhaustive, des serveurs, des bases de données, des dispositifs de stockage de masse, des dispositifs périphériques. des services de réseau en nuage (cloud), ou toute autre ressource informatique appropriée qui peut être utilisée avec le système informatique 26. [0031] Le processeur 28 peut inclure un ou plusieurs dispositifs sélectionnés 20 microprocesseurs, microcontrôleurs, processeurs de shmal numérique, micro-ordinateurs, unités centrales de traitement, des réseaux de portes programmables (gate arrays), des dispositifs logiques programmables, des machines à état défini, des circuits logiques, des circuits analogiques, des circuits numériques ou tout autre dispositif servant à manipuler des signaux (analogues ou numériques) sur la base des instructions de fonctionnement enregistrées dans la 25 mémoire 30. La mémoire 30 peut inclure un seul dispositif de mémoire ou une pluralité de dispositifs de mémoire comprenant, de façon non exhaustive, la mémoire à lecture seule (ROM), la mémoire à accès aléatoire (RAM), la mémoire volatile, la mémoire non volatile, la mémoire vive statique (SRAM), la mémoire dynamique à accès aléatoire (DRAM). la mémoire flash, l'antémémoire (cache memory) ou tout autre dispositif capable de stocker des informations. Le 30 dispositif de mémoire de masse 32 peut inclure des dispositifs de stockage de données tels qu'un 3060797 10 disque dur, un disque optique, un dérouleur de bande magnétique, un circuit à l'état solide volatile ou non-volatile ou tout autre dispositif capable de stocker des informations. [0032] Le processeur 28 peut fonctionner sous le contrôle d'un système d'exploitation 40 qui réside dans la mémoire 30. Le système d'exploitation 40 peut gérer les ressources de 5 l'ordinateur de telle façon que le code de programme de l'ordinateur, intégré sous forme d'un ou de plusieurs logiciels d'application, tels que l'application 42 qui réside dans la mémoire 30, puisse disposer d'instructions exécutées par le processeur 28. Dans un autre mode de réalisation alternatif, le processeur 28 peut exécuter l'application 42 directement et dans ce cas, le système d'exploitation 40 peut être omis. Une ou plusieurs structures de données 41 peuvent aussi résider 10 dans la mémoire 30, et peuvent être utilisées par le processeur 28, le système d'exploitation 40 ou l'application 42 pour stocker ou manipuler des données. [0033] L'interface 1/0 34 peut fournir une interface machine qui couple de façon fonctionnelle le processeur 28 à d'autres dispositifs et systèmes, tels que le réseau 24 ou une ou plusieurs ressources externes 38. L'application 42 peut ainsi collaborer avec le réseau 24 et/ou 15 les ressources externes 38 en communiquant par l'intermédiaire de l'interface 1/0 34 pour fournir les divers éléments, fonctions, applications, processus ou modules composant les modes de réalisation de l'invention. Le serveur d'application 42 peut aussi avoir un code de programme qui est exécuté par la ou plusieurs ressources externes 38 ou sinon repose sur les fonctions ou signaux fournis par d'autres systèmes ou composants de réseau externes au système 20 informatique 26. En effet, au vu des configurations presque infinies de matériel informatique et de logiciel possibles, les hommes de métier comprendront que les modes de réalisation de l'invention peuvent inclure des applications localisées à l'extérieur du système informatique 26, distribuées à des ordinateurs multiples et à d'autres ressources externes 38, ou apportées par des ressources informatiques (matériel et logiciel) fournies comme services sur le réseau 24, par 25 exemple un service d'informatique en nuage (cloud computing). [0034] Le H1\41 peut 36 peut être couplé de façon fonctionnelle au processeur 28 du système informatique 26 d'une manière connue pour permettre à un utilisateur d'interagir directement avec système informatique 26. Le 111\4136 peut inclure un affichage vidéo ou un affichage alphanumérique, un écran tactile, un haut-parleur et tout autre indicateur visuel et 30 audio capable de communiquer des données à l'utilisateur. Le HMI 36 peut aussi inclure des dispositifs de saisie et des contrôles tels qu'un clavier alphanumérique, un périphérique de 3060797 pointage, des claviers, des boutons poussoir, des boutons de commande, des microphones, etc., capables d'accepter des commandes ou des saisies de l'utilisateur, et de transmettre les saisies entrées au processeur 28. [0035] Une base de données 46 peut résider sur le dispositif de stockage de mémoire de masse 32 et peut être utilisée pour collecter et organiser les données utilisées par les divers systèmes et modules décrits dans les présentes. La base de données 46 peut inclure des données et les structures de données qui les supportent pour stocker et organiser les données. En particulier, la base de données 46 peut être arrangée selon toute organisation ou structure de base de données incluant, mais de façon non exhaustive. une base de données relationnelle, une base de données de type hiérarchique, une base de données en réseau ou des combinaisons de celles-là. Un système de gestion de base de données, sous forme d'une application logicielle qui s'exécute sous forme d'instructions sur le processeur 28 peut être utilisé pour accéder aux informations ou aux données stockées dans les enregistrements de la base de données 46 en réponse à une interrogation, dans lequel l'interrogation peut être déterminée de façon dynamique 15 et exécutée par le système d'exploitation 40, d'autres applications 42 ou un ou plusieurs modules. [0036] La FIG. 3 illustre une architecture de traitement exemplaire 50 qui peut être fournie par un ou plusieurs systèmes de l'environnement d'exploitation 10. L'architecture de traitement 50 peut comprendre un moteur d'apprentissage automatique 52 et une base de données prédictive 54. La base de données prédictive 54peut stocker un ou plusieurs arbres de 20 décision 56 et/ou une pluralité de règles 58 qui sont abordées plus en détail ci-dessous. [0037] En fonctionnement, le moteur d'apprentissage automatique 52 peut recevoir une saisie de donnée historique 60 qui peut inclure une donnée de saisie entrée par les utilisateurs en rapport avec une pluralité de processus d'ordinateur aboutis. Plus particulièrement, la donnée de saisie historique 60 peut inclure une pluralité d'objets de donnée saisis par les utilisateurs pour 25 les processus d'ordinateur aboutis. En réponse à la réception de la saisie de donnée historique 60, le moteur d'apprentissage automatique 52 peut être configuré pour générer une pluralité de règles 58 basées sur celui-ci. En particulier, le moteur d'apprentissage automatique 52 peut être configure pour déterminer les relations sur la base de la donnée de saisie historique 60, générer un arbre de décision 56 sur la base des relations, filtrer l'arbre de 30 décision 56 de manière à économiser les ressources informatiques tout en maintenant l'intégrité de l'arbre de décision 56, et ensuite générer les règles 58 sur la base de l'arbre de décision 3060797 12 filtré 56. Chacune des règles 58 peut inclure au moins une partie d'un objet de donnée de la donnée de saisie historique 60 liée à un autre des objets de donnée de la donnée de saisie historique 60 conformément à l'une des relations. Le moteur d'apprentissage automatique 52 peut ensuite stocker les règles 58 dans la base de données prédictive 54. 5 [0038] Après que les règles 58 ont été générées et stockées, le moteur d'apprentissage automatique 52 peut recevoir une donnée de saisie partielle 62 qui peut avoir été saisie par un utilisateur en rapport avec une demande de processus d'ordinateur. Le processus d'ordinateur demandé, peut cependant nécessiter une donnée de saisie supplémentaire 64 qui n'a pas été entrée par l'utilisateur, en plus de la saisie de donnée partielle 62 pour aboutir. Par conséquent, 10 en réponse à la réception de la donnée de saisie partielle 62, le moteur d'apprentissage automatique 52 peut récupérer les règles 58 de la base de données prédictive 54 et déterminer la donnée de saisie supplémentaire 64 nécessaire pour le processus ordinateur demandé sur la base de la saisie de donné partielle 62 et des règles 58. Par la suite, le moteur d'apprentissage automatique 52 peut fournir la donnée de saisie supplémentaire 64 à ou pour le processus 15 d'ordinateur demandé. [0039] La FIG. 4 illustre un processus exemplaire 100 pour générer les règles 58 et traiter la saisie de donnée partielle 62 entrée par un utilisateur en rapport avec le processus d'ordinateur demandé. Le processus 100 peut être mis en oeuvre par le moteur d'apprentissage automatique 52 de l'architecture de traitement 50. 20 [0040] Dans le bloc 102, une pluralité de relations peut etre déterminée à partir de la donnée de saisie entrée par les utilisateurs pour les processus d'ordinateur aboutis qui ont été demandés par les utilisateurs. En particulier, le moteur d'apprentissage automatique 52 peut recevoir la donnée de saisie historique 60: ce qui peut inclure des objets de donnée saisis par les utilisateurs pour les processus d'ordinateur. Pour chacun des processus d'ordinateur aboutis, la 25 donnée de saisie historique 60 peut inclure un ensemble (c.-à-d. deux ou plus) d'objets de donnée qui ont été saisis par un utilisateur pour le processus d'ordinateur et qui ont peut-être été nécessaires pour l'aboutissement du processus d'ordinateur. Par exemple, dans un mode de réalisation, la donnée de saisie historique 60 peut inclure des informations de paiement saisies par les utilisateurs pour plusieurs transactions en ligne abouties. Dans ce cas, les objets de 30 donnée inclus dans la donnée de saisie historique 60 pour chaque transaction en ligne aboutie peuvent inclure les éléments des informations de paiement qui ont été entrés par un utilisateur 3060797 pour la transaction en ligne, chacun des éléments ayant peut-être été nécessaire pour que les informations de paiement de l'utilisateur soient traitées. En particulier, les objets de donnée inclus dans la donnée de saisie historique 60 pour chaque transaction en ligne peuvent inclure un numéro de carte de crédit et un type de carte de crédit (par ex., VISAle, AMERICAN EXPRESS, DISCOVER;'', MASTERCARDe) entrés par l'utilisateur pour la transaction en ligne. [0041] Dans certains modes de réalisation, et peut-être en raison de problèmes et/ou de règlements de sécurité, un objet de donnée saisi par un utilisateur pour un processus d'ordinateur abouti qui est inclus dans la donnée de saisie historique 60 peut seulement inclure une portion d'un élément plus grand qui a été saisi par l'utilisateur pour le processus d'ordinateur abouti. Par exemple, lorsque la donnée de saisie historique 60 inclut des informations de paiement saisies par l'utilisateur pour des transactions en ligne, un des objets de donnée saisis par l'utilisateur qui est inclus dans la donnée de saisie historique 60 pour chaque transaction en ligne peut inclure une portion d'un numéro de carte de crédit qui a été saisi par un utilisateur pour une transaction 15 en ligne, telle qu'une portion du numéro d'identification bancaire (BIN) du numéro de carte de crédit qui est habituellement une séquence de chiffres au début du numéro de carte de crédit. [0042] La donnée de saisie historique 60 reçue sur le moteur d'apprentissage automatique 52 peut être collectée sur une période de temps. de plus de six mois par exemple. Par conséquent. la taille de la donnée de saisie historique 60 reçue par le moteur d'apprentissage 20 automatique 52 peut-être assez grande. Par exemple; un mois d'informations de paiement passées sur une plate-forme de paiement donnée en rapport avec des transactions en ligne abouties peut générer des dizaines de millions d'entrées dans la donnée de saisie historique 60 uniquement. [0043] Dans certains modes de réalisation, la donnée de saisie historique 60 peut inclure 25 des ensembles d'objets de donnée saisis par les utilisateurs en rapport avec des processus d'ordinateur aboutis et des ensembles d'objets de donnée saisis par les utilisateurs en rapport avec des processus d'ordinateur qui ont échoué. Dans ces cas, en réponse à la réception de la donnée de saisie historique 60, le moteur d'apprentissage automatique 52 peut être configuré pour filtrer la donnée de saisie historique 60 et rejeter les ensembles d'objets de donnée qui ont 30 entraîné des processus d'ordinateur inaboutis. De cette manière, une fois que le filtrage est terminé, le moteur d'apprentissage automatique 52 peut être laissé avec la donnée de saisie 3060797 14 historique 60 qui comprend uniquement les ensembles d'objets de donnée qui ont entraîné des processus d'ordinateur aboutis. Par exemple, lorsque la donnée de saisie historique 60 comprend des informations de paiement, le filtrage de la donnée de saisie historique 60 peut rejeter toutes informations de paiement saisies par l'utilisateur qui n'ont pas été autorisées pour une 5 transaction en ligne donnée, et par là-même retenir seulement les informations de paiement saisies par l'utilisateur qui ont été autorisées et approuvées par toutes les parties impliquées dans une transaction en ligne donnée (par ex., le commerçant, les banques, le prestataire de services de paiement tierce, le contrôleur de fraude, l'association des cartes de crédit). [0044] En réponse à la réception (éventuellement le filtrage) de la donnée de saisie 10 historique 60, le moteur d'apprentissage automatique 52 peut déterminer les relations basées sur celui-ci. Chacune des relations peut inclure un objet de donnée de l'un des ensembles d'objets de donnée inclus dans la donnée de saisie historique 60 (ci-après dénommé l'objet de donnée A) liée à un autre objet de donnée du même ensemble (ci-après dénommé l'objet de donnée B). Par exemple, lorsque la donnée de saisie historique 60 inclut des informations de paiement saisies 15 par les utilisateurs, les relations déterminées à partir de la donnée de saisie historique 60 peuvent inclure ce qui suit : 3060797 15 TABLEAU I Relation # BIN TYPE CC (Objet de (Objet de donnée donnée A) B) 348540 DI 2 349759 AX 3 414720 VI 4 414751 AX 5 415274 CA 6 416563 VI 417834 VI 8 424950 VI 9 424960 DI 10 425942 AX 11 438782 VI 12 540489 CA Comme le montre le mode de réalisation représenté par le Tableau 1, chaque relation peut inclure la portion BIN d'un numéro de carte de crédit (c.-à-d. l'objet de donnée A) et un type de carte de 5 crédit (c.-à-d. l'objet de donnée B) saisis par un utilisateur dans une transaction en ligne aboutie. Par exemple, la relation trois du Tableau I indique qu'un utilisateur a saisi un numéro de carte de crédit commençant par « 414720 » et un type de carte de crédit de « VI » comme informations de paiement pour une transaction en ligne aboutie. Bien que le Tableau 1 décrive chacune des relations déterminées comme étant unique, dans des modes de réalisation typiques, certaines des 10 relations déterminées peuvent inclure des doublons. [0045] Dans le bloc 104, un arbre de décision 56 peut être généré sur la base des relations déterminées. En particulier, le moteur d'apprentissage automatique 52 peut alimenter chacune des relations déterminées dans un modèle d'arbre de décision et construire ainsi l'arbre de décision 56 sur cette base. L'arbre de décision 56 peut généralement suivre quels objets de 15 donnée A ou portions de ceux-ci, et quels objets de donnée B dans la donnée de saisie entrée par les utilisateurs pour un type de processus d'ordinateur abouti (par ex., une transaction en ligne) 3060797 16 sont généralement associés les uns aux autres. Par exemple, en référence au Tableau I, l'arbre de décision 56 peut suivre et déterminer les BIN typiquement associés à des types de carte de crédit dans les transactions en ligne abouties. [0046] La FIG. 5 illustre un arbre de décision exemplaire 56 généré sur la base des 5 relations dans le Tableau I. Comme le montre le mode de réalisation illustré, l'arbre de décision 56 peut inclure une pluralité de noeuds formant une pluralité de chemins, de sorte que chaque chemin inclut une pluralité de noeuds. En particulier, l'arbre de décision 56 peut inclure un noeud racine 202, une pluralité de noeuds intermédiaires 204 liés aux noeuds racine 202, une pluralité de noeuds terminaux 206 liés aux noeuds intermédiaires 204 etlou au noeud racine 202. 10 Chacun des noeuds terminaux 206 peut être associé à un ou plusieurs éléments 208. [0047] Un chemin de l'arbre de décision 56 peut commencer au noeud racine 202, se terminer à l'un des noeuds terminaux 206 et inclure un ou plusieurs noeuds intermédiaire 204 entre les deux. Bien que chaque chemin puisse inclure seulement un des éléments 208, deux ou plusieurs chemins peuvent partager un ou plusieurs noeuds de l'arbre de décision 56, ou peuvent 15 inclure tous les mêmes noeuds. À cette fin, un noeud de l'arbre de décision 56 peut faire partie d'un ou de plusieurs chemins. Cependant, parce que chaque chemin peut seulement découler d'un noeud parent vers un noeud enfant, les noeuds de même niveau (par ex., les noeuds qui sont à égale distance des liens depuis le noeud racine 202) peuvent chacun faire partie d'un chemin ou de plusieurs chemins différents. Par exemple, parce que le noeud intermédiaire 204 lié au noeud 20 racine 202et étiqueté « 4 » est un parent de trois noeuds enfants, le noeud intermédiaire 204 étiqueté « 4 » peut faire partie de trois chemins au moins, et chacun des noeuds enfants peut faire partie d'un chemin ou de plusieurs chemins différents. [0048] Chaque noeud de l'arbre de décision 56 (moins le noeud racine 202) peut représenter une unité (par ex., un nombre, une lettre, un caractère ou un mot) ou une séquence 25 d'unités qui commence l'objet de donnée A d'une ou de plusieurs relations déterminées. À cette fin, chaque noeud peut correspondre à une ou plusieurs relations et chaque noeud enfant d'un noeud parent peut correspondre à une ou plusieurs relations différentes. Pour un noeud donné. l'unité ou la séquence d'unités représentée par ce noeud peut être la séquence d'étiquettes des noeuds (moins le noeud racine 202) qui conduisent au noeud donné, le cas échéant, suivi par 30 l'étiquette du noeud donné. Par exemple, le noeud intermédiaire 204 étiqueté « 3 » peut représenter l'unité « 3 » et peut correspondre aux relations un et deux du Tableau 1. Le noeud 3060797 17 termina! 206 étiqueté « 48 » qui est un noeud enfant d'un noeud intermédiaire 204 étiqueté « 3 », peut représenter la séquence « 348 » et correspondre à la relation un du Tableau 1, et le noeud terminal 206 étiqueté «49 » qui est aussi un noeud enfant d'un noeud intermédiaire 204 étiqueté «3 » peut représenter la séquence « 349 » et peut correspondre à la relation deux du Tableau I. 5 [0049] Par conséquent, chacun des chemins de l'arbre de décision 56 qui comprend un ou plusieurs noeuds de l'arbre de décision 56 peut correspondre à un ensemble différent d'une ou de plusieurs relations, chacune des relations correspondantes incluant le même objet de donnée A lié au même objet de donnée B. Plus particulièrement, pour chaque chemin de l'arbre de décision 56, les noeuds du chemin peuvent représenter une unité ou une séquence d'unités qui 10 commence l'objet de donnée A de l'ensemble des relations auxquelles le chemin correspond et l'élément 208 du chemin peut représenter l'objet de donnée B de l'ensemble des relations auxquelles le chemin correspond. Par exemple, un chemin illustré dans l'arbre de décision 56 inclut un noeud intermédiaire 204 étiqueté « 3 » suivi par un noeud terminal 206 étiqueté « 48 » qui est associé à l'élément 208 représentant « Dl». Ce chemin correspond à la relation un dans 15 le Tableau I et indique que les numéros de carte de crédit commençant par « 348 » sont généralement associés aux cartes de crédit de type « Dl ». [0050] Pour construire un arbre de décision 56, le moteur d'apprentissage automatique 52 peut être con figuré pour sélectionner l'une des relations déterminées et par la suite séparer l'objet de donnée A de la relation sélectionnée en unités. Par exemple, lorsque l'objet de donnée A est 20 une séquence de nombres, chaque unité peut inclure l'un des nombres dans la séquence. Par la suite, le moteur d'apprentissage automatique 52 peut alimenter la première unité de l'objet de données A dans un arbre de décision vide qui peut seulement inclure le noeud racine 202, générant un nouveau noeud terminal 206qui est étiqueté avec la première unité et qui est lié au noeud racine 202 associant le nouveau noeud terminal 206 à un élément 208 qui représente 25 l'objet de donnée B de la relation sélectionnée. [0051] Par la suite, le moteur d'apprentissage automatique 52 peut sélectionner une nouvelle relation déterminée à alimenter dans l'arbre de décision. D'une manière similaire à la relation sélectionnée précédente, le moteur d'apprentissage automatique 52 peut séparer l'objet de donnée A de la nouvelle relation sélectionnée en unités. Le moteur d'apprentissage 30 automatique 52 peut ensuite poursuivre pour déterminer si le noeud terminal 202 est déjà le noeud parent d'un noeud enfant qui est étiqueté avec la première unité de l'objet de donnée A de la 3060797 18 nouvelle relation sélectionnée. Sinon, le moteur d'apprentissage automatique 52 peut alors générer un nouveau noeud terminal 206 qui est étiqueté avec la première unité et qui est lié au noeud racine 202, et associer le nouveau noeud terminal 206 à un élément 208 qui représente l'objet de donnée B de la nouvelle relation sélectionnée. 5 [0052] Inversement, si le noeud racine 202 est déjà un noeud parent du noeud enfant qui est étiqueté avec la première unité de l'objet de donnée A de la nouvelle relation sélectionnée, alors le moteur d'apprentissage automatique 52 peut poursuivre pour déterminer si le noeud qui est étiqueté avec la première unité est un noeud parent d'un noeud enfant qui est étiqueté avec la prochaine unité de l'objet de donnée A de la nouvelle relation sélectionnée. Sinon, le moteur 10 d'apprentissage automatique 52 peut alors générer un nouveau noeud terminal 206 qui est étiqueté avec la prochaine unité et qui est lié au noeud étiqueté avec la première unité de l'objet de donnée A de la nouvelle relation sélectionnée et peut associer le nouveau noeud terminal 206 à un élément 208 qui représente l'objet de donnée B de la nouvelle relation sélectionnée. Alternativement, si le noeud étiqueté avec la première unité de l'objet de donnée A de la nouvelle 15 relation sélectionnée est déjà le noeud parent d'un noeud enfant qui est étiqueté avec la prochaine unité de l'objet de donnée A de la nouvelle relation sélectionnée, alors le moteur d'apprentissage automatique 52 peut poursuivre pour tenir compte de l'unité suivante de l'objet de donnée A de la nouvelle relation sélectionnée et répéter le processus susmentionné. Après qu'un noeud terminal 206 été créé et associé à l'objet de donnée B de la nouvelle relation sélectionnée, le 20 moteur d'apprentissage automatique 52 peut poursuivre pour sélectionner et alimenter chacune des relations restantes dans l'arbre de décision conformément à l'algorithme décrit ci-dessus, [0053] Dans certains modes de réalisation, si, pendant l'alimentation d'une relation sélectionnée dans l'arbre de décision, le moteur d'apprentissage automatique 52 arrive à un noeud terminal 206, alors le moteur d'apprentissage automatique 52 peut déterminer si le noeud 25 terminal 206 est associé à un élément 208 qui représente l'objet de donnée B de la relation sélectionnée. Si tel est le cas, alors le moteur d'apprentissage automatique 52 peut poursuivre pour sélectionner une relation différente, dans la mesure où la relation actuellement sélectionnée est déjà représentée par un chemin de l'arbre de décision. Inversement, si le noeud terminal 206 est associé à un élément 208 qui ne représente pas l'objet de donnée B de la relation 30 sélectionnée, alors le moteur d'apprentissage automatique 52 peut convertir le noeud terminal 206 en un noeud intermédiaire 204 et générer deux ou plus de noeuds terminaux 206 liés 3060797 19 au noeud intermédiaire converti 204. L'un des nouveaux noeuds terminaux 206 peut correspondre à la relation sélectionnée, et chacun des autres nouveaux noeuds terminaux 206 peut correspondre à l'une des relations qui a précédemment conduit au noeud intermédiaire converti 204. À cette fin, chacun des nouveaux noeuds terminaux 206 peut être étiqueté avec le 5 minimum d'unités requises pour différencier l'objet de donnée A de la relation correspondant au noeud terminal 206 à partir des objets de donnée A des relations correspondant à d'autres nouveaux noeuds terminaux 206 après l'unité ou la séquence d'unités représentée par le noeud intermédiaire converti 204. Un exemple de ce processus est fourni ci-dessous en référence aux FIGS. 6 et 7. 10 [0054] Cependant, dans certains cas, il ne sera peut-être pas possible d'étiqueter de nouveaux noeuds terminaux 206 pour différencier deux relations différentes, comme lorsque deux des relations comprennent le même objet de donnée A et des objets de donnée B différents. Cela peut arriver. par exemple, lorsque la donnée de saisie historique 60 est corrompue. Dans ce cas, un seul noeud terminal 206 peut être généré pour les deux relations différentes et peut par la 15 suite être associé à de multiples éléments 208, chacun d'entre eux pouvant représenter l'un des objets de donnée B des deux relations différentes. Cependant, lorsque l'arbre de décision 56 est ensuite filtré, ce qui est décrit plus en détail ci-dessous, l'élément 208 qui représente l'objet de donnée B associé à la relation corrompue peut-être rejeté. [0055] Dans certains modes de réalisation, au fur et à mesure que l'arbre de décision 56 20 est construit. le moteur d'apprentissake automatique 52 peut suivre le nombre de relations auxquelles chaque chemin correspond. En d'autres termes, pour chaque chemin, le moteur d'apprentissage automatique 52 peut suivre et/ou inclure une indication sur le nombre de relations qui incluent un objet de donnée A commençant par l'unité ou la séquence d'unités représentée par les noeuds du chemin et incluent un objet de donnée 13 qui est représenté par 25 l'élément 208 du chemin. De cette manière, le moteur d'apprentissage automatique 52 peut également suivre et/ou inclure une probabilité pour chaque chemin qui est basé sur le rapport entre le nombre de relations qui correspondent aux chemins et le nombre total de relations déterminées. Cette donnée peut être utilisée pour filtrer l'arbre de décision 56 ; ce qui est décrit plus en détail ci-dessous. 30 [0056] Traditionnellement ou alternativement, un noeud parent donné dans l'arbre de décision 56 peut suivre et/ou inclure une indication sur le nombre de relations correspondant à 3060797 20 chaque noeud enfant du noeud parent. En particulier, pour chaque enfant du noeud parent, le noeud parent peut suivre et/ou inclure une indication sur le nombre de relations ayant un objet de donnée A qui commence par l'unité ou la séquence d'unités représentée par le noeud enfant. De cette manière, le noeud parent peut également suivre et/ou inclure une probabilité pour chaque 5 noeud enfant sur la base du rapport entre le nombre de relations correspondant au noeud enfant et le nombre total de relations qui correspondent à tous les noeuds enfants du noeud parent. Cette information peut également être utilisée par le moteur d'apprentissage automatique 52 pour filtrer l'arbre de décision 56 ; cc qui est décrit plus en détail ci-dessous. [0057] De la même manière, pour chaque élément 208 lié au noeud terminal 206, le noeud 10 terminal 206 peut suivre et/ou inclure une indication sur le nombre de relations qui correspondent à l'élément 208 (par ex., le nombre de relations qui comprennent un objet de donné A commençant par l'unité ou la séquence d'unités représentée par le noeud terminal 206 lié à l'objet de donnée 13 qui est représenté par l'élément 208). Le noeud terminal 206 peut également suivre et/ou inclure une probabilité pour chacun des éléments 208 lié à celui-ci en se 15 basant sur le rapport entre le nombre de relations correspondant à l'élément 208 et le nombre total de relations correspondant à tous les éléments de 208 liés au noeud terminal 206. Ces informations peuvent aussi être utilisées par le moteur d'apprentissage automatique 52 pour filtrer l'arbre de décision 56 ; ce qui est décrit plus en détail ci-dessous. [0058] Les FIGS. 6 et 7 illustrent des arbres de décision partiels qui peuvent être générés 20 pendant la construction de l'arbre de décision 56 pour le Tableau 1. Pour commencer, le moteur d'apprentissage automatique 52 peut sélectionner la relation un pour alimenter un arbre de décision vide qui peut inclure uniquement le noeud racine 202. Par la suite, le moteur d'apprentissage automatique 52 diviser l'objet de donnée A de la relation un, à savoir le BIN, en une séquence d'unités, à savoir 3-4-8-5-4-0. Le moteur d'apprentissage automatique 52 peut 25 ensuite alimenter la première unité de la séquence d'unités, dans ce cas « 3 », dans l'arbre de décision vide en générant un noeud terminal 206 étiqueté « 3 » qui est lié au noeud racine 202 et en associant par la suite le noeud terminal 206 à l'objet de donnée B de la relation un, qui dans ce cas est « DI ». La FIG. 6 illustre un arbre de décision partiel 56a qui naît après que la relation un du Tableau 1 est alimentée dans l'arbre de décision vide. 30 [0059] Par la suite, le moteur d'apprentissage automatique 52 peut sélectionner la relation deux du Tableau 1 à alimenter dans l'arbre de décision partiel 56a. À cette fin, le moteur 3060797 21 d'apprentissage automatique 52 peut séparer l'objet de donnée A de la relation deux dans une séquence d'unités, à savoir 3-4-9-7-5-9, et poursuivre pour alimenter la première unité, dans ce cas « 3 » dans l'arbre de décision partiel 56a. Lors de l'alimentation de «3 » dans l'arbre de décision partiel 56a, le moteur d'apprentissage automatique 52 peut déterminer que le noeud 5 racine 202 est un parent du noeud enfant étiqueté « 3 » et de plus que le noeud enfant étiqueté « 3 » est un noeud terminal 206. En outre, le moteur d'apprentissage automatique 52 peut vérifier si le noeud étiqueté « 3 » est déjà associé à un élément 208 qui représente l'objet de donnée B de la relation deux. Parce que tel n'est pas le cas, le moteur d'apprentissage automatique 52 peut convertir le noeud étiqueté « 3 » en un noeud intermédiaire 204 et générer 10 deux nouveaux noeuds terminaux 206 liés au noeud intermédiaire converti 204. Chaque nouveau noeud terminal 206 peut être étiqueté avec le minimum d'unités requis pour différencier l'objet de donnée A de la relation un de l'objet de donnée A de la relation deux, après l'unité ou la séquence d'unités représentée par le noeud intermédiaire converti 204. Dans ce cas, les unités minimums requises incluent « 48 » pour la relation un et «49 » pour la relation deux. Par conséquent, le moteur d'apprentissage automatique 52 peut étiqueter un des nouveaux noeuds terminaux 206 sous «48 » et l'associer à l'objet de donnée B de la relation un, à savoir « Dl », et il peut étiqueter l'autre nouveau noeud terminal 206 sous « 49 » et l'associer à l'objet de donnée B de la relation deux, à savoir « AX ». La FIG. 7 illustre un arbre de décision partiel 56b après que la relation deux a été alimentée dans l'arbre de décision partiel 56a. 20 [0060] Faisant encore référence à la FIG. 4, dans le bloc 106, l'arbre de décision 56 peut être filtré sur la base d'un ou de plusieurs seuils d'optimisation pour réduire l'arbre de décision 56. Le filtrage de l'arbre de décision 56 peut inclure une technique de filtrage ou une association de techniques de filtrage. Par exemple, dans certains modes de réalisation, le filtrage de l'arbre de décision 56 peut être basé sur les nombres suivis par le moteur d'apprentissage 25 automatique 52 pour chacun des chemins. En particulier, le filtrage de l'arbre de décision 56 peut inclure l'enlèvement de l'arbre de décision de chaque chemin pour lequel le nombre de relations lui correspondant est en dessous d'un seuil d'optimisation Additionnellement ou alternativement, le filtrage de l'arbre de décision 56 peut inclure l'enlèvement de l'arbre de décision 56 de chaque chemin pour lequel la probabilité qui lui est associée est en dessous du 30 seuil d'optimisation. En d'autres termes, un seuil d'optimisation utilisé pour filtrer l'arbre de décision 56 peut être un nombre minimum de relations auquel un chemin doit correspondre, 3060797 22 et/ou un autre seuil d'optimisation utilisé pour filtrer l'arbre de décision 56 peut être une probabilité minimum qu'un chemin doit respecter ou dépasser. [0061] De plus, le filtrage de l'arbre de la décision 56 peut être stocké sur les nombres stockés par un ou plusieurs noeuds parents de l'arbre de décision 56. En particulier, pour un 5 noeud parent donné, le filtrage de l'arbre de décision 56 peut inclure d'enlever chaque noeud enfant du noeud parent pour lequel le nombre de relations suivies par le noeud parent est en dessous d'un seuil d'optimisation. Additionnellement ou alternativement, le filtrage de l'arbre de décision 56 peut inclure d'enlever chaque noeud enfant pour lequel la probabilité suivie par le noeud parent est en dessous d'un seuil d'optimisation. En d'autres termes, un seuil 10 d'optimisation utilisé pour filtrer l'arbre de décision 56 peut être un nombre minimum de relations auxquelles un chemin doit correspondre, et/ou un autre seuil d'optimisation utilisé pour filtrer l'arbre de décision 56 peut étre une probabilité minimum qu'un noeud doit respecter ou dépasser. [0062] Le filtrage de l'arbre de décision 56 peut également inclure d'enlever chaque 15 élément 208 pour lequel le nombre de relations et/ou la probabilité, tel qu'il apparaît dans le suivi effectué par le noeud terminal 206 associé à l'élément 208, est en dessous d'un seuil d'optimisation. [0063] Les techniques de filtrage susmentionnées fonctionnent généralement pour améliorer l'intégrité de l'arbre de décision 56, tout en améliorant également l'utilisation des 20 ressources de l'ordinateur. En particulier, en filtrant l'arbre de décision 56 sur la base d'un nombre de relations correspondantes et/ou d'une probabilité comme décrit ci-dessus, le moteur d'apprentissage automatique 52 peut enlever ces chemins et/ou noeuds représentant des relations erronées. En particulier, parce que les relations erronées sont généralement en petit nombre par rapport aux relations exactes. les techniques de filtrage susmentionnées seront supprimées des 25 noeuds etlou chemins de l'arbre de décision 56 qui correspondent aux relations erronées, tout en retenant les relations exactes. De plus, parce que la donnée de saisie historique 60, et par conséquent le nombre de relations qui en découlent, peut être assez grande, il est logique de faire confiance aux relations uniquement après qu'un ensemble minimum d'occurrences de la relation a été atteint, par exemple en utilisant les techniques de filtrage susmentionnées. 30 [0064] De plus, non seulement la réduction de l'arbre de décision 56 libère des ressources systèmes, telles que la mémoire mais elle améliore également le temps de réponse au 3060797 23 moment de générer fa donnée de saisie supplémentaire 64. En particulier, plus l'arbre de décision 56 est petit, plus l'ensemble des règles 58 générées à partir de l'arbre de décision 56 est petit et finalement, plus le moteur d'apprentissage automatique 52 est capable de déterminer rapidement la donnée supplémentaire 64 en réponse à la réception de la donnée de saisie 5 partielle 64. Par exemple, concernant un arbre de décision 56 dérivé d'un échantillon de donnée lié à une pluralité de transactions en ligne, [utilisation des techniques de filtrage décrites ci-dessus, à savoir le filtrage de la probabilité, s'est avérée réduire la consommation de mémoire par de multiples points de pourcentage tout en ayant un effet significatif sur l'exactitude. En conséquence, [utilisation d'une ou de plusieurs techniques de filtrage susmentionnées, à savoir 10 le filtrage de la probabilité, s'est avérée réduire le nombre de règles 58 générées à partir de l'arbre de décision 56 de plusieurs milliers à environ une centaine ou moins. [0065] Une fois généré et/ou filtré, l'arbre de décision 56 peut être stocké dans la base de données prédictive 54. De cette manière, lorsqu'une autre donnée de saisie historique 60 est reçue, le moteur d'apprentissage automatique 52 peut récupérer l'arbre de décision 56 à partir de 15 la base de données prédictive 54 et peut poursuivre pour alimenter les relations dérivées de l'autre donnée de saisie historique 60 dans l'arbre de décision 56 et, par là-même, mettre à jour l'arbre de décision 56. Par la suite, le moteur d'apprentissage automatique 52 peut filtrer l'arbre de décision 56 maintenant mis à jour, en utilisant une ou plusieurs des techniques susmentionnées et ensuite générer des règles 58 comme décrit ci-dessous. 20 [0066] Dans le bloc 10S, les règles 58 peuvent être générées à partir de l'arbre de décision 56. Chacune des règles 58 peut inclure un test comprenant au moins une portion d'un objet de donnée A de l'une des relations (ci-après dénommé objets de donnée C) lié à l'objet de donnée B de l'une des relations (ci-après dénommé objet de donnée D). En général, chaque règle 58 peut correspondre à l'un des champs de l'arbre de décision 56. Par exemple, le tableau 25 suivant illustre une liste de règles 58 qui peuvent être générées à partir de l'arbre de décision 56 de la FIG. 5 3060797 24 TABLEAU 2 Règle # Test Objet de donnée B (Objet de donnée D) Dl (Objet de donnée C) I Commençant par « 348 » 2 Commençant par « 349 » AX 3 Commençant par « 41472 » VI 4 Commençant par « 41475 » AX 5 Commençant par « 415 » CA 6 Commençant par « 416 » VI 7 Commençant par « 417 » VI 8 Commençant par « 42495 » VI 9 Commençant par « 42496 » DI 10 Commençant par « 425 » AX 1 Commençant par « 43 » VI 12 Commençant par « 5 » CA Dans le bloc 110, une fois que les règles 58 sont générées, les règles 58 peuvent être stockées dans la base de données prédictive 54. En particulier, le moteur d'apprentissage automatique 52 5 peut insérer les règles 58 dans un fichier et stocker le fichier dans la base de données prédictive 54. [0067] Dans certains modes de réalisation, les règles 58 peuvent être générées et placées dans le fichier dans un ordre spécifique de sorte à permettre la poursuite de la consolidation des règles 58, et par là-même, à réduire encore [empreinte de mémoire des règles 58 stockées dans 10 la base de données prédictive 54. De plus, moins les règles 58 stockées dans la base de données prédictive 54 sont nombreuses, plus rapide est le temps de réponse du moteur d'apprentissage automatique 52 au moment de déterminer la donnée de saisie supplémentaire 64. Par exemple, au moment de générer les règles 58 à partir d'un arbre de décision 56, le moteur d'apprentissage automatique 52 peut être configuré pour regrouper les chemins qui partagent au moins un noeud 15 en plus du noeud racine 202. Par la suite, pour chaque groupe de chemins, le moteur d'apprentissage automatique 52 peut être configuré pour déterminer l'élément 208 qui est inclus 3060797 25 dans la plupart des chemins du groupe. S'il existe un lien, le moteur d'apprentissage automatique 52 peut sélectionner tout élément 208 dans le lien. Le moteur d'apprentissage automatique 52 peut ensuite consolider les chemins du groupe comprenant l'élément déterminé 208 dans une règle 58 qui lie l'unité représentée par le noeud du groupe, partagé au 5 plus haut niveau, à l'objet de donnée B représenté par l'élément déterminé 208 et assure que la règle consolidée 58 est énumérée après toute autre règle 58 générée pour les chemins restants du groupe. [0068] Par exemple, en référence à l'arbre de décision 56 de la FIG. 5, le moteur d'apprentissage automatique 52 peut regrouper chacun des chemins qui partagent le noeud 10 intermédiaire 204 lié au noeud racine 202 et étiqueté «4 ». Par la suite, le moteur d'apprentissage automatique 52 peut déterminer que l'élément 208 qui apparaît le plus dans le groupe représente « VI ». Par conséquent, le moteur d'apprentissage automatique 52 peut consolider les chemins du groupe qui incluent l'élément 208 représentant « VI )> dans une seule règle 58 qui lie l'unité représentée par le module partagé au plus haut niveau, dans ce cas, le 15 noeud intermédiaire 204 étiqueté « 4 », à l'élément de « VI ». La règle consolidée 58 peut être placée sous les autres règles 58 générées pour le groupe de chemins dans la liste de règles 58. [0069] Faisant encore référence à l'arbre de décision 56 de la FIG. 5, le moteur d'apprentissage automatique 52 peut être configuré pour générer le tableau ordonné de règles 58 suivant pour qu'il soit stocké dans la base de données prédictive 54 : 20 TABLEAU 3 Règle # Test Objet de donnée B (Objet de donnée C) (Objet de donnée D) I Commençant par « 348 » Dl 2 Commençant par « 3» AX Commençant par « 41475 » AX 4 Commençant par « 415 » CA 5 Commençant par « 42496 » Dl 6 Commençant par « 425 » AX 5 Commençant par « 4 » VI 6 Commençant par « 5 » CA 3060797 26 Comme le montre le Tableau 3, la génération des règles 58 à partir de l'arbre de décision 56 de la F10. 5 sous forme de liste ordonnée peut permettre de réduire le nombre de règles 58 de douze à six. 5 [00703 Comme décrit précédemment, certains des noeuds terminaux 206 dans un arbre de décision 56, même après le filtrage ou la réduction de l'arbre de décision 56. peuvent être associés à deux ou plusieurs éléments 208, chacun faisant partie d'un chemin différent. Dans ce cas, au moment de générer les règles 58 sur la base de la décision 56, le moteur d'apprentissage automatique 52 peut consolider chaque chemin partageant un noeud terminal 206 mais incluant 10 différents éléments 208 en une seule règle 58 qui inclut un objet de donnée C et de multiples objets de donnée D. En particulier, l'objet de donnée D de la règle 58 peut être l'unité ou la séquence d'unités représentée par les noeuds de chacun des chemins partageant le noeud terminal 206, et chacun des objets de donnée D de la seule règle 58 peuvent être l'objet de donnée B représenté par un des éléments 208 associé au noeud terminal partagé 206. En d'autres 15 termes, chacun des objets de donnée D de la seule règle 58 peut correspondre à une relation au moins, si toutes les relations correspondant aux objets de donnée D peuvent inclure un objet de donnée A commençant par l'objet de donnée C de la seule règle 58, et au moins une relation correspondant à chacun des objets de donnée D peut inclure un objet de donnée B qui diffère de l'objet de donnée B d'une relation au moins correspondant aux autres objets de donnée D. 20 [0071j Si une seule règle 58 est générée et comprend de multiples objets de donnée D, le moteur d'apprentissage automatique 52 peut également attribuer une probabilité à chacun des objets de donnée D dans la règle 58. En d'autres termes, la règle 58 peut inclure une probabilité associée à chaque objet de donnée D. La probabilité associée à un objet de donnée D d'une règle 58 peut être égale à la probabilité suivie par le noeud terminal 206 pour l'élément 208 qui 25 représente l'objet de donnée D. De cette manière, en réponse à la réception de la donnée de saisie partielle 62 concernant un processus d'ordinateur demandé qui inclut l'objet de donnée C d'une seule règle 58, le moteur d'apprentissage automatique 52 peut être configure pour retourner l'objet de donnée D de la règle 58 ayant la plus grande probabilité comme premier résultat et retourner l'objet de donnée D ayant la prochaine plus grande probabilité comme 30 second résultat, etc. Le moteur d'apprentissage automatique 52 peut alors être configuré pour fournir le premier résultat comme donnée de saisie supplémentaire 64 à ou pour le processus 3060797 27 d'ordinateur demandé. Si le processus d'ordinateur échoue, alors le moteur d'apprentissage automatique 52 peut ensuite être configuré pour fournir le second résultat comme donnée de saisie supplémentaire 64 à ou pour le processus d'ordinateur. [0072] Faisant encore référence à la FIG. 4, dans le bloc 112, après que les règles 58 ont 5 été générées et stockées dans la base de données prédictive 54, la donnée de saisie partielle 62 peut être reçue, par exemple sur le moteur d'apprentissage automatique 52. En particulier, la donnée de saisie partielle 62 peut avoir été saisie par un utilisateur dans le cadre d'une demande de processus d'ordinateur, par exemple une vérification des informations de paiement pour une transaction en ligne, et peut satisfaire l'objet de donnée C de l'une des règles 58. Cependant, la données de saisie partielle 62 peut omettre une autre donnée utilisateur, ci-après désigné donnée de saisie supplémentaire 64 qui est nécessaire pour faire aboutir le processus d'ordinateur demandé. Par exemple, la donnée de saisie partielle 62 peut comprendre au moins une portion d'un numéro de carte de crédit et omettre un type de carte de crédit associé au numéro de carte de crédit. 15 [0073] Ainsi, dans le bloc 114, en réponse à la réception de la donnée de saisie partielle 64, la donnée de saisie supplémentaire 64 peut être déterminée pour le processus d'ordinateur demandé sur la base de la donnée de saisie partielle 62 et des règles 58 stockée dans la base de données prédictive 54. En particulier, le moteur d'apprentissage automatique 52 peut récupérer la liste des règles 58 dans la base de données prédictive 54 et par la suite comparer la 20 donnée de saisie partielle 62 à l'objet de donnée C d'une ou de plusieurs règles 58 pour déterminer une correspondance (par ex., lorsque la donnée de saisie partielle 62 remplit le critère de la règle 58). Cette comparaison peut apparaître sur la base de l'ordre des règles 58, ce qui signifie que moteur d'apprentissage automatique 52 peut comparer la donnée de saisie partielle 62 à la première règle énumérée 58, à la règle 58 énumérée suivante et ainsi de suite 25 jusqu'à ce qu'une correspondance soit trouvée. [0074] Au moment où le moteur d'apprentissage automatique 52 détermine une règle de correspondance 58, si la règle de correspondance 58 comprend seulement un objet de donnée D, le moteur d'apprentissage automatique 52 peut déterminer que l'objet de donnée D de la règle de correspondance 58 est la donnée de saisie supplémentaire 64. Alternativement, si la règle de 30 correspondance 58 inclut de multiples objets de donnée D, le moteur d'apprentissage automatique 52 peut déterminer un premier résultat et un second résultat, comme décrit 3060797 28 'dessus. Par la suite, dans le bloc 116, le moteur d'apprentissage automatique 52 peut fournir la donnée de saisie supplémentaire 64 à ou pour le processus d'ordinateur demandé par l'utilisateur. Par exemple, le moteur d'apprentissage automatique 52 peut transmettre la donnée de saisie supplémentaire 64 directement au processus d'ordinateur demandé ou un système de 5 traitement 14 qui facilitera ou déclenchera le processus d'ordinateur. [0075] En général, les routines exécutées pour mettre en oeuvre les modes de réalisation de l'invention, qu'elles soient implémentées dans le cadre d'un système d'exploitation ou d'une application spécifique, d'un composant, d'un programme, d'un objet, d'un module ou d'une séquence d'instructions, ou même un sous-ensemble de ceux-là, peuvent être désignées dans les 10 présentes comme « code de programme informatique » ou simplement « code de programme ». Le code de programme comprend typiquement des instructions lisibles par ordinateur qui résident à des moments divers dans des dispositifs divers de mémoire et de stockage dans un ordinateur, et qui lorsqu'il est lu et exécuté par un ou plusieurs processeurs dans un ordinateur, provoque l'exécution par l'ordinateur d'opérations et/ou d'éléments propres aux aspects variés des 15 modes de réalisation de l'invention. Les instructions d'un programme informatique lisibles par ordinateur pour effectuer les opérations des modes de réalisation de l'invention peuvent être, par exemple, le langage d'assemblage, un code source ou un code objet, écrit en combinaison avec un ou plusieurs langages de programmation. [0076] Divers codes de programme décrits dans les présentes peuvent être identifiés, 20 selon l'application dans laquelle ils sont implémentés, dans des modes de réalisation spécifiques de l'invention. Cependant, on remarquera que toute nomenclature d'un programme particulier qui suit est utilisée uniquement par commodité ; ainsi l'invention ne peut être limitée à un seul usage dans toute application spécifique identifiée et/ou sous-entendue par ladite nomenclature. Par ailleurs, au vu du nombre généralement infini de moyens par lesquels les programmes 25 informatiques peuvent être organisés selon des sous-programmes, procédures, procédés, modules, objets, et ainsi de suite, ainsi que les façons variées d'affecter les fonctionnalités d'un programme parmi diverses couches de logiciels qui résident dans un ordinateur typique [p. ex., les systèmes d'exploitation, les bibliothèques, les interfaces d'application de programme (API), les applications, les petites applications `(applets) , etc. ; on remarquera que les modes de 30 réalisation de l'invention ne sont pas limités à l'organisation spécifique et à l'affectation spécifique des fonctionnalités de programme telles qu'elles sont décrites dans les présentes. 3060797 29 [00771 Le code de programme mis en oeuvre dans toute application/module décrit(e) dans les présentes peut être distribué individuellement ou collectivement comme un produit-programme d'ordinateur, sous une variété de formes. En particulier. le code de programme peut être distribué en utilisant un support de stockage lisible par ordinateur ayant des instructions de 5 programme lisibles par ordinateur en amenant un processeur à exécuter des aspects des modes de réalisation de l'invention. [0078] Les supports de stockage de données lisibles par ordinateur et qui sont intrinsèquement durables, peuvent inclure des médias tangibles. volatiles et non volatiles, amovibles et non amovibles, implémentés dans tout procédé ou technologie de stockage des 10 informations, tels que des instructions de programme lisibles par ordinateur, des structures de données, des modules de programme, ou autre donnée. Les supports de stockage lisibles par ordinateur peuvent par ailleurs inclure la mémoire aléatoire (RAM), la mémoire morte (ROM), la mémoire à lecture exclusive, programmable et effaçable (EPROM), la mémoire à lecture exclusive, programmable et effaçable électriquement (EEPROM), une mémoire flash, toute 15 technologie de support solide de mémoire, disque compact portable doté d'une mémoire à lecture seule (CD-ROM) ou tout autre stockage optique, bande d'enregistrement magnétique, mémoire à disque magnétique ou tout autre médium pouvant être utilisé pour stocker l'information désirée et qui peut être lu par un ordinateur. Un support de stockage lisible par ordinateur ne peut être interprété comme des signaux transitoires en soi (par ex.. des ondes radio ou d'autres ondes 20 électromagnétiques se propageant à travers un support de transmission tel qu'un guide d'ondes ou des signaux électriques transmis par câble). Les instructions de programme lisibles par ordinateur peuvent être téléchargées sur un ordinateur, un autre type d'appareil de traitement de données programmable ou sur tout autre dispositif de support de stockage lisible par ordinateur, ou vers un ordinateur externe ou vers un dispositif de stockage externe par un réseau. 25 [0079] Les instructions de programme lisibles par ordinateur, stockées dans un support lisible par ordinateur, peuvent être utilisées pour instruire un ordinateur, d'autres types d'appareils programmables de traitement ou d'autres dispositifs pour fonctionner d'une façon particulière, de sorte que les instructions stockées sur un support lisible par ordinateur produisent un article de fabrication comprenant les instructions qui implémentent les fonctions, les actions 30 et/ou les opérations spécifiées dans les organigrammes, diagrammes séquentiels, et/ou diagrammes blocs. Les instructions de programme informatique peuvent être fournies par un ou 3060797 30 plusieurs processeurs sur un ordinateur à usage général, un ordinateur à usage spécial, ou tout autre appareil programmable de traitement de données pour produire une machine telle que les instructions qui s'exécutent par l'intermédiaire d'un ou de plusieurs processeurs, provoquent une série de calculs devant être effectués pour implémenter les fonctions, actions et/opérations spécifiées dans les organigrammes, diagrammes séquentiels et/ou diagrammes blocs. [0080] Dans certains modes de réalisation alternatifs, les fonctions, les actions et/ou les opérations spécifiées dans les organierammes, diagrammes séquentiels et/ou diagrammes blocs peuvent réordonnés, traités en série et/ou traités simultanément avec les modes de réalisation de l'invention. De plus, tout organigramme, diagramme séquentiel, et/ou diagramme bloc peut 10 inclure plus ou moins de blocs que ceux qui sont illustrés conformément aux modes de réalisation de l'invention. [0081] La terminologie utilisée dans les présentes a pour but de décrire uniquement des modes de réalisation particuliers et n'est pas destinée à limiter les modes de réalisation de l'invention. Les formes singulières des articles indéfinis « un ». « une », « le » et « la » tels 15 qu'ils sont utilisés dans les présentes sous-entend également les formes plurielles, sauf si le contexte indique clairement le contraire. On comprendra par ailleurs que les formes verbales du verbe « comprendre », « comprend » et/ou « comprenant », lorsqu'elles sont utilisées dans cette spécification, précisent la présence de caractéristiques, de nombres entiers, d'étapes, d'opérations, d'éléments, et/ou de composants, mais n'excluent pas la présence ou l'ajout d'un 20 ou de plusieurs caractéristiques, nombres entiers, étapes, éléments, composants et/ou groupes, en cela. De plus, dans la mesure où les verbes « inclure », « ayant », «a », « avec », « composé de » ou des variantes de ceux-là sont utilisés dans la description détaillée ou les revendications, ces termes sont censés être inclusifs de façon similaire à la forme verbale « comprenant ». [00821 Bien que l'invention soit illustrée par une description de divers modes de 25 réalisation et bien que ces modes de réalisation soient décrits de façon très détaillée, le Demandeur n'a pas l'intention de restreindre ou de limiter, de quelque façon que ce soit, l'étendue des revendications des présentes à ces détails. Des avantages supplémentaires et des modifications possibles apparaîtront aisément aux hommes de métier. L'invention sous un angle plus large n'est donc pas limitée aux détails spécifiques, aux procédés et aux appareils 30 représentatifs et aux illustrations montrées et décrites à titre d'exemple. Par conséquent, il est 3060797 31 possible de s'éloigner de ces détails sans s'éloigner de l'esprit et de la portée du concept inventif général du Demandeur. REVENDICATIONS1. Un procédé pour mettre en oeuvre une base de données prédictive pour un processus d'ordinateur, le procédé comprenant : la réception, par un ou plusieurs processeurs, d'une donnée de saisie historique incluant une pluralité d'objets de donnée saisis pour chacun des processus d'ordinateur aboutis demandés par une pluralité d'utilisateurs ; la détermination, par le ou plusieurs processeurs, d'une pluralité de relations basées sur la donnée de saisie historique, chacune des relations incluant un premier des objets de donnée saisis pour l'un des processus d'ordinateur aboutis lié à un second des objets de donnée saisis pour le processus d'ordinateur abouti la génération par le ou plusieurs processeurs, d'un arbre de décision basé sur les relations ; le filtrage, par le ou plusieurs processeurs, de l'arbre de décision sur la base d'un seuil d'optimisation pour réduire l'arbre de décision ; la génération, par le ou plusieurs processeurs, d'une pluralité de règles basées sur l'arbre de décision filtré, chacune des règles incluant un troisième objet de donnée lié à un quatrième objet de donnée, dans lequel, pour chaque règle, le troisième objet de donnée de la règle respective inclut au moins une portion du premier objet de donnée d'une première des relations, et le quatrième objet de donnée de la règle respective inclut le second objet de donnée de la première des relations ; et le stockage, par au moins le processeur, des règles dans la base de données prédictive. 2. La méthode selon la revendication 1 comprenant par ailleurs : la réception d'une donnée de saisie partielle entrée par un utilisateur dans le cadre d'une requête pour le processus d'ordinateur, la donnée de saisie partielle incluant le troisième objet de donnée de l'une des règles ; et en réponse à la réception de la donnée de saisie partielle : la récupération des règles dans la base de données prédictive ; la détermination d'une règle à partir des règles récupérées sur la base de la donnée de saisie partielle ; et 3060797 33 l'apport du quatrième ehet de donnée de ladite règle au processus d'ordinateur demandé. 3. Le procédé selon la revendication 1 ou la revendication 2, dans lequel l'arbre de décision comprend une pluralité de chemins, chacun des chemins correspondant à une ou à plusieurs relations. 4. Le procédé selon la revendication 3, dans lequel le filtrage de l'arbre de décision sur la base du seuil d'optimisation pour réduire l'arbre de décision comprend 10 l'enlèvement de l'arbre de décision de chaque chemin pour lequel le nombre de relations lui correspondant est en dessous du seuil d'optimisation. 5. Le procédé selon la revendication 3, dans lequel chaque chemin est associé à une probabilité basée sur le nombre de relations correspondant aux chemins respectifs et au nombre 15 total de relations déterminées, et le filtrage de l'arbre de décision basé sur le seuil d'optimisation pour réduire l'arbre de décision comprend : l'enlèvement, de l'arbre de décision, de chaque chemin pour lequel la probabilité qui lui est associée est en dessous du seuil d'optimisation. 20 6. Le procédé selon la revendication 1 ou la revendication 2, dans lequel l'arbre de décision comprend un premier noeud et une pluralité de second noeuds liés au premier noeud, chacun des seconds noeuds correspondant à une ou à plusieurs relations différentes. 7. Le procédé selon la revendication 6, dans lequel le premier noeud suit le nombre des 25 relations correspondant à chacun des seconds noeuds, et le filtrage de l'arbre de décision basé sur le seuil d'optimisation pour réduire l'arbre de décision comprend : l'enlèvement de chaque second noeud pour lequel le nombre de relations suivies par le premier noeud est en dessous du seuil d'optimisation. 30 8. Le procédé selon la revendication 6, dans lequel le premier noeud suit une probabilité pour chaque second noeud basée sur le nombre de relations correspondant au second noeud et le 3060797 34 nombre total de relations correspondant aux seconds noeuds, et le filtrage de l'arbre de décision basé sur le seuil d'optimisation pour réduire l'arbre de décision comprend : l'enlèvement de chaque second noeud pour lequel la probabilité suivie par le premier noeud est en dessous du seuil d'optimisation. 9. Le procédé selon la revendication 1, dans lequel l'une des règles inclut par ailleurs un cinquième objet de donnée lié au troisième objet de donnée de la première règle, le cinquième objet de donnée étant différent du quatrième objet de donnée de la première règle et incluant le second objet de donnée de la seconde des relations, 10 dans lequel le premier objet de donnée de la seconde des relations inclut le troisième objet de donnée de la première règle. 10. Le procédé selon la revendication 9, dans lequel la première règle inclut une première probabilité associée au quatrième objet de donnée de la première règle et une seconde probabilité 15 associée au cinquième objet de donnée de la première règle, la première probabilité est plus élevée que la seconde probabilité et comprend par ailleurs : la réception d'une donnée de saisie partielle entrée par un utilisateur dans le cadre d'une requête pour le processus d'ordinateur, la donnée de saisie partielle incluant le troisième objet de donnée de la première règle ; et 20 en réponse à la réception de la donnée de saisie partielle : la récupération des règles dans la base de données prédictive ; la détermination d'une règle à partir des règles récupérées sur la base de la donnée de saisie partielle ; en réponse à la détermination d'une règle, la détermination d'un quatrième objet 25 de donnée de la première règle comme premier résultat et d'un cinquième objet de donnée de la première règle comme second résultat sur la base de la première probabilité et de la seconde probabilité ; l'apport du premier résultat au processus d'ordinateur demandé et une fois que le premier résultat est apporté au processus d'ordinateur demandé, en 30 réponse au processus d'ordinateur demandé inabouti, rapport du second résultat au processus d'ordinateur demandé. 3060797 11. Un système pour mettre en oeuvre une base de données prédictive pour un processus d'ordinateur, le système comprenant : un ou plusieurs processeurs ; et 5 une mémoire stockant des instructions qui, lors de l'exécution par le ou plusieurs des processeurs d'ordinateur, amènent le système à : en réponse à une donnée de saisie historique reçue qui inclut une pluralité d'objets de donnée saisis pour chacun d'une pluralité de processus d'ordinateur aboutis demandés par une pluralité d'utilisateurs : 10 la détermination d'une pluralité de relations basées sur la donnée de saisie historique, chacune des relations incluant un premier des objets de donnée saisis pour un des processus d'ordinateur aboutis, lié à un second des objets de donnée saisis pour le processus d'ordinateur abouti ; la génération d'un arbre de décision basée sur les relations ; 15 le filtrage de l'arbre de décision sur la base d'un seuil d'optimisation pour réduire l'arbre de décision ; la génération d'une pluralité de règles sur la base de l'arbre de décision filtré, chacune des règles incluant un troisième objet de donnée lié à un quatrième objet de donnée, dans lequel pour chaque règle, le troisième objet de donnée de la règle respective 20 inclut au moins une portion du premier objet de donnée d'une première des relations, et le quatrième objet de donnée de la règle respective inclut le second objet de donnée de la première des relations ; et le stockage des règles dans la base de données prédictive. 25 12. Le système selon la revendication 11, dans lequel les instructions lors de l'exécution amènent par ailleurs le système à: en réponse à une donnée de saisie partielle par un utilisateur dans le cadre d'une requête reçue pour le processus d'ordinateur, la donnée de saisie partielle incluant le troisième objet de donnée de l'une des règles : 30 récupérer dans la base de données prédictive, des règles ; 3060797 36 déterminer une règle à partir des règles récupérées sur la base de la saisie partielle de donnée ; et apporter le quatrième objet de donnée de la règle au processus d'ordinateur demandé. . Le système selon la revendication II, dans lequel l'arbre de décision comprend une pluralité de chemins, chacun des chemins correspondant à une ou plusieurs relations, et les instructions amènent le système à filtrer l'arbre de décision sur la base du seuil d'optimisation pour réduire l'arbre de décision en amenant le système à: 10 enlever de l'arbre de décision chaque chemin pour lequel le nombre de décisions lui correspondant est en dessous du seuil d'optimisation. 14. Le système selon la revendication Il, dans lequel les instructions lors de l'exécution amènent par ailleurs le système à mettre en oeuvre le procédé selon Pune quelconque des 15 revendications 5 à 10. 15. Un programme d'ordinateur comprenant un code de programme pour exécuter les étapes du procédé selon l'une quelconque des revendications 1 à 10 lorsque ledit programme fonctionne sur un ordinateur. 20