Finotor est une startup fintech fondée en 2008. La société propose une plateforme de gestion financière qui intègre l'intelligence artificielle pour automatiser et optimiser les processus financiers des entreprises.
Le projet présentait deux défis principaux : la préparation des données et l'optimisation des modèles d'IA. Les données financières provenaient de sources multiples avec des formats non standardisés, des montants et dates incohérents, et des historiques incomplets. Le système devait garantir un traitement en temps réel précis tout en respectant les normes du secteur financier.
Notre système traite des transactions financières brutes, composées de différents éléments qu'il faut analyser et classifier.
Données d'entrée Les transactions se présentent sous forme de lignes bancaires contenant :
Un libellé bancaire non standardisé
Un montant
Une date d'opération
Des informations bancaires (BIC, IBAN, etc.)
Éléments à prédire Pour chaque transaction, nous devons identifier quatre informations clés :
Type de transaction Il s'agit de classifier la nature de l'opération : virement, prélèvement, paiement par carte. Cette information est généralement présente dans le libellé mais sous différentes formes selon les banques.
Catégorie Nous devons déterminer l'objectif de la transaction : salaire, loyer, fourniture, etc. Cette catégorisation doit se faire en analysant le contexte complet de la transaction, car le libellé seul n'est pas toujours suffisant.
ID Client et Fournisseur Pour chaque transaction, nous devons identifier :
L'entité cliente qui effectue ou reçoit le paiement
L'entité fournisseur concernée Ces identifications nécessitent de faire correspondre les libellés bancaires, souvent peu standardisés, avec notre référentiel d'entités.
Notre défi principal réside dans la non-standardisation des données bancaires et la nécessité de comprendre le contexte de chaque transaction pour une classification précise.
Notre solution s'appuie sur trois fonctionnalités principales :
Le rapprochement bancaire automatique associe intelligemment les transactions et détecte les anomalies en temps réel, réduisant significativement les erreurs de traitement.
L'analyse prédictive génère des recommandations basées sur l'historique des données et permet un suivi des KPIs via des tableaux de bord.
La gestion de trésorerie optimise les flux financiers avec des alertes en temps réel et des suggestions automatisées.
Notre développement s'est structuré en trois étapes :
Préparation des données
Développement d'un pipeline de nettoyage pour standardiser formats et données
Gestion des valeurs manquantes et unification des catégorisations
Validation rigoureuse pour garantir l'intégrité des données financières
Entraînement des modèles
Tests comparatifs entre LLM, XGBoost et réseau de neurones
Sélection finale des réseaux de neurones pour leur meilleure performance
Optimisation continue des hyperparamètres
Phase de test
Validation croisée sur des jeux de données représentatifs
Tests en conditions réelles avec des métriques financières spécifiques
Ajustements itératifs basés sur les retours d'expérience
Ingénieurs IA spécialisés en Machine Learning
Product Owner
Lead developper
Le développement s'est déroulé en trois phases :
Une phase d'exploration a permis de comparer les différentes approches d'IA et de valider la supériorité des réseaux de neurones pour notre cas d'usage.
Le développement itératif a permis d'affiner progressivement les performances du système en conditions réelles.
Le déploiement s'est fait graduellement pour assurer une bonne adoption par les utilisateurs.
Notre analyse comparative a évalué trois approches : réseaux de neurones, XGBoost et LLM. Les réseaux de neurones se sont clairement démarqués avec des performances supérieures sur tous les aspects clés :
Pour la classification du type de transaction, les réseaux de neurones atteignent 98.3% de précision avec seulement 0.22% de cas incertains, surpassant le LLM (92%) et XGBoost (96%).
Sur l'identification des catégories, plus complexe, nos réseaux de neurones maintiennent 84.44% de précision, contre 80% pour XGBoost et seulement 59% pour le LLM. En excluant les cas incertains (seuil de confiance >65%), la précision monte à 92.9%.
L'identification des IDs clients et fournisseurs représentait le plus grand défi. Nos réseaux de neurones atteignent respectivement 76.51% et 77.30% de précision, largement devant XGBoost (65% et 48%) et le LLM (6.67% et 31.65%).
Un point crucial : nos réseaux de neurones génèrent significativement moins de cas incertains que XGBoost, tout en maintenant une précision supérieure. Cette combinaison de haute précision et de faible incertitude est idéale pour une application financière nécessitant fiabilité et exhaustivité.
Cette analyse approfondie confirme la supériorité des réseaux de neurones pour notre cas d'usage, offrant le meilleur compromis entre précision, certitude et couverture des différents aspects de la classification.
Le système atteint 98% de précision dans ses prédictions et traite plus de 90 000 transactions. L'automatisation couvre 85% des processus financiers avec une réduction des erreurs de 75%.
Nous travaillons actuellement sur l'intégration d'un chatbot pour le support client et le développement de nouvelles fonctionnalités d'automatisation pour enrichir la plateforme.