Brevet FR3084946A1 — publié le 20200214

PROCÉDÉS ET SYSTÈMES D'APPRENTISSAGE AUTOMATIQUE POUR DES SÉQUENCES ATTRIBUÉES DOMAINE DE L'INVENTION [0001] La présente invention concerne des applications d'apprentissage automatique. En particulier, des modes de réalisation de l'invention fournissent à la fois l'apprentissage supervisé et non supervisé d'intégrations de caractéristiques pour des séquences attribuées, c.-à-d. des instances de données comprenant à la fois des données d'attribut de longueur fixe et des données de séquence de longueur variable, ayant des propriétés souhaitables pour une utilisation dans des applications pratiques comprenant (sans s'y limiter) la détection de fraude, l'analyse et l'exploration de données de flux de clics d'utilisateurs du web, d'historiques d'achats de clients en ligne ou de séquences d'ADN. CONTEXTE [0002] Les données séquentielles apparaissent naturellement dans une large gamme d'application& Des exemples de données séquentielles incluent des flux de clics d'utilisateurs du web, des historiques d'achat de clients en ligne et des séquences d'ADN de gènes. Les données séquentielles comprennent des séquences de longueur variable d'éléments catégoriels, et typiquement requièrent une conception attentive d'une représentation de caractéristiques avant d'être envoyées à un algorithme d'apprentissage. Une approche pour l'apprentissage de caractéristiques sur des données séquentielles est appelée intégration de séquences, dans laquelle l'objectif est de transformer une séquence de longueur variable en une représentation de caractéristiques de longueur fixe. [0003] Les procédés antérieurs de l'état de la technique destinés à l'intégration de séquences se concentrent sur l'apprentissage provenant des données séquentielles seules. Cependant, dans de nombreuses applications du monde réel, les séquences de longueur variable sont souvent associées à un ensemble de dimension fixe d'attributs. Par exemple, dans un système d'achat en 2 ligne, chaque transaction d'utilisateur inclut à la fois une séquence d'actions de l'utilisateur (par ex., « se connecter », « rechercher », « ajouter un article dans le panier d'achat », « vérifier », etc.) et un ensemble d'attributs (par ex. « nom d'utilisateur », « navigateur » et « adresse IP ») indiquant le contexte de la 5 transaction. Dans un autre exemple, dans l'analyse de la fonction génique, chaque gène peut être représenté à la fois par une séquence ADN et un ensemble d'attributs indiquant les niveaux d'expression du gène dans différents types de cellules. [0004] Dans les problèmes d'intégration de séquence, les procédés 10 conventionnels se concentrent sur la modélisation des dépendances d'éléments, c.-à-d. les dépendances entre différents éléments dans une séquence. Cependant, un ordre donné d'articles peut avoir différentes significations lorsqu'il est associé à différentes valeurs d'attribut. Apprendre une intégration ayant des propriétés souhaitables pour des applications pratiques requiert par conséquent 15 de considérer trois types de dépendances : les dépendances d'éléments (c.-à-d. les dépendances entre les différents éléments dans la séquence) ; les dépendances d'attributs (c.-à-d. les dépendances entre les différents attributs) ; et les dépendances d'attribut-séquence (c.-à-d. les dépendances entre les attributs et les éléments dans une séquence). 20 [0005] Un problème étroitement lié est l'apprentissage métrique de distance. Il est souvent souhaitable que la représentation de caractéristiques de données observées ait la propriété selon laquelle des observations similaires ont des caractéristiques similaires, c.-à-d. que lesdites observations sont regroupées dans l'espace de caractéristiques tandis que les représentations d'observations 25 différentes sont séparées de manière plus éloignée. Dans l'apprentissage métrique de distance, l'objectif est par conséquent d'apprendre une métrique de distance appropriée basée sur un ensemble de paires similaires/différentes d'instances. De nombreuses applications du monde réel, de la récupération d'informations à l'informatique de soins de santé, peuvent bénéficier grandement 30 de l'apprentissage métrique de distance. Par exemple, dans l'informatique de soins de santé, il peut être souhaitable d'apprendre une métrique de distance qui 3 mesure de manière précise les similarités entre les patients pour leur trouver des traitements adéquats. [0006] Les approches conventionnelles de l'apprentissage de métrique de distance se concentrent généralement sur l'apprentissage d'une métrique de 5 distance de Mahalanobis qui est équivalente à l'apprentissage d'une transformation linéaire sur les attributs de données. Dans des réglages non linéaires, une fonction de mappage non linéaire peut être apprise en premier lieu pour projeter les instances dans un nouvel espace, et puis la métrique finale devient la métrique de distance euclidienne dans cet espace. L'apprentissage de 10 la métrique profonde a souvent été le procédé choisi en pratique pour apprendre des mappages non linéaires. Tandis que des progrès ont été faits sur l'apprentissage des métriques avec des données séquentielles, les défis dont il est question ci-dessus surviennent encore si les données séquentielles sont dépendantes du contexte/des attributs associés. 15 [0007] Pour de nombreuses applications pratiques, des systèmes et procédés efficaces sont par conséquent requis pour apprendre les caractéristiques et les métriques de distance pour des ensembles de données et des observations comprenant des données d'attribut de longueur fixe ainsi que des données séquentielles associées de longueur variable. 20 RÉSUMÉ DE L'INVENTION [0008] Dans un aspect, l'invention fournit un système d'apprentissage automatique pour intégrer des données de séquence attribuées comprenant une partie de donnée d'attribut ayant un nombre fixe d'éléments de données d'attribut 25 et une partie de données de séquence ayant un nombre variable d'éléments de données de séquence dans une représentation de caractéristiques de longueur fixe. Le système inclut un module de réseau d'attributs comprenant un réseau neuronal sans rétroaction configuré pour convertir la partie de données d'attribut en un vecteur d'attributs codé ayant un premier nombre prédéterminé de 30 caractéristiques d'attribut, et un module de réseau de séquences comprenant un réseau neuronal récurrent configuré pour convertir la partie de données de séquence en un vecteur de séquences codé ayant un deuxième nombre 4 prédéterminé de caractéristiques de donnée. Le module de réseau d'attributs et le module de réseau de séquences peuvent être couplés de manière fonctionnelle de sorte que, lors de l'utilisation, le système d'apprentissage automatique soit configuré pour apprendre et sortir une représentation de 5 caractéristiques de longueur fixe de données de séquence attribuées d'entrée qui code les dépendances entre les différents éléments de données d'attribut dans la partie de données d'attribut, les dépendances entre les différents éléments de données de séquence dans la partie de données de séquence, et les dépendances entre les éléments de données d'attribut et les éléments de 10 données de séquence dans les données de séquence attribuées. [0009] De façon avantageuse, le couplage du module de réseau d'attributs comprenant un réseau neuronal sans rétroaction avec le module de réseau de séquences comprenant un réseau neuronal récurrent permet au système d'apprendre une fonction non linéaire de données de séquence attribuées 15 d'entrée qui est capable à la fois de tenir compte des dépendances homogènes (c.-à-d. celles dans les parties de données de séquence et d'attribut ) et des dépendances hétérogènes (c.-à-d. celles entre les parties de données de séquence et d'attribut) des éléments dans les séquences attribuées. [0010] Dans des modes de réalisation de l'invention, le module de réseau 20 d'attributs comprend un réseau neuronal multicouche sans rétroaction ayant une couche de sorties de vecteur d'attributs qui comprend le premier nombre prédéterminé d'unités, et le réseau neuronal récurrent du module de réseau de séquences comprend un réseau de mémoire court-terme persistante (LSTM) ayant le deuxième nombre prédéterminé d'unités cachées. De cette manière, le 25 nombre de caractéristiques dans le vecteur d'attributs devient un paramètre de conception du réseau d'attribut, tandis que le nombre de caractéristiques dans le vecteur de séquences devient un paramètre de conception du réseau de séquences. De façon avantageuse, les paramètres de conception sont indépendants du nombre d'éléments de données d'attribut, de la longueur de 30 toute partie de données de séquence et du nombre d'éléments distincts comprenant la donnée de séquence. 5 [0011] Dans un autre aspect, des modes de réalisation de l'invention fournissent un procédé d'entraînement d'un système d'apprentissage automatique pour l'intégration de données de séquence attribuées comprenant une partie de données d'attribut ayant un nombre fixe d'éléments de données 5 d'attribut ayant un nombre fixe d'éléments de données d'attribut et une partie de données de séquence ayant un nombre variable d'éléments de données de séquence dans une représentation de caractéristiques de longueur fixe. Le système d'apprentissage automatique comprend un réseau neuronal multicouche sans rétroaction ayant une couche d'entrées de données d'attribut et une couche 10 de sorties de vecteur d'attributs qui comprend un premier nombre prédéterminé d'unités, couplées de manière fonctionnelle à un réseau LSTM qui comprend un deuxième nombre prédéterminé d'unités cachées. Le procédé d'entraînement comprend la fourniture d'un ensemble de données comprenant une pluralité de séquences attribuées et, pour chaque séquence attribuée dans l'ensemble de 15 données, l'entraînement du réseau neuronal multicouche sans rétroaction en utilisant la partie de données d'attributs de la séquence attribuée via la rétropropagation concernant une deuxième fonction objective, et l'entraînement du réseau LSTM à l'aide de la partie de données de séquence de la séquence attribuée via la rétropropagation relative à une deuxième fonction objective. 20 L'entraînement du réseau neuronal multicouche sans rétroaction est couplé à l'entraînement du réseau LSTM de sorte que, lorsqu'il est entraîné, le système d'apprentissage automatique soit configuré pour sortir une représentation de caractéristiques de longueur fixe de données de séquence attribuées d'entrée qui code les dépendances entre les différents éléments de données d'attribut dans la 25 partie de données d'attribut, les dépendances entre les différents éléments de données de séquence dans la partie de données de séquence, et les dépendances entre les éléments de données d'attribut et les éléments de données de séquence dans les données de séquence attribuées. [0012] Il est en outre avantageux que, dans divers modes de réalisation de 30 l'invention, différents agencements de couplage puissent être utilisés, résultant d'architectures réseau alternatives qui sont capables de générer différentes intégrations de données de séquence attribuées d'entrée. 6 [0013] Par conséquent, dans un agencement exemplaire, le module de réseau d'attributs est couplé de manière fonctionnelle au module de réseau de séquences en faisant passer une sortie de la couche de sorties de vecteur d'attributs à une entrée de vecteur d'attributs du module de réseau de 5 séquences. En particulier, l'entrée de vecteur d'attributs du module de réseau de séquences peut comprendre un état caché du réseau LSTM à une première étape d'évaluation, le premier nombre prédéterminé d'unités de couche de sorties de vecteur d'attributs peut être égal au deuxième nombre prédéterminé d'unités cachées de module de réseau de séquences , et la représentation de 10 caractéristiques de longueur fixe de données de séquence attribuées d'entrée peut comprendre un état caché du réseau LSTM à une étape d'évaluation finale. Dans ce cas, le nombre de caractéristiques dans l'intégration obtenue est égal au deuxième nombre prédéterminé, c.-à-d. le nombre d'unités cachées dans le réseau LSTM. 15 [0014] Dans un mode de réalisation lié du procédé d'entraînement, le réseau neuronal multicouche sans rétroaction comprend un codeur ayant une couche d'entrées de codeur qui comprend la couche d'entrées de données d'attribut et une couche de sorties de codeur qui comprend la couche de sorties de vecteur d'attributs. Le codeur comprend par ailleurs un décodeur ayant une couche 20 d'entrées de décodeur couplée à la couche de sorties de décodeur et une couche de sorties de décodeur qui comprend une estimation reconstruite d'une entrée dans la couche d'entrées de codeur. La première fonction objective peut comprendre une mesure de distance entre l'entrée dans la couche d'entrées de codeur et l'estimation reconstruite. L'entraînement du réseau neuronal 25 multicouche sans rétroaction peut ensuite comprendre de façon itérative l'exécution d'étapes de propagation vers l'avant et de rétropropagation avec la partie de données d'attribut de la séquence attribuée comme entrée dans la couche d'entrées de codeur jusqu'à ce que la mesure de distance satisfasse une première cible de convergence. La deuxième fonction objective peut comprendre 30 une mesure de probabilité de prédiction incorrecte d'un prochain élément de séquence à chacune d'une pluralité d'étapes temporelles d'entraînement du réseau LSTM. L'entraînement du réseau LSTM peut comprendre la répétition, de 7 manière itérative, de la pluralité d'étapes temporelles d'entraînement jusqu'à ce que la mesure de probabilité satisfasse une deuxième cible de convergence. Chaque itération comprend, à une première étape temporelle d'entraînement, le copiage de la sortie de la couche de sorties de vecteur d'attributs dans un état 5 caché du réseau LSTM ; et, à une étape temporelle d'entraînement finale, le calcul de la mesure de probabilité. La mesure de distance peut comprendre une fonction de perte d'erreur quadratique moyenne et la mesure de probabilité peut comprendre une fonction de perte d'entropie croisée catégorique. [0015] Dans un autre agencement exemplaire, le réseau d'attributs est couplé 10 de manière fonctionnelle au module de réseau de séquences en faisant passer une sortie du module de réseau de séquences à une couche d'entrées du module de réseau d'attributs. En particulier, un nombre d'unités dans la couche d'entrées du module de réseau d'attributs peut être égal à la somme du nombre fixe d'éléments de données d'attribut et du deuxième nombre prédéterminé d'unités 15 cachées du module de réseau de séquences , la sortie de module de réseau de séquences peut comprendre un état caché du réseau LSTM à une étape d'évaluation finale, qui est concaténée avec le nombre fixe d'éléments de données d'attribut pour produire un vecteur d'entrée de réseau d'attribut concaténé qui est passé à la couche d'entrées du module de réseau d'attributs, 20 et la représentation de caractéristiques de longueur fixe de données de séquences attribuées d'entrée peut comprendre une sortie de la couche de sorties de vecteur d'attributs. Dans ce cas, le nombre de caractéristiques dans l'intégration obtenue est égal au premier nombre déterminé, c.-à-d. Le nombre d'unités dans la couche de sorties de vecteurs d'attributs. 25 [0016] Dans un mode de réalisation liée du procédé d'entraînement, la deuxième fonction objective peut comprendre une mesure de probabilité de prédiction incorrecte d'un prochain élément de séquence à chacune d'une pluralité d'étapes temporelles d'entraînement du réseau LSTM, et l'entraînement du réseau LSTM peut comprendre, de manière itérative, la répétition de la 30 pluralité d'étapes temporelles d'entraînement jusqu'à ce que la mesure de probabilité satisfasse une première cible de convergence. Chaque itération peut comprendre : à une première étape temporelle d'entraînement, le copiage de la 8 sortie de la couche de sorties de vecteurs d'attributs dans un état caché du réseau LSTM ; et, à une étape temporelle d'entraînement finale, le calcul de la mesure de probabilité. Le réseau neuronal multicouche sans rétroaction peut comprendre un codeur ayant une couche d'entrées de codeur qui comprend la 5 couche d'entrées de données d'attribut et une couche de sorties de codeur qui comprend la couche de sorties de vecteurs d'attributs ; et un codeur ayant une couche d'entrées de codeur couplée à la couche de sorties de codeur, et une couche de sorties de codeur qui comprend une estimation reconstruite d'une entrée dans la couche d'entrées de codeur. La première fonction objective peut 10 comprendre une mesure de distance entre l'entrée dans la couche d'entrées de codeur et l'estimation reconstruite. L'entraînement du réseau neuronal multicouche sans rétroaction peut comprendre l'application, sur la couche d'entrées de codeur, d'un état caché du réseau LSTM à l'étape temporelle d'entraînement finale concaténée avec le nombre fixe d'éléments de données 15 d'attribut, et de manière itérative, l'exécution d'étapes de propagation vers l'avant et de rétropropagation jusqu'à ce que la mesure de distance satisfasse une deuxième cible de convergence. [0017] Dans un autre agencement exemplaire, le réseau d'attributs est couplé de manière fonctionnelle au réseau de séquences via un réseau de fusion qui 20 comprend une couche de concaténation d'entrées qui est configurée pour concaténer une sortie de la couche de sorties de vecteurs d'attributs avec une sortie du module de réseau de séquences, et un module de fonction non linéaire qui est configuré pour apprendre une fonction non linéaire des entrées concaténées, qui code les dépendances entre les éléments de données 25 d'attributs et les éléments de données de séquences dans les données de séquence attribuées. En particulier, un nombre d'unités dans la couche de concaténation d'entrée peut être égal à une somme du premier nombre prédéterminé de caractéristiques d'attribut et du deuxième nombre prédéterminé de caractéristiques de séquence, la sortie du module de réseau de séquences 30 peut comprendre un état caché du réseau LSTM à une étape d'évaluation finale, le module de fonction non linéaire peut comprendre une couche de réseau neuronal sans rétroaction entièrement connectée, et la représentation de 9 caractéristiques de longueur fixe de données de séquence attribuées d'entrée peut comprendre un vecteur de sortie de la couche de réseau neuronal sans rétroaction entièrement connectée. [0018] Dans ce cas, le nombre de caractéristiques dans l'intégration obtenue 5 est égal à la taille de la sortie du module de fonction non linéaire, et en particulier peut être égal à la somme des premier et deuxième nombres prédéterminés, c.- à-d. le compte combiné d'unités dans la couche de sorties de vecteurs d'attributs et d'unités cachées dans le réseau LSTM. [0019] Dans certains modes de réalisation, configuré de façon avantageuse 10 pour apprendre une intégration, de manière supervisée, en utilisant des échantillons étiquetés de séquences attribuées similaires et différentes, le système comprend par ailleurs un module de réseau métrique couplé bidirectionnellement au module de réseau d'attributs et au module de réseau de séquences. Le module de réseau métrique est configuré pour recevoir des paires 15 de représentation de caractéristiques de longueur fixe d'échantillons correspondants de données de séquence attribuées. Chaque paire est étiquetée pour indiquer si elle comprend des données de séquence attribuées similaires ou différentes. Le module de réseau métrique est par ailleurs configuré pour calculer les informations de gradient basées sur une fonction de perte définie en termes 20 d'une métrique de distance prédéterminée. L'un des objectifs est d'apprendre une intégration où les paires de représentations de caractéristiques de longueur fixe des échantillons correspondants de données de séquence attribuées ont une distance inférieure à la métrique de distance lorsqu'elles sont étiquetées comme étant similaires que lorsqu'elles sont étiquetées comme étant différentes. Le 25 module de réseau métrique est par ailleurs configuré pour rétropropager les informations de gradient via le module de réseau d'attributs et le module de réseau de séquences dans lequel les paramètres du module de réseau d'attributs et du module de réseau de séquences sont mis à jour dans le but d'atteindre l'objectif. 30 [0020] Dans un autre aspect, un mode de réalisation de l'invention fournit un procédé d'entraînement d'un système d'apprentissage automatique pour l'intégration de données de séquence attribuées comprenant une partie de 10 données d'attribut ayant un nombre fixe d'éléments d'attribut de donnée et une partie de données de séquence ayant un nombre variable d'éléments de donnée de séquence en une représentation de caractéristiques de longueur fixe. Le système d'apprentissage automatique comprend un réseau neuronal multicouche 5 sans rétroaction ayant une couche d'entrées de données d'attribut et une couche de sorties de vecteurs d'attributs qui comprend un premier nombre prédéterminé d'unités, un réseau de mémoire court-terme persistante (LSTM) qui comprend un deuxième nombre prédéterminé d'unités cachées, et un réseau de fusion comprenant une couche de concaténation d'entrées ayant un nombre d'unités 10 égal à une somme du premier nombre prédéterminé de caractéristiques d'attribut et le deuxième nombre prédéterminé de caractéristiques de séquence, et une couche de fonctions non linéaires comprenant une couche de réseau neuronal sans rétroaction entièrement connectée. Le procédé d'entraînement comprend la fourniture d'un ensemble de données comprenant une pluralité de paires de 15 séquences attribuées, dans lesquelles chaque paire est étiquetée pour indiquer si elle comprend des données de séquence attribuées similaires ou différentes. Pour chaque paire de séquences attribuées dans l'ensemble de données, le procédé comprend le calcul, à l'aide du réseau neuronal multicouche sans rétroaction, une paire de vecteurs d'attributs, chacune ayant le premier nombre 20 prédéterminé d'éléments, correspondant aux parties de donnée d'attribut des séquences attribuées, le calcul, à l'aide du réseau LSTM, d'une paire de vecteurs de séquences, chacune ayant le deuxième nombre prédéterminé d'éléments, correspondant aux parties de donnée de séquence des séquences attribuées, la concaténation correspondant à l'un des vecteurs de séquences et d'attribut 25 calculés pour générer une paire de représentations de caractéristiques de longueur fixe de la paire de séquences attribuées, le calcul d'une fonction de transformation non linéaire des représentations de caractéristiques de longueur fixe pour générer une paire de représentations de caractéristique transformées, le calcul des informations de gradient basées sur une fonction de perte définie en 30 termes de métrique de distance prédéterminée sur les représentations de caractéristique transformées. L'un des objectifs est d'apprendre une intégration où les paires de représentations de caractéristiques de longueur fixe des 11 échantillons correspondants de données de séquence attribuées ont une distance inférieure à la métrique de distance lorsqu'elles sont étiquetées comme étant similaires que lorsqu'elles sont étiquetées comme étant différentes. Pour chaque paire de séquences attribuées dans l'ensemble de données, le procédé 5 comprend la rétropropagation des informations de gradient via le réseau neuronal multicouche sans rétroaction et le réseau LSTM, les paramètres du module de réseau d'attributs et du module de réseaux de séquences étant mis à jour pour atteindre l'objectif. [0021] À partir de la description qui suit de divers modes de réalisation, 10 d'autres aspects, avantages et caractéristiques des modes de réalisation de l'invention seront apparents aux hommes de métier spécialisés dans les domaines pertinents. On notera cependant que l'invention n'est pas limitée aux modes de réalisation décrits qui sont fournis à titre d'illustration des principes de l'invention et pour assister les hommes de métier à mettre en pratique ces 15 principes. BRÈVE DESCRIPTION DES DESSINS [0022] Des modes de réalisation de l'invention seront maintenant décrits par rapport aux dessins l'accompagnant dans lesquels des numéros de référence 20 font référence à des caractéristiques similaires. [0023] La Figure 1 est un diagramme bloc illustrant un système exemplaire en réseau incluant un système de détection de fraudes e-commerce conformément à un mode de réalisation de l'invention. [0024] La Figure 2 est un diagramme schématique illustrant les données 25 associées aux interactions de l'utilisateur avec le système e-commerce de la Figure 1. [0025] La Figure 3 est un diagramme schématique illustrant l'importance des données de séquence attribuées dans le contexte du système de détection de fraudes de la Figure 1. 30 [0026] La Figure 4 est un diagramme schématique représentant un mappage de séquences attribuées à un espace de caractéristiques exemplaire. 12 [0027] La Figure 5 est une illustration schématique d'un réseau d'attributs conformément à un mode de réalisation de l'invention. [0028] La Figure 6 est une illustration schématique d'un réseau de séquences conformément à un mode de réalisation de l'invention. 5 [0029] La Figure 7 illustre un premier couplage attribut-réseau conformément à un mode de réalisation de l'invention. [0030] La Figure 8 illustre un premier couplage séquence-réseau conformément à un mode de réalisation de l'invention. [0031] La Figure 9 illustre un couplage équilibré conformément à un mode de 10 réalisation de l'invention. [0032] La Figure 10 est un organigramme illustrant un algorithme exemplaire d'apprentissage non supervisé d'une intégration pour des séquences attribuées à l'aide d'un premier couplage attribut réseau, conformément à un mode de réalisation de l'invention. 15 [0033] La Figure 11 est un diagramme schématique illustrant un système d'apprentissage de métrique de distance supervisé, conformément à un mode de réalisation de l'invention. [0034] La Figure 12 est un organigramme illustrant un algorithme exemplaire d'apprentissage de métrique de distance supervisée, conformément à un mode 20 de réalisation de l'invention. DESCRIPTION DETAILLEE [0035] La Figure 1 est un diagramme bloc illustrant un système en réseau exemplaire 100 incluant un système de détection de fraudes 102 mettant en 25 oeuvre l'invention. En particulier, le système de détection de fraudes 102 comprend un système d'apprentissage automatique configuré pour générer des intégrations de données de séquence attribuées conformément à un mode de réalisation de l'invention. Les hommes de métier spécialisés dans l'apprentissage automatique comprendront que le terme « intégration » fait référence à une 30 représentation de caractéristiques d'échantillons de données d'entrée, les caractéristiques des données étant codées dans un espace de caractéristiques, de sorte que les similarités ou les différences entre les échantillons puissent être 13 représentées par une mesure de distance dans l'espace de caractéristiques. La signification du terme « séquence attribuée » est discutée plus en détail ci-après en référence à la Figure 2. On remarquera que l'exemple d'un système de détection de fraudes 100 est fourni à titre d'illustration uniquement, comme un 5 contexte spécifique dans lequel illustrer les principes de l'invention, et pour aider les personnes compétentes à mettre en pratique ces principes. Les modes de réalisation de l'invention peuvent être appliqués, cependant, dans d'autres contextes dans lesquels il est avantageux de générer des intégrations de données de séquence attribuées, telles que l'analyse et l'exploration de données 10 de flux de clics d'utilisateurs du web (par ex., pour des systèmes de publicité ou de recommandation ciblés), les historiques d'achat de clients en ligne, ou les séquences ADN. [0036] Le système de détection de fraudes 102 peut comprendre un système informatique ayant une architecture conventionnelle. En particulier, le système de 15 détection de fraudes 102, tel qu'il est illustré, comprend un processeur 104. Le processeur 104 est associé, de façon fonctionnelle, à un dispositif de stockage/mémoire non volatile 106, par ex. via un ou plusieurs bus de données/adresses 108 tel qu'illustré. Le stockage non volatile 106 peut être un disque dur et/ou peut inclure une mémoire non volatile à état défini, telle qu'une 20 mémoire morte ROM, une mémoire flash, un disque dur électronique SSD ou autre stockage similaire. Le processeur 104 sert aussi d'interface avec le stockage volatile 110 tel que la mémoire à accès aléatoire RAM qui contient des instructions de programme et des données temporaires relatives au fonctionnement du système de détection de fraudes 102. 25 [0037] Dans une configuration, le dispositif de stockage 106 maintient un programme et un contenu de données pertinents avec le fonctionnement normal du système de détection de fraudes 102. Par exemple, le dispositif de stockage 106 peut contenir des programmes de système d'exploitation et des données ainsi que d'autres logiciels d'application exécutables nécessaires pour 30 les fonctions voulues du système de détection de fraudes 102. Le dispositif de stockage 106 contient aussi des instructions de programme qui, lorsqu'elles sont exécutées par le processeur 104, amènent le système de détection de 14 fraudes 102 à effectuer des opérations relatives à des modes de réalisation de la présente invention, lesquelles sont décrites de façon plus détaillée ci-dessous en référence aux Figures 5 à 12 en particulier. Dans le fonctionnement, les instructions et les données stockées sur le dispositif de stockage 106 sont 5 transférées à la mémoire volatile 110 pour une exécution à la demande. [0038] Le processeur 104 est aussi associé fonctionnellement à une interface de communications 112. L'interface de communications 112 facilite l'accès à un réseau étendu de communications de données, tel qu'Internet 116. [0039] Dans la pratique, le stockage volatile 110 contient un corps 10 d'instructions de programme correspondant 114 transféré à partir du dispositif de stockage 106 et qui est configuré pour effectuer le traitement et d'autres opérations afin de mettre en oeuvre les caractéristiques des modes de réalisation de la présente invention. Les instructions de programme 114 comprennent une contribution technique à l'état de la technique développé est configuré 15 spécifiquement pour mettre en oeuvre des modes de réalisation de l'invention, au- dessus et en dessous du bien compris, la routine et l'activité classique dans l'état de la technique des systèmes d'apprentissage automatique comme décrit ci-dessous, particulièrement en référence aux Figures 5 à 13. [0040] Concernant l'aperçu global du système de détection de fraudes 102 et 20 d'autres systèmes de traitement et dispositifs décrits dans cette spécification, les termes tels que « processeurs », « ordinateur » et ainsi de suite, sauf si le contexte exige le contraire, doivent être interprétés comme faisant référence à une gamme de mises en oeuvre possibles des dispositifs, appareils et systèmes comprenant une combinaison de logiciels et de matériel. Cela inclut des 25 dispositifs à processeur unique et à processeurs multiples et un appareil, incluant les dispositifs portables, les ordinateurs de bureau et divers types de systèmes de serveur, incluant du matériel collaboratif et des plateformes logicielles qui peuvent cohabiter ou être distribuées. Les processeurs physiques peuvent inclure des unités centrales de traitement (CPUs), à usage général, des processeurs de 30 signaux numériques, des unités de traitement graphique (GPUs), des réseaux de portes programmables par l'utilisateur (FPGA), des circuits intégrés spécifiques à une application (ASIC), et/ou d'autres dispositifs matériels appropriés pour une 15 exécution efficace des programmes et des algorithmes nécessaires. Comme l'apprécieront les personnes de métier, les GPU notamment peuvent être utilisés pour la mise en oeuvre haute performance de réseaux neuronaux profonds comprenant divers modes de réalisation de l'invention, sous le contrôle d'un ou 5 de plusieurs CPU à usage général. [0041] Les systèmes informatiques peuvent inclure des architectures d'ordinateur personnel ou d'autres plateformes matérielles à usage général. Les logiciels peuvent inclure des logiciels de sources libres et/ou des logiciels de systèmes d'exploitation vendus sur le marché en combinaison avec diverses 10 applications et programmes de services. Autrement, les plateformes de traitement ou de calcul peuvent comprendre du matériel et/ou des architectures de logiciel adaptés sur mesure. Pour une extensibilité améliorée, les systèmes de traitement et de calcul peuvent comprendre des plateformes d'informatique en nuage (cloud) permettant aux ressources matérielles physiques d'être affectées 15 de façon dynamique en réponse aux demandes de services. Alors que toutes ces variations sont comprises dans la portée de la présente invention, pour faciliter l'explication et la compréhension, les modes de réalisation exemplaires sont décrits dans les présentes avec une référence illustrative des plateformes informatiques à usage général et un processeur unique, des plateformes de 20 système d'exploitation couramment disponibles et/ou des produits de consommateurs largement disponibles, tels que des ordinateurs de bureau (PC), des ordinateurs compacts ou ordinateurs portables (PC), des smartphones, des tablettes informatiques et ainsi de suite. [0042] En particulier, les termes « unité de traitement » et « module » sont 25 utilisés dans cette spécification en référence à toute combinaison appropriée de matériel et de logiciels configurés pour effectuer une tâche particulière définie telle que l'accès et le traitement des données en ligne ou hors connexion, l'exécution supervisée ou non supervisée des étapes de formation d'un modèle d'apprentissage automatique, l'exécution d'étapes d'intégration de 30 caractéristiques d'un modèle d'apprentissage automatique, l'exécution d'étapes d'évaluation de métrique de distance, ou l'exécution d'étapes de détection de fraudes. Une telle unité de traitement ou module peut comprendre un code 16 exécutable qui s'exécute à un emplacement unique sur un dispositif de traitement unique, ou qui peut comprendre des modules collaboratifs de code exécutable qui s'exécutent à de multiples emplacements et/ou sur de multiples dispositifs de traitement. Par exemple, dans certains modes de réalisation de l'invention, 5 l'intégration d'échantillons de données peut être effectuée entièrement par un code qui s'exécute sur un seul système, tel que le système de détection de fraudes 102, alors que dans d'autres modes de réalisation le traitement correspondant peut être effectué d'une manière distribuée sur une pluralité de systèmes. 10 [0043] Les composants logiciels, par ex. les instructions de programme 114, pour mettre en oeuvre les caractéristiques de l'invention, peuvent être développés en utilisant tout langage de programmation approprié, environnement de développement ou combinaison de langage et d'environnement de développement qui sera familier/familière aux hommes de métier spécialisés 15 dans l'ingénierie logicielle. Par exemple, le logiciel approprié peut être développé à l'aide du langage de programmation C, du langage de programmation Java, du langage de programmation C++, du langage de programmation Go, du langage de programmation Python, du langage de programmation R, et/ou d'autres langages appropriés pour la mise en oeuvre d'algorithmes d'apprentissage 20 automatique. Le développement de modules logiciels mettant en oeuvre une invention peut être supporté par l'utilisation de bibliothèques de codes d'apprentissage automatique tel que les libraires TensorFlow, Torch et Keras. Les hommes de métier comprendront cependant que des modes de réalisation de l'invention impliquent la mise en oeuvre de structures logicielles et du code qui 25 ne sont pas bien compris, routiniers ou conventionnels dans l'état de la technique des systèmes d'apprentissage automatique, et que tandis que les bibliothèques préexistantes peuvent aider à la mise en oeuvre, elles requièrent une configuration spécifique et une augmentation importante (c.-à-d. le développement de code supplémentaire) afin de mettre en oeuvre les structures 30 spécifiques, le traitement, les calculs et les algorithmes décrits ci-dessous, en particulier en référence aux Figures 5 à 12. 17 [0044] Les précédents exemples de langages, d'environnements et de bibliothèques de code ne se veulent pas restrictifs et on notera que tout langage, bibliothèque et système de développement pratiques peuvent être employés selon les exigences du système. Les descriptions, diagrammes bloc, 5 organigrammes, équations et autres qui sont présentés dans cette spécification sont fournis à titre d'exemple pour permettre aux hommes de métier spécialisés dans l'ingénierie logicielle et l'apprentissage automatique de comprendre et d'apprécier les caractéristiques, la nature et la portée de l'invention, et pour mettre un ou plusieurs modes de réalisation de l'invention en pratique par la mise 10 en oeuvre d'un code logiciel approprié à l'aide de tout langage, cadre, bibliothèque et système de développement appropriés conformément à cette divulgation sans avoir à y apporter une ingéniosité inventive additionnelle. [0045] Le code de programme mis en oeuvre dans tout(e) application/module décrit(e) dans les présentes peut être distribué individuellement ou collectivement 15 comme un produit de programme, sous une variété de formes. En particulier, le code de programme peut être distribué en utilisant un support de stockage lisible par ordinateur, disposant d'instructions de programme lisibles par ordinateur en lui-même, permettant à un processeur de mettre en oeuvre des aspects des modes de réalisation de l'invention. 20 [0046] Les supports de stockage lisibles par ordinateur, étant intrinsèquement non transitoires, peuvent inclure des supports tangibles, volatiles et non volatiles et amovibles et non amovibles, mis en oeuvre dans un quelconque procédé ou technologie pour le stockage d'informations, tels que les instructions de programme lisibles par ordinateur, des structures de donnée, des modules de 25 programme, ou autres données. Les supports de stockage lisibles par ordinateur peuvent aussi comprendre des mémoires: une mémoire à accès aléatoire (RAM), une mémoire à lecture seule (ROM), une mémoire à lecture seule programmable et effaçable (EPROM), une mémoire à lecture seule programmable et effaçable électriquement (EEPROM), une mémoire flash ou autre technologie de support 30 solide de mémoire, un disque compact portable doté d'une mémoire à lecture seule (CD-ROM) ou autre stockage optique, une bande d'enregistrement magnétique ou tout autre support pouvant être utilisé pour stocker l'information 18 désirée et apte à être lue par un ordinateur. Un support de stockage lisible par ordinateur ne peut être interprété comme « signaux transitoires » en soi (par exemple, des ondes radio ou toutes autres ondes électromagnétiques se propageant, des ondes électromagnétiques se propageant à travers un support 5 de transmission telle 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 machine, vers un ordinateur externe ou vers un dispositif de stockage externe par 10 un réseau. [0047] 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 15 stockées sur un support lisible par ordinateur produisent un article de fabrication comprenant les instructions qui mettent en oeuvre les fonctions, les actions et/ou les opérations spécifiées dans les organigrammes, diagrammes de séquence, et/ou diagrammes blocs. Les instructions de programme informatique peuvent être fournies par un ou plusieurs processeurs sur un ordinateur à usage général, 20 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 mettre en oeuvre les fonctions, actions et/opérations spécifiées dans les organigrammes, diagrammes séquentiels et/ou 25 diagrammes blocs. [0048] Poursuite de la discussion de la Figure 1, le système en réseau 100 comprend également un système surveillé 118. À titre d'exemple concret, afin d'illustrer les principes de l'invention, le système surveillé 118 peut être un système e-commerce ou de vente en ligne. Ainsi qu'il est bien connu, l'utilisateur 30 peut employer un navigateur web, ou une autre application logicielle, pour accéder au système e-commerce 118 via Internet 116 à partir de son ordinateur personnel 120 ou un autre appareil approprié. Une interaction de l'utilisateur avec 19 le système e-commerce 118 peut typiquement impliquer un nombre d'événements ou d'actions séquentiels, tel(le)s que la connexion, la recherche et/ou la navigation pour des articles, la sélection d'articles, l'ajout d'articles à un panier électronique, l'exécution d'un processus de vérification (par ex., fournir les 5 informations paiement, fournir des informations d'expédition et confirmer l'achat), et la déconnexion. Ces événements et actions exemplaires ne sont pas destinés à être limitatif et on comprendra que tout système en ligne, tels qu'un système e-commerce 118 supporte un ensemble spécifique fini (bien éventuellement grand) d'événements et d'actions individuelles, et/ou des séquences d'événements et 10 d'actions individuelles. [0049] Dans ce contexte, la Figure 2 est un diagramme schématique 200 illustrant les données associées aux interactions de l'utilisateur avec le système e-commerce 118. Les échantillons de données exemplaires 202, 204 sont illustrés, chacun d'entre eux est associé à une seule interaction par un utilisateur 15 avec le système e-commerce 118. Chaque interaction a un nombre d'attributs associés 206, 208 notamment, par exemple, le nom ou l'identifiant de l'utilisateur, l'adresse IP associée à l'appareil, par ex. 120, utilisés pour accéder au système 118, le système d'exploitation de l'appareil, et les informations sur le navigateur web ou une autre application logicielle utilisée pour accéder au 20 système 118. Ces attributs 206, 208 fournissent une forme d'« empreinte » de l'utilisateur, de l'appareil et du logiciel. On comprendra qu'une interaction d'un utilisateur avec un site web peut avoir des attributs supplémentaires ou alternatifs (non illustrés), tels que lors de l'interaction, et la situation géographique du dispositif de l'utilisateur. Les attributs sélectionnés dans toute mise en oeuvre 25 particulière comprennent un enregistrement de données ayant une taille fixe connue. [0050] Chaque interaction a également une séquence associée 210, 212 d'actions d'événements, tels que ceux décrits ci-dessus. Contrairement aux attributs 206, 208, chaque séquence 210, 212 comprend un enregistrement de 30 données contenant un nombre variable d'éléments. Par ailleurs, l'ordonnancement séquentiel d'articles dans la séquence est généralement important. 20 [0051] Le terme « séquence attribuée » est utilisé dans l'ensemble de cette spécification pour faire référence à tout échantillon de données, tel que les données d'interaction e-commerce 202, 204 qui comprennent les enregistrements de séquences et d'attributs associés. Plus particulièrement, une 5 séquence attribuée Jk comprenant un vecteur d'attributs de longueur fixe xk et une séquence de longueur variable Sk peut être noté Jk = (xk, Sk). Dans certaines circonstances, il peut être approprié de convertir Sk en une représentation de longueur fixe, en déterminant la longueur T de la séquence la plus longue dans un ensemble de séquences, et en remplissant toutes les séquences plus courtes 10 jusqu'à cette longueur avec des éléments nuls. [0052] La Figure 3 est un diagramme schématique 300 illustrant l'importance des données de séquence attribuées dans le contexte de l'application de détection de fraude exemplaire. Cinq séquences attribuées 302 sont représentées, étiquetées Ji à Js. L'intégration des données de séquence seule 15 entraîne un ensemble de vecteurs de caractéristiques représenté par le dendrogramme 304, ce qui signifie que les séquences Ji et J2 sont similaires (c.- à-d. séparées par une mesure de distance relativement courte dans l'espace de caractéristiques) et les séquences J3, J4 et Js sont similaires. Ainsi aucune séquence individuelle ne ressort sous la forme d'une anomalie ou d'une valeur 20 aberrante. L'intégration de données d'attribut seules entraîne un ensemble séparé de vecteurs de caractéristiques représentés par le dendrogramme 306, ce qui signifie que les enregistrements d'attribut Ji, J2 et J5 sont similaires, et que les enregistrements d'attribut J3 et J4 sont similaires. Encore, aucun enregistrement individuel ne ressort sous la forme d'une anomalie ou d'une valeur aberrante. 25 [0053] Avec une approche de traitement séparé des données de séquences et des données d'attribut, tandis que cela peut prendre en compte les dépendances entre différents éléments dans une séquence et les dépendances entre différents éléments dans un enregistrement d'attributs, le problème est que cela ne tient pas compte des dépendances entre les données de séquence et les 30 données d'attribut. Comme illustré par le dendrogramme 308, une fois que de telles dépendances hétérogènes sont prises en compte, il est possible que différents groupements émergent. Par exemple, comme illustré, les vecteurs de 21 caractéristiques alternatifs dérivés de séquences attribuées peuvent révéler que Ji et J2 sont similaires, que J3 et J4 sont similaires, et que J5 caractérise une intégration 310 qui est assez différente de tous les autres vecteurs de caractéristiques. Ceci est plus amplement illustré à la Figure 4, qui est un 5 diagramme schématique 400 représentant un mappage de séquence attribuée 402 sur un espace de caractéristiques 404 (limiter à deux dimensions/caractéristiques pour une simplicité d'illustration) dans lequel l'une des séquences attribuées 406 à une intégration relativement distante des groupements 408, 410 correspondant aux autres séquences attribuées. 10 [0054] Ainsi, l'intégration de séquences attribuées peut entraîner l'identification de données anormales, même dans les cas où une intégration de séquences et une intégration d'attributs considérés séparément ne le font pas. De telles valeurs aberrantes 310 sont importantes, puisqu'elles peuvent représenter un comportement frauduleux qui devrait être marqué par le système 15 de détection de fraudes 102. Il est par conséquent nécessaire de générer une intégration des séquences attribuées qui tient compte des trois dépendances, c.- à-d. des dépendances homogènes dans les données de séquence et d'attribut, et les dépendances hétérogènes entre les données de séquence et d'attribut. [0055] Des modes de réalisation de l'invention génèrent une intégration via 20 une combinaison couplée d'au moins deux modules d'apprentissage automatique. Plus particulièrement, dans certains modes de réalisation de l'invention, comme décrit ci-dessous en référence aux Figures 5 à 10, un module de réseau d'attributs est couplé à un module de réseau de séquences afin de fournir un système configuré pour apprendre des représentations de 25 caractéristiques de séquences attribuées de manière non supervisée, c.-à-d. en l'absence de toute donnée étiquetée identifiant des séquences attribuées similaires et/ou différentes. Dans d'autres modes de réalisation de l'invention, comme décrit en référence aux Figures 11 et 12, un troisième module, identifié comme étant un « réseau métrique » est de plus couplé au module de réseau 30 d'attributs et au module de réseau de séquences afin de fournir un système configure pour apprendre des représentations de caractéristique de séquence attribuée de manière supervisée ou semi-supervisée, c.-à-d. en apprenant au 22 moins en partie des données qui ont été édictées, par ex, par des experts humains, pour identifier les séquences attribuées similaires et/ou différentes. [0056] Dans certains modes de réalisation, comme révélé dans les présentes, le réseau d'attributs peut être un réseau neuronal entièrement connecté configuré 5 pour coder la partie de données d'attribut de longueur fixe d'une séquence attribuée à l'aide de transformations non linéaires. Le réseau de séquences peut être un réseau de mémoire court-terme persistante (LSTM), c.-à-d. un réseau neuronal récurrent, configuré pour coder des informations structurelles de la partie de données de séquence de longueur variable d'une séquence attribuée 10 dans un vecteur de longueur fixe. Le réseau métrique peut être un module de rétroaction configuré pour générer des informations de gradient conformément à une fonction de perte et un objectif d'apprentissage basé sur les données étiquetées qui sont rétropropagées via les réseaux d'attribut et de séquence. [0057] La Figure 5 est une illustration schématique d'un réseau d'attributs 500 15 ayant un numéro fixe u d'attributs d'entrée 502 comprenant une entrée xk, une couche d'entrées 504 et une pluralité d'autres couches, par ex, 506 et 508. En particulier, un réseau d'attributs 500 peut comprendre M couches, avec dm unités cachées et la sortie correspondante VkOn) dans la m-ème couche (m = 1 ... M). La structure du réseau d'attributs 500 peut ensuite être représentée comme : (W(41)xk + bt(;)) V1.2) = à (W(42)V(2) + 13(,P) (1) V91)= à (W(A "V("I-1) + br) 20 [0058] Dans l'Équation (1) S une fonction d'activation non linéaire, par ex., sigmoïde, ReLU ou tanh, WAX est une maîtrise de paramètres de poids et bA(m) est un vecteur de paramètres de biais. Dans le cas d'un système configuré pour apprendre des représentations de caractéristique de séquences attribuées de 25 manière non supervisée, c.-à-d. en l'absence de toute donnée étiquetée identifiant des séquences attribuées similaires et/ou différentes, il est opportun de définir un paramètre de taille de réseau alternatif M' tel que M = 2M', et de définir la structure du réseau d'attributs 500, telle que : 23 -0,1) = p (W(A1) xk bai)) (2) V(i,""r) = p (W(4111 xk k(4u) + lo(f1)) (.11,+1.)) -im,±1) 0, (-,-(Ar-Fik.--,-(w) V h n'A + b4 u (w(2:11')v(2111'--1) [0059] Dans l'Équation (2), les fonctions d'activation p et a peuvent être similaires ou différentes. Dans un mode réalisation particulier, il a été trouvé qu'en utilisant p(z) = ReLU(z) et a(z) = sigmoïde(z) est plus performant qu'en 5 utilisant une fonction d'activation unique. Dans le réseau d'attributs 500 avec couches 2M' , comme défini dans l'Équation (2), il y a deux composants : un codeur comprenant les premières couches M', ce qui génère une représentation de caractéristiques ayant des composants dm' ; et un décodeur comprenant les autres couches M', qui tente de reconstruire l'entrée, selon lequel xk le résultat 10 de la reconstruction. [0060] Le nombre d'unités dM dans la couche de sorties définie par Vien dans l'Équation (1) et, de manière équivalente, le nombre d'unités dM' dans la couche de sorties définie par Vk(M) dans l'Équation (2), est un paramètre du réseau d'attributs 500 qui est déterminé au moment de la conception et/ou de la 15 configuration du réseau 500 et est fixé ultérieurement pendant le fonctionnement. Ce premier paramètre comprend donc un premier nombre prédéterminé qui contribue aux intégrations particulières des données de séquence attribuées générées par des modes de réalisation de l'invention. [0061] La Figure 6 est une illustration schématique du réseau de 20 séquences 600. Le réseau de séquences 600 est une variation du modèle LSTM. Les hommes de métier spécialisés dans la programmation web noteront que dans l'apprentissage automatique à l'aide de réseaux neuronaux, les modèles LSTM sont des réseaux neuronaux récurrents, c.-à-d. qu'ils fonctionnent via la rétroaction interne à chaque étape temporelle d'évaluation. Comme cela 25 est commun cependant, le réseau de séquences 600 est représenté sous une forme « déroulée », les entrées 602 représentent des entrées séquentielles 24 transférées aux cellules 604 du réseau à chaque étape successive, entraînant la génération d'états cachés successifs correspondants 606. La taille du réseau de séquences (c.-à-d. le nombre d'unités cachées) est désignée par ds. La structure de réseau de séquences 600 peut-être représentée comme suit : 0- Uihr) + bi) f(t) = u (wice uf hit-o bj.) o(1.2 -= (Won:) + bo) dki) = tanh (we5,(2 + uchr') bc) f0) c.0_1) s 0 .0) c h ik h(P = o» O tanh (40) 5 t) [0062] Dans l'Équation (3), oek représente un élément catégorique dans la séquence Sk au moment t; u est une fonction de déclenchement sigmoïde ; ikw, fkw, okW, et ge sont les portes ; ckw sont les états cellulaires, hk(r) sont les états cachés (étant tous représentés comme des vecteurs de longueurs-ds) ; f, 10 Wo, W,,, Ur, Uf, U0, et Uo sont des matrices de poids ; et bi, bf, lao, et b0 sont des vecteurs de biais. L'opérateur 0 désigne une multiplication par élément. [0063] Une sortie du réseau de séquences 600 peut être définie comme suit : softmax (W'h(;) by) (4) [0064] Dans l'Équation (4), Wy est une matrice de poids et by est un vecteur 15 de biais. La quantité yk(t) est un vecteur ayant une longueur régale au nombre d'éléments distincts à partir desquels la séquence d'entrée est sélectionnée, et qui peut être interprétée comme une distribution de probabilité sur les éléments r qui peuvent être utilisés pour prédire le prochain élément dans la séquence d'entrée. 20 [0065] Le nombre d'unités cachées ds est un paramètre du réseau de séquences 600 qui est déterminé au moment de la conception et/ou de la configuration du réseau 600 et qui est fixé ultérieurement pendant le fonctionnement. Ce paramètre comprend donc un deuxième nombre (3) 25 prédéterminé qui contribue aux intégrations particulières de données de séquence attribuées, générées par des modes de réalisation de l'invention. [0066] Afin de générer des intégrations pour des séquences attribuées, des modes de réalisation de l'invention utilisent des couplages entre un réseau 5 d'attributs 500 et un réseau de séquences 600. La Figure 7 illustre un premier couplage attribut-réseau 700, dans lequel un réseau d'attributs 702 est couplé à un réseau de séquences 704 via une connexion 706 qui transfère une sortie du réseau d'attributs 702 vers une entrée du réseau de séquences 704. En cas de système non supervisé, c.-à-d., comme décrit par l'Équation (2), la sortie de la M'- 10 ème couche du réseau d'attribut 702 est couplée aux états cachés du réseau de séquences 704 à la première étape, c.-à-d. en modifiant l'Équation (3) conformément à : h(`) = 4.t) O tank (41)) 11(1. = 1) (9 V(it[f) (5) [0067] En cas de système non supervisé, c.-à-d. comme décrit par l'Équation 15 (1), une modification analogue peut être faite, en remplaçant M' par M dans l'Équation (5). Pour que ce couplage fonctionne, le nombre d'unités cachées dans la couche couplée du réseau d'attributs, dM' (ou dM) doit être égale au nombre d'unités cachées dans le réseau de séquences, ds. Ces deux valeurs sont des paramètres de conception des réseaux. L'intégration c.-à-d. la représentation de 20 caractéristiques de longueur fixe d'une séquence d'attribut Jk = (xk, Sk), avec la longueur de séquence 'k, est ensuite prise comme état de cellule t'A) du réseau de séquences 704 après traitement de l'étape temporelle dans la séquence. [0068] LA Figure 8 illustre un premier couplage séquence-réseau 800, dans lequel un réseau de séquences 802 est couplé à un réseau d'attributs 804 via une 25 connexion 806 qui transfère une sortie du réseau de séquences 802 à une entrée du réseau d'attributs 804. Le couplage peut être affecté en concaténant l'état caché hkok) du réseau de séquences 802 après traitement de la dernière étape temporelle avec les données d'attributs xk, c.-à-d. en modifiant les Équations (1) et (2) conformément à : 30 V(j," =6 (V011) (xk le)) +b(4)) (6) 26 Si est l'opérateur de concaténation. [0069] La Figure 9 illustre un couplage équilibré 900, dans lequel un réseau d'attributs 902 et un réseau de séquences 904 sont couplés à un réseau de fusion 906 comprenant une couche de concaténation 908 et une couche 5 entièrement connectée 910 mettant en oeuvre une fonction non linéaire sur la concaténation pour capturer les dépendances entre les attributs et les séquences. Dans le cas d'un système non supervisé, c.-à-d. comme décrit par l'Équation (2), la sortie Vkow) de la M'-ème couche du réseau d'attributs 902 est couplée à la couche de concaténation 908 via une connexion 912 et l'état caché hkuk) du réseau 10 de séquences 904 après traitement de la dernière étape temporelle est couplé à la couche de concaténation 908 via une connexion 914. Avec yk comme sortie de la couche de concaténation 908 et zk comme sortie de la couche entièrement connectée 910 avec la matrice de poids W2 et le vecteur de biais bz' cela peut être représenté comme suit : V(A.A1j) 11Ik) 15 Zk = S (Wtyk + [0070] La Figure 10 est un organigramme 1000 illustrant un algorithme exemplaire pour l'apprentissage non supervisé d'une intégration de séquences attribuées à l'aide d'un premier couplage attribut-réseau 700. À partir de la description suivante, les personnes de métier comprendront facilement les 20 modifications nécessaires pour appliquer l'algorithme dans les cas du premier couplage séquence-réseau 800 et du couplage équilibré 900. L'algorithme utilise les définitions suivantes des paramètres réseau w = (wir W(:\ ")) bA = (UT - - ,13.(1?)) (8) 0.1 {WA .13.4} Ws Wf, W', Us =(U;Uf , U', Ue) bs , hi , b,, be) (9) Vis = {Ws, Us, bs, Wy, (7) 27 [0071] Le réseau d'attributs 702 vise à minimiser les différences entre l'entrée et les valeurs d'attribut reconstruites. La fonction objective d'apprentissage du réseau d'attributs 702 est définie comme suit : LA = IlXk - (10) 5 [0072] Le réseau de séquences 704 vise à minimiser la probabilité logarithmique d'une prédiction incorrecte du prochain élément à chaque étape temporelle. Ainsi, la fonction objective d'apprentissage du réseau de séquences 704 peut être formulée à l'aide d'une entropie croisée catégorique. lA Ls = - E int) log yif") (11) 1=1 10 [0073] Les processus d'apprentissage sont composés d'un nombre d'itérations, et les paramètres sont mis à jour à chaque itération sur la base du gradient calculé. LTA et Lr s représentent la r-ème itération du réseau d'attributs et du réseau de séquences, respectivement. Les erreurs de convergence cibles entre les itérations pour Lr A et Lis sont définies respectivement par SA et es. Les 15 nombres maximums d'itérations pour le réseau d'attributs et le réseau de séquences par TA et Ts. TA et Ts ne sont pas nécessairement égales parce que le nombre d'itérations requis pour le réseau d'attributs et le réseau de séquences peuvent ne pas être similaires. Suite au processus d'apprentissage de séquences attribuées, les paramètres appris obtenus du réseau d'attributs 702 et 20 du réseau de séquences 704 peuvent être utilisés pour intégrer chaque séquence attribuée. [0074] En retournant à l'organigramme 1000, à l'étape 1002, les vecteurs de paramètres 9,5, et 9s sont initialisés, par ex. avec des valeurs aléatoires sélectionnées à partir d'une distribution uniforme. L'apprentissage commence à 25 l'étape 1003 avec la sélection d'une séquence attribuée initiale Ji. À l'aide de la partie de données d'attribut de la séquence attribuée comme entrée, la boucle 1004 passe en boucle sur chacune des couches de réseau d'attributs 2M', en calculant la propagation vers l'avant 1006 via le réseau d'attribut 702. La boucle 1008 passe en boucle en sens inverse sur chacune des couches de 30 réseau d'attributs 2M' , calculant les gradients 1008 via la rétropropagation. La 28 boucle 1012 passe en boucle sur le réseau d'attributs mettant à jour 1014 les paramètres réseau ÇlA. À l'étape 1016, la fonction objective d'apprentissage est calculée conformément à l'Équation (10). Sur la deuxième boucle et la suivante via la procédure d'apprentissage, elle est comparée à la valeur lors de l'itération 5 précédente pour déterminer si la convergence a été atteinte (c.-à-d. une différence inférieure à LA). Si oui, ou si le nombre maximum d'itérations TA a été atteint alors l'algorithme procède à l'entraînement du réseau de séquences. Autrement le contrôle revient à la boucle 1004 pour une autre itération. [0075] À l'aide de la partie de données de séquence de la séquence 10 attribuée, et de la sortie de la couche M' du réseau d'attributs 702, en tant qu'entrées, la boucle 1020 passe en boucle sur tous les éléments dans la séquence actuelle. La boucle calcule la propagation vers l'avant 1022 pour obtenir la sortie yk(t) (voir l'Équation (4)), calcule le gradient 1024 du réseau de séquence, et met à jour 1026 les paramètres réseau ps à chaque étape 15 temporelle. À l'étape 1028, la fonction objective d'apprentissage est calculée conformément à l'Équation (11). Sur la deuxième boucle et la boucle suivante via la procédure d'entraînement, elle est comparée à la valeur lors de l'itération précédente pour déterminer si la convergence a été atteinte (c.-à-d. une différence inférieure à Es). Si oui, ou si le nombre maximum d'itérations Ts a été 20 atteint alors la boucle d'entraînement de séquence se termine. Autrement, le contrôle retourna la boucle 1020 pour une autre itération. [0076] À l'étape 1032, l'algorithme vérifie s'il y a d'autres séquences attribuées Jk. Si oui, alors le contrôle retourne l'étape 1003 et une autre séquence attribuée est sélectionnée. Autrement, l'algorithme se termine. 25 [0077] La Figure 11 est un diagramme schématique illustrant un système d'apprentissage de métrique de distance supervisé 1100 pour générer une intégration de séquences attribuées. Le système 1100 peut être utilisé lorsqu'une rétroaction (c'est-à-dire, des données d'apprentissage étiquetées) est disponible, par ex. sur la base de l'identification manuelle par des personnes ayant 30 l'expertise appropriée. En particulier, un élément de rétroaction peut être défini comme un triplet (pi, pi, dans lequel pi et pi sont des séquences attribuées distinctes issues d'un ensemble {Ji, , J'} et li; est une étiquette indiquant si pi et 29 pi sont similaires (li= 1) ou différentes = 0). Il est ainsi possible de définir un ensemble de rétroactions similaires S = {(pi, pi, 1014 = 1} et un ensemble de rétroactions différentes D = {(pi, 014 = 0}. L'objectif du système 1100 est alors d'apprendre une intégration des séquences attribuées qui, sous une métrique de 5 distance prédéterminée, entraîne des séquences attribuées dans l'ensemble de rétroactions similaires étant « plus étroitement espacées », et dans les séquences attribuées dans l'ensemble de rétroactions différentes étant « moins étroitement espacées » (dans des définitions appropriées de ces termes). [0078] Concrètement, étant donné qu'une fonction de transformation non 10 linéaire () génère une intégration de séquences attribuées pi et pi, et une métrique de distance Do(pi, pi), l'objectif d'apprentissage du système 1100 peut être défini comme suit : minimize° >s De (pi S. t. De (Pm Pi) 9 (12) (P. ,Pl - )EI) [0079] Dans l'Équation (12), g est un paramètre de marge basé sur un groupe 15 qui stipule que la distance entre deux séquences attribuées à partir d'un ensemble de rétroactions différentes qui devrait être plus grande que g. Cela empêche l'ensemble de données d'être réduit à un seul point. Les hommes de métier spécialisés dans l'apprentissage de métriques profondes noteront qu'une approche commune consiste à utiliser la fonction de distance de Mahalanobis : 20 De(Prp,) \/(0(A)- O(-PMU(0(A) - E-)(PJ)) (13) [0080] Dans l'Équation (13), A est une matrice symétrique, semi-définie et positive. Lorsque A = I, l'Équation (13) est transformée en une distance euclidienne, comme suit : De(Pidii)- Ile(Pi) &(p4}12. (14) 25 [0081] On notera que la fonction de transformation non linéaire ID qui génère une intégration des séquences attribuées pi et pi peut être définie par l'une quelconque des structures de réseau couplées 700, 800, 900 décrites ci-dessus. À titre d'exemple particulier, le système 1100 utilise la structure de réseau 30 équilibrée 900 et comprend deux réseaux équilibrés de ce type 1102, 1104. Chacune d'elle inclut un réseau d'attributs 1106, 1112, un réseau de séquences 1108, 1114 et un réseau de fusion 1110, 1116 dans lequel la fonction de transformation non linéaire O peut être définie comme suit 5 e(Pk) (eA(Ick) a3 es(sh)). Les deux réseaux équilibrés 1102, 1104 sont identiques et sont utilisés pour générer des intégrations 0(m) et 0(pj), respectivement. On notera que, puisque les deux réseaux 1102, 1104 sont identiques, dans des modes de réalisation alternatifs un seul réseau peut être utilisé pour générer les intégrations ®(p,) et 0(k) successivement, cependant une 10 mise en oeuvre parallèle, dans laquelle D(A) et 0(pi) sont calculées simultanément, est plus efficace dans le cas commun que des ressources de multitraitement suffisantes sont disponibles. Un autre réseau métrique 1118 est couplé aux réseaux équilibrés 1102, 1104 pour recevoir les séquences attribuées codées via les connexions 1120, 1124 et propager les informations 15 d'apprentissage (c.-à-d. les gradients) en retour vers les réseaux via les connexions 1122, 1126. [0082] Le réseau métrique 1118 est conçu à l'aide d'une fonction de perte contrastante, de sorte que les séquences attribuées dans chaque paire en S similaire ont une plus petite distance comparée à celle en D après apprentissage 20 de la métrique de distance. Dans un mode de réalisation spécifique, le réseau métrique 1118 calcule la distance euclidienne entre chaque paire à l'aide des étiquettes et rétropropage les gradients via tous les composants dans les réseaux 1102, 1104. L'objectif d'apprentissage du réseau métrique peut être écrit comme suit : 1 1 p eii) = -2( tu)(De)2 + -2 fu{max(0. g - De)}2 (15) 25 [0083] Pour un taux d'apprentissage y, les paramètres WA, Ws, Us, bA et b.s peuvent être mis à jour à l'aide des équations suivantes jusqu'à la convergence : 31 DL WA = W A 1OW A DL bA bA - Ob DL ws- \VS f aws DL Us -Us [Dus DL Obs [0084] Pour permettre des équations l'exécution les gradients peuvent devant être être calculés et rétropropagés déterminés à l'aide V L = de ces mises à jour, par le réseau métrique 1118 suivantes : ah(k.7') (17) 5 [ DL DL aL DL DL (18) V L DL ope (19) (20) OW 'ab OW s) OU s ab s- av(km) ov(,m) oh(r1) aie [ OW ODE) O0 - abc OW s D'Us Obs DL De - max (0: - Do) 9(p4) ' (I - (0(M) - e(i)i))) ODe =(1 ODe 00. (e)(Iii) [0085] Pour la même couche des réseaux d'attributs, les équations de mise à 10 jour sont ensuite données par : DV"") abt) -V17) (1- \il») [0086] En dérivant les équations de mise à jour pour les réseaux de séquences, il est opportun de désigner A.t = (Ail, Aft, aut, Act) les composants de ceux-ci qui peuvent être écrits à l'aide d'équations de différenciation implicites, 15 telles que : (16) (21) 32 Ait = o(ki) 0 (1 - tanli2 (c;»)) eh (1 - ni)) e) ( gA(,t) A», = 0(kt) 0, (1 I anh2 (c(kf))) n (1 - f()) 4t2) C) c(kt-1) ( Aot (1 c42)42O tanh(4,1)) Art (1 - tanh2 ( ))i(kt) e Cl- tanh2 (e))zk [0087] En substituant les paramètres appropriés pour ze dans l'Équation (22), les équations de mises à jour pour les réseaux de séquences à l'étape temporelle t sont données par : 01P) OWs -tut, with = 4) Oh(t) - A. with e) (23) OUs &tic') 5 Ob k - At, with zkti = I s I étant une matrice d'identité de dimension appropriée. [0088] L'initialisation des paramètres peut être importante lors de l'utilisation de procédés de descente de gradient pendant l'entraînement des réseaux. Dans un mode de réalisation de l'invention, les matrices de poids WA dans OA et Ws 10 dans Os sont initialisées à l'aide d'un procédé de distribution uniforme, et les biais bA et bs sont initialisés avec le vecteur O. La matrice récurrente Us est initialisée à l'aide d'une matrice orthogonale. Avec dm comme dimension de sortie de la mème couche et ds comme la dimension de sortie de Os, les poids de la m-ème couche dans OA et Ws dans Os sont initialisées comme suit : W(m) Uniform + tl', ,Vd,' _1 + d,,, - Un forrn [-i-. 6 ds ds [0089] Dans des modes de réalisation de l'invention, la régularisation-12 a été utilisée, en combinaison avec une stratégie d'arrêt précoce pour empêcher un dépassement. (22) 15 33 [0090] La Figure 12 est un organigramme 1200 illustrant un algorithme exemplaire pour l'apprentissage de métrique de distance supervisé pour des séquences attribuées à l'aide de la structure de réseau équilibré 1100. À l'étape 1202, les paramètres réseau sont initialisés, par exemple à l'aide des 5 procédés décrits ci-dessus. À l'étape 1204, l'algorithme se remet à zéro pour retirer au début de l'ensemble de rétroaction {Ji, , Jr,}, et à l'étape 1206 le prochain triple de rétroaction (initialement le premier) est tiré de l'ensemble. À l'étape 1208, les intégrations 0(p,) et 0(p,) sont calculées. À l'étape 1214, De est calculé à l'aide de l'Équation (14) et la perte est alors calculée conformément à 10 l'Équation (15) à l'étape 1216. Une vérification de convergence est faite à l'étape 1218 (par ex, en comparant la perte calculée à la perte lors de l'itération précédente, et en déterminant si elle se situe dans une erreur de convergence définie e). Si la convergence s'est produite, l'algorithme se termine alors, autrement les gradients sont calculés à l'étape 1220 à l'aide des Équations (17) à 15 (23), et le réseau est mis à jour à l'étape 1222 à l'aide l'Équation (16). Une vérification est ensuite effectuée à l'étape 1224 pour déterminer si plus d'éléments de rétroaction sont disponibles, et si oui, le contrôle retourne alors à l'étape 1206. Autrement le contrôle passe à l'étape 1226, lorsqu'une vérification est effectuée pour déterminer si un nombre maximum d'itérations a été atteint. 20 Sinon, le contrôle retourne à l'étape 1204 et un autre passage est réalisé sur l'ensemble de rétroaction. Autrement, l'algorithme se termine. [0091] Des tâches d'extraction sur des données séquentielles, telles que les flux de clics et les séquences de gènes, requièrent une conception attentive des représentations de caractéristiques utilisables par des algorithmes 25 d'apprentissage. De nombreuses applications du monde réel impliquent des séquences attribuées, dans lesquels chaque instance est composée à la fois d'une séquence d'éléments catégoriques et d'un ensemble d'attributs. Avantageusement, des modes de réalisation de l'invention révélés dans les présentes sont capables d'apprendre les représentations des séquences 30 attribuées de manière supervisée ou non. Obtenir de telles représentations est primordial pour nombreuses tâches d'extraction de données importantes allant de l'analyse du comportement de l'utilisateur au regroupement de séquences de 34 gènes. Les intégrations générées par les modes de réalisation de l'invention sont des tâches indépendantes et peuvent être utilisées sur diverses tâches d'extraction de séquences attribuées. [0092] Un système exemplaire utilisant un mode de réalisation de l'invention 5 pour la détection de fraudes a également été révélé. Un tel système est capable d'apprendre des intégrations pour des séquences d'action de l'utilisateur en combinaison avec les attributs associés, de sorte que des comportements « normaux » ou communs sont représentés par groupes en des points dans l'espace de caractéristiques, tandis que des comportements non courants, 10 normaux ou extérieurs peuvent être identifiés comme des points plus distants ou isolés. [0093] Des modes de réalisation de l'invention comprenant les capacités d'apprentissage supervisé ont été révélés, elles utilisent un cadre d'apprentissage profond pour apprendre une métrique de distance qui mesure 15 efficacement les similarités et les différences entre les séquences attribuées. [0094] On notera que bien que des modes de réalisation particuliers et des variations de l'invention ont été décrits dans les présentes, d'autres modifications et alternatives seront apparentes aux hommes de métier spécialisés dans les arts pertinents. En particulier, les exemples sont offerts à titre d'illustration des 20 principes de l'invention et pour apporter un nombre de procédés et d'arrangements spécifiques pour mettre en oeuvre ces principes. En général, les modes de réalisation de l'invention s'appuient sur la fourniture d'agencements techniques, dans lesquels des intégrations ou des représentations de caractéristiques, de séquences attribuées peuvent être apprises de manière 25 autonome, à l'aide d'une combinaison couplée d'au moins deux modules d'apprentissage automatique. Dans certains agencements techniques de ce type, un module de réseau d'attributs est couplé à un module de réseau de séquences afin de fournir un système configure pour apprendre des représentations de caractéristiques de séquences attribuées de manière non 30 supervisée, c.-à-d. en l'absence de toute donnée étiquetée identifiant les séquences attribuées similaires et/ou différentes. Dans d'autres agencements techniques de ce type, un troisième module est couplé en plus au module de réseau d'attributs et au module de réseau de séquences afin de fournir un système configuré pour apprendre les représentations des caractéristiques de séquence attribuée de manière supervisée ou semi-supervisé, c.-à-d. en apprenant au moins une partie des données qui ont été étiquetées, par ex., par 5 des experts humains, pour identifier les séquences attribuées similaires et/ou différentes [0095] Par conséquent, les modes de réalisation décrits doivent être compris comme étant fournis à titre d'exemple dans le but d'enseigner les caractéristiques et les principes généraux de l'invention mais ne doivent pas être interprété 10 comme limitant la portée de l'invention. REVENDICATIONS1. Un système de détection de fraudes capable d'apprendre des intégrations pour des séquences d'action de l'utilisateur en combinaison avec des attributs associés, de sorte que des comportements communs sont représentés par groupes en des points dans un espace de caractéristiques, tandis que des comportements non communs peuvent être identifiés comme des points plus distants ou isolés, le système de détection de fraudes comprenant un système d'apprentissage automatique (102) pour intégrer des données de séquence attribuées (202, 204) comprenant une partie de données d'attribut (206, 208) ayant un nombre fixe d'éléments de données d'attribut et une partie de données de séquence (201, 212) ayant un nombre variable d'éléments de données de séquence dans une représentation de caractéristiques de longueur fixe, le système d'apprentissage automatique comprenant : un module de réseau d'attributs (500) comprenant un réseau neuronal sans rétroaction configuré pour convertir la partie de données d'attribut en un vecteur d'attributs codé ayant un premier nombre prédéterminé de caractéristiques d'attribut ; et un module de réseau de séquences (600) comprenant un réseau neuronal récurrent configuré pour convertir la partie de données de séquence en un vecteur de séquences codé ayant un deuxième nombre prédéterminé de caractéristiques de séquence, dans lequel le module de réseau d'attributs et le module de réseau de séquences sont couplés de manière fonctionnelle (700, 800, 900) de sorte que, lors de l'utilisation, le système d'apprentissage automatique est configuré pour apprendre et sortir une représentation de caractéristiques de longueur fixe de données de séquence attribuées d'entrée qui code les dépendances entre les différents éléments de données d'attribut dans la partie de données d'attribut, les dépendances entres les différents éléments de données de séquence et les dépendances entre les éléments de données d'attribut et les éléments de données de séquence dans les données de séquence attribuées. 2. Le système de détection de fraudes selon la revendication 1, dans lequel le module de réseau d'attributs (500) comprend un réseau neuronal multicouche sans 37 rétroaction ayant une couche de sorties de vecteurs d'attributs qui comprend le premier nombre prédéterminé d'unités, et le réseau neuronal récurrent du module de réseau de séquences (600) comprend un réseau de mémoire court-terme persistante (LSTM) ayant le deuxième nombre prédéterminé d'unités cachées. 5 3. Le système de détection de fraudes selon la revendication 2, dans lequel le module de réseau d'attributs (702) est couplé (706) de manière fonctionnelle au module de réseau de séquences (704) en passant une sortie de la couche de sorties de vecteur d'attributs à une entrée de vecteur d'attributs du module de réseau de 10 séquences. 4. Le système de détection de fraudes selon la revendication 3, dans lequel l'entrée de vecteur d'attributs du module de réseau de séquences comprend un état caché du réseau LSTM à une première étape d'évaluation, 15 le premier nombre prédéterminé d'unités de couche de sorties de vecteur d'attributs est égale au deuxième nombre prédéterminé d'unités cachées du module de réseau de séquences, et la représentation de caractéristiques de longueur fixe des données de séquence attribuées comprend un état caché du réseau LSTM à une étape 20 d'évaluation finale. 5. Le système de détection de fraudes selon la revendication 2, dans lequel le module de réseau d'attributs (804) est couplé (806) de manière fonctionnelle au module de réseau de séquences (802) en passant une sortie du module de réseau 25 de séquences à une couche d'entrées du module de réseau d'attributs. 6. Le système de détection de fraudes selon la revendication 5, dans lequel : un nombre d'unités dans la couche d'entrées du module de réseau d'attributs est égal à une somme du nombre fixé d'éléments de données d'attribut et du 30 deuxième nombre prédéterminé d'unités cachées du module de réseau de séquences, la sortie du module de réseau de séquences comprend un état caché du réseau LSTM à une étape d'évaluation finale, qui est concaténée avec le nombre fixé d'éléments de données d'attribut pour produire un vecteur d'entrée du réseau 38 d'attributs concaténé qui est passé à la couche d'entrées du module de réseau d'attributs, et la représentation de caractéristiques de longueur fixe de données de séquence attribuées d'entrée comprend une sortie de la couche de sorties de vecteur d'attributs. 7. Le système de détection de fraudes selon la revendication 2, dans lequel le module de réseau d'attributs (902) est couplé, de manière fonctionnelle, au module de réseau de séquences (904) via un module de réseau de fusion (906) qui 10 comprend une couche de concaténation d'entrées (908) qui est configurée pour générer une concaténation comprenant une sortie (912) de la couche de sorties de vecteur d'attributs concaténée avec une sortie (914) du module de réseau de séquences, et un module de fonction non linéaire (910) qui est configuré pour apprendre une fonction non linéaire de la concaténation qui code les dépendances 15 entre les éléments de données d'attribut et les éléments de données de séquence dans les données de séquence attribuées. 8. Le système de détection de fraudes selon la revendication 7, dans lequel : un nombre d'unités dans la couche de concaténation d'entrée est égal à une 20 somme du premier nombre prédéterminé de caractéristiques d'attribut et du deuxième nombre prédéterminé de caractéristiques de séquence, la sortie du module de réseau de séquences comprend un état caché du réseau LSTM à une étape d'évaluation finale, le module de fonction non linéaire comprend une couche de réseau neuronal 25 sans rétroaction entièrement connectée, et la représentation de caractéristiques de longueur fixe de données de séquence attribuées d'entrée comprend un vecteur de sortie de la couche de réseau neuronal sans rétroaction entièrement connectée. 30 9. Le système de détection de fraudes selon l'une quelconque des revendications précédentes comprend par ailleurs : un module de réseau métrique (1118) bidirectionnel couplé à un module de réseau d'attributs et le module de réseau de séquences, le module de réseau métrique étant configuré pour : 39 recevoir des paires (1120, 1124) de représentation ,de caractéristiques de longueur fixe d'échantillons correspondants de données de séquence attribuées, chaque paire étant étiquetée pour indiquer si elle comprend des données de séquence attribuées similaires ou différentes ; 5 calculer les informations de gradient basées sur une fonction de perte définie en termes de métrique de distance prédéterminée, un objectif étant d'apprendre une intégration, dans laquelle les paires de représentations de caractéristiques de longueur fixe des échantillons correspondants de données de séquence attribuées ont une distance inférieure à la métrique de distance prédéterminée lorsqu'elles sont 10 étiquetées comme étant similaires que lorsqu'elles sont étiquetées comme étant différentes ; et rétropropager (1122, 1126) les informations de gradient via le module de réseau d'attributs et le module de réseau de séquences, les paramètres du module de réseau d'attributs et du module de réseau de séquences étant mis à jour pour 15 atteindre l'objectif. 10. Un procédé d'entraînement d'un système de détection de fraudes capable d'apprendre des intégrations pour des séquences d'action de l'utilisateur en combinaison avec des attributs associés, de sorte que des comportements communs 20 sont représentés par groupes en des points dans un espace de caractéristiques, tandis que des comportements non communs peuvent être identifiés comme des points plus distants ou isolés, le système de détection de fraudes comprenant un système d'apprentissage automatique (102) pour intégrer les données de séquence attribuées (202, 204) comprenant une partie de données d'attributs (206, 208) ayant 25 un nombre fixe d'éléments de données d'attributs et une partie de données de séquence (210, 212) ayant un nombre variable d'éléments de données de séquence dans une représentation de caractéristiques de longueur fixe, dans lequel le système d'apprentissage automatique comprend un réseau neuronal multicouche sans rétroaction (500) ayant une couche d'entrées de données d'attribut et une couche de 30 sorties de vecteur d'attribut qui comprend un premier nombre d'unités prédéterminées, couplées de manière fonctionnelle à un réseau de mémoire court-terme persistante (LSTM) (600) qui comprend un deuxième nombre prédéterminé d'unités cachées, le procédé d'entraînement comprenant : la fourniture d'un ensemble de données comprenant une pluralité de 40 séquences attribuées ; pour chaque séquence attribuée dans l'ensemble de données, l'entraînement du réseau neuronal multicouche sans rétroaction à l'aide de la partie des données d'attribut de la séquence attribuée via la 5 rétropropagation concernant une première fonction objective, et l'entraînement du réseau LSTM à l'aide de la partie de données de séquence de la séquence attribuée via la rétropropagation concernant une deuxième fonction objective, dans lequel le réseau neuronal multicouche sans rétroaction est couplé avec 10 l'entraînement du réseau LSTM, de sorte que, lorsqu'il est entraîné, le système d'apprentissage automatique est configuré pour sortir une représentation de caractéristiques de longueur fixe de données de séquence attribuées d'entrée qui code les dépendances entre les différents éléments de données d'attribut dans la partie de données d'attribut, les dépendances entre les différents éléments de 15 données de séquence dans la partie de données de séquence et les dépendances entre les éléments de données d'attribut et les éléments de données de séquence dans les données de séquence attribuées. 11. Le procédé d'entraînement selon la revendication 10, dans lequel le premier 20 nombre prédéterminé d'unités de couche de sorties de vecteur d'attributs est égal au deuxième nombre prédéterminé d'unités cachées du réseau LSTM, et le réseau neuronal multicouche sans rétroaction comprend : un codeur ayant une couche d'entrées de codeur qui comprend la couche d'entrées de données d'attribut et la couche de sorties de codeur qui comprend la 25 couche de sorties de vecteur d'attributs ; et un codeur ayant une couche d'entrées de codeur couplée à la couche de sorties de codeur, et une couche de sorties de codeur qui comprend une estimation reconstruite d'une entrée vers la couche d'entrées de codeur, et dans lequel : 30 la première fonction objectif comprend une mesure de distance entre l'entrée dans la couche d'entrées de codeur et l'estimation reconstruite, et l'entraînement du réseau neuronal multicouche sans rétroaction comprend 41 de manière itérative l'exécution d'étapes de propagation vers l'avant et de rétropropagation avec la partie de données d'attribut de la séquence attribuée en tant qu'entrée dans la couche d'entrées de codeur jusqu'à ce que la mesure de distance satisfasse une première cible de convergence. 5 12. Le procédé d'entraînement selon la revendication 11, dans lequel la deuxième fonction objective comprend une mesure de probabilité de prédiction incorrecte d'un prochain élément de séquence à chacune d'une pluralité d'étapes temporelles d'entraînement du réseau LSTM, et l'entraînement du réseau LSTM comprend : 10 la répétition, de manière itérative, de la pluralité d'étapes temporelles d'entraînement jusqu'à ce que la mesure de probabilité satisfasse une deuxième cible de convergence, chaque itération comprenant : une première étape temporelle d'entraînement, copiant la couche de sorties du vecteur d'attributs dans un état caché du réseau LSTM ; et 15 à une étape temporelle d'entraînement finale, le calcul de la mesure de probabilité. 13. Le procédé d'entraînement selon la revendication 12, dans lequel la mesure de distance comprend une fonction de perte d'erreur quadratique moyenne et la 20 mesure de probabilité comprend une fonction de perte d'entropie croisée catégorique. 14. Le procédé selon la revendication 10 dans lequel : un nombre d'unités dans la couche d'entrées de données d'attribut est égal à 25 une somme du nombre fixe d'éléments de données d'attribut et du deuxième nombre prédéterminé d'unités cachées du réseau LSTM, et la deuxième fonction objective comprend une mesure de probabilité de prédiction incorrecte d'un prochain élément de séquence à chacune d'une pluralité d'étapes temporelles d'entraînement du réseau LSTM, et 30 l'entraînement du réseau LSTM comprend, de manière itérative, la répétition de la pluralité d'étapes temporelles d'entraînement jusqu'à ce que la mesure de probabilité satisfasse une première cible de convergence, chaque itération comprenant : à une première étape temporelle d'entraînement, copiant la sortie 42 de la couche de sorties du vecteur d'attributs dans un état caché du réseau LSTM ; et à une étape temporelle d'entraînement finale, le calcul de la mesure de probabilité. 5 15. Le procédé d'entraînement selon la revendication 14, dans lequel le réseau neuronal multicouche sans rétroaction comprend : un codeur ayant une couche d'entrées de codeur qui comprend la couche d'entrées de données d'attribut et la couche de sorties de codeur qui comprend la 10 couche de sorties de vecteur d'attributs ; et un codeur ayant une couche d'entrées de codeur couplée à la couche de sorties de codeur, et une couche de sorties de codeur qui comprend une estimation reconstruite d'une entrée dans la couche d'entrées de codeur, et dans lequel : 15 la première fonction objective comprend une mesure de distance entre l'entrée dans la couche d'entrées de codeur et l'estimation reconstruite, et l'entraînement du réseau neuronal multicouche sans rétroaction comprend l'application dans la couche d'entrées de codeur, d'un état caché du réseau 20 LSTM à l'étape temporelle finale d'entraînement finale concaténée avec le nombre fixé d'éléments de données d'attribut, et de manière itérative, l'exécution d'étapes de propagation vers l'avant et de rétropropagation jusqu'à ce que la mesure de distance satisfasse une deuxième cible de convergence. 25 16. Un procédé d'entraînement d'un système de détection de fraudes capable d'apprendre des intégrations pour des séquences d'action de l'utilisateur en combinaison avec des attributs associés, de sorte que des comportements communs sont représentés par groupes en des points dans un espace de caractéristiques, tandis que des comportements non communs peuvent être identifiés comme des 30 points plus distants ou isolés, le système de détection de fraudes comprenant un système d'apprentissage automatique (102) pour l'intégration de données de séquence attribuées (202, 204) comprenant une partie de données d'attribut (206, 208) ayant un nombre fixe d'éléments de données d'attribut et une partie de données de séquence (210, 212) ayant un nombre variable d'éléments de données de 43 séquence dans une représentation de caractéristiques de longueur fixe, dans lequel le système d'apprentissage automatique comprend : un module de réseau d'attributs comprenant un réseau neuronal multicouche sans rétroaction (500) ayant une couche d'entrées de données d'attribut et une 5 couche de sorties de vecteur d'attributs qui comprend un premier nombre prédéterminé d'unités ; un module de réseau de séquences comprenant un réseau de mémoire court- terme persistante (LSTM)(600) qui comprend un deuxième nombre prédéterminé d'unités cachées ; et 10 un réseau de fusion (906) comprenant une couche de concaténation d'entrées (908) ayant un nombre d'unités égal à une somme du premier nombre prédéterminé et du deuxième nombre prédéterminé, et une couche de fonctions non linéaires (910) comprenant une couche de réseau neuronal sans rétroaction entièrement connectée, 15 dans lequel le procédé d'entraînement comprend : la fourniture d'un ensemble de données comprenant une pluralité de paires de séquences attribuées, dans lequel chaque paire est étiquetée pour indiquer si elle comprend des données de séquence similaires ou différentes ; et pour chaque paire de séquences attribuées dans l'ensemble de données, 20 le calcul, à l'aide du réseau neuronal multicouche sans rétroaction, d'une paire de vecteurs d'attributs, chacune ayant un nombre d'éléments égal au premier nombre prédéterminé, correspondant aux parties de données d'attribut des séquences attribuées ; le calcul, à l'aide du réseau LSTM, d'une paire de vecteurs de 25 séquences, chacun ayant un nombre d'éléments égal au deuxième nombre prédéterminé, correspondant aux parties de données de séquence des séquences attribuées ; la concaténation correspondant à ceux des vecteurs d'attributs calculés et les vecteurs de séquences calculés pour une paire (1120, 1124) de 30 représentations de caractéristiques de longueur fixe de la paire de séquences attribuées ; le calcul d'une fonction de transformation non linéaire des représentations de caractéristiques de longueur fixe pour générer une paire de représentations de caractéristiques transformées ; 44 le calcul des informations de gradient basées sur une fonction de perte définie en termes de métrique de distance prédéterminée sur la paire de représentations de caractéristiques transformées, dans lequel un objectif est d'apprendre une intégration où les paires de représentations de caractéristiques de 5 longueur fixe des échantillons correspondants de données de séquence attribuées ont une distance inférieure à la métrique de distance lorsqu'elles sont étiquetées comme étant similaires que lorsqu'elles sont étiquetées comme étant différentes et la rétropropagation (1122, 1126) des informations de gradient via le réseau neuronal multicouche sans rétroaction et le réseau LSTM, dans lequel les 10 paramètres du module de réseau d'attributs et du module de réseau de séquences sont mis à jour dans le but d'atteindre l'objectif. 17. Un programme d'ordinateur comprenant un code de programme pour exécuter les étapes du procédé selon l'une quelconque des revendications 10 à 16 15 lorsque ledit programme fonctionne sur un ordinateur.