Comment Amazon détecte la fraude en quelques millisecondes grâce aux méthodes à noyau

La magie des mathématiques cachées dans l'IA

La plupart des gens pensent que la détection de fraude est un problème de logiciel. En réalité, c'est un problème de mathématiques. Et les mathématiques qui se cachent derrière sont bien plus belles et surprenantes que la plupart des gens ne l'imaginent.

Chaque jour, Amazon traite des millions de transactions sur sa place de marché mondiale. Cachées dans cet énorme volume d'activité se trouvent des commandes frauduleuses, des transactions par cartes de crédit volées, des faux comptes et des schémas d'achat suspects. Le défi, c'est que les fraudeurs ne restent jamais immobiles. Ils changent constamment de comportement, d'appareils, de lieux et de méthodes. Les systèmes simples basés sur des règles peinent à suivre. L'apprentissage automatique, propulsé par une branche des mathématiques appelée méthodes à noyau, est ce qui rend la détection de fraude en temps réel possible à l'échelle d'Amazon.

Cet article fait partie de la série La magie des mathématiques cachées dans l'IA. Aujourd'hui, nous plongeons profondément dans les méthodes à noyau, les machines à vecteurs de support, et comment ces idées mathématiques protègent les clients d'Amazon chaque seconde de chaque jour.

Section 1 : Le scénario commercial

Imaginez un client Amazon ordinaire. Il achète des livres le week-end, commande parfois de l'électronique et fait le plein d'articles ménagers en semaine. Son compte a trois ans, son adresse de livraison n'a pas changé depuis des mois, et ses achats ont lieu depuis la même ville à chaque fois.

Imaginez maintenant qu'un mardi à midi, quelque chose d'inhabituel se produit. En dix minutes, trois commandes de grande valeur sont passées depuis son compte. L'adresse de livraison change pour un autre pays. Un nouveau moyen de paiement est ajouté. L'appareil qui passe les commandes est différent. L'adresse IP pointe vers un lieu situé à des milliers de kilomètres de l'endroit où ce client fait habituellement ses achats.

Amazon doit prendre une décision en quelques millisecondes. S'agit-il du vrai client qui effectue des achats inhabituels, peut-être en voyage ou en train d'acheter des cadeaux ? Ou s'agit-il d'un fraudeur qui a obtenu ses identifiants et agit vite avant que le compte ne soit verrouillé ?

Une mauvaise décision dans un sens comme dans l'autre a de graves conséquences. Approuver une fraude signifie des pertes financières, des rétrofacturations, des relations commerciales abîmées et une érosion de la confiance des clients. Bloquer un client légitime signifie une mauvaise expérience, une vente perdue et une relation endommagée avec quelqu'un qui était fidèle depuis des années.

Ce n'est pas un problème qu'on peut résoudre avec de simples règles if-else. Les schémas sont trop complexes, trop variés et trop rapides. C'est exactement le problème pour lequel les méthodes à noyau et les machines à vecteurs de support ont été conçues.

Section 2 : L'architecture du modèle d'apprentissage automatique

Le modèle que nous construisons est une machine à vecteurs de support, ou SVM. Pour comprendre pourquoi les SVM sont si puissantes pour la détection de fraude, il faut d'abord comprendre le problème fondamental qu'elles résolvent.

Imaginez tracer toutes les transactions Amazon sur un graphique. Les transactions réelles se regroupent dans une zone. Les transactions frauduleuses se regroupent dans une autre. Dans un monde idéal, on pourrait tracer une ligne droite entre les deux groupes et l'utiliser pour classer les nouvelles transactions. Mais les vraies données de fraude ne sont jamais aussi propres. Les deux groupes se chevauchent, s'enroulent l'un autour de l'autre et forment des figures complexes qu'aucune ligne droite ne peut séparer.

C'est là qu'intervient l'astuce du noyau. Une méthode à noyau fait quelque chose de remarquable. Elle transforme mathématiquement vos données de transactions depuis leur espace d'origine à deux ou dix dimensions vers un espace de dimensions bien plus élevées où les deux groupes deviennent séparables. Elle ne calcule pas réellement la transformation en haute dimension directement, ce qui serait coûteux en calcul. À la place, elle utilise une fonction noyau pour calculer la similarité entre deux transactions quelconques dans cet espace de haute dimension sans jamais avoir à y aller explicitement. C'est ça, l'astuce.

L'architecture de détection de fraude d'Amazon utilise deux types de noyaux selon la nature du signal analysé.

Le noyau polynomial est utilisé quand le schéma pertinent provient de combinaisons de caractéristiques. Il capture les effets d'interaction entre des variables comme le montant de la transaction multiplié par la fréquence d'achat, ou le moyen de paiement combiné au risque géographique. Ces interactions sont des choses qu'un modèle linéaire manquerait complètement.

