Introduction et motivation

Détection de la fraude en R

Bart Baesens

Professor Data Science at KU Leuven

Formateurs et formatrices

picture_Bart.png

Détection de la fraude en R

Formateurs et formatrices

picture_BartTim.png

Détection de la fraude en R

Formateurs et formatrices

picture_BartTimSebastiaan.png

Détection de la fraude en R

Qu'est-ce que la fraude ?

La fraude est un crime peu fréquent, réfléchi, subtilement dissimulé, évolutif dans le temps et souvent bien organisé, qui prend de multiples formes.

loup_dans_peau_de_mouton

Détection de la fraude en R

Impact de la fraude

  • La fraude est très rare, mais ne pas la détecter peut coûter très cher !
  • Exemples :
    • Les organisations perdent 5 % de leurs revenus annuels à cause de la fraude
    • Pertes des entreprises liées à la fraude > 3,5 billions $ par année
    • Les cartes de crédit perdent environ 7 ¢ par 100 $ de transactions en raison de la fraude
    • La fraude représente 5 à 10 % des montants d'indemnisation en assurance de dommages
Détection de la fraude en R

Types de fraude

  • Lutte contre le blanchiment d'argent
  • Chèques frauduleux
  • Fraude par carte de crédit
  • Fraude douanière
  • Contrefaçon
  • Vol d'identité
  • Fraude à l'assurance
  • Fraude hypothécaire
  • Fraude de non‑livraison
  • Fraude en ligne
  • Fraude à la garantie produit
  • Évasion fiscale
  • Fraude en télécommunications
  • Vol d'inventaire
  • Fraude de billets
  • Fraude au transport
  • Fraude par télévirement
  • Fraude à l'indemnisation des travailleurs
Détection de la fraude en R

Caractéristiques clés des modèles d'analytique de la fraude performants

  • Précision statistique

robinhood

Détection de la fraude en R

Caractéristiques clés des modèles d'analytique de la fraude performants

  • Précision statistique
  • Interprétabilité

rapport_minoritaire

Détection de la fraude en R

Caractéristiques clés des modèles d'analytique de la fraude performants

  • Précision statistique
  • Interprétabilité
  • Conformité réglementaire

regulatory

Détection de la fraude en R

Caractéristiques clés des modèles d'analytique de la fraude performants

  • Précision statistique
  • Interprétabilité
  • Conformité réglementaire
  • Impact économique

dagobert

Détection de la fraude en R

Caractéristiques clés des modèles d'analytique de la fraude performants

  • Précision statistique
  • Interprétabilité
  • Conformité réglementaire
  • Coût économique
  • Allier l'expertise humaine à des techniques axées sur les données

homme_machine

Détection de la fraude en R

Défis d'un modèle de détection de fraude

  • Déséquilibre
    • p. ex., en fraude par carte de crédit : < 0,5 % de fraudes typiquement

meule_de_foin

Détection de la fraude en R

Défis d'un modèle de détection de fraude

  • Déséquilibre
    • p. ex., en fraude par carte de crédit : < 0,5 % de fraudes typiquement
  • Efficacité opérationnelle
    • p. ex., en fraude par carte de crédit : < 8 secondes pour décider

eclair

Détection de la fraude en R

Défis d'un modèle de détection de fraude

  • Déséquilibre
    • p. ex., en fraude par carte de crédit : < 0,5 % de fraudes typiquement
  • Efficacité opérationnelle
    • p. ex., en fraude par carte de crédit : < 8 secondes pour décider
  • Éviter d'importuner de bons clients

bon_client

Détection de la fraude en R

Données déséquilibrées

  • Après une grosse tempête, une compagnie d'assurance a reçu de nombreuses réclamations

    • Les réclamations frauduleuses sont étiquetées 1 et les légitimes 0
  • Le pourcentage de fraudes peut être obtenu avec

    • table() et prop.table()
  • prop.table(table(...)) pour calculer la proportion de fraude

prop.table(table(fraud_label))
     0      1
0.9911 0.0089
Détection de la fraude en R

Visualiser le déséquilibre avec un diagramme circulaire

labels <- c("no fraud", "fraud")
labels <- paste(labels, round(100 * prop.table(table(fraud_label)), 2), "%")
pie(table(fraud_label), labels, col = c("blue", "red"),
      main = "Pie chart of storm claims")

reclamations_tempete

Détection de la fraude en R

Matrice de confusion

Utilisée pour évaluer un modèle de détection de fraude :

matrice_de_confusion

Détection de la fraude en R
  • Supposons qu'aucun modèle n'est utilisé ; toutes les réclamations sont jugées légitimes :
predictions <- rep.int(0, times = nrow(claims))
predictions <- factor(predictions, levels = c("no fraud", "fraud"))
  • Fonction confusionMatrix() du paquet caret :
library(caret)
confusionMatrix(data = predictions, reference = fraud_label)
             Reference
 Prediction    0   1
            0 614  14
            1   0   0                                   
 Accuracy : 0.9777
Détection de la fraude en R

Coût total de l'absence de détection : exemple de réclamations

  • Coût total de la fraude : somme des montants frauduleux
  • Coût total si aucune fraude n'est détectée :
    > total_cost <- sum(claim_amount[fraud_label == "fraud"])
    > print(total_cost)
    
2301508
Détection de la fraude en R

Passons à la pratique !

Détection de la fraude en R

Preparing Video For Download...