Login| Sign Up| Help| Contact|

Patent Searching and Data


Title:
DETECTING ANOMALIES IN PUBLIC TRANSPORT TICKETING DATA
Document Type and Number:
WIPO Patent Application WO/2024/126790
Kind Code:
A1
Abstract:
The invention relates to a method (34) for detecting anomalies in ticketing data, the method comprising at least one learning phase (Pi) comprising the following steps, which steps are applied to training tabular ticketing data: - preprocessing and selecting (36) predetermined data columns of interest; - deep learning (38), by a neural network, using the training ticketing data that has been optimised by the preprocessing step and obtaining a model of the neural network configured to detect an anomaly; and at least one inference phase (P2) comprising the following steps, which steps are applied to test tabular ticketing data; - applying (40) the steps of preprocessing and selecting predetermined data columns of interest to the test tabular ticketing data ; - obtaining (42) a score corresponding to an anomaly level for the test tabular ticketing data by applying the model to the test ticketing data that has been optimised by the preprocessing step.

Inventors:
DUGUET STÉPHANE (CN)
LADJELATE BILAL (FR)
LAMPE RODOLPHE (FR)
Application Number:
PCT/EP2023/086056
Publication Date:
June 20, 2024
Filing Date:
December 15, 2023
Export Citation:
Click for automatic bibliography generation   Help
Assignee:
REVENUE COLLECTION SYSTEMS FRANCE SAS (FR)
International Classes:
G06Q20/24; G06Q20/10; G06Q20/32; G06Q20/34; G06Q20/38; G06Q40/12; G07B15/04; G07C9/10; G07F7/08
Domestic Patent References:
WO1994006103A11994-03-17
WO2011006142A12011-01-13
Foreign References:
CA2291098A11998-12-03
US20060278704A12006-12-14
US20080179394A12008-07-31
US20070282674A12007-12-06
US20120255994A12012-10-11
Other References:
QIU ET AL., NEURAL TRANSFORMATION LEARNING FOR DEEP ANOMALY DÉTECTION BEYOND IMAGES, 2021
SUNDARARAJAN ET, AXIOMATIC ATTRIBUTIONS FOR DEEP NETWORKS, 2017
Attorney, Agent or Firm:
BLOT, Philippe et al. (FR)
Download PDF:
Claims:
REVENDICATIONS

1. Procédé (34) de détection d’anomalies dans les données billettiques de transport en commun, le procédé étant propre à être mis en oeuvre par un système électronique de détection d’anomalies dans les données billettiques de transport en commun, le procédé comprenant au moins une phase d’apprentissage (Pi) et au moins une phase d’inférence (P2), ladite au moins une phase d’apprentissage (Pi) comprenant les étapes suivantes, appliquées à des données billettiques tabulaires d’entrainement :

- prétraitement et sélection (36) de colonnes de données d’intérêt prédéterminées au sein desdites données billettiques tabulaires d’entrainement ;

- apprentissage profond (38) d’au moins un réseau de neurones en utilisant les données billettiques d’entrainement optimisées par ledit prétraitement et obtention d’un modèle dudit au moins un réseau de neurones configuré pour détecter une anomalie de données billettiques ; ladite au moins une phase d’inférence (P2) comprenant les étapes suivantes, appliquées à des données billettiques tabulaires de test ;

- application (40) dudit prétraitement et de ladite sélection de colonnes de données d’intérêt prédéterminées auxdites données billettiques tabulaires de test ;

- obtention (42) d’un score correspondant à un niveau d’anomalie desdites données billettiques tabulaires de test par application dudit modèle auxdites données billettiques de test optimisées par ledit prétraitement.

2. Procédé (34) selon la revendication 1 , dans lequel le prétraitement et la sélection (36) de colonnes de données d’intérêt prédéterminées comprennent :

- la sélection (50), pour chaque utilisateur de transport en commun, ou par extension pour chaque unique identifiant d’un titre de transport en commun ou d’un moyen de paiement grâce auquel cette personne voyage, d’un nombre prédéterminé de dernières transactions billettiques et des données billettiques tabulaires associées ;

- au sein desdites données billettiques tabulaires associées au nombre prédéterminé de dernières transactions, la sélection (52, 54, 56) des colonnes de données correspondant au :

- type de transaction ;

- la valeur numérique de transaction ;

- le contexte billettique de transaction.

3. Procédé (34) selon la revendication 1 ou 2, dans lequel le prétraitement et la sélection (36) de colonnes de données d’intérêt prédéterminées comprennent en outre un formatage (58) desdites données billettiques sélectionnées selon un format prédéterminé.

4. Procédé (34) selon la revendication 2 ou 3, dans lequel le prétraitement et la sélection (36) de colonnes de données d’intérêt prédéterminées comprennent en outre un tri (60) des transactions dans l’ordre chronologique suivi d’un groupement desdites transactions par utilisateur, chaque utilisateur étant identifié par un identifiant unique, puis un filtrage des utilisateurs afin de ne conserver que les données billettiques associées aux utilisateurs ayant un nombre de transactions supérieur ou égal audit nombre prédéterminé de dernières transactions billettiques.

5. Procédé (34) selon l’une quelconque des revendications précédentes, dans lequel le prétraitement et la sélection (36) de colonnes de données d’intérêt prédéterminées comprennent en outre un typage (66) puis une séparation (68) des données billettiques tabulaires sélectionnées en deux types de variables comprenant des variables catégorielles propres à décrire qualitativement un état et/ou un élément billettique et des variables numériques propres à décrire quantitativement un état et/ou un élément billettique.

6. Procédé (34) selon l’une quelconque des revendications précédentes, dans lequel ledit apprentissage profond (38) utilise une fonction de perte contrastive et dans lequel l’obtention (42) dudit score en phase d’inférence comprend une normalisation en utilisant les valeurs minimales et maximales de la fonction de perte contrastive rencontrées en phase d’apprentissage.

