EP4028954A1 - Continuous learning for the automatic detection of fraud on an accessible service on a telecommunications network - Google Patents

Continuous learning for the automatic detection of fraud on an accessible service on a telecommunications network

Info

Publication number
EP4028954A1
EP4028954A1 EP20767562.0A EP20767562A EP4028954A1 EP 4028954 A1 EP4028954 A1 EP 4028954A1 EP 20767562 A EP20767562 A EP 20767562A EP 4028954 A1 EP4028954 A1 EP 4028954A1
Authority
EP
European Patent Office
Prior art keywords
training
transaction
fraud
transactions
predictive models
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
EP20767562.0A
Other languages
German (de)
French (fr)
Inventor
Liyun HE-GUELTON
Wissam SIBLINI
Jordan FRERY
Frédéric OBLE
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Worldline SA
Original Assignee
Worldline SA
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Worldline SA filed Critical Worldline SA
Publication of EP4028954A1 publication Critical patent/EP4028954A1/en
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/084Backpropagation, e.g. using gradient descent
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/40Authorisation, e.g. identification of payer or payee, verification of customer or shop credentials; Review and approval of payers, e.g. check credit lines or negative lists
    • G06Q20/401Transaction verification
    • G06Q20/4016Transaction verification involving fraud or risk level assessment in transaction processing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1408Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
    • H04L63/1416Event detection, e.g. attack signature detection
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • G06N20/20Ensemble learning