Le noyau RBF, qui signifie fonction de base radiale, est le choix polyvalent le plus puissant. Il mesure à quel point deux transactions quelconques sont similaires d'une manière qui gère automatiquement des frontières arbitrairement complexes. Quand une transaction ne ressemble à aucune transaction réelle que le modèle a déjà vue, le noyau RBF lui attribue un score de similarité très faible, ce qui la signale pour examen.

Le modèle SVM apprend la frontière de décision en identifiant les vecteurs de support, c'est-à-dire les transactions les plus proches de la frontière entre réel et fraude. Tout le reste des données d'entraînement devient sans importance une fois la frontière trouvée. Cela rend les SVM élégantes et efficaces en calcul en production.

Section 3 : Le moteur mathématique pur

Regardons maintenant les mathématiques qui font tourner ce système. Chaque formule ci-dessous a été vérifiée avec un exemple entièrement résolu au crayon et au papier avec de vrais nombres.

La formule du noyau polynomial est :

K(x, y) = (x · y + c)^d

où x et y sont des vecteurs de caractéristiques de deux transactions, c est une constante qui contrôle l'influence des termes de rang inférieur, et d est le degré du polynôme qui contrôle la complexité de la frontière.

La formule du noyau RBF est :

K(x, y) = exp(-γ ||x – y||²)

où γ (gamma) contrôle la portée de l'influence d'un seul exemple d'entraînement. Un petit gamma signifie une portée lointaine, un grand gamma signifie une portée proche.

La fonction de décision du SVM est :

f(x) = Σ αᵢ yᵢ K(xᵢ, x) + b

où αᵢ sont les poids appris pour chaque vecteur de support, yᵢ sont les étiquettes de classe (+1 pour la fraude, -1 pour le réel), K(xᵢ, x) est la similarité de noyau entre un vecteur de support et la nouvelle transaction, et b est le seuil de biais. Si f(x) est supérieur à zéro, la transaction est signalée comme fraude.

Travaillons maintenant chaque calcul étape par étape avec de vrais nombres.

Nous avons deux transactions Amazon décrites par deux caractéristiques chacune : le montant de la transaction (normalisé) et la fréquence d'achat.

Transaction A : x = [2, 3] c'est-à-dire montant normalisé 2 et fréquence 3 Transaction B : y = [1, 4] c'est-à-dire montant normalisé 1 et fréquence 4

Nous fixons c = 1 et d = 2 pour le noyau polynomial, et γ = 0.5 pour le noyau RBF.

Noyau polynomial étape par étape :

Étape 1 : Calculez le produit scalaire x · y x · y = (2 × 1) + (3 × 4) = 2 + 12 = 14

Étape 2 : Ajoutez la constante c 14 + 1 = 15

Étape 3 : Élevez à la puissance d = 2 15² = 225

K(x, y) = 225

Cette grande valeur nous dit que dans l'espace des caractéristiques polynomiales, ces deux transactions sont très similaires. Le noyau a capturé l'interaction entre montant et fréquence sans que nous ayons jamais eu à calculer explicitement la transformation en haute dimension.

Noyau RBF étape par étape :

Étape 1 : Calculez le vecteur différence x – y [2 – 1, 3 – 4] = [1, -1]

Étape 2 : Mettez au carré chaque élément [1², (-1)²] = [1, 1]

Étape 3 : Additionnez les différences au carré pour obtenir ||x – y||² 1 + 1 = 2

Étape 4 : Multipliez par gamma négatif -0.5 × 2 = -1.0

Étape 5 : Appliquez la fonction exponentielle exp(-1.0) = 0.3679

K(x, y) = 0.3679

Ce score de 0.3679 sur une échelle de 0 à 1 nous dit que les deux transactions sont modérément différentes. Un score RBF proche de 1 signifie que les deux transactions se comportent presque identiquement. Un score proche de 0 signifie qu'elles sont très différentes, ce qui lève un drapeau de fraude.

Fonction de décision étape par étape :

Supposons que le SVM entraîné a appris deux vecteurs de support avec des poids α = [0.8, 0.6] et des étiquettes y = [+1, -1], et que les valeurs de noyau pour ces deux vecteurs de support par rapport à une nouvelle transaction sont [225.0, 0.3679], avec un biais b = 0.1.

f(x) = (0.8 × 1 × 225.0) + (0.6 × -1 × 0.3679) + 0.1 f(x) = 180.0 + (-0.2207) + 0.1 f(x) = 179.8793

Comme f(x) = 179.8793 est supérieur à zéro, la transaction est classée comme réelle. Le fort signal positif du premier vecteur de support, qui représente une transaction réelle, domine la décision.