7. Procédé (34) selon l’une quelconque des revendications précédentes, dans lequel ledit apprentissage profond (38) comprend :

- la détermination, au moyen dudit au moins un réseau de neurones, d’une pluralité de vues des données billettiques issues dudit prétraitement et de ladite sélection,

- la réduction dimensionnelle de chacune des vues de ladite pluralité de vues fournissant des vues dans un espace latent de dimension réduite ;

- le calcul de propriétés géométriques prédéterminées dans ledit espace latent de plus petite dimension obtenue par ladite réduction dimensionnelle.

8. Procédé (34) selon l’une quelconque des revendications précédentes, dans lequel ladite au moins une phase d’inférence comprend en outre une étape (44) d’explication attribuant des poids aux colonnes sélectionnées lors de l’étape de prétraitement, lesdits poids étant propres à expliquer au moins en partie ledit score obtenu.

9. Programme d’ordinateur comportant des instructions logicielles qui lorsqu’elles sont exécutées par un ordinateur, mettent en œuvre un procédé de détection d’anomalies dans les données billettiques de transport en commun selon l’une quelconque des revendications précédentes.

10. Système électronique (10) de détection d’anomalies dans les données billettiques de transport en commun, le système électronique comprenant une unité d’apprentissage et une unité d’inférence, l’unité d’apprentissage comprenant, pour application à des données billettiques tabulaires d’entrainement :

- un module (14) de prétraitement configuré pour prétraiter et sélectionner des colonnes de données d’intérêt prédéterminées au sein desdites données billettiques tabulaires d’entrainement ;

- un module (20) d’apprentissage profond configuré pour mettre en œuvre un apprentissage profond d’au moins un réseau de neurones en utilisant les données billettiques d’entrainement optimisées par ledit prétraitement et pour obtenir un modèle (22) dudit au moins un réseau de neurones propre à détecter une anomalie de données billettiques ; ladite unité d’inférence comprenant, pour application à des données billettiques tabulaires de test :

- un module (23) d’application configuré pour appliquer ledit prétraitement et ladite sélection de colonnes de données d’intérêt prédéterminées auxdites données billettiques tabulaires de test ;

- un module (24) d’obtention d’un score (26) correspondant à un niveau d’anomalie desdites données billettiques tabulaires de test, ledit module d’obtention (24) étant configuré pour obtenir ledit score par application dudit modèle (22) auxdites données billettiques de test optimisées par ledit prétraitement (230).

Description:
TITRE : Détection d’anomalies dans les données billettiques de transport en commun

La présente invention concerne un procédé et un système de détection d’anomalies dans les données billettiques de transport en commun.

L’invention concerne également un programme d’ordinateur comportant des instructions logicielles qui, lorsqu’elles sont exécutées par un ordinateur, mettent en œuvre un tel procédé de détection d’anomalies dans les données billettiques de transport en commun.

Le domaine de l’invention porte sur la détection d’anomalie pour des systèmes billettiques permettant aux usagers munis d’un titre de transport d’accéder aux réseaux de transports publics.

Plus précisément, de tels systèmes billettiques comprennent notamment les guichets et machines de vente, les valideurs de titres et les portillons automatiques de contrôle d'accès, et créent de grandes quantités de données à la fois quantitatives et qualitatives sur les actions des passagers sur le ou les réseau(x) de transports publics, notamment relatives aux validations, aux achats de produit, au rechargement, et aux remboursements, et de différents types portant par exemple sur des valeurs de transactions, des balises entrées ou sorties, des stations d’arrêts.

A partir de ces données, des traitements automatiques permettent de rechercher les anomalies et fraudes potentielles qui peuvent avoir lieu au cours des transactions des usagers du réseau de transport.

De tels traitements automatiques existants dédiés au contrôle de données billettiques de transport en commun visent généralement à appliquer des règles prédéfinies aux transactions pour trouver des phénomènes impossibles ou douteux ou correspondent à des traitements de données statistiques, et de façon extensive pour détecter des points hors distribution. Ces solutions actuelles présentent l’inconvénient d’être peu adaptées à la découverte de nouvelles anomalies ou de nouvelles fraudes, car nécessitant un traitement souvent très lourd, complexe et peu évolutif car nécessitant une réflexion humaine avancée, par un opérateur de supervision, sur ce qui constitue une fraude ou une anomalie.

Dans d’autres domaines d’applications différentes des méthodes de traitement par apprentissage qui présentent l’intérêt d’êtres légères à déployer, et de découvrir de nouveaux schémas de fraude qui ne sont pas forcément accessibles aux méthodes de traitement statistiques sont utilisées mais non adaptées au contrôle de données billettiques de transport en commun. Les nouveaux schémas de fraude nécessitent un apprentissage non-supervisé ou auto-supervisé, car il n’est pas possible de savoir a priori si un comportement est anormal, sinon il aurait été possible de l’intégrer dans un algorithme de traitement statistique.

A l’heure actuelle, il n’existe donc aucun traitement automatique propre à découvrir de nouveaux schémas de fraude dans le domaine du contrôle de données billettiques de transport en commun.

A cet effet, l’invention a pour objet un procédé de détection d’anomalies dans les données billettiques de transport en commun, le procédé étant propre à être mis en oeuvre par un système électronique de détection d’anomalies dans les données billettiques de transport en commun, le procédé comprenant au moins une phase d’apprentissage et au moins une phase d’inférence, ladite au moins une phase d’apprentissage comprenant les étapes suivantes, appliquées à des données billettiques tabulaires d’entrainement :

- prétraitement et sélection de colonnes de données d’intérêt prédéterminées au sein desdites données billettiques tabulaires d’entrainement ;

- apprentissage profond d’au moins un réseau de neurones en utilisant les données billettiques d’entrainement optimisées par ledit prétraitement et obtention d’un modèle dudit au moins un réseau de neurones configuré pour détecter une anomalie de données billettiques ; ladite au moins une phase d’inférence comprenant les étapes suivantes, appliquées à des données billettiques tabulaires de test ;

