Login| Sign Up| Help| Contact|

Patent Searching and Data


Title:
AUTOMATIC DETECTION OF FRAUDS IN A STREAM OF PAYMENT TRANSACTIONS BY NEURAL NETWORKS INTEGRATING CONTEXTUAL INFORMATION
Document Type and Number:
WIPO Patent Application WO/2018/138423
Kind Code:
A1
Abstract:
The invention relates to a method for detecting fraudulent transactions in a collection of payment transactions, consisting in submitting the transactions to a classification system trained on an training set and providing for each new transaction of said collection a probability of being a fraudulent transaction, characterized in that with each transaction is associated contextual information, and in that the classification system is a neural network.

Inventors:
GARCHERY MATHIEU (DE)
CAELEN OLIVIER (BE)
HE-GUELTON LIYUN (FR)
GRANITZER MICHAEL (DE)
ZIEGLER KONSTANTIN (DE)
ZWICKLBAUER STEFAN (DE)
Application Number:
PCT/FR2017/053819
Publication Date:
August 02, 2018
Filing Date:
December 22, 2017
Export Citation:
Click for automatic bibliography generation   Help
Assignee:
WORLDLINE (FR)
International Classes:
G06Q20/40
Foreign References:
US20160086185A12016-03-24
US5822741A1998-10-13
US9552548B12017-01-24
Other References:
KHUMOYUN AKHMEDOV ET AL: "Spark based distributed Deep Learning framework for Big Data applications", 2016 INTERNATIONAL CONFERENCE ON INFORMATION SCIENCE AND COMMUNICATIONS TECHNOLOGIES (ICISCT), IEEE, 2 November 2016 (2016-11-02), pages 1 - 5, XP033018240, DOI: 10.1109/ICISCT.2016.7777390
ZWICKLBAUER, S.; SEIFERT, C.; GRANITZER, M.: "The Semantic Web. Latest Advances and New Domains - 13th International Conférence, ESWC 2016", vol. 9678, 29 May 2016, SPRINGER, article "Doser - a knowledge-base-agnostic framework for entity disambiguation using semantic embeddings", pages: 182 - 198
Attorney, Agent or Firm:
NOVAGRAAF TECHNOLOGIES (FR)
Download PDF:
Claims:
REVENDICATIONS

Procédé de détection de transactions frauduleuses dans un ensemble de transactions de paiement, consistant à soumettre les transactions à un système de classification entraîné sur un jeu d'entraînement et fournissant pour chaque nouvelle transaction dudit ensemble une probabilité d'être une transaction frauduleuse, caractérisé en ce qu'à chaque transaction sont associées des informations contextuelles, et en ce que ledit système de classification est un réseau de neurones.

Procédé selon la revendication précédente, dans lequel ledit système de classification utilise lesdites informations contextuelles au moyen de plongements de graphes.

Procédé selon l'une des revendications précédentes, dans lequel lesdites informations contextuelles comprennent des données relatives au pays associé à la transaction.

Procédé selon l'une des revendications précédentes, dans lequel lesdites informations contextuelles comprennent des données relatives aux jours de congés.

Procédé selon l'une des revendications précédentes, dans lequel ledit système de classification est basé sur l'algorithme Word2Vec.

Dispositif comportant des moyens pour mettre en œuvre le procédé selon l'une des revendications précédentes.

Description:
DETECTION AUTOMATIQUE DE FRAUDES DANS UN FLUX DE TRANSACTIONS DE PAIEMENT PAR RESEAUX DE NEURONES INTEGRANT DES INFORMATIONS CONTEXTUELLES

DOMAINE DE L'INVENTION

La présente invention est relative à un mécanisme de détection d'anomalies dans un flux de transactions bancaires. Elle s'applique notamment à la détection de fraudes.

CONTEXTE DE L'INVENTION

La fraude sur les transactions bancaires est un phénomène grandissant, notamment du fait de la généralisation des transactions de paiement via les réseaux de télécommunication.

Lorsqu'une transaction de paiement est autorisée par un serveur de paiement, deux mécanismes peuvent être mis en place : avant l'autorisation et.ou après.

Dans le premier cas, on parle de détection de fraude en temps-réel.