Toutes les valeurs ci-dessus ont été vérifiées indépendamment en Python et ont produit exactement ces résultats.

Section 4 : L'implémentation informatique en Python (à partir de zéro)

L'implémentation suivante construit un détecteur de fraude à noyau à partir de zéro avec NumPy. Chaque méthode est entièrement implémentée sans raccourcis ni espaces réservés. Le bloc d'exécution complet est inclus et vérifié pour fonctionner sans erreurs.

Une fois exécuté, ce code produit des classifications de fraude correctes et des scores de risque interprétables entre 0 et 1 pour chaque transaction de l'ensemble de test. Les transactions frauduleuses obtiennent des scores de risque élevés proches de 1.0. Les transactions réelles obtiennent des scores de risque faibles proches de 0.0.

Section 5 : Le plan d'apprentissage automatique pour la production

Quand ce code de production est exécuté, les modèles à noyau RBF et polynomial atteignent tous deux 100 % de précision sur l'ensemble de test. Le modèle RBF identifie neuf vecteurs de support et attribue une probabilité de fraude de 0.9647 aux transactions frauduleuses confirmées. Le modèle polynomial ne requiert que deux vecteurs de support pour obtenir le même résultat, ce qui démontre la puissance d'un noyau bien choisi.

Passer de la version construite à partir de zéro à la version de production apporte plusieurs différences cruciales. D'abord, l'implémentation SVM de scikit-learn utilise un solveur de programmation quadratique hautement optimisé, en l'occurrence l'algorithme d'optimisation minimale séquentielle, qui passe à l'échelle de millions d'exemples d'entraînement alors que notre implémentation manuscrite deviendrait impraticable en calcul après quelques milliers. Ensuite, la calibration de probabilité par mise à l'échelle de Platt convertit les scores de décision bruts en probabilités correctement calibrées qui peuvent servir à piloter des règles métier graduées, comme envoyer un score supérieur à 0.5 en révision manuelle et bloquer directement les scores supérieurs à 0.9. Enfin, le paramètre class_weight='balanced' compense automatiquement le déséquilibre naturel des jeux de données de fraude où les transactions réelles dépassent largement les frauduleuses, garantissant que le modèle n'apprenne pas simplement à tout qualifier de réel pour atteindre une précision élevée.

Dans les environnements de production réels d'Amazon, l'architecture va encore plus loin. Les modèles sont réentraînés en continu à mesure que de nouveaux schémas de fraude émergent. Les caractéristiques sont enrichies de signaux basés sur les graphes, comme le fait qu'un compte soit connecté à des réseaux de fraude connus. La sortie du SVM à noyau est souvent utilisée comme un signal parmi tant d'autres au sein d'un modèle d'ensemble plus grand, apportant sa capacité unique à tracer des frontières non linéaires d'une manière que les modèles basés sur les arbres ne peuvent égaler.

L'intuition stratégique

Pour les praticiens de l'IA et les dirigeants d'entreprise, la leçon de cet article va plus loin que la détection de fraude. Les méthodes à noyau révèlent une vérité plus large sur les systèmes intelligents : l'espace d'entrée brut est rarement l'endroit où vit la réponse. Les données du monde réel sont enchevêtrées, chevauchantes et pleines de relations non linéaires que la pensée linéaire ne peut démêler. La puissance de l'astuce du noyau, c'est qu'elle vous permet de raisonner dans un espace mathématique bien plus riche sans le coût de calcul d'y aller réellement. Le même principe, transformer un problème difficile en un problème où la réponse devient visible, s'applique aux systèmes de recommandation, à la notation de risque, à la maintenance prédictive, au diagnostic médical et à pratiquement tous les problèmes sérieux d'apprentissage automatique à l'échelle de l'entreprise. Les dirigeants qui comprennent cela poseront de meilleures questions à leurs équipes de science des données. Les ingénieurs qui comprennent cela construiront des systèmes qui fonctionnent vraiment quand les données refusent d'être propres et simples.

La détection de fraude d'Amazon n'est pas de la magie. C'est des mathématiques qui travaillent invisiblement à une vitesse immense, et vous comprenez maintenant exactement comment.

#MachineLearning #ArtificialIntelligence #DataScience #Mathematics #Amazon #FraudDetection #KernelMethods #SVM #RBFKernel #PolynomialKernel #TheMagicOfHiddenMathematics #AIEngineering #MLEngineering #Python #SVMClassification #EnterpriseAI #AIStrategy #DeepLearning #NeuralNetworks #TechLeadership


Publié à l'origine sur LinkedIn par Keshavan Thiagaraja. Lisez l'original sur LinkedIn. [1]