DÉTECTION DE FRAUDE


Comment estimer la légitimité d'une transaction e-commerce ?


Bienvenue dans G4, l'outil de détection et d'analyse de transaction.


{{brizy_dc_image_alt imageSrc=

Objectif : réaliser un produit au stade "minimum viable" (MVP) dans le domaine de la détection de fraude en lien avec les transactions e-commerce

Blueprint


  • l'application est destinée à des analystes dans le domaine bancaire


  • à partir du jeu de données il s'agit de définir et d'entraîner un modèle de machine learning (apprentissage automatique) pour qu'il apprenne à identifier une transaction frauduleuse

  • l'analyste doit avoir la possibilité d'utiliser le modèle avec une transaction isolée (fichier json) ou bien un ensemble de transactions (fichier csv)


  • l'application doit générer un tableau de bord fournissant à l'analyste l'ensemble des facteurs (de risque ou de confiance) ayant influencé le modèle dans l'établissement de sa prédiction.





AWS

  • Le modèle est stocké dans un bucket S3 de la plateforme cloud Amazon Web Services (AWS)

Huggingface

  • L'application de tableau de bord est réalisée via Streamlit (Python) et hébergée sur la plateforme HuggingFace

Cliquer dans l'image pour zoomer

{{brizy_dc_image_alt imageSrc=

Evolutions possibles

Les systèmes de détection de fraude sont bien évidemment sollicités en temps réel.

Cela étant, même des transactions ayant été approuvées peuvent être rejetées à posteriori quelques minutes, ou heures, voire même jusqu'à 1 ou 2 jours après une première validation du système. Dans ce cas, c'est (encore) un agent humain qui a été en charge, à partir des informations à sa disposition, d'invalider la transaction. C'est pourquoi il est très important que l'analyste dispose d'indicateurs précis, de nature à l'assister dans sa prise de décision.

C'est tout l'objet de l'application qui a été développée.

Cela étant, voici quelques pistes d'amélioration :

  • même si un important travail de features engineering a été effectué (cf screenshot ci-après), de nouvelles variables pourraient contribuer à l'amélioration des performances du modèle.
  • permettre l'ajustement de seuils par les équipes d'analystes pourrait être intéressant : "que m'aurait prédit le modèle si le seuil pour la variable x avait été réhaussé ou abaissé ?"; les personnes du métier devrait pouvoir corriger ou tester des hypothèses.
  • la mise en place d'un serveur MLOps pour gérer le versioning des modèles.
  • la mise en place, pour comparaison de résultats, d'un modèle concurrent au modèle choisi (XGBOOST); dans le domaine de la détection de fraude, les réseaux antagonistes génératifs (GAN) sont utilisés. Ce modèle fait s'affronter deux réseaux : un générateur qui crée des données et un discriminateur qui tente de déceler le vrai du faux. Cette compétition permanente pousse le générateur à produire des résultats de plus en plus réalistes, jusqu'à tromper l'œil humain.


{{brizy_dc_image_alt imageSrc=
{{brizy_dc_image_alt imageSrc=
{{brizy_dc_image_alt imageSrc=