- application dudit prétraitement et de ladite sélection de colonnes de données d’intérêt prédéterminées auxdites données billettiques tabulaires de test ;

- obtention d’un score correspondant à un niveau d’anomalie desdites données billettiques tabulaires de test par application dudit modèle auxdites données billettiques de test optimisées par ledit prétraitement.

Ainsi, le procédé selon la présente invention permet d’accélérer les traitements de données billettiques de transport en commun tout en recherchant des comportements anormaux rares et complexes.

Plus précisément, le procédé selon la présente invention propose un prétraitement spécifique au format de données tabulaires utilisé dans les système billettiques de transport en commun afin d’optimiser les entrées d’un réseau de neurones dont le modèle, après avoir été entraîné à la détection d’anomalies à partir de données d’entrainement en utilisant un apprentissage profond avec une perte contrastive, est apte à être utilisé pour fournir un score propre à décrire quantitativement à quel point un évènement billettique est anormal ou non.

Suivant d’autres aspects avantageux de l’invention, le procédé de détection d’anomalies dans les données billettiques de transport en commun comprend une ou plusieurs des caractéristiques suivantes, prises isolément ou suivant toutes les combinaisons techniquement possibles :

- le prétraitement et la sélection de colonnes de données d’intérêt prédéterminées comprennent :

- la sélection, pour chaque utilisateur de transport en commun, ou par extension pour chaque unique identifiant d’un titre de transport en commun ou d’un moyen de paiement grâce auquel cette personne voyage, d’un nombre prédéterminé de dernières transactions billettiques et des données billettiques tabulaires associées ;

- au sein desdites données billettiques tabulaires associées au nombre prédéterminé de dernières transactions, la sélection des colonnes de données correspondant au :

- type de transaction ;

- la valeur numérique de transaction ;

- le contexte billettique de transaction ;

- le prétraitement et la sélection de colonnes de données d’intérêt prédéterminées comprennent en outre un formatage desdites données billettiques sélectionnées selon un format prédéterminé ;

- le prétraitement et la sélection de colonnes de données d’intérêt prédéterminées comprennent en outre un tri des transactions dans l’ordre chronologique suivi d’un groupement desdites transactions par utilisateur, chaque utilisateur étant identifié par un identifiant unique, puis un filtrage des utilisateurs afin de ne conserver que les données billettiques associées aux utilisateurs ayant un nombre de transactions supérieur ou égal audit nombre prédéterminé de dernières transactions billettiques ;

- le prétraitement et la sélection de colonnes de données d’intérêt prédéterminées comprennent en outre un typage puis une séparation des données billettiques tabulaires sélectionnées en deux types de variables comprenant des variables catégorielles propres à décrire qualitativement un état et/ou un élément billettique et des variables numériques propres à décrire quantitativement un état et/ou un élément billettique ;

- ledit apprentissage profond utilise une fonction de perte contrastive et dans lequel l’obtention dudit score en phase d’inférence comprend une normalisation en utilisant les valeurs minimales et maximales de la fonction de perte contrastive rencontrées en phase d’apprentissage ; - ledit apprentissage profond comprend :

- la détermination, au moyen dudit au moins un réseau de neurones, d’une pluralité de vues des données billettiques issues dudit prétraitement et de ladite sélection,

- la réduction dimensionnelle de chacune des vues de ladite pluralité de vues fournissant des vues dans un espace latent de dimension réduite ;

- le calcul de propriétés géométriques prédéterminées dans ledit espace latent de plus petite dimension obtenue par ladite réduction dimensionnelle ;

- ladite au moins une phase d’inférence comprend en outre une étape d’explication attribuant des poids aux colonnes sélectionnées lors de l’étape de prétraitement, lesdits poids étant propres à expliquer au moins en partie ledit score obtenu.

L’invention a également pour objet un programme d’ordinateur comportant des instructions logicielles qui, lorsqu’elles sont exécutées par un ordinateur, mettent en œuvre un procédé de détection d’anomalies dans les données billettiques de transport en commun, tel que défini ci-dessus.

L’invention concerne également un système de détection d’anomalies dans les données billettiques de transport en commun, le système électronique comprenant une unité d’apprentissage et une unité d’inférence, l’unité d’apprentissage comprenant, pour application à des données billettiques tabulaires d’entrainement :

- un module de prétraitement configuré pour prétraiter et sélectionner des colonnes de données d’intérêt prédéterminées au sein desdites données billettiques tabulaires d’entrainement ;

- un module d’apprentissage profond configuré pour mettre en œuvre un apprentissage profond d’au moins un réseau de neurones en utilisant les données billettiques d’entrainement optimisées par ledit prétraitement et pour obtenir un modèle dudit au moins un réseau de neurones propre à détecter une anomalie de données billettiques ; ladite unité d’inférence comprenant, pour application à des données billettiques tabulaires de test :

- un module d’application configuré pour appliquer ledit prétraitement et ladite sélection de colonnes de données d’intérêt prédéterminées auxdites données billettiques tabulaires de test ;

- un module d’obtention d’un score correspondant à un niveau d’anomalie desdites données billettiques tabulaires de test, ledit module d’obtention étant configuré pour obtenir ledit score par application dudit modèle auxdites données billettiques de test optimisées par ledit prétraitement. Ces caractéristiques et avantages de l’invention apparaîtront plus clairement à la lecture de la description qui va suivre, donnée uniquement à titre d’exemple non limitatif, et faite en référence aux dessins annexés, sur lesquels :

- [Fig 1] la figure 1 est un schéma illustrant un système électronique de détection d’anomalies dans les données billettiques de transport en commun ;

- [Fig 2] la figure 2 est un organigramme d’un procédé de détection d’anomalies dans les données billettiques de transport en commun selon la présente invention ;

- [Fig. 3] la figure 3 illustre en détail l’étape de prétraitement de données et sélection de colonnes de données d’intérêt prédéterminées au sein desdites données billettiques tabulaires.