Definitions

  • the present invention relates to the automatic detection of fraud in a flow of transactions, in particular financial, intended for a service available on a telecommunications network.
  • a fraud detection device based on a static model would therefore quickly become obsolete: it would no longer be able to detect the new behaviors of fraudsters, and would not be able to effectively consider what behavior is. normal (i.e. not fraudulent) due to changes in normal behavior.
  • Figure I illustrates a schematic view of an architecture in which the invention may be part of one of its embodiments.
  • Figure 2 schematically shows a flowchart of an example of embodiments of the invention.
  • FIG. 1 illustrates a very high level functional context within the framework of which the invention can be implemented.
  • a user 10 transmits a transaction 13 to a financial transaction management service 11, such as a payment service, through a telecommunications network 12.
  • User 10 can be a telecommunications terminal with which an online payment order can be made. to be placed; it may also be a payment terminal located at a merchant, or even a complex system located within a banking establishment in the context of inter-bank transactions.
  • a fraud detection device 14 can be inserted upstream, between the telecommunications network 12 and the financial transaction management service 11, for example within the same server 15 (or server farm).
  • the fraud detection device 14 can use a model 16 developed by learning and then use it in prediction and generalization to classify new transactions 13 into classes such as "fraud” and "normal transaction".
  • the classifier 16 can learn and, subsequently, process new transactions. It appears that the fraud detection device 14 can detect a fraud only if the latter has similarities with those presented in the learning game.
  • this model 16 consists of a set of predictive models.
  • this set of predictive models Prior to its use to predict a class for a new inbound transaction, this set of predictive models is trained on a learning set associating transactions and labels.
  • This learning set is typically made up of real transactions that have been the subject of a study in order to assign them a label that represents a real class, i.e. if the transaction in question is an attempted fraud. or a normal transaction.
  • This study can be automatic or carried out (partially or totally) by human operators. In general, a small portion of transactions that have been alerted by the fraud detection system are processed by human operators. For other transactions, if within a certain period (typically one month) no opposition has been made by the cardholders, the transactions are considered normal.
  • the learning set therefore forms a series of transactions spanning time, as they arrive and as they are studied, allowing the attribution of a label. Typically, therefore, there is a lapse of time between the arrival of a transaction and its availability within the learning set (after its tag has been assigned).
  • the label assignments are done periodically, so that the learning set is enriched by sets of transaction / label associations.
  • the training set consists of a set of sections, each chunk, or "chunk” according to the terminology in English, consisting of associations between a transaction and a label representing a real class for said transaction
  • the learning of the model comprises the incremental updating of a set of predictive models allowing the automatic detection of fraud.
  • This update includes, for each of said sections, the duplication of an existing predictive model and its training on this section.
  • duplication of a model means that all the parameters having been fixed by the prior learning are duplicated in the new predictive model, so that the behavior of the two models are exactly the same.
  • the same transaction submitted to the two models will thus give the same predicted class (fraud or non-fraud).
  • the set of predictive models can be reduced to a single model.
  • a new predictive model is also created for each of said sections by training it thereon.
  • This predictive model obviously has the same characteristics as the other predictive models but its parameters are at “default” values, and its first learning will be on the section which has just been received. It will therefore only be representative of the immediate history of transactions, represented by the last section received.
  • the invention makes it possible to obtain a variety of models, thus making it possible to "capture" typical patterns in the flow of transactions with different periodicity.
  • the sections can be of various sizes and can depend on the overall process in which the automatic fraud detection device fits.
  • the size of the sections can be adapted according to the time required for the allocation of labels to the incoming transactions.
  • the size of the sections must be large enough to take into account the fact that the proportion of fraudulent transactions is very low. Chunks of too small a size might not contain enough fraudulent transactions (if at all) to allow effective learning.
  • the sections correspond to a duration of the order of the day. Longer durations can also be taken into account, due to the set mechanism.
  • the predictive models can be of different types.
  • they may be models of gradient stimulation ("gradient boosting" in English) such as for example implemented in the XGBoosting library.
  • these predictive models are neural networks. All the predictive models are identical in terms of architecture (number of layers, number of neurons per layer, etc.), and the different learning mechanisms for each only influence the synaptic weights of these neural networks. . A duplication of a neural network therefore means the copy, in the new network, of these synaptic weights.
  • FIG. 2 An example of a neural network 20 capable of implementing the predictive model is shown in FIG. 2.
  • Each transaction has a certain number of parameters.
  • these parameters can include: a date, an amount, a currency, an identifier of the parties to the transaction, etc.
  • a mechanism can be provided to enrich the original parameters with more contextual parameters.
  • this mechanism can consult a calendar in order to correlate the date of the transaction with an event (day of the week, holidays, calendar holidays, important sporting event, etc.).
  • event day of the week, holidays, calendar holidays, important sporting event, etc.
  • Another example can be to add aggregated parameters to the incoming transactions. It may for example be the average value of transactions for a given user, or the total value of their transactions over a given period (one month for example).
  • a buffer memory can be set up, in order to be able to perform aggregations over a given period. The buffer memory must then be dimensioned according to the periods envisaged for the aggregations.
  • the set of these parameters form a vector fi, fi, f3 ... f constituting the input of the neural network 20 (N being the number of parameters, or attributes, associated with the transactions).
  • N being the number of parameters, or attributes, associated with the transactions.
  • These parameters can be of two different types: quantitative (or numerical) or qualitative (or categorical).
  • the neural network 20 can be broken down between a preprocessing subnetwork 21, and a prediction subnetwork 22.
  • the preprocessing subnetwork makes it possible to transform the parameters fi, fi, f3 ... Î N into a vector ei, ei, e 3 ... e M so that the prediction subnetwork 22 can process l 'information.
  • the preprocessing subnetwork 21 can implement two types of preprocessing depending on the nature of the parameters.
  • the categorical parameters are provided at the input of an inclusion layer, or "rent embedding" according to the terminology in the English language, in order to transform it into a vector of real values, the dimension of which is calculated according to the formula log2 (ncat) where ncat is the number of categories that can be taken by the categorical parameter processed.
  • This vector can be obtained by simple concatenation of the outputs of the preprocessing sub-network 21 for each of the parameters associated with the transactions (that is to say contained in the transactions or being the subject of an enrichment).
  • the latter can be a multi-layer perceptron type neural network, typically with a hidden layer 221 and an output layer 222.
  • a possible sizing can be 1000 neurons for the hidden layer and 2 neurons for the output layer, with a "softmax” function for the output P.
  • the connections between neurons of the hidden layer and the layer of output can be of the “Relu” type (for “Rectified Linear Unit”).
  • the neural network 20 can be trained, for each section, according to the learning methods suitable for multi-layer perceptrons.
  • the learning aims to modify, iteratively, the synaptic weights of the network in order to minimize the error at the output, for all the transactions of a section, between a predicted probability of belonging to a class and the label associated with the respective transaction.
  • each new chunk of a training set can be used to train an existing predictive model by changing the weights of the neural network.
  • the inventors consider that in doing so, the neural network is gradually led to learn the most recent trends to the detriment of older trends. Thus, such a single neural network could not reflect both old trends, recent trends, and short term or long term trends, etc.
  • the automatic fraud detection device must take into account recent fraud patterns (newly established by fraudsters, or resulting from recent trends in the population of users), conventional patterns, which exist for a long time, old diagrams (for example which relate to the same period but one year before), etc. There are therefore different periods of these patterns (year, month, week %), but also changes in trends. Also, the predictive model must be able to be sensitive to these different situations.
  • a set of predictive models is provided, each one specializing in a sub-part of the learning set.
  • each reception of a new section generates the duplication of an existing predictive model, and its training with data from this new section.
  • the existing predictive model is the one trained with the greatest number of preceding sections, but other implementations are possible and in particular several existing predictive models can be chosen for duplication and training.
  • FIG. 3 illustrates a concrete example of a set of models Mi, M 2 , M 3 M 4 , M 5 created from a set of sections Ci, C 2 , C 3 , received successively and forming the learning set.
  • a first model Mi is trained with the data (transaction / label association) that it contains. For this first iteration, there can be no question of duplication, stricto-sensu, but we can assimilate this creation of a first model Mi to the duplication (which includes a creation) for the following iterations.
  • the model Mi is duplicated and the data from the section C2 are used for its training, thus forming a model M2 trained on the data C1 + C2. Additionally, a new M3 model is created and trained only on the C2 edge data.
  • the model M 2 is duplicated (because it is the only model trained with 2 previous sections), then this copy is trained on the data of the section C 3 to form a new model M 4 .
  • a new model M 5 is created and trained only on the data of section C 3 .
  • one or more chunks can be configured to contain data representative of a certain type of fraudulent attack.
  • a predictive model will automatically be specialized to treat this type of attack and allow its detection.
  • the set of neural networks can then be exploited to determine a classification for new transactions.
  • This operation can be done concomitantly with the learning phase described above.
  • the fraud detection device receives transactions intended for a service and will automatically determine a classification.
  • all or parts of these transactions can be studied in order to provide them with labels (actual classification, as opposed to predicted classifications, determined by neural networks). With a delay, therefore, these studied transactions (and their respective labels) form the chunks of the learning set.
  • neural networks can be continuously trained from actual transactions (after tagging). Therefore, the learning of neural networks is in sync with recent trends in the inflow of transactions.
  • the predictive models are therefore used by the automatic fraud detection device in order to detect fraud in an incoming transaction flow.
  • the set of predictive models helps determine a classification for each inbound transaction. This classification is typically a probability for the transaction to belong to each of the considered classes (fraud or normal). After thresholding, a binary classification can be obtained allowing a "fraud" or "normal” class to be assigned to the transaction.
  • a weight is associated with each predictive model, and the final classification of the Inbound transaction is determined by the weighted sum of the P classifications obtained by each predictive model. This final classification can then be used, in the case of fraud, to trigger alerts, for example, or even automatically block an incoming transaction.
  • Another strategy consists in determining a measure of proximity for each section, by correlating the transaction received with the distributions of transactions contained in these sections, and to give weights according to the measures of proximity of the sections corresponding to the respective models. Thus, if a transaction is close to those contained in a section Ci, then the predictive models which have been trained with this section Ci will obtain a higher weight.
  • a step of deleting at least one predictive model within said set of predictive models is provided.
  • This elimination step can be implemented for each new incoming section, or else according to another synchronism based on time or else on a threshold of the number of existing predictive models.
  • a first strategy can be based on a performance measurement of each model, for example identical to that used to assign weights to the different models. We can then choose to delete the model or models with the lowest performance measurement.
  • a second strategy can be based on an affinity measurement, for example determined by considering each pair of models of the set of models. If two models are sufficiently close (that is to say give very close predictions for the same set of transactions), then we can consider that they are redundant and we can eliminate one of the two.
  • the invention makes it possible to solve a large number of problems left open by the state of the art.
  • this model can be trained continuously, that is to say that each new available section can be used immediately for its training, without having to learn from zero.
  • the sections can be destroyed.
  • the mechanism thus makes it possible to comply with the various requirements for the retention of personal information, in particular the GDPR directive.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • Business, Economics & Management (AREA)
  • Computer Security & Cryptography (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Computational Linguistics (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Molecular Biology (AREA)
  • Data Mining & Analysis (AREA)
  • Biophysics (AREA)
  • Biomedical Technology (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Artificial Intelligence (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Evolutionary Computation (AREA)
  • Accounting & Taxation (AREA)
  • Computer Hardware Design (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Finance (AREA)
  • Strategic Management (AREA)
  • General Business, Economics & Management (AREA)
  • Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
  • Computer And Data Communications (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

Device (14) for the automatic detection of fraud in a stream (13) of transactions sent to a service (11) available on a telecommunications network, comprising means for training a set of predictive models (16) on a learning set, in which the learning set is made up of a set of segments, each made up of associations between a transaction and a label representing an actual class for the transaction; and, the means being configured to incrementally update a set of predictive models configured to automatically detect fraud by, for each of the segments, duplicating an existing predictive model and training it on the segment.

Description

Description Description
Titre de l'invention : [Apprentissage en continu pour la détection automatique de fraudes sur un service accessible sur réseau de télécommunication] Title of the invention: [Continuous learning for the automatic detection of fraud on a service accessible on a telecommunications network]
[0001] [DOMAINE DE L’INVENTION [0001] [FIELD OF THE INVENTION
[0002] La présente invention est relative à la détection automatique de fraudes dans un flux de transactions, notamment financières, destinées à un service disponible sur un réseau de télécommunication. The present invention relates to the automatic detection of fraud in a flow of transactions, in particular financial, intended for a service available on a telecommunications network.
[0003] Elle concerne plus particulièrement l'apprentissage des modèles prédictifs utilisés pour cette détection automatique. [0003] It relates more particularly to the learning of the predictive models used for this automatic detection.
[0004] CONTEXTE DE L’INVENTION [0004] BACKGROUND OF THE INVENTION
[0005] Beaucoup de systèmes de traitement automatique de l'information nécessitent la mise en place d'un mécanisme de détection de fraudes. C'est notamment le cas des services traitant des transactions, notamment financières, et disponibles sur les réseaux de télécommunication. Many automatic information processing systems require the establishment of a fraud detection mechanism. This is particularly the case for services dealing with transactions, in particular financial transactions, and available on telecommunications networks.
[0006] Ces services sont ceux qui permettent des paiements et des transferts de données financières, principalement entre établissements bancaires, à la suite d'une requête d'un utilisateur par exemple lors d'un achat en ligne ou sur un terminal de paiement de type "PoS" (pour "Point of Sale") via une carte de paiement. These services are those which allow payments and transfers of financial data, mainly between banks, following a request from a user, for example during an online purchase or on a payment terminal. type "PoS" (for "Point of Sale") via a payment card.
[0007] Ces transactions sont extrêmement nombreuses. Pour cette raison au moins, il est donc nécessaire que les fraudes soient détectées de façon automatique, mais aussi parce que la détection doit intervenir au plus tôt, de façon temps-réel ou quasi temps réel, afin de déclencher des blocages ou actions correctrices permettant d'éviter ou minimiser l'impact de la fraude pour les utilisateurs et établissements bancaires. These transactions are extremely numerous. For this reason at least, it is therefore necessary that the frauds be detected automatically, but also because the detection must intervene as soon as possible, in a real-time or quasi-real time manner, in order to trigger blockages or corrective actions allowing to avoid or minimize the impact of fraud on users and banking establishments.
[0008] Il existe de nombreux mécanismes de détection automatique de fraudes. En général, ils se basent sur un modèle prédictif qui permet de généraliser la classification de transactions présentés dans une phase d'apprentissage pour automatiquement déterminer des classifications pour des nouvelles transactions. Dans ce type de mécanismes, il importe naturellement que les transactions présentés en apprentissage (appelées « ensemble d'apprentissage ») soient le plus représentatif possible des transactions subséquentes à traiter. [0008] There are many mechanisms for automatically detecting fraud. In general, they are based on a predictive model which makes it possible to generalize the classification of transactions presented in a learning phase to automatically determine classifications for new transactions. In this type of mechanism, it is naturally important that the transactions presented in training (called “training set”) are as representative as possible of the subsequent transactions to be processed.
[0009] Or, par nature, un flux de transactions, notamment financières, vers un service disponible sur un réseau de télécommunication, possède des caractéristiques non stationnaires. [0010] En effet, les utilisateurs du service peuvent changer de comportement en fonction de différents paramètres, pas toujours prévisibles. Les habitudes, en termes de comportements d'achat, par exemple, évoluent en fonction des saisons, des modes, des nouvelles tendances, mais aussi du fait du déploiement de nouveaux services ou de nouvelles plateformes technologiques soutenant les transactions. En sus de ces tendances sur les moyens et longs termes, il peut y avoir des changements comportementaux ponctuels qui peuvent être prévisibles (période de Noël, de vacances...) ou non. However, by nature, a flow of transactions, in particular financial, to a service available on a telecommunications network, has non-stationary characteristics. [0010] In fact, the users of the service can change their behavior as a function of various parameters, which are not always predictable. Habits, in terms of purchasing behavior, for example, change according to the seasons, fashions, new trends, but also due to the deployment of new services or new technological platforms supporting transactions. In addition to these trends in the medium and long terms, there may be occasional behavioral changes that may be predictable (Christmas period, holidays ...) or not.
[0011] En outre, les fraudeurs, également, changent leur comportement, notamment dans un but d'augmenter l'efficacité de leurs tentatives de fraude. [0011] In addition, fraudsters also change their behavior, in particular with the aim of increasing the efficiency of their fraud attempts.
[0012] Dès lors, on comprend que les modèles prédictifs doivent prendre en compte des données récentes afin de réaliser de bonnes prédictions sur les nouvelles transactions analysées. [0012] Consequently, it is understood that the predictive models must take into account recent data in order to make good predictions on the new transactions analyzed.
[0013] Un dispositif de détection de fraudes basé sur un modèle statique serait donc rapidement obsolète : il ne serait plus à même de détecter les nouveaux comportements des fraudeurs, et ne serait pas non plus à même de considérer efficacement ce qu'est un comportement normal (c'est-à-dire non frauduleux) du fait des évolutions des comportements normaux. A fraud detection device based on a static model would therefore quickly become obsolete: it would no longer be able to detect the new behaviors of fraudsters, and would not be able to effectively consider what behavior is. normal (i.e. not fraudulent) due to changes in normal behavior.
[0014] Une solution a priori envisageable à ce problème consisterait donc à régulièrement enrichir l'ensemble d'apprentissage avec des transactions récentes et leurs classifications réelles (fraudes ou normales) attribuées classiquement par un opérateur humain, puis de faire un apprentissage des modèles prédictifs sur la base de la totalité de l'ensemble d'apprentissage. [0014] An a priori conceivable solution to this problem would therefore consist in regularly enriching the learning set with recent transactions and their real classifications (fraud or normal) classically assigned by a human operator, then to train the predictive models. based on the entire training set.
[0015] Toutefois, cette façon de faire présente au moins deux inconvénients majeurs D'une part, le volume de données devient rapidement énorme et pose des problèmes peu solubles en termes de stockage des données et en vitesse de traitement. D'autre part, les données relatives aux transactions, notamment financières, comportent des données personnelles qui sont sensibles et font l'objet de différents dispositifs légaux limitant dans le temps leur conservation. C’est notamment le cas du règlement de l’Union Européenne n°2016/679, dit règlement général sur la protection des données (RGPD). However, this way of doing things has at least two major drawbacks. On the one hand, the volume of data quickly becomes enormous and poses problems which are not very soluble in terms of data storage and in terms of processing speed. On the other hand, data relating to transactions, in particular financial data, include personal data which is sensitive and is subject to various legal measures limiting their retention over time. This is particularly the case with European Union Regulation No. 2016/679, known as the General Data Protection Regulation (GDPR).
[0016] Une telle approche n'est donc pas envisageable en déploiement réel. Such an approach is therefore not possible in real deployment.
[0017] Les solutions plus concrètement mises en œuvre se basent sur des ensembles d'apprentissage de durée plus limitée, généralement moins de deux mois, et récents afin de prendre en compte les tendances contemporaines du comportement des utilisateurs et des fraudeurs. [0018] Ce type de solutions présente donc une efficacité moyenne du fait de ces limites. The more concretely implemented solutions are based on learning sets of more limited duration, generally less than two months, and recent in order to take into account contemporary trends in the behavior of users and fraudsters. [0018] This type of solution therefore exhibits average efficiency due to these limits.
[0019] D'autres solutions consistent à réaliser un apprentissage continu, c'est-à-dire à continûment mettre à jour le modèle prédictif avec des nouvelles transactions introduites dans l'ensemble d'apprentissage (qui est du coup davantage un « flux d'apprentissage »). dès qu'une étiquette leur a été attribuée par, typiquement, un opérateur humain. [0019] Other solutions consist in carrying out continuous learning, that is to say in continuously updating the predictive model with new transactions introduced into the learning set (which is therefore more of a "flow learning ”). as soon as they have been assigned a label by, typically, a human operator.
[0020] Mais ce type de mécanismes présente également de nombreux inconvénients. But this type of mechanism also has many drawbacks.
[0021] Un inconvénient commun à ces deux types de solutions résulte d'une sensibilité trop forte aux données les plus récentes. Même en apprentissage continu, l'influence des données les plus anciennes tend à diminuer au fil du temps au profit des données les plus récentes. Dès lors, le modèle prédictif peut être capable de bien analyser les transactions conformes aux tendances récentes mais ne pourra plus interpréter des transactions conformes à un comportement plus ancien, voir totalement typique (par exemple lié à des événements annuels, tel que Noël) et donc prévisible A drawback common to these two types of solutions results from too high a sensitivity to the most recent data. Even in continuous learning, the influence of the oldest data tends to diminish over time in favor of the most recent data. Therefore, the predictive model may be able to properly analyze transactions in line with recent trends but will no longer be able to interpret transactions in line with older behavior, or even totally typical (for example linked to annual events, such as Christmas) and therefore predictable
[0022] RESUME DE L’INVENTION [0022] SUMMARY OF THE INVENTION
[0023] Il existe donc un besoin d'apporter une solution aux problèmes rencontrés par les propositions de l'état de la technique. Un des buts de l’invention est donc d’améliorer la situation de l’état de la technique. There is therefore a need to provide a solution to the problems encountered by the proposals of the state of the art. One of the aims of the invention is therefore to improve the state of the art.
[0024] BREVE DESCRIPTION DES FIGURES [0024] BRIEF DESCRIPTION OF THE FIGURES
[0025] La figure I illustre une vue schématique d’une architecture dans laquelle l’invention peut s’inscrire selon un de ses modes de réalisation. [0025] Figure I illustrates a schematic view of an architecture in which the invention may be part of one of its embodiments.
[0026] La figure 2 schématise un organigramme d’un exemple de modes de réalisation de l’invention. [0026] Figure 2 schematically shows a flowchart of an example of embodiments of the invention.
[0027] DESCRIPTION DETAILLEE DE L’INVENTION [0027] DETAILED DESCRIPTION OF THE INVENTION
[0028] La Figure I illustre un contexte fonctionnel très haut niveau dans le cadre duquel l'invention peut être mise en œuvre. Un utilisateur 10 transmet une transaction 13 à un service de gestion de transactions financières 11, comme un service de paiement, à travers un réseau de télécommunication 12. L'utilisateur 10 peut être un terminal de télécommunication avec lequel un ordre de paiement en ligne peut être placé; il peut aussi s'agir d'un terminal de paiement situé chez un commerçant, ou encore un système complexe situé au sein d'un établissement bancaire dans le cadre de transactions inter-banques. [0029] Un dispositif de détection de fraudes 14 peut être inséré en amont, entre le réseau de télécommunication 12 et le service de gestion de transactions financières 11, par exemple au sein d’un même serveur 15 (ou ferme de serveurs). [0028] Figure I illustrates a very high level functional context within the framework of which the invention can be implemented. A user 10 transmits a transaction 13 to a financial transaction management service 11, such as a payment service, through a telecommunications network 12. User 10 can be a telecommunications terminal with which an online payment order can be made. to be placed; it may also be a payment terminal located at a merchant, or even a complex system located within a banking establishment in the context of inter-bank transactions. A fraud detection device 14 can be inserted upstream, between the telecommunications network 12 and the financial transaction management service 11, for example within the same server 15 (or server farm).
[0030] Le dispositif de détection de fraudes 14 peut utiliser un modèle 16 élaboré par apprentissage puis l’utiliser en prédiction et généralisation pour classer les nouvelles transactions 13 en des classes telles que « fraude » et « transaction normale ». The fraud detection device 14 can use a model 16 developed by learning and then use it in prediction and generalization to classify new transactions 13 into classes such as "fraud" and "normal transaction".
[0031] C’est donc sur la base des exemples qui lui est soumis que le classifieur 16 peut apprendre et, par la suite, traiter des nouvelles transactions. Il en ressort que le dispositif de détection de fraudes 14 peut détecter une fraude que si celle-ci comporte des similitudes avec celles présentés dans le jeu d’apprentissage. It is therefore on the basis of the examples submitted to it that the classifier 16 can learn and, subsequently, process new transactions. It appears that the fraud detection device 14 can detect a fraud only if the latter has similarities with those presented in the learning game.
[0032] Selon un aspect de l’invention, ce modèle 16 est constitué d’un ensemble de modèles prédictifs. [0032] According to one aspect of the invention, this model 16 consists of a set of predictive models.
[0033] Préalablement à son utilisation permettant de prédire une classe pour une nouvelle transaction entrante, cet ensemble de modèles prédictifs est entraîné sur un ensemble d’apprentissage associant des transactions et des étiquettes. Cet ensemble d’apprentissage est typiquement constitué de transactions réelles qui ont fait l’objet d’une étude afin de leur attribuer une étiquette qui représente une classe réelle, c’est-à-dire si la transaction en question est une tentative de fraude ou une transaction normale. Cette étude peut être automatique ou bien effectué (partiellement ou totalement) par des opérateurs humains. En général, une petite partie des transactions qui ont fait l’objet d’alertes du dispositif de détection de fraudes sont traités par des opérateurs humain. Pour les autres transactions, si dans un certain délai (typiquement un mois) aucune opposition n’a été fait par les porteurs de cartes, les transactions sont considérées comme normales. Prior to its use to predict a class for a new inbound transaction, this set of predictive models is trained on a learning set associating transactions and labels. This learning set is typically made up of real transactions that have been the subject of a study in order to assign them a label that represents a real class, i.e. if the transaction in question is an attempted fraud. or a normal transaction. This study can be automatic or carried out (partially or totally) by human operators. In general, a small portion of transactions that have been alerted by the fraud detection system are processed by human operators. For other transactions, if within a certain period (typically one month) no opposition has been made by the cardholders, the transactions are considered normal.
[0034] L’ensemble d’apprentissage forme donc une suite de transactions s’échelonnant dans le temps, au fur et à mesure de leur arrivée et de leur étude permettant l’attribution d’une étiquette. Typiquement, donc, il existe un lapse de temps entre l’arrivée d’une transaction et sa disponibilité au sein de l’ensemble d’apprentissage (après attribution de son étiquette). [0034] The learning set therefore forms a series of transactions spanning time, as they arrive and as they are studied, allowing the attribution of a label. Typically, therefore, there is a lapse of time between the arrival of a transaction and its availability within the learning set (after its tag has been assigned).
[0035] Typiquement encore, les attributions d’étiquettes se font de façon périodique, de sorte que l’ensemble d’apprentissage est enrichie par ensembles d’associations transaction/étiquette. Autrement dit, l’ensemble d’apprentissage est constitué d’un ensemble de tronçons, chaque tronçon, ou « chunk » selon la terminologie en langue anglaise, étant constitué d'associations entre une transaction et une étiquette représentant une classe réelle pour ladite transactionTypically again, the label assignments are done periodically, so that the learning set is enriched by sets of transaction / label associations. In other words, the training set consists of a set of sections, each chunk, or "chunk" according to the terminology in English, consisting of associations between a transaction and a label representing a real class for said transaction
[0036] Selon un aspect de l’invention, l'apprentissage du modèle comporte la mise à jour incrémentale d'un ensemble de modèles prédictifs permettant la détection automatique de fraudes. Cette mise à jour comporte, pour chacun desdits tronçons, la duplication d’un modèle prédictif existant et son entrainement sur ce tronçon. According to one aspect of the invention, the learning of the model comprises the incremental updating of a set of predictive models allowing the automatic detection of fraud. This update includes, for each of said sections, the duplication of an existing predictive model and its training on this section.
[0037] La duplication d'un modèle signifie que tous les paramètres ayant été fixé par l'apprentissage préalable sont dupliqués dans le nouveau modèle prédictif, de sorte que le comportement des deux modèles soient exactement les mêmes. Une même transaction soumis aux deux modèles donnera ainsi la même classe prédite (fraude ou non-fraude). The duplication of a model means that all the parameters having been fixed by the prior learning are duplicated in the new predictive model, so that the behavior of the two models are exactly the same. The same transaction submitted to the two models will thus give the same predicted class (fraud or non-fraud).
[0038] Ainsi, la prise en compte d'un nouveau tronçon entraîne la création d'un nouveau modèle prédictif. Celui-ci étant une duplication d'un modèle existant, il conserve l'entrainement réalisé avec les tronçons précédemment acquis, Le modèle préexistant est en outre conservé (donc sans entrainement supplémentaire) afin de garder la mémoire des motifs plus anciens du flux de transactions. Thus, taking into account a new section leads to the creation of a new predictive model. This being a duplication of an existing model, it keeps the training carried out with the previously acquired sections, The pre-existing model is also kept (therefore without additional training) in order to keep the memory of the older patterns of the transaction flow .
[0039] Ainsi, on obtient, de façon itérative, un ensemble grandissant de modèles prédictifs, chacun ayant été entraîné avec un sous-ensemble différent de la succession des tronçons, et étant ainsi représentatif d'une période différente de l'historique des transactions reçus. Thus, we obtain, iteratively, a growing set of predictive models, each having been trained with a different subset of the succession of sections, and thus being representative of a different period of the history of transactions. received.
[0040] Initialement, l'ensemble des modèles prédictifs peut être réduit à un unique modèle. Initially, the set of predictive models can be reduced to a single model.
[0041] Selon un mode de réalisation de l'invention, on créé en outre un nouveau modèle prédictif pour chacun desdits tronçons en l’entraînant sur celui-ci. Ce modèle prédictif possède bien évidemment les mêmes caractéristiques que les autres modèles prédictifs mais ses paramètres sont à des valeurs « par défaut », et son premier apprentissage sera sur le tronçon qui vient d'être reçu. Il ne sera donc représentatif que de l'historique immédiat des transactions, représenté par le dernier tronçon reçu. According to one embodiment of the invention, a new predictive model is also created for each of said sections by training it thereon. This predictive model obviously has the same characteristics as the other predictive models but its parameters are at “default” values, and its first learning will be on the section which has just been received. It will therefore only be representative of the immediate history of transactions, represented by the last section received.
[0042] De la sorte, l'invention, et ses mises en œuvre, permettent d'obtenir une diversité de modèles, permettant ainsi de « capturer » des schémas types dans les flux de transactions avec différentes périodicité. In this way, the invention, and its implementations, make it possible to obtain a variety of models, thus making it possible to "capture" typical patterns in the flow of transactions with different periodicity.
[0043] Ce mécanisme d'apprentissage incrémental est rendu possible par des modèles prédictifs adaptés. [0044] Les tronçons peuvent être de tailles variées et peuvent dépendre du processus global dans lequel s'insère le dispositif de détection automatique de fraudes. Notamment, la taille des tronçons peut être adaptée selon le temps nécessaire à l'attribution des étiquettes aux transactions entrantes. This incremental learning mechanism is made possible by adapted predictive models. The sections can be of various sizes and can depend on the overall process in which the automatic fraud detection device fits. In particular, the size of the sections can be adapted according to the time required for the allocation of labels to the incoming transactions.
[0045] En outre, la taille des tronçons doit être suffisamment importante pour prendre en compte le fait que la proportion de transactions frauduleuses est très faible. Des tronçons de taille trop peu importante risqueraient ne pas contenir suffisamment de transactions frauduleuses (voire pas du tout) pour permettre un apprentissage efficace. In addition, the size of the sections must be large enough to take into account the fact that the proportion of fraudulent transactions is very low. Chunks of too small a size might not contain enough fraudulent transactions (if at all) to allow effective learning.
[0046] Selon un mode de réalisation, les tronçons correspondent à une durée de l'ordre de la journée. Des durées plus longues peuvent être prises en compte également, du fait du mécanisme ensembliste. According to one embodiment, the sections correspond to a duration of the order of the day. Longer durations can also be taken into account, due to the set mechanism.
[0047] Les modèles prédictifs peuvent être de différentes natures. Par exemple, selon un mode de réalisation, ils peuvent s’agit de modèles de stimulation de gradient (« gradient boosting » en anglais) tel que par exemple mis en œuvre dans la bibliothèque XGBoosting. The predictive models can be of different types. For example, according to one embodiment, they may be models of gradient stimulation ("gradient boosting" in English) such as for example implemented in the XGBoosting library.
[0048] Selon un autre mode de réalisation de l'invention, ces modèles prédictifs sont des réseaux de neurones. L'ensemble des modèles prédictifs sont identiques en termes d'architecture (nombre de couches, nombre de neurones par couches...), et les mécanismes d'apprentissage différents pour chacun n'influe que sur les poids synaptiques de ces réseaux de neurones. Une duplication d'un réseau de neurones signifie donc la copie, dans le nouveau réseau, de ces poids synaptiques. According to another embodiment of the invention, these predictive models are neural networks. All the predictive models are identical in terms of architecture (number of layers, number of neurons per layer, etc.), and the different learning mechanisms for each only influence the synaptic weights of these neural networks. . A duplication of a neural network therefore means the copy, in the new network, of these synaptic weights.
[0049] Un exemple de réseau de neurones 20 pouvant mettre en œuvre le modèle prédictif est représenté en figure 2. An example of a neural network 20 capable of implementing the predictive model is shown in FIG. 2.
[0050] Chaque transaction comporte un certain nombre de paramètres. Par exemple, dans le cas d'une transaction financière, ces paramètres peuvent comporter : une date, un montant, une monnaie, un identifiant des parties à la transaction, etc. Each transaction has a certain number of parameters. For example, in the case of a financial transaction, these parameters can include: a date, an amount, a currency, an identifier of the parties to the transaction, etc.
[0051] En outre, un mécanisme peut être prévu pour enrichir les paramètres originels avec des paramètres plus contextuels. In addition, a mechanism can be provided to enrich the original parameters with more contextual parameters.
[0052] A titre d'exemple illustratif, ce mécanisme peut consulter un calendrier afin de corréler la date de la transaction avec un événement (jour de la semaine, vacances, fêtes calendaires, événement sportif important, etc.). Ces paramètres enrichis permettent au dispositif de détection automatique de fraudes, reposant sur un système à apprentissage, de réaliser des meilleurs modélisations et, donc, de meilleurs généralisations pour prédire les transactions frauduleuses. As an illustrative example, this mechanism can consult a calendar in order to correlate the date of the transaction with an event (day of the week, holidays, calendar holidays, important sporting event, etc.). These enriched parameters allow the automatic fraud detection device, based on a learning system, to perform better models and, therefore, better generalizations to predict fraudulent transactions.
[0053] Un autre exemple peut être d'ajouter des paramètres agrégés aux transactions entrantes. Il peut par exemple s'agir de la valeur moyenne des transactions pour un utilisateur donné, ou bien la valeur totale de ses transactions sur une durée donnée (un mois par exemple). Pour ce faire, une mémoire tampon peut être mises en place, afin de pouvoir effectuer des agrégations sur une période donnée. La mémoire tampon doit alors être dimensionnée en fonction des périodes envisagées pour les agrégations. Another example can be to add aggregated parameters to the incoming transactions. It may for example be the average value of transactions for a given user, or the total value of their transactions over a given period (one month for example). To do this, a buffer memory can be set up, in order to be able to perform aggregations over a given period. The buffer memory must then be dimensioned according to the periods envisaged for the aggregations.
[0054] L'ensemble de ces paramètres forment un vecteur fi, fi, f3... f constituant l'entrée du réseau de neurones 20 (N étant le nombre de paramètres, ou attributs, associés aux transactions). Ces paramètres peuvent être de deux natures différentes : quantitatifs (ou numériques) ou qualitatifs (ou catégoriels). The set of these parameters form a vector fi, fi, f3 ... f constituting the input of the neural network 20 (N being the number of parameters, or attributes, associated with the transactions). These parameters can be of two different types: quantitative (or numerical) or qualitative (or categorical).
[0055] Selon un mode de réalisation, le réseau de neurones 20 peut se décomposer entre un sous-réseau de prétraitement 21, et un sous-réseau de prédiction 22. According to one embodiment, the neural network 20 can be broken down between a preprocessing subnetwork 21, and a prediction subnetwork 22.
[0056] Le sous-réseau de prétraitement permet de transformer les paramètres fi, fi, f3... ÎN en un vecteur ei, ei, e3... eM afin que le sous-réseau de prédiction 22 puisse traiter l'information. Le sous-réseau de prétraitement 21 peut mettre en œuvre deux types de prétraitements en fonction de la nature des paramètres. The preprocessing subnetwork makes it possible to transform the parameters fi, fi, f3 ... Î N into a vector ei, ei, e 3 ... e M so that the prediction subnetwork 22 can process l 'information. The preprocessing subnetwork 21 can implement two types of preprocessing depending on the nature of the parameters.
[0057] Pour les paramètres numériques, il est intéressant de les normaliser. Pour ce faire, on peut diviser leur valeur x par leur écart-type d calculé sur un ensemble de transactions passées (par exemple, celles stockées dans la mémoire tampon). On peut ensuite appliquer une fonction logarithmique. Préférentiellement, on peut ajouter 1 préalablement afin d'obtenir une valeur normalisée x dans la zone de la fonction logarithmique présentant une dérivée moindre. For the digital parameters, it is interesting to standardize them. To do this, we can divide their value x by their standard deviation d calculated on a set of past transactions (for example, those stored in the buffer memory). We can then apply a logarithmic function. Preferably, 1 can be added beforehand in order to obtain a normalized value x in the zone of the logarithmic function having a lesser derivative.
[0058] Cela permet ainsi d'obtenir une distribution de valeurs plus proche d'une courbe gaussienne, ce qui améliorer la capacité d'apprentissage du sous-réseau de neurones de prédiction 22. This thus makes it possible to obtain a distribution of values closer to a Gaussian curve, which improves the learning capacity of the prediction neural subnetwork 22.
[0059] Cette relation donnant la valeur normalisée peut s’exprimer par l’équation suivante : [0060] x = log2(x/ô + l) This relation giving the normalized value can be expressed by the following equation: [0060] x = log 2 ( x / ô + l)
[0061] Les paramètres catégoriels sont fournis en entrée d'une couche d'inclusion, ou « embedding loyer » selon la terminologie en langue anglaise, afin de le transformer en un vecteur de valeurs réelles, dont la dimension est calculée selon la formule log2(ncat) où ncat est le nombre de catégories pouvant être prises par la paramètre catégoriel traité. The categorical parameters are provided at the input of an inclusion layer, or "rent embedding" according to the terminology in the English language, in order to transform it into a vector of real values, the dimension of which is calculated according to the formula log2 (ncat) where ncat is the number of categories that can be taken by the categorical parameter processed.
[0062] Selon un exemple concret de réalisation pour la détection de fraudes dans des transactions financières, on peut compter 15 paramètres catégoriels et 60 paramètres numériques. Il y a donc N=75 paramètres fi, fi, f3....f75 en entrée du réseau de neurones 20. Après transformation par la couche d'inclusion, la taille du vecteur correspondant aux paramètres catégoriels est de 50. On obtient donc en entrée du réseau de neurones un vecteur de dimension M= 110, e, ei, e3... eiso. According to a concrete embodiment for the detection of fraud in financial transactions, there can be 15 categorical parameters and 60 numerical parameters. There are therefore N = 75 parameters fi, fi, f3 .... f75 at the input of the neural network 20. After transformation by the inclusion layer, the size of the vector corresponding to the categorical parameters is 50. We therefore obtain at the input of the neural network a vector of dimension M = 110, e, ei, e3 ... eiso.
[0063] Ce vecteur peut être obtenu par simple concaténation des sorties du sous-réseau de prétraitement 21 pour chacun des paramètres associés aux transactions (c'est-à-dire contenus dans les transactions ou faisant l'objet d'un enrichissement). This vector can be obtained by simple concatenation of the outputs of the preprocessing sub-network 21 for each of the parameters associated with the transactions (that is to say contained in the transactions or being the subject of an enrichment).
[0064] Ce vecteur forme donc l'entrée du sous-réseau de prédiction 22. Celui-ci peut être un réseau de neurones de type perceptron multi-couches, typiquement avec une couche cachée 221 et une couche de sortie 222. Selon l'exemple pratique ci-dessus, un dimensionnement possible peut être de 1000 neurones pour la couche cachée et 2 neurones pour la couche de sortie, avec une fonction « softmax » pour la sortie P. Les connexions entre neurones de la couche cachée et la couche de sortie peuvent être de type « Relu » (pour « Rectified Linear Unit »). This vector therefore forms the input of the prediction sub-network 22. The latter can be a multi-layer perceptron type neural network, typically with a hidden layer 221 and an output layer 222. According to the practical example above, a possible sizing can be 1000 neurons for the hidden layer and 2 neurons for the output layer, with a "softmax" function for the output P. The connections between neurons of the hidden layer and the layer of output can be of the “Relu” type (for “Rectified Linear Unit”).
[0065] Le réseau de neurones 20 peut être entraîné, pour chaque tronçon, selon les méthodes d'apprentissage adaptées aux perceptrons multi-couches. L'apprentissage vise à modifier, itérativement, les poids synaptiques du réseau afin de minimiser l'erreur en sortie, pour l'ensemble des transactions d'un tronçon, entre une probabilité prédite d'appartenir à une classe et l'étiquette associée à la transaction respective. The neural network 20 can be trained, for each section, according to the learning methods suitable for multi-layer perceptrons. The learning aims to modify, iteratively, the synaptic weights of the network in order to minimize the error at the output, for all the transactions of a section, between a predicted probability of belonging to a class and the label associated with the respective transaction.
[0066] Plusieurs techniques d'optimisation existent. On peut notamment citer l’algorithme de la descente du gradient stochastique (DGS ou SGD en anglais pour « Stochastic Gradient Descent »), décrit par exemple dans LeCun, Yann A., et al. " Efficient backprop. Neural networks: Tricks of the trade”, Springer Berlin Heidelberg, 2012. 9-48. On peut également citer ADAM, décrit initialement dans Diederik P. Kingma and Jimmy Lei Ba. “Adam : A method for stochastic optimizatiori 2014. arXiv:1412.6980v9, ou bien RMSprop, décrit notamment dans Tijmen Tieleman et Geoffrey Hinton, « Lecture 6.5-rmsprop: Divide the gradient by a running average of its recent magnitude ». COURSERA: neural networks for machine leaming, 4(2):26-31, 2012 Several optimization techniques exist. Mention may in particular be made of the algorithm for the descent of the stochastic gradient (DGS or SGD for “Stochastic Gradient Descent”), described for example in LeCun, Yann A., et al. “Efficient backprop. Neural networks: Tricks of the trade”, Springer Berlin Heidelberg, 2012. 9-48. We can also cite ADAM, initially described in Diederik P. Kingma and Jimmy Lei Ba. “Adam: A method for stochastic optimizatiori 2014 . arXiv: 1412.6980v9, or else RMSprop, described in particular in Tijmen Tieleman and Geoffrey Hinton, “Lecture 6.5-rmsprop: Divide the gradient by a running average of its recent magnitude ”. COURSERA: neural networks for machine leaming, 4 (2): 26-31, 2012
[0067] De façon empirique, les inventeurs ont déterminés que la méthode d’optimisation RMSprop donnait les meilleurs résultats. [0067] Empirically, the inventors have determined that the RMSprop optimization method gives the best results.
[0068] L’utilisation d’un réseau de neurones pour mettre en œuvre le modèle prédictif permet d’apporter à ce-demier un caractère incrémental. Ainsi, il est possible d’entraîner un réseau déjà préalablement entraîné afin de modifier son apprentissage. Autrement dit, chaque nouveau tronçon d’un ensemble d’apprentissage peut être utilisé pour entraîner un modèle prédictif existant en modifiant les poids du réseau de neurones. The use of a neural network to implement the predictive model makes it possible to provide the latter with an incremental character. Thus, it is possible to train an already trained network in order to modify its learning. In other words, each new chunk of a training set can be used to train an existing predictive model by changing the weights of the neural network.
[0069] Les inventeurs considèrent toutefois que ce faisant, le réseau de neurones est peu à peu amené à apprendre les tendances les plus récentes au détriment des tendances plus anciennes. Ainsi, un tel réseau de neurones unique ne pourrait pas rendre compte à la fois de tendances anciennes, de tendances récentes, et de tendances sur le court terme ou sur le long terme, etc. However, the inventors consider that in doing so, the neural network is gradually led to learn the most recent trends to the detriment of older trends. Thus, such a single neural network could not reflect both old trends, recent trends, and short term or long term trends, etc.
[0070] Plus concrètement, on comprend que le dispositif de détection automatique de fraudes doit prendre en compte des schémas de fraudes récents (nouvellement établis par les fraudeurs, ou résultants de tendances récentes de la population des utilisateurs), des schémas classiques, qui existent depuis longtemps, des schémas anciens (par exemple qui sont relatifs à la même période mais un an auparavant), etc. Il existe donc à fois des périodes différentes de ces schémas (année, mois, semaine...), mais aussi des évolutions des tendances. Aussi, le modèle prédictif doit pouvoir être sensible à ces différentes situations. More specifically, we understand that the automatic fraud detection device must take into account recent fraud patterns (newly established by fraudsters, or resulting from recent trends in the population of users), conventional patterns, which exist for a long time, old diagrams (for example which relate to the same period but one year before), etc. There are therefore different periods of these patterns (year, month, week ...), but also changes in trends. Also, the predictive model must be able to be sensitive to these different situations.
[0071] Aussi, un ensemble de modèles prédictifs est prévu, chacun étant spécialisé sur une sous-partie de l’ensemble d’apprentissage. [0071] Also, a set of predictive models is provided, each one specializing in a sub-part of the learning set.
[0072] Notamment, chaque réception d’un nouveau tronçon engendre la duplication d’un modèle prédictif existant, et son entrainement avec les données de ce nouveau tronçon. Préférentiellement, le modèle prédictif existant est celui entraîné avec le plus grand nombre de tronçons précédents, mais d’autres mises en œuvre sont possibles et notamment plusieurs modèles prédictifs existants peuvent être choisis pour duplication et entrainement. [0072] In particular, each reception of a new section generates the duplication of an existing predictive model, and its training with data from this new section. Preferably, the existing predictive model is the one trained with the greatest number of preceding sections, but other implementations are possible and in particular several existing predictive models can be chosen for duplication and training.
[0073] En outre, préférentiellement également, on créé un nouveau modèle prédictif pour chacun des tronçons reçus en l’entraînant sur celui-ci (et sur celui-ci uniquement). [0074] La figure 3 illustre un exemple concret d’un ensemble de modèles Mi, M2, M3 M4, M5 créés à partir d’un ensemble de tronçons Ci, C2, C3, reçus successivement et formant l’ensemble d’apprentissage. In addition, also preferably, a new predictive model is created for each of the sections received by training it on it (and on it only). FIG. 3 illustrates a concrete example of a set of models Mi, M 2 , M 3 M 4 , M 5 created from a set of sections Ci, C 2 , C 3 , received successively and forming the learning set.
[0075] Lorsqu’un premier tronçon Ci est reçu, un premier modèle Mi est entraîné avec les données (association transactions/étiquettes) qu’il contient. Pour cette première itération, il ne peut être question de duplication, stricto-sensu, mais on peut assimiler cette création d’un premier modèle Mi à la duplication (qui comporte une création) pour les itérations suivantes. When a first section Ci is received, a first model Mi is trained with the data (transaction / label association) that it contains. For this first iteration, there can be no question of duplication, stricto-sensu, but we can assimilate this creation of a first model Mi to the duplication (which includes a creation) for the following iterations.
[0076] Lorsqu’un deuxième tronçon C2 est reçu, le modèle Mi est dupliqué et les données du tronçon C2 sont utilisées pour son entrainement, formant ainsi un modèle M2 entraîné sur les données C1+C2. En outre, un nouveau modèle M3 est créé et entraîné uniquement sur les données du tronçon C2. When a second section C2 is received, the model Mi is duplicated and the data from the section C2 are used for its training, thus forming a model M2 trained on the data C1 + C2. Additionally, a new M3 model is created and trained only on the C2 edge data.
[0077] Lorsqu’un troisième tronçon C3 est reçu, le modèle M2 est dupliqué (car il s’agit du seul modèle entraîné avec 2 tronçons précédents), puis cette copie est entraînée sur les données du tronçon C3 pour former un nouveau modèle M4. En outre, un nouveau modèle M5 est créé et entraîné uniquement sur les données du tronçon C3. When a third section C 3 is received, the model M 2 is duplicated (because it is the only model trained with 2 previous sections), then this copy is trained on the data of the section C 3 to form a new model M 4 . In addition, a new model M 5 is created and trained only on the data of section C 3 .
[0078] Selon un mode de réalisation particulier, on peut en outre utiliser les données du tronçon C3 sur d’autres modèles existants, par exemple le modèle M3, afin de former un nouveau modèle Me. According to a particular embodiment, it is also possible to use the data of the section C 3 on other existing models, for example the model M 3 , in order to form a new model Me.
[0079] Le tableau ci-dessous résume la correspondance entre chaque modèle ainsi créé et tronçons utilisés pour leur entrainement : The table below summarizes the correspondence between each model thus created and sections used for their training:
[0080] [Tableaux 1] [0080] [Tables 1]
0081] On voit sur cet exemple qu’on obtient à la fois des modèles bénéficiant d’un apprentissage sur le long terme, de façon incrémentale, tels que M4, des modèles bénéficiant d’un apprentissage sur des données « anciennes » uniquement, tels que Mi, M2, M3, et des modèles bénéficiant d’un apprentissage sur des données uniquement récentes, tels que M5. [0082] On comprend donc que ce mécanisme répond à différentes problématiques laissées sans réponses satisfaisantes par l’état de la technique : on peut disposer de modèles spécialisés pour certaines périodes de l’historique des transactions, on peut également disposer de modèles spécialisés pour des périodes longues et pour des périodes courtes, chacun étant sensible à des schémas différents dans les flux de transactions. We see in this example that we obtain both models benefiting from long-term learning, incrementally, such as M 4 , models benefiting from learning on “old” data only, such as Mi, M 2 , M 3, and models benefiting from training on only recent data, such as M 5 . We therefore understand that this mechanism responds to various problems left without satisfactory answers by the state of the art: we can have specialized models for certain periods of the history of transactions, we can also have specialized models for long periods and for short periods, each sensitive to different patterns in transaction flows.
[0083] Il est également possible de prévoir l’ensemble d’apprentissage afin de tirer profit de cette caractéristique. Par exemple, on peut configurer un ou plusieurs tronçons afin qu’ils contiennent des données représentatives d’un certain type d’attaque frauduleuse. Ainsi, par la simple application du mécanisme de l’invention, un modèle prédictif sera automatiquement spécialisé pour traiter ce type d’attaque et permettra sa détection. It is also possible to provide the learning set in order to take advantage of this feature. For example, one or more chunks can be configured to contain data representative of a certain type of fraudulent attack. Thus, by the simple application of the mechanism of the invention, a predictive model will automatically be specialized to treat this type of attack and allow its detection.
[0084] L’ensemble de réseaux de neurones peut être alors exploité afin de déterminer une classification pour des nouvelles transactions. Cette exploitation peut se faire de façon concomitante à la phase d’apprentissage précédemment décrite. En effet, en fonctionnement typique, le dispositif de détection de fraudes reçoit des transactions destinés à un service et va automatiquement déterminer une classification. En parallèle, toutes ou parties de ces transactions peuvent être étudiés afin de leur fournir des étiquettes (classification réelle, par opposition aux classifications prédites, déterminées par les réseaux de neurones). Avec un temps de retard, donc, ces transactions étudiées (et leurs étiquettes respectives) forment les tronçons de l’ensemble d’apprentissage. Ainsi, les réseaux de neurones peuvent être continûment entraînés à partir des transactions réelles (après attribution d’étiquettes). Dès lors, l’apprentissage des réseaux de neurones est en synchronisme avec les tendances récentes du flux entrant de transactions. [0084] The set of neural networks can then be exploited to determine a classification for new transactions. This operation can be done concomitantly with the learning phase described above. Indeed, in typical operation, the fraud detection device receives transactions intended for a service and will automatically determine a classification. In parallel, all or parts of these transactions can be studied in order to provide them with labels (actual classification, as opposed to predicted classifications, determined by neural networks). With a delay, therefore, these studied transactions (and their respective labels) form the chunks of the learning set. Thus, neural networks can be continuously trained from actual transactions (after tagging). Therefore, the learning of neural networks is in sync with recent trends in the inflow of transactions.
[0085] Dans la phase d’exploitation, les modèles prédictifs sont donc utilisés par le dispositif de détection automatique de fraudes afin de détecter des fraudes dans un flux entrant de transaction. L’ensemble de modèles prédictifs permet de déterminer une classification pour chaque transaction entrante. Cette classification est typiquement une probabilité pour la transaction d’appartenir à chacune des classes envisagées (fraude ou normale). Après seuillage, on peut obtenir une classification binaire permettant d’attribuer une classe « fraude » ou « normale » à la transaction. In the exploitation phase, the predictive models are therefore used by the automatic fraud detection device in order to detect fraud in an incoming transaction flow. The set of predictive models helps determine a classification for each inbound transaction. This classification is typically a probability for the transaction to belong to each of the considered classes (fraud or normal). After thresholding, a binary classification can be obtained allowing a "fraud" or "normal" class to be assigned to the transaction.
[0086] Différentes mises en œuvre sont possibles afin de combiner les contributions P de chacun des différents modèles prédictifs 16, 20 en une classification unique. Selon un mode de réalisation, un poids est associé à chaque modèle prédictif, et la classification finale de la transaction entrante est déterminée par la somme pondérée des classifications P obtenues par chaque modèle prédictif. Cette classification finale peut ensuite être utilisée, lorsqu’il s’agit d’une fraude, pour déclencher des alertes par exemple, voire bloquer automatiquement une transaction entrante. Different implementations are possible in order to combine the contributions P of each of the different predictive models 16, 20 into a single classification. According to one embodiment, a weight is associated with each predictive model, and the final classification of the Inbound transaction is determined by the weighted sum of the P classifications obtained by each predictive model. This final classification can then be used, in the case of fraud, to trigger alerts, for example, or even automatically block an incoming transaction.
[0087] Différentes méthodes peuvent être proposées pour déterminer les poids associés à chaque modèle prédictif. Different methods can be proposed to determine the weights associated with each predictive model.
[0088] Il est par exemple possible de mesurer la performance de chaque modèle prédictif. Cette mesure peut se faire en comparant la classification prédite et les étiquettes connues pour l’ensemble d’apprentissage, un utilisant une métrique telle que Fscore, AUC, etc. It is for example possible to measure the performance of each predictive model. This measurement can be done by comparing the predicted classification and known labels for the training set, using a metric such as Fscore, AUC, etc.
[0089] On peut alors attribuer des poids en fonction de cette mesure de performance, sur une fenêtre temporelle afin que les modèles prédictifs qui présentent les meilleures performances sur un historique récent soient renforcés par rapport aux autres. We can then assign weights as a function of this performance measure, over a time window so that the predictive models which have the best performance over a recent history are reinforced with respect to the others.
[0090] Une autre stratégie consiste à déterminer une mesure de proximité pour chaque tronçon, en corrélant la transaction reçue des distributions de transactions contenues dans ces tronçons, et de donner des poids en fonction des mesures de proximités des tronçons correspondant aux modèles respectifs. Ainsi, si une transaction est proche de celles contenues dans un tronçon Ci, alors les modèles prédictifs qui ont été entraînés avec ce tronçon Ci obtiendront un poids plus élevé. Another strategy consists in determining a measure of proximity for each section, by correlating the transaction received with the distributions of transactions contained in these sections, and to give weights according to the measures of proximity of the sections corresponding to the respective models. Thus, if a transaction is close to those contained in a section Ci, then the predictive models which have been trained with this section Ci will obtain a higher weight.
[0091] Selon un mode de réalisation de l’invention, il est prévu une étape de suppression d’au moins un modèle prédictif au sein dudit ensemble de modèles prédictifs. En effet, on comprend que le procédé d’apprentissage incrémental précédemment décrit est divergeant puisqu’à chaque tronçon entrant, une pluralité de modèles prédictifs peut être créée. Il peut donc être intéressant de supprimer certaines modèles selon certaines stratégies. Cette étape de suppression peut être mise en place pour chaque nouveau tronçon entrant, ou bien selon un autre synchronisme basé sur le temps ou bien sur un seuil du nombre de modèles prédictifs existants. According to one embodiment of the invention, there is provided a step of deleting at least one predictive model within said set of predictive models. Indeed, it is understood that the incremental learning method described above is divergent since with each incoming section, a plurality of predictive models can be created. It may therefore be interesting to remove certain models according to certain strategies. This elimination step can be implemented for each new incoming section, or else according to another synchronism based on time or else on a threshold of the number of existing predictive models.
[0092] Une première stratégie peut se baser sur une mesure de performance de chaque modèle, par exemple identique à celle utilisée pour affecter des poids aux différents modèles. On peut alors choisir de supprimer le ou les modèles présentant une mesure de performance les plus faibles. [0093] Une seconde stratégie peut se baser sur une mesure d’affinité, par exemple déterminée en considérant chaque couple de modèles de l’ensemble de modèles. Si deux modèles sont suffisamment proches (c’est-à-dire donnent des prédictions très proches pour un même ensemble de transactions), alors on peut estimer qu’ils sont redondants et l’on peut supprimer l’un des deux. A first strategy can be based on a performance measurement of each model, for example identical to that used to assign weights to the different models. We can then choose to delete the model or models with the lowest performance measurement. A second strategy can be based on an affinity measurement, for example determined by considering each pair of models of the set of models. If two models are sufficiently close (that is to say give very close predictions for the same set of transactions), then we can consider that they are redundant and we can eliminate one of the two.
[0094] Ces deux stratégies peuvent être mises en place ensemble, et il est également possible de mettre en place d’autres stratégies encore. These two strategies can be implemented together, and it is also possible to implement other strategies as well.
[0095] Ainsi, selon ses modes de réalisation, l’invention permet de résoudre un grand nombre de problèmes laissés ouverts par l’état de la technique. [0095] Thus, according to its embodiments, the invention makes it possible to solve a large number of problems left open by the state of the art.
[0096] Notamment, l’ensemble des modèles prédictifs permet une diversité des modèles qui, chacun, est spécialisé, par apprentissage, dans une certaine période de l’historique des transactions. Le modèle global permet donc ainsi de détecter des motifs récents (représentatifs de tentatives de fraude), des motifs anciens, des motifs sur le long ou sur le court terme, etc. [0096] In particular, all the predictive models allow a diversity of models which, each one, is specialized, by learning, in a certain period of the history of the transactions. The global model therefore makes it possible to detect recent reasons (representative of fraud attempts), old reasons, long or short-term reasons, etc.
[0097] Par ailleurs, ce modèle peut être entraîné de façon continue, c’est-à-dire que chaque nouveau tronçon disponible peut être utilisé immédiatement pour son entrainement, sans devoir procéder à un apprentissage depuis zéro. Furthermore, this model can be trained continuously, that is to say that each new available section can be used immediately for its training, without having to learn from zero.
[0098] Egalement, une fois l’apprentissage effectué, les tronçons peuvent être détruits. Le mécanisme permet ainsi de respecter les diverses exigences en matière de conservation des informations personnelles, notamment la directive RGDP. Also, once the learning is done, the sections can be destroyed. The mechanism thus makes it possible to comply with the various requirements for the retention of personal information, in particular the GDPR directive.

Claims

Revendications Claims
[Revendication 1] [Procédé d'apprentissage pour dispositif (14) de détection automatique de fraudes dans un flux de transactions (13) destinées à un service (11) disponible sur un réseau de télécommunication (12), sur un ensemble d’apprentissage, dans lequel ledit ensemble d’apprentissage est constitué d'un ensemble de tronçons, chacun constitué d'associations entre une transaction et une étiquette représentant une classe réelle pour ladite transaction ; et, ledit procédé comporte une étape de mise à jour incrémentale d'un ensemble de modèles prédictifs (16, 20) configuré pour la détection automatique de fraudes, ladite étape comportant, pour chacun desdits tronçons, la duplication d’un modèle prédictif existant et son entrainement sur ledit tronçon. [Claim 1] [Learning method for a device (14) for automatically detecting fraud in a flow of transactions (13) intended for a service (11) available on a telecommunications network (12), on a training set , wherein said training set is made up of a set of chunks, each made up of associations between a transaction and a tag representing an actual class for said transaction; and, said method comprises a step of incrementally updating a set of predictive models (16, 20) configured for the automatic detection of fraud, said step comprising, for each of said sections, the duplication of an existing predictive model and its training on said section.
[Revendication 2] Procédé selon la revendication précédente, dans lequel on créé en outre un nouveau modèle prédictif pour chacun desdits tronçons en l’entraînant sur celui-ci. [Claim 2] Method according to the preceding claim, in which a new predictive model is further created for each of said sections by training it thereon.
[Revendication 3] Procédé selon l’une des revendications précédentes dans lequel lesdits modèles prédictifs (16) sont des réseaux de neurones multicouches (20). [Claim 3] A method according to one of the preceding claims wherein said predictive models (16) are multilayer neural networks (20).
[Revendication 4] Procédé selon la revendication précédente, dans lequel lesdits réseaux de neurones sont entraînés par un algorithme d’optimisation RMSprop. [Claim 4] A method according to the preceding claim, wherein said neural networks are trained by an RMSprop optimization algorithm.
[Revendication 5] Procédé selon l’une des revendications 3 ou 4, dans lequel lesdits réseaux de neurones (20) comportent un réseau de prétraitement (21) et un réseau de prédiction (22) comportant une couche cachée (221) et une couche de sortie (222). [Claim 5] A method according to one of claims 3 or 4, wherein said neural networks (20) comprise a preprocessing network (21) and a prediction network (22) comprising a hidden layer (221) and a layer. output (222).
[Revendication 6] Procédé selon l’une des revendications précédentes, comportant en outre une étape de suppression d’au moins un modèle prédictif au sein dudit ensemble de modèles prédictifs. [Claim 6] Method according to one of the preceding claims, further comprising a step of deleting at least one predictive model within said set of predictive models.
[Revendication 7] Procédé de détection automatique de fraudes dans un flux de transactions (13) destinées à un service (11) disponible sur un réseau de télécommunication, par classification au moyen d’un ensemble de modèles prédictifs (16), entraîné sur un ensemble d’apprentissage constitué d'un ensemble de tronçons, chacun constitué d'associations entre une transaction et une étiquette représentant une classe réelle pour ladite transaction, ledit ensemble ayant été mis à jour de façon incrémentale en, pour chacun desdits tronçons, dupliquant un modèle prédictif existant et en l’entraînant sur ledit tronçon, dans lequel un poids est associé à chacun desdits modèles prédictifs afin d’obtenir ladite classification (P) par somme pondérée des contributions de chacun desdits modèles prédictifs. [Claim 7] A method of automatically detecting fraud in a flow of transactions (13) intended for a service (11) available on a telecommunications network, by classification by means of a set of predictive models (16), trained on a learning set made up of a set of sections, each made up of associations between a transaction and a label representing a real class for said transaction, said set having been updated incrementally by, for each of said sections, duplicating a existing predictive model and by training it on said section, wherein a weight is associated with each of said predictive models in order to obtain said classification (P) by weighted sum of the contributions of each of said predictive models.
[Revendication 8] Support de stockage de données lisible par un processeur de données sur lequel est enregistré un programme comprenant des instructions pour l'exécution des étapes d'un procédé selon l'une quelconque des revendications précédente. [Claim 8] A data storage medium readable by a data processor on which is recorded a program comprising instructions for carrying out the steps of a method according to any one of the preceding claims.
[Revendication 9] Produit programme d’ordinateur comprenant des instructions pour l’exécution des étapes d’un procédé selon l'une quelconque des revendications 1 à 7 lorsque ledit programme est exécuté par un processeur de données. [Claim 9] A computer program product comprising instructions for performing the steps of a method according to any one of claims 1 to 7 when said program is executed by a data processor.
[Revendication 10] Dispositif (14) de détection automatique de fraudes dans un flux (13) de transactions destinées à un service (11) disponible sur un réseau de télécommunication, comportant des moyens pour entraîner un ensemble de modèles prédictifs (16)sur un ensemble d’apprentissage, dans lequel ledit ensemble d’apprentissage est constitué d'un ensemble de tronçons, chacun constitué d'associations entre une transaction et une étiquette représentant une classe réelle pour ladite transaction ; et, lesdits moyens étant configurés pour mettre à jour de façon incrémentale un ensemble de modèles prédictifs configuré pour la détection automatique de fraudes, en, pour chacun desdits tronçons, dupliquant un modèle prédictif existant et en l’entraînant sur ledit tronçon. [Claim 10] Device (14) for the automatic detection of fraud in a flow (13) of transactions intended for a service (11) available on a telecommunications network, comprising means for training a set of predictive models (16) on a training set, wherein said training set is made up of a set of chunks, each made up of associations between a transaction and a tag representing an actual class for said transaction; and, said means being configured to incrementally update a set of predictive models configured for automatic fraud detection, by, for each of said sections, duplicating an existing predictive model and training it on said section.
EP20767562.0A 2019-09-10 2020-09-10 Continuous learning for the automatic detection of fraud on an accessible service on a telecommunications network Pending EP4028954A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
FR1909923A FR3100643B1 (en) 2019-09-10 2019-09-10 Continuous learning for the automatic detection of fraud on a service accessible on a telecommunications network
PCT/EP2020/075264 WO2021048245A1 (en) 2019-09-10 2020-09-10 Continuous learning for the automatic detection of fraud on an accessible service on a telecommunications network

Publications (1)

Publication Number Publication Date
EP4028954A1 true EP4028954A1 (en) 2022-07-20

Family

ID=70008575

Family Applications (1)

Application Number Title Priority Date Filing Date
EP20767562.0A Pending EP4028954A1 (en) 2019-09-10 2020-09-10 Continuous learning for the automatic detection of fraud on an accessible service on a telecommunications network

Country Status (3)

Country Link
EP (1) EP4028954A1 (en)
FR (1) FR3100643B1 (en)
WO (1) WO2021048245A1 (en)

Also Published As

Publication number Publication date
WO2021048245A1 (en) 2021-03-18
FR3100643B1 (en) 2023-03-03
FR3100643A1 (en) 2021-03-12

Similar Documents

Publication Publication Date Title
US11494648B2 (en) Method and system for detecting fake news based on multi-task learning model
WO2019178914A1 (en) Fraud detection and risk assessment method, system, device, and storage medium
Agrawal et al. Customer churn prediction modelling based on behavioural patterns analysis using deep learning
Clements et al. Sequential deep learning for credit risk monitoring with tabular financial data
US11847245B2 (en) Privacy preserving data labeling
CN114547475B (en) Resource recommendation method, device and system
US11971873B2 (en) Real-time anomaly determination using integrated probabilistic system
US11636390B2 (en) Generating quantitatively assessed synthetic training data
FR3057378A1 (en) SYSTEM FOR DETECTING FRAUD IN A DATA STREAM
US20230153825A1 (en) Transaction exchange platform with a validation microservice for validating transactions before being processed
FR3048840A1 (en)
US20190340514A1 (en) System and method for generating ultimate reason codes for computer models
EP4028954A1 (en) Continuous learning for the automatic detection of fraud on an accessible service on a telecommunications network
KR20220073432A (en) Method and apparatus for analyzing risk of contract
CN115330490A (en) Product recommendation method and device, storage medium and equipment
WO2021198321A1 (en) Training of predictive models for automatically detecting frauds using training sets built in different contexts
EP3905044A1 (en) Method for automatic analysis of the transaction logs of a distributed computer system
US20240220660A1 (en) System and method for managing ai models based on downstream use of inferences
WO2018167404A1 (en) Detection by machine learning of anomalies in a set of banking transactions by optimization of the average precision
KR102688963B1 (en) Method for generating information about payment authorizations based on customer information
FR3099614A1 (en) Fraud detection mechanism in an adversarial environment
FR3090960A1 (en) AUTOMATIC LEARNING FOR FRAUD DETECTION IN A COMPUTER RESERVATION SYSTEM
WO2024133814A1 (en) Method for improving the classification of a digital document from a plurality of learning models
US20230419098A1 (en) Utilizing selective transformation and replacement with high-dimensionality projection layers to implement neural networks in tabular data environments
US20240220790A1 (en) System and method for preventing introduction of poisoned training data to artificial intelligence models

Legal Events

Date Code Title Description
STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: UNKNOWN

STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: THE INTERNATIONAL PUBLICATION HAS BEEN MADE

PUAI Public reference made under article 153(3) epc to a published international application that has entered the european phase

Free format text: ORIGINAL CODE: 0009012

STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: REQUEST FOR EXAMINATION WAS MADE

17P Request for examination filed

Effective date: 20220331

AK Designated contracting states

Kind code of ref document: A1

Designated state(s): AL AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HR HU IE IS IT LI LT LU LV MC MK MT NL NO PL PT RO RS SE SI SK SM TR

DAV Request for validation of the european patent (deleted)
DAX Request for extension of the european patent (deleted)
P01 Opt-out of the competence of the unified patent court (upc) registered

Effective date: 20230527