Dans le deuxième cas, il s'agit de détection de fraude proche du temps-réel (« near real-time »). Le premier cas présente l'avantage de pouvoir bloquer une transaction frauduleuse avant que celle-ci n'ait lieu, mais elle est assujettie à une contrainte forte sur le temps de traitement, puisqu'elle retarde la finalisation de la transaction de paiement et donc l'expérience pour l'utilisateur. Le deuxième cas permet de disposer de davantage de temps et donc de pouvoir mettre en place des traitements plus complexes et plus fins.

En général, ce problème est considéré par des techniques reposant sur des bases de règles. Des solutions ont été proposées, se basant sur différents mécanismes de classifications. Il est toutefois relevé dans l'état de la technique que la détection de fraudes dans les systèmes de paiement présente des spécificités. Dès lors, les techniques classiques de classifications ne s'appliquent de façon directe et efficace.

Tout d'abord, les conséquences de la fraude sont extrêmement importantes et très sensibles. En outre, comme les données relatives aux données bancaires et aux cartes et autres instruments de paiement sont confidentielles, très peu d'information sont publiquement disponibles sur les outils mis en place pour la détection de la fraude. Il est dès lors malaisé de pouvoir comparer les solutions de l'état de la technique.

RESUME DE L'INVENTION

Le but de la présente invention est de fournir une solution palliant au moins partiellement les inconvénients précités.

Plus particulièrement, l'invention vise à fournir une solution de détection automatique de transactions frauduleuses dans un ensemble de transactions en utilisant des informations contextuelles, c'est-à-dire non contenue dans les transactions soumises au traitement.

A cette fin, la présente invention propose un procédé de détection de transactions frauduleuses dans un ensemble de transactions de paiement, consistant à soumettre les transactions à un système de classification entraîné sur un jeu d'entraînement et fournissant pour chaque nouvelle transaction dudit ensemble une probabilité d'être une transaction frauduleuse, caractérisé en ce qu'à chaque transaction sont associées des informations contextuelles, et en ce que le système de classification est un réseau de neurones. Typiquement, ce jeu d'entraînement peut former un ensemble disjoint de l'ensemble des transactions sur lequel est ensuite effectué la généralisation, ou prévision, lors de la phase d'exploitation des classifïeurs entraînés sur le jeu d'entraînement.

Suivant des modes de réalisation préférés, l'invention comprend une ou plusieurs des caractéristiques suivantes qui peuvent être utilisées séparément ou en combinaison partielle entre elles ou en combinaison totale entre elles :

- ledit système de classification utilise lesdites informations contextuelles au moyen de plongements de graphes ;

- lesdites informations contextuelles comprennent des données relatives au pays associé à la transaction ;

- lesdites informations contextuelles comprennent des données relatives aux jours de congés ;

- ledit système de classification est basé sur l'algorithme Word2Vec.

Un autre objet de l'invention concerne un dispositif comportant des moyens pour mettre en œuvre le procédé tel que précédemment décrit.

D'autres caractéristiques et avantages de l'invention apparaîtront à la lecture de la description qui suit d'un mode de réalisation préféré de l'invention, donnée à titre d'exemple et en référence aux dessins annexés.

BREVE DESCRIPTION DES DESSINS

La figure 1 représente schématiquement des résultats expérimentaux obtenus selon un mode de réalisation de l'invention.

DESCRIPTION DETAILLEE DE L'INVENTION Le nombre de fraudes ne représente qu'un très faible pourcentage du volume des transactions bancaires : on considère que le taux moyen de fraude est de l'ordre de 0,5 %. Aussi, la détection de fraude correspond à un problème de détection d'anomalies, qui se caractérise par une distribution déséquilibré entre deux populations (cas normaux / cas en anomalie). Ce type de problème est très mal résolu par les mécanismes d'apprentissage de type « machine learning »

Selon un mode de réalisation de l'invention, l'ensemble des transactions à considérer est modifiée par la suppression des cas que l'on peut considérer a priori légitime. Ainsi, on peut augmenter l'équilibre entre les deux populations. Ce mécanisme permet d'augmenter les performances du réseau de neurones. Une autre spécificité des fraudes à transactions de paiement (par carte bancaire) réside dans la nature complexe du problème : les fraudes sont difficiles à distinguer des transactions légitimes, et il peut y avoir des recouvrements entre les classes issues du procédé de classification. De plus, différents schémas de fraudes peuvent être pratiqués par les fraudeurs, engendrant des situations diverses, et il est donc délicat de détecter les fraudes en se basant sur des « signatures » de cas de fraude typiques.