La figure 1 est une représentation d’un système électronique 10 de détection d’anomalies dans les données billettiques de transport en commun selon la présente invention.

Le système électronique 10 comprenant une unité d’apprentissage et une unité d’inférence, toutes deux non représentées à des fins de simplicité sur la figure 1 , ces deux unités pouvant partager, selon un mode de réalisation, au moins un même module électronique.

L’unité d’apprentissage comprend tout d’abord, pour application à des données 12 billettiques tabulaires, notées D_T, et en l’occurrence, pendant l’apprentissage, des données d’entrainement, dont il est connu au préalable si elles sont ou non porteuses d’anomalie(s), un module 14 de prétraitement configuré pour prétraiter et sélectionner (noté P+S) des colonnes de données d’intérêt prédéterminées au sein desdites données billettiques tabulaires d’entrainement.

Le fonctionnement d’un tel module 14 de prétraitement et de sélection sera détaillé par la suite en relation avec la figure 3. Un tel module 14 de prétraitement et de sélection fournit en sortie des données 16 optimisées (notées D_O_A) pour un apprentissage profond subséquent.

L’unité d’apprentissage comprend par ailleurs un module 20 d’apprentissage profond configuré pour mettre en œuvre un apprentissage profond d’au moins un réseau de neurones en utilisant les données 16 billettiques d’entrainement optimisées par ledit module 14 de prétraitement et pour obtention d’un modèle 22 dudit au moins un réseau de neurones propre à détecter une anomalie de données billettiques.

L’unité d’inférence comprend quant à elle, pour application à des données billettiques tabulaires D T de test , tout d’abord un module 23 d’application en inférence (notée A l) configuré pour appliquer ledit prétraitement et ladite sélection de colonnes de données d’intérêt prédéterminées 230 auxdites données billettiques tabulaires de test. Autrement dit le module 23 est configuré pour appliquer les mêmes prétraitement et sélection aux données billettiques tabulaires de test, qu’appliqués auparavant aux données billettiques d’entrainement.

Selon une variante non représentée, l’unité d’inférence réutilise le module 14 de l’unité d’apprentissage et non un module distinct 23 tel que représenté sur la figure 1.

L’unité d’inférence comprend en outre un module 24 d’obtention d’un score 26 correspondant à un niveau d’anomalie desdites données billettiques tabulaires de test, ledit module d’obtention 24 étant configuré pour obtenir ledit score 26 par application dudit modèle 22 de réseau(x) de neurones auxdites données billettiques de test optimisées par ledit prétraitement mis en œuvre par le module 23 précité.

En complément optionnel, le système électronique 10 comprend en outre un module 28 d’explicabilité configuré pour attribuer des poids aux colonnes sélectionnées par le module 23 de prétraitement, lesdits poids étant propres à expliquer au moins en partie ledit score 26 obtenu.

En fonction du score 26, les données billettiques tabulaires de test sont catégorisées par décision comme représentatives d’un évènement anormal 30 (i.e. une anomalie E_A), ou en prenant en compte également le modèle 22 selon la flèche 31 , d’un évènement normal 32 (i.e. absence d’anomalie E_N).

Selon une mise en œuvre non représentée, le système électronique 10 de détection d’anomalies dans les données billettiques de transport en commun selon la présente invention comprend une unité de traitement formée par exemple d’une mémoire et d’un processeur associé à la mémoire, et le système électronique 10 de détection d’anomalies dans les données billettiques de transport en commun selon la présente invention est au moins en partie réalisé sous forme d’un logiciel, ou d’une brique logicielle, exécutable par le processeur, notamment pour l’unité d’apprentissage : le module 14 de prétraitement et le module 20 d’apprentissage profond, et pour l’unité d’inférence le module d’application 23 et le module d’obtention 24. La mémoire du système électronique 10 est alors apte à stocker de tels logiciels ou briques logicielles, et le processeur est alors apte à les exécuter.

Selon une autre mise en œuvre également non représentée, pour l’unité d’apprentissage : le module 14 de prétraitement et le module 20 d’apprentissage profond, et pour l’unité d’inférence le module d’application 23 et le module d’obtention 24 sont réalisés chacun sous forme d’un composant logique programmable, tel qu’un FPGA (de l’anglais Field Programmable Gate Array), ou encore sous forme d’un circuit intégré dédié, tel qu’un ASIC (de l’anglais Application Specific integrated Circuit).

Lorsqu’une partie du système électronique 10 de détection d’anomalies dans les données billettiques de transport en commun selon la présente invention est réalisée sous forme d’un ou plusieurs logiciels, c’est-à-dire sous forme d’un programme d’ordinateur, cette partie est en outre apte à être enregistrée sur un support, non représenté, lisible par ordinateur. Le support lisible par ordinateur est par exemple, un médium apte à mémoriser des instructions électroniques et à être couplé à un bus d’un système informatique. A titre d’exemple, le support lisible est un disque optique, un disque magnéto-optique, une mémoire ROM, une mémoire RAM, tout type de mémoire non-volatile (par exemple EPROM, EEPROM, FLASH, NVRAM), une carte magnétique ou encore une carte optique. Sur le support lisible est alors mémorisé un programme d’ordinateur comportant des instructions logicielles.

Le fonctionnement du système électronique 10 de détection d’anomalies dans les données billettiques de transport en commun selon la présente invention va par la suite être décrit plus en détail en relation avec les figures 2 et 3.

La figure 2 organigramme d’un procédé 34 de détection d’anomalies dans les données billettiques de transport en commun selon la présente invention mis en œuvre par le système électronique de la figure 1 .

Sur la figure 2, le procédé de détection d’anomalies dans les données billettiques de transport en commun comprend au moins une phase d’apprentissage Pi et au moins une phase d’inférence P 2 .

La phase d’apprentissage Pi consiste à apprendre à détecter des anomalies à partir de données billettiques tabulaires d’entrainement (i.e. des données billettiques tabulaires d’entrainement D_T_A) dont on ne sait pas au préalable si elles sont représentatives d’au moins une anomalie ou non (entrainement non-supervisé).

Ladite au moins une phase d’apprentissage Pi comprend tout d’abord une étape 36 de prétraitement (noté P_A pour prétraitement en apprentissage) et sélection de colonnes de données d’intérêt prédéterminées au sein desdites données billettiques tabulaires d’entrainement D_T_A.

Puis, la phase d’apprentissage Pi comprend une étape 38 d’apprentissage profond d’au moins un réseau de neurones en utilisant les données billettiques d’entrainement optimisées par ledit prétraitement et d’obtention d’un modèle M dudit au moins un réseau de neurones configuré pour détecter une anomalie de données billettiques.

Par exemple, le ou les réseau de neurone(s) utilisés en apprentissage profond puis en inférence par la suite sont des réseaux de neurone(s) convolutif(s).

En complément optionnel, ledit apprentissage profond 38 utilise une fonction de perte contrastive.

Selon un autre complément optionnel non représenté, ledit apprentissage profond 38 comprend : - la détermination, au moyen dudit au moins un réseau de neurones, d’une pluralité de vues des données billettiques issues dudit prétraitement et de ladite sélection 36,

- la réduction dimensionnelle de chacune des vues de ladite pluralité de vues par un encodeur prédéterminé fournissant des vues dans un espace latent de dimension réduite ;

- le calcul de propriétés géométriques prédéterminées dans ledit espace latent de plus petite dimension obtenue par ladite réduction dimensionnelle.

Autrement dit, ce complément optionnel revient à adapter spécifiquement pour la détection d’anomalies dans les données billettiques de transport en commun, un apprentissage profond tel que décrit par Qiu et al. dans l’article intitulé « Neural Transformation Learning for Deep Anomaly Detection Beyond Images » de 2021 .

Plus précisément, lors dudit apprentissage profond 38, on considère X l’espace dans lequel se trouve les données que l’on cherche à caractériser. K transformations T 1; ... , T K OÙ chaque transformation T t correspond à un des réseaux de neurones travaillant sur X. L’encodeur mettant en œuvre la réduction dimensionnelle précitée est représenté par la fonction allant de X vers IR’" dont la dimension m est telle que : m < dim( ). De plus, pour chaque entrée x, tel que x k = T k (x) la fonction de similarité suivante est utilisée