Le problème consiste à identifier les fraudes parmi en ensemble de transactions de paiement.

Selon l'invention, un système de classification est mis en place, utilisant les techniques de type « machine learning », afin de générer deux classes : une classe comportant les transactions légitimes et une classe comportant les transactions frauduleuses.

Typiquement, ce type de mécanisme repose sur une phase d'apprentissage et sur une phase de prédiction qui consiste en une généralisation du jeu d'entraînement sur lequel s'est basée la phase d'apprentissage.

Selon l'invention, la prédiction de la classe d'une transaction prend en compte différents attributs associés à la transaction, parmi lesquels des informations contextuelles. La prise en compte de ces informations contextuelles est une idée novatrice par rapport à l'état de la technique.

Il peut par exemple s'agir d'une date (incluant l'heure) de la transaction, de sa localisation géographique, d'événements calendaires (vacances scolaires, jours fériés.... ).

Les attributs peuvent aussi plus classiquement contenir le propriétaire de la carte de crédit (ou autre instrument de paiement), etc.

L'utilisation des informations contextuelles permet de distinguer avec une précision accrue les transactions frauduleuses des transactions légitimes.

Comme pour tout mécanisme de classification, un classifïeur est d'abord construit à partir d'un jeu d'entraînement pendant la phase d'apprentissage. Puis, ce classifïeur est utilisé pendant la phase de prédiction afin de classifïer des transactions nouvelles.

Différents types de classifïeurs sont possibles, mais grâce à utilisation d'informations contextuelles, ceux-ci peuvent se baser sur un plus grand volume de données pour chaque transaction et donc d'enrichir les possibilités de déterminations d'un modèle de discrimination pour former deux classes bien identifiées. L'invention repose donc sur l'injection d'informations contextuelles dans le mécanisme de classification. Plus particulièrement, selon un mode de réalisation de l'invention, ces informations contextuelles sont injectées dans un réseau de neurones. Deux sources d'informations peuvent être considérées pour expliquer les mécanismes de l'invention :

- une base de données relationnelle D, représentant les données de l'application interne;

- un graphe sémantique G={V, E} représentant les informations contextuelles.

On suppose par ailleurs qu'il existe un attribut j dans D, pour lequel l'ensemble de valeurs Aj = {dj : d G D} peut être identifié avec un sous- ensemble de vecteurs V * _Ξ V de G. A tel graphe sémantique permet de structurer les informations contextuelles.

Un graphe ou réseau sémantique, ou encore graphe de connaissances est un graphe orienté multi-relationnel composé d'entités tels que des nœuds et des liens.

Dans le cadre de l'invention, l'intégration de ces graphes dans les réseaux de neurones est effectuée par des plongements de graphe, ou « graph embeddings » en langue anglaise), c'est-à-dire des représentations vectorielles des nœuds du réseau sémantique, qui permettent de capturer les propriétés sémantiques d'un nœud en particulier.

Ces plongements (« embeddings ») sont utilisés pour initialisés une couche de plongements du réseau de neurones. Pendant la phase d'apprentissage, ces couches de plongements sont adaptées à partir des informations contextuelles. Par exemple, des attributs comme « pays » ou « année » peuvent être trouvés dans un graphe extérieur tel que le graphe DBpedia. DBpedia est un projet universitaire et communautaire d'exploration et extraction automatiques de données dérivées de Wikipédia. Son principe est de proposer une version structurée et sous forme de données normalisées au format du web sémantique des contenus encyclopédiques de chaque fiche encyclopédique.

Il est ainsi possible de tirer profit des modèles existant structurant l'information contextuelles. Sans perte de généralité, on peut également supposer que j=l et on identifie les valeurs pour le premier attribut avec les vecteurs dans V*.

Chaque tuple de D a pour forme d= (v, d2, . . . , dk) for v G V *

Le problème de l'injection d'informations contextuelle sémantique est alors une combinaison de caractéristiques (« features »): trouver la dimension n>0 et les représentations vectorielles G R n pour tout vGV*.

C'est-à-dire que v « capture » la sémantique de v et permet ainsi d'améliorer les mécanismes du classifîeur de « machine learning » sur D* = {(d, d2, . . . , dk): d G D} .

Les plongements (« embeddings ») sont des vecteurs à n dimensions associés à des concepts.

Ces vecteurs héritent de certaines propriétés sémantiques des concerts, de sorte que notamment des concepts similaires sont associés à des vecteurs proches. Ces proximités peuvent être aisément exprimées par des similarités en cosinus.

Les plongements forment un domaine de recherche bien connu dans le domaine du traitement automatique des langues, afin de représenter la sémantique des mots dans un corpus.

Par exemple le « plongement de mots » ou « plongement lexical » est une méthode d'apprentissage automatique issue de l'apprentissage profond (ou « deep learning » en langue anglaise) se focalisant sur l'apprentissage d'une représentation de mots. Cette technique permet de représenter les mots d'un dictionnaire par des vecteurs afin de faciliter leur analyse sémantique et syntaxique. Ainsi, chaque mot sera représenté par un vecteur de réels et les mots apparaissant dans des contextes similaires auront des vecteurs plus proches que d'autres apparaissant dans des contextes différents. Cette nouvelle représentation permet de diminuer considérablement l'espace de dimensionnalité (car on ne stocke plus un dictionnaire entier mais uniquement un espace de vecteurs continus).

L'algorithme le plus connu est probablement l'algorithme Word2Vec. Une page Wikipédia est consacrée à cet algorithme :

https://en.wikipedia.org/wiki/Word2vec

Word2Vec est un groupe d'algorithme d'apprentissage non supervisé permettant de créer des plongements de mots à partir de documents textuels. Afin d'entraîner ses plongements, Word2Vec utilise un réseau neuronal à deux couches prenant en entrée les documents bruts, sans étiquettes. Le modèle architectural du réseau de neurones peut être basé sur le modèle de « continuons bag of words » (CBOW), ou bien sur une architecture « skip- gram »

Dans le premier cas (CBOW), l'entrée du modèle peut être wi-2, wi-1, wi+1, wi+2, c'est-à-dire les mots précédents et suivants d'un mot courant wi. La sortie du réseau et la probabilité de wi d'être le mot correct. Cette tâche peut être décrite comme la prédiction d'un mot étant donné son contexte.

Dans le second cas (skip-gram), le modèle fonctionne à l'opposé : l'entrée du réseau est un mot wi et Word2Vec prédit le contexte autour de ce mot: wi-2, wi-1, wi+1, wi+2. Au contraire des autres de réseaux de neurones pour le traitement du langage naturel Word2Vec est très rapide et peut être encore accéléré en utilisant des techniques d'apprentissage parallèle. Ainsi, l'entraînement sur le corpus de Wikipedia peut prendre autour de 90 mn avec un ordinateur personnel équipé d'un processeur ÏJ quadricore de la marque Intel fonctionnant à 4x3,4 GHz, et d'une mémoire de 16 Go.

Une propriété importante de l'algorithme Word2Vec est qu'il groupe les vecteurs de mots similaires ensemble dans l'espace des vecteurs. Si l'apprentissage est effectué sur un jeu d'apprentissage suffisant, Word2Vec produit de bons résultats en prédiction sur la signification d'un mot sur la base des occurrences précédentes.

Afin d'obtenir des plongements préservant la sémantique, on utilise un algorithme de plongement développé pour restreindre l'ambiguïté dans les entités. Un tel algorithme peut être l'algorithme décrit dans l'article suivant :

Zwicklbauer, S., Seifert, C, Granitzer, M.: Doser - a knowledge-base- agnostic framework for entity disambiguation using semantic embeddings.

In: Sack, H., Blomqvist, E., d'Aquin, M., Ghidini, C, Ponzetto, S.P., Lange, C. (eds.) The Semantic Web. Latest Advances and New Domains - 13th

International Conférence, ESWC 2016, Heraklion, Crète, Greece, May 29 -

June 2, 2016, Proceedings. Lecture Notes in Computer Science, vol. 9678, pp. 182-198. Springer (2016), http://dx.doi.org/10.1007/978-3-319-34129-

3 12

Selon une mise en œuvre basée sur cet algorithme Word2Vec obtient une représentation vectorielle pour chaque mot en prédisant des séquences ce mot.