: s(x k , Xf) sim où sim est la similarité cosinus: sim(z, z') := de même que h la fonction de score de similarité permettant à la transformation de la similarité à valeurs dans [-1; 1], de prendre des valeurs dans IR : h(x k , x f ) = exp ^ Xk ^y avec T est un paramètre de « température ».

Ainsi, entre deux transformations x k et x { , en utilisant la fonction h une mesure de leur score de similarité est obtenue en considérant notamment que si h(x k , x { ) est grand; alors les deux transformations sont proches et que si h(x k , x f ) est faible, les deux transformations encodées sont très lointaines, ce qui permet alors de créer la fonction L de perte contrastive propre à guider l’apprentissage des réseaux de neurones r 1; ..., T K et de f< vp : tel que

Minimiser la fonction L de perte contrastive, vise à rendre h(x k ,x) aussi grand que possible, car chaque transformation associée respectivement à un réseau de neurones doit être aussi proche que possible des données d’origine selon une notion classique de proximité sémantique et ce tout en considérant que chaque score de similarité h(x k , x { ) doit être négativement aussi grand que possible, c’est-à-dire que les transformations doivent être aussi différentes que possibles selon une notion classique de diversité.

Par exemple, selon la présente invention, la structure des réseaux de neuronnes utilisée en terme de couche(s) de transformation est telle qu’elle combine : - une couche convolutionnelle à une dimension sur une fenêtre de trois éléments, avec un décalage d’un élément et un biais nul,

- une couche de norme instancielle telle que y = , * y, où seul le paramètre y peut

- V CLT |XJ changer, en considérant qu’une couche d’un réseau de neurones reçoit, lors de l’entrainement, un ensemble de points de R n (n étant la dimension d’entrée), x correspondant à l’ensemble des valeurs du point de R n considéré (il s’agit donc d’un vecteur de n valeurs), E[x] correspondant à la moyenne et Var[x] à la variance, la valeur y étant la sortie associée à x l’ensemble des valeurs du point de R n considéré, et

- une fonction d’activation sigmoïde.

Selon un exemple particulier de la présente invention, le nombre de transformations K à apprendre est fixé à seize. Une suite de couches convolutionnelle allant de trente-deux à deux-cent-cinquante-six canaux, doublant de couches en couches et s’arrêtant lorsque la série en entrée atteint une taille de huit éléments est appliquée. Une convolution à une dimension pour plonger les données dans un espace latent de dimension fixe et égale à soixante-quatre est mise en œuvre, et en sortie les similarités entre transformations sont scorées, les plus grands scores de similarité étant anormaux, tandis que les plus petits scores de similarité étant normaux.

L’état des poids du ou des réseaux de neurones après l’entrainement est fixé et exporté en vue d’au moins une phase d’inférence P2 subséquente.

Ainsi, la phase d’apprentissage Pi créé un « modèle » M comprenant plusieurs éléments:

- les états des processeurs de variable (i.e. du module de prétraitement 14) permettant la traduction des données source en données adaptées au réseau de neurones et vice versa ;

- les poids des couches du modèle M de réseau de neurones récurrents ;

- les paramètres fixes tels que le nombre de transformations ou la température utilisée dans la fonction de perte contrastive ;

- les valeurs minimale et maximale de la fonction de perte L rencontrées à l’entrainement (i.e. l’apprentissage).

Comme précédemment indiqué, un tel modèle M est utilisé ensuite en inférence, c’est-à-dire que son application à un seul jeu de transactions (i.e. de donées billettiques tabulaires de test) permet de fournir en sortie un score d’anomalie, le modèle M ayant appris ce qu’était une donnée anormale étant à la volée ainsi capable de dire d’un jeu de transactions (e.g. de vingt transaction) si ce jeu de transactions est anormal ou non.

Ladite au moins une phase d’inférence P2 comprend pour sa part tout d’abord une étape 40 d’application dudit prétraitement (noté P_l pour prétraitement en inférence) et de ladite sélection de colonnes de données d’intérêt prédéterminées auxdites données billettiques tabulaires de test, ledit prétraitement et ladite sélection appliquées aux données billettiques tabulaires de test étant identique à celui appliqué en phase d’apprentissage Pi aux données billettiques tabulaires d’entrainement (comme détaillé par la suite en relation avec la figure 3 en termes de traitement de variable par chaque processeur de variable (i.e. du module de prétraitement 14 ou 23), puis de codage par un encodeur de position).

De telles étapes 36 et 40 de prétraitement et sélection en apprentissage, comme de prétraitement et sélection en inférence sont davantage détaillées par la suite en relation avec la figure 3.

Puis, ladite au moins une phase d’inférence P2 comprend une étape 42 d’obtention d’un score S correspondant à un niveau d’anomalie desdites données billettiques tabulaires de test par application en inférence dudit modèle M auxdites données billettiques de test optimisées par ledit prétraitement 40.

En complément optionnel, l’obtention 42 dudit score S en phase d’inférence P2 comprend une normalisation en utilisant les valeurs minimales et maximales de la fonction de perte contrastive rencontrées en phase d’apprentissage Pi.

Autrement dit, le score S, selon ce complément optionnel, est normalisé par les valeurs minimales et maximales de la fonction de perte rencontrées à l’entrainement (i.e. l’apprentissage) de telle sorte que, par exemple, un score normalisé supérieur à cent corresponde à une série de transactions qui n’a pas été vue auparavant par le réseau et donc très anormale.

Un tel score S obtenu en inférence est un score d’anomalie indiquant seulement à l’opérateur si le schéma de transaction analysé est normal ou non. Un tel score S ne comprend aucune indication relative à l’origine de l’anomalie; et il est donc difficile de s’assurer s’il s’agit d’une fraude, car face aux données d’un réseau de transport en constante évolution, il est attendu de voir le réseau de neurone découvrir des schémas anormaux très complexes, si bien que la qualification des résultats du réseau de neurone nécessite une plus grande transparence.

Pour répondre à ce besoin, de manière optionnelle complémentaire, la phase d’inférence P2 comprend en outre une étape 44 d’explication, mise en œuvre par le module d’explicabilité 28, attribuant des poids au colonnes sélectionnées lors de l’étape de prétraitement, lesdits poids étant propres à expliquer au moins en partie ledit score obtenu.

A titre d’exemple, pour mettre en œuvre une telle étape d’explication 44, le module d’explicabilité 28 utilise les résultats, décrits par Sundararajan et al. dans l’article intitulé « Axiomatic Attributions for Deep Networks » de 2017, et introduisant les gradients intégrés; pour attribuer des poids aux colonnes du score d’anomalie final, une colonne étant pour ce faire encodée sur plusieurs “sous-colonnes”, le poids étant propre à être calculé en utilisant une intégrale le long du chemin du modèle de réseau de neurones.

Via cette méthode la colonne correspondant au type de transaction présente par exemple un poids positif de 0,091215, la colonne correspondant au type de titre (i.e. support billettique, tel qu’à Paris, la carte Navigo® mensuelle, ou encore la carte Navigo® liberté +, le passe Navigo® easy etc.) présente un poids négatif - 0,14268, et la colonne correspondant au montant de la transaction présente un poids positif de 1 ,788538, les poids attribués à chaque colonne étant relatifs. Selon cet exemple, au vu des poids précités, le montant des transactions étudiées augmente la valeur de la fonction de perte et donc contribue positivement au score d’anomalie, si bien que l’opérateur peut creuser cette piste en étudiant en premier lieu les transactions dont les montants sont anormaux.

Selon un autre exemple, un score d’anomalie égal à cent-quinze est obtenu en considérant neuf colonnes sélectionnées en entrée du réseau de neurones avec vingt lignes correspondant aux dernières transactions, dont une colonne correspondant aux entrées/sorties, une entrée étant représentée par le chiffre 1 et une sortie représentée par le chiffre 2. Le poids le plus haut de contribution au score, à savoir à hauteur de 64,9%, est justement celui associé à cette colonne d’entrées/sorties notamment du fait que trois transactions successives du même utilisateur (ou associées à un unique identifiant d’un titre de transport en commun ou d’un moyen de paiement grâce auquel cet utilisateur voyage) sont représentées par une suite de trois un, ce qui correspond à trois entrées successives alors que les entrées devraient alterner avec les sorties. L’opérateur au vu de cette explication vérifie alors la numérotation des transactions associées, et cette vérification montre que les numéros de transaction se suivent et qu’aucune transaction n’est manquante, si bien que l’opérateur en déduit que l’anomalie associée au score égal à cent- quinze n’est pas une fraude mais probablement une anomalie liée au réseau, et correspond à des sorties qui ne sont pas correctement enregistrées comme telle si bien qu’il est nécessaire de mettre en œuvre une opération de maintenance.

Plus généralement, un poids au signe positif indique que la contribution de la colonne considérée fait tendre le score vers de plus grandes valeurs; tandis qu’un poids au signe négatif fait tendre le score vers de plus petites valeurs. L’ampleur de la contribution est corrélée à la valeur du poids (zéro signifiant une petite contribution).

Selon une étape 46, mise en œuvre mentalement par un opérateur dudit système électronique 10 de détection d’anomalies dans les données billettiques de transport en commun, une décision est prise pour caractériser les données billettiques tabulaires de test comme des données porteuses (i.e. représentatives) d’anomalie(s) ou comme des données normales. La figure 3 illustre en détail les étapes 36 (comme 40 en inférence) de prétraitement de données et sélection de colonnes de données d’intérêt prédéterminées au sein desdites données billettiques tabulaires d’entrainement en apprentissage (respectivement de test en inférence).

Plus précisément, selon le mode de réalisation de la figure 3, le prétraitement 36, 40 et la sélection de colonnes de données d’intérêt prédéterminées comprend tout d’abord une phase 48 de définition DEF permettant de définir les différentes variables à utiliser ainsi que les paramètres choisis pour l’entrainement du ou des réseaux de neurones utilisés par la suite lors de l’apprentissage profond 38.

Cette phase 48 de définition comprend notamment une sous-étape 50 de sélection, pour chaque utilisateur de transport en commun (i.e. voyageur ou par extension associé à un unique identifiant d’un titre de transport en commun ou d’un moyen de paiement grâce auquel cette personne voyage), d’un nombre prédéterminé L_T de dernières transactions billettiques et des données billettiques tabulaires associées. Par exemple, au regard des habitudes de transport des usagers, le nombre prédéterminé L T de dernières transactions billettiques est fixé aux vingt dernières transactions de chaque utilisateur de transport en commun (i.e. voyageur).

De plus, cette phase 48 de définition comprend, au sein desdites données billettiques tabulaires associées au nombre prédéterminé de dernières transactions, une sous-étape 52 de sélection des colonnes, notées par exemple C_D_T, de données correspondant au type de transaction. Par « type de transaction », on entend ici la nature de chaque transaction, telle que la transaction de type voyage, de type rechargement, etc. Autrement dit, la sous-étape 52 consiste à privilégier (i.e. sélectionner) les colonnes des données billettiques tabulaires contenant des détails sur les transactions.

De plus, cette phase 48 de définition comprend, au sein desdites données billettiques tabulaires associées au nombre prédéterminé de dernières transactions, une sous-étape 54 de sélection (i.e. d’ajout aux données sélectionnées pour apprentissage profond) des colonnes, notées par exemple A_V_Q, portant sur la valeur numérique des transactions de l’utilisateur (i.e. du voyageur ou par extension associé à un unique identifiant d’un titre de transport en commun ou d’un moyen de paiement grâce auquel cette personne voyage) considéré. Par « valeur numérique de transaction », on entend ici une variable quantitative telle que la quantité de monnaie locale au rechargement, la quantité de monnaie locale payée à chaque transaction, cette variable étant relative, notamment négative en cas de paiement ou positive en cas de chargement ou de rechargement du titre de transport de l’utilisateur considéré. De plus, cette phase 48 de définition comprend, au sein desdites données billettiques tabulaires associées au nombre prédéterminé de dernières transactions, une sous-étape 54 de sélection (i.e. d’ajout aux données sélectionnées pour apprentissage profond) des colonnes, notées par exemple C_D_V, portant sur le contexte billettique de transaction. Par « contexte billettique de transaction », on entend les colonnes qui concernent la description du voyage associé à la transaction, telles que les incréments de transaction de titres, les types d'usage tels que les entrées/sorties de gare ou dans un espace ayant une fonction particulière du point de vue de la billettique ou des infrastructures associées (par exemple : un véhicule ou une partie d’un véhicule, une zone particulière d’une infrastructure de transport ou de stationnement).

En complément optionnel, l’étape 36 de prétraitement et de sélection de colonnes de données d’intérêt prédéterminées comprend en outre une sous-étape 58 de formatage (notée FORMAT) desdites données billettiques sélectionnées (par exemple au format Pandas).

En effet, chaque table de transaction (i.e. donnée billettique tabulaire) à l’entrainement (i.e. l’apprentissage) est propre à se présenter selon plusieurs formats, notamment ascii, lisible ou non par une machine, etc.

L’apprentissage profond 38 selon la présente invention nécessite un format de donnée d’entrée du réseau de neurone systématiquement lisible par une machine (de l’anglais « machine-readable »), et la sous-étape 58 de formatage au format prédéterminé associé au réseau de neurones considéré permet d’assurer une telle lecture systématique.

En complément optionnel, l’étape 36 de prétraitement et de sélection de colonnes de données d’intérêt prédéterminées comprend en outre une sous-étape 60 de tri T des transactions dans l’ordre chronologique suivi d’un groupement desdites transactions par utilisateur (ou par extension associé à un unique identifiant d’un titre de transport en commun ou d’un moyen de paiement grâce auquel cette personne voyage), chaque utilisateur étant identifié par un identifiant unique, et disponible à l’origine dans les tables de transactions billettiques en entrée dudit prétraitement 36, un tel identifiant unique étant indiqué par exemple dans une colonne par exemple intitulée MediaSerialNumberlD pour les données billettiques tabulaires du système billettique selon la Demanderesse Revenue Collection Systems

De plus, selon ce complément optionnel, le tri et groupement 60 sont suivis d’une sous-étape 62 de filtrage F des utilisateurs afin de ne conserver que les données billettiques associées aux utilisateurs ayant un nombre de transactions supérieur ou égal audit nombre prédéterminé L T de dernières transactions billettiques. Autrement dit, un tel filtrage revient à ne conserver les utilisateurs (i.e. les voyageurs) qui présentent plus de L T transactions par exemple vingt transactions, les utilisateurs associés à un nombre de transactions moindre correspondant généralement à des utilisateurs non locaux (i.e. voyageurs non locaux).

Selon un autre complément optionnel, l’étape 36 de prétraitement et de sélection de colonnes de données d’intérêt prédéterminées comprend en outre une phase supplémentaire 64 de transformation(s) de donnée(s) afin que chaque donnée soit adaptée à l’entrée dans un réseau de neurones. Une telle phase 64 de transformation(s) supplémentaire(s) comprend une sous-étape 66 de typage suivie d’une sous-étape 68 de séparation des données billettiques tabulaires sélectionnées en deux types de variables comprenant des variables catégorielles propres à décrire qualitativement un état et/ou un élément billettique et des variables numériques propres à décrire quantitativement un état et/ou un élément billettique.

Le typage 66 des variables de colonnes de données billettiques tabulaires permet de s’assurer que celles-ci ont un format tel qu’attendu en entrée du réseau de neurones subséquent, puis séparées au cours de l’étape 68 selon les deux types précités à savoir d’une part les variables catégorielles correspondant aux colonnes contenant peu de valeurs différentes et décrivant un état du système billettique, et les variables numériques pouvant prendre une valeur a priori arbitraire sur l’intervalle des valeurs possibles; une transaction pouvant être positive, ou négative mais a priori entière.

Autrement dit, le module 14 de prétraitement avant apprentissage et le module 23 de prétraitement avant inférence configurés pour mettre en œuvre respectivement les prétraitements 36 en apprentissage et 40 en inférence, sont des processeurs de variables propres à coder les variables catégorielles par exemple selon un codage connu par le terme anglais One-Hot-Encoding où une suite de variables ABBCCC est par exemple encodée au moyen du tableau suivant de valeur binaire :

Les variables numériques sont codées en utilisant un outil de mise à l’échelle standard (de l’anglais StandardScaler) où les valeurs sont normalisées en moyenne et en variance par rapport à la statistique de l’ensemble de la distribution numérique. Les résultats fournis par de tels processeurs de variables sont stockés sous forme de dictionnaire qui permettent de transformer de façon transparente et unique chaque variable de la version brute D_T (données tabulaire d’entrée) à la version encodée D O (données optimisées d’entrée de réseau(x) de neurone(s)) et vice versa.

En outre, en complément optionnel, le codage proposé selon la présente invention est propre à ajouter aux variables un double encodage, à savoir en premier lieu de la position de chaque transaction dans la séquence des L T dernières transactions, notamment tel que L_T=20, et en deuxième lieu un encodage de ces positions (i.e. des positions de chaque transaction) par un encodeur de position dans un espace latent de plus faible dimension pour gagner en espace de traitement de donnée (i.e. en anglais de data processing).

Autrement dit, à l’issue du prétraitement 36, on obtient en entrée du réseau de neurones un dictionnaire de tenseurs (i.e. des tableaux numériques) contenant des valeurs encodées liées aux valeurs brutes des données billettiques sources D_T fournie à l’origine en entrée de la phase d’apprentissage ou de la phase d’inférence.

En d’autres termes, le prétraitement 36 ou 40 mis en œuvre selon la présente invention permet d’atteindre le niveau d’abstraction nécessaire en entrée du ou des réseau(x) de neurones utilisés par la suite en phase d’apprentissage comme en phase d’inférence, les réseaux de neurones étant généralement optimisés pour des valeurs numériques proches de zéro.

Ces valeurs de données optimisées par ledit prétraitement 36 ou 40 sont utilisées par au moins un réseau de neurones lors de la phase d’apprentissage Pi afin d’optimiser son propre comportement pour créer un modèle à utiliser ensuite sur des données tabulaires à tester. Autrement dit, un tel modèle, léger, une fois confronté à un jeu de transactions (i.e. des données billettiques tabulaires de test), est propre à fournir un score S qui correspond au niveau d’anomalie des données billettiques tabulaires de test.

L’homme du métier comprendra que l’invention ne se limite pas aux modes de réalisation décrits, ni aux exemples particuliers de la description, les modes de réalisation et les variantes mentionnées ci-dessus étant propres à être combinés entre eux pour générer de nouveaux modes de réalisation de l’invention.

L’homme du métier comprendra que l’invention peut être utilisée pour traiter des données associées à une application de billettique pour les transports en commun ainsi qu'à des applications de billettiques pouvant être combinées avec des transports en commun ; elle peut par exemple être appliquée à un système billettique qui combinerait des données liées à des transports en communs avec des données de type transaction de stationnement ou liées à l'utilisation de moyens de transports qui peuvent être utilisés en complément de transports en commun (par exemple : utilisation de moyens de transports individuels : vélos ou trottinettes en libre-service, ...)

La présente invention propose ainsi un prétraitement spécifique au format de données tabulaires utilisé dans les système billettiques de transport en commun permettant d’augmenter la vitesse de traitement de données, et utilise des réseaux de neurones, notamment des réseaux de neurones convolutifs, avec une fonction de perte contrastive pour analyser les transformations (i.e. vues) de données billettiques et catégoriser les données anormales comme telles de façon non supervisée, en utilisant une échelle de valeurs, la plus basse étant normale et la plus haute étant anormale, le réseau de neurones entraîné étant propre à fournir une probabilité que la transaction immédiatement reçue soit normale ou non.

La présente invention permet par exemple d’obtenir à l’issue d’une phase d’entrainement en cinquante étapes en considérant neuf colonnes de données billettiques tabulaires collectées sur une période de trois mois sélectionnées et prétraitées selon la présente invention, un modèle en dix-huit heures sur une unité de traitement graphique GPU (de l’anglais Graphics Processing Unit), telle que la GPU NVIDIA® Tesla P100 12 Gb, sachant qu’en phase d’entrainement l’objectif est d’obtenir un modèle performant sans contrainte de temps, l’entrainement étant « hors ligne » (de l’anglais off-line). En revanche, en inférence (i.e. en exploitation), la présente invention permet au minimum de scorer cent transactions par seconde pour s’adapter à un réseau de transport de taille moyenne, et jusqu’à quatre-cents transactions par seconde, en considérant que cent millisecondes sont nécessaires pour charger le modèle issu de la phase d’apprentissage et pour le prétraitement 40, et que cent millisecondes sont au minimum nécessaires pour effectuer l’inférence d’une transaction, ce traitement d’inférence étant propre à être parallélisé pour un nombre de transactions allant jusqu’à 20 000 transactions.

La présente invention propose ainsi une application au comportement utilisateur et permet ainsi, d’améliorer la réactivité et l’efficacité des opérateurs face à des tentatives de fraudes sophistiquées, tout en faisant face, de façon évolutive, à des mécanismes de fraude complexes et encore inconnus des opérateurs.