Puisqu'un graphe RDF donné ne contient pas un tel type de séquences, on créé une séquence de nœuds vk G V en conduisant une marche aléatoire à partir d'un nœud choisit également de façon aléatoire. On considère que le graphe RDF est un graphe non-orienté G=(V,E) dans lequel les nœuds V sont des ressources de la base de connaissance, et les liens E sont les propriétés de la base de connaissance, et

x, y G V,(x, y) G E <= 3p : (x, p, y) V 3p : (y, p, x) est un triple RDF dans la base de connaissance.

La marche aléatoire peut être effectuée au sein de ce graphe G. Lorsque la marche rencontrer un nœud xGV , l'identifiant de ce nœud x est ajouté dans le résultat de sortie.

Le nœud succ(x) du nœud x est choisi de façon aléatoire et uniformément équitable parmi les nœuds adjacents, c'est-à-dire avec une probabilité uniforme égale à 1/Edges0f(x), avec « EdgesOf(x) » une fonction renvoyant le nombre de liens du nœud x, c'est-à-dire le nombre de liens dans le vecteur vk.

On peut également introduire une variable aléatoire Xx qui détermine la probabilité de sauter à un nœud donné si un saut aléatoire est réalisé.

La probabilité de saut d'un premier nœud vers un second nœud x est calculée en normalisant la fréquence de liens inverse respective IEF du nœud x, IEF(x). Selon des études expérimentales effectuées par les inventeurs, on utilise le paramètre a = 0.1 pour réaliser un saut aléatoire, mais une gamme de valeurs entre 0,05 et 0,25 semble convenir et fournir un bon modèle Word2Vec.

De plus, le paramètre Θ indique le nombre de marches aléatoire dans le graphe. Il est possible d'utiliser par exemple Θ = 5 *|E|, ce qui dans l'exemple de DBpedia fournit environ 50 millions de marches aléatoires. Des valeurs plus élevés de ce paramètres ne semblent pas améliorer les plongements des entités, mais augmente le temps nécessaire pour la phase d'apprentissage. Selon un mode de réalisation de l'invention, l'approche pour la création du corpus pour des bases de connaissances RDF peut être selon l'algorithme suivant:

Ce principe d'utilisation d'informations contextuelles véhiculant un contenu sémantique peut être appliqué à d'autres mécanismes de classification par apprentissage que les réseaux de neurones.

On peut ainsi citer les algorithmes génétiques, les réseaux bayésiens, les modèles de Markov cachés, etc.

La courbe de la figure 1 illustre un résultat expérimental de mises en œuvre de l'invention.

Elle fournit un score global corrélant la précision (axe des ordonnées) et un taux de « recall » (axe des abscisses), c'est-à-dire de transactions frauduleuses correctement classifîées.

Ces courbes montrent 4 situations correspondant à des configurations différentes des couches de plongements du réseau de neurones:

- référence 1 - « no external datai » : aucune information contextuelle n'est prise en compte

- référence 2 - « tx-holiday » : des informations contextuelle relatives aux jours de congés sont pris en compte;

- référence 3 « country embed » : des informations contextuelles relatives aux pays sont prises en compte

- référence 4 - « tx_holiday+country_embed » : des informations contextuelles relatives aux jours de congés et aux pays sont prises en compte.

On remarque ainsi qu'effectivement les résultats sont meilleurs du fait de l'utilisation des informations contextuelles, notamment par l'utilisation des pays. On peut voir aussi que l'utilisation combiné de plusieurs types d'informations contextuelles est un problème délicat. Dans certains cas, il apparaît que certaines combinaisons risquent même dégrader les performances générales des classifïeurs. La combinaison des représentations vectorielles sémantiques sur les pays et les jours de congés publiquement connus (jours fériés, vacances scolaires...) semble expérimentalement démontrer de bons résultats, en particulier sur des valeurs faibles du taux de « recall », pour lesquelles une précision élevée peut être atteinte. Concrètement, cela signifie qu'un classifïeur conforme à ce mode de réalisation de l'invention obtient des bons résultats pour les transactions les plus susceptibles d'être frauduleuse, ce qui représente en pratique les situations les plus courantes.

Bien entendu, la présente invention n'est pas limitée aux exemples et au mode de réalisation décrits et représentés, mais elle est susceptible de nombreuses variantes accessibles à l'homme de l'art.