Des champs d’application bien différenciés
Les mots “corrélation” et “causalité” sont souvent utilisés de manière égale, bien qu’ils aient des significations très différentes.
La corrélation indique une relation : deux variables sont corrélées lorsqu’elles affichent une tendance à la hausse ou à la baisse. Exemple : la consommation de mozzarella est corrélée au nombre de doctorats en ingénierie civile, mais l’un n’est sûrement pas la cause de l’autre.
La causalité caractérise un lien de cause à effet. La cause est en partie responsable de l’effet et l’effet dépend en partie de la cause. Exemple : une nourriture trop sucrée peut être une des causes de surpoids.
La corrélation étant une interprétation statistique déjà largement décrite, nous nous attacherons ici à partager quelques champs d’application de l’analyse de causalité, et plus particulièrement le mécanisme d’inférence causale.
L’inférence causale est un processus visant à tirer une conclusion entre le lien de causalité et les conditions d’occurrence d’un effet.
La méthode “logique” pour décrire ce processus est simple :
Il s’agit dans un premier temps d’identifier le “champ des possibles”, c’est-à-dire les variables descriptives liées aux causes potentielles ;
Dans un second temps, de comprendre l’influence de ces causes sur la variable d’effet (ou variable target), et plus exactement le lien de causalité à partir des conditions d’occurrence d’un effet ;
Une fois ce lien établit, il est alors possible d’utiliser cette connaissance pour réaliser des analyses prescriptives.
Note : rappel des niveaux de maturité
Aucune analyse : on parle ici des entreprises n’ayant pas de processus analytique en place ;
Analyse descriptive : nous permet de savoir ce qu’il s’est passé en rassemblant et visualisant les données historiques ;
Analyse de diagnostic : identifie les modèles et dépendances dans les données disponibles, c’est-à-dire explique pourquoi quelque chose s’est produit ;
Analyse prédictive : crée des prévisions probables de ce qui se passera dans le futur, en utilisant des techniques de Machine Learning pour exploiter de gros volumes de données ;
Analyse prescriptive : fournit des options d’optimisation, une aide à la décision et des informations sur la manière d’obtenir le résultat souhaité.
Initialement les principaux champs d’application de l’inférence causale étaient scientifiques : économie, médecine, biologie, génétique, sciences sociales… Aujourd’hui, son usage se généralise pour toucher des secteurs divers comme l’industrie du jeu, le retail ou l’e-commerce, ou plus généralement les applications liées aux “jumeaux numériques” (Digital Twin) dont l’objet est de créer des simulations numériques de phénomènes complexes.
Les limites d’une démarche expérimentale
L’analyse de causalité est un domaine qui se prête particulièrement bien à l’expérimentation, dans une approche purement scientifique.
Le phénomène étudié est d’abord reproduit dans plusieurs environnements dans des conditions identiques ;
L’analyste/scientifique modifie ensuite dans l’un des environnements une ou plusieurs variables pour comprendre leur influence sur l’effet recherché (la variable target).
Néanmoins, il existe en pratique de nombreuses situations où ce scénario n’est pas applicable :
Si les expériences sont contraires à l’éthique (exemple : vous ne pouvez pas faire fumer un enfant pour tester si la cigarette peut être une cause de cancer infantile) ;
Si la cause ne dépend pas de vous (exemple : un concurrent lance un produit et vous souhaitez mesurer son effet sur vos ventes) ;
Si la réalisation de l’expérience est trop coûteuse
Si le phénomène à observer est trop complexe.
Lorsque l’expérience n’est pas envisageable, l’utilisation de la donnée est un recours indispensable – elle permet de simuler des phénomènes complexes, facilement scalables, et de manière bien moins coûteuse (ressources humaines, logistique, temps d’étude…) qu’une expérimentation plus classique.
Note : les deux approches peuvent être combinées pour maximiser la fiabilité des résultats, et éprouver la robustesse des modèles data-driven.
Comment implémenter un moteur d’inférence causale ?
Plusieurs méthodes scientifiques permettent de construire les relations de causalité à partir de données historiques. La plus connue est celle de « PC » (Peter & Clark), qui est basée sur un algorithme de contraintes.
L’objectif est de construire initialement un graphe entièrement connecté (modélisant toutes les relations théoriques entre les variables) et d’utiliser des tests d’indépendance conditionnelle pour simplifier le graphe causal jusqu’à ce qu’il soit cohérent avec les données observées.
Note : Dans cette approche, l’absence de liaison entre les 2 nœuds du graphe présente également une information précieuse – il est important de déterminer que deux variables n’ont pas de lien de causalité.
La méthode consiste à rationaliser les résultats d’exploration pour répondre à des questions spécifiques (cibler l’effet à observer). Les informations causales extraites des données brutes sont modélisées sous la forme d’un “diagramme causal”, c’est-à-dire un graphe orienté qui affiche les relations causales entre les variables du modèle. Un diagramme causal comprend un ensemble de variables (ou nœuds). Chaque nœud est relié par une flèche à un ou plusieurs autres nœuds sur lesquels il exerce une influence causale ; un niveau de probabilité de cette influence y est associé.
Le parcours du graphe entre deux nœuds suivant des flèches causales est un “chemin”.
Pour les phénomènes complexes, nous recommandons fortement d’utiliser des bases de données graphes, qui permettent de faciliter la modélisation, les calculs et les parcours de graphe.
Les outils ?
Les librairies de CI (Causal Inference) connaissent une évolution rapide avec de plus en plus de librairies disponibles et une meilleure intégration dans les systèmes d’information « data-driven ».
Ci-dessous, une liste non-exhaustive des outils que nous recommandons :
Dowhy, une librairie de CI récemment publiée par notre partenaire Microsoft
Causal ML
CausalNex
EconML
causalImpact
Base de données graphe fréquemment utilisée :
Neo4j
Cosmos DB avec l’API Gremlin
Pour aller plus loin
Attention à l’industrialisation !
Comme souvent dans les projets d’intelligence artificielle, il y a un monde entre l’expérimentation sur un sous-ensemble et la capacité à l’automatiser et le rendre scalable sur des données réelles, qui plus est lorsque le phénomène est complexe (ex. Digital Twin pour l’industrie 4.0).
Notre recommandation est d’intégrer à l’équipe un ingénieur MLOps dès les phases amont pour éviter de se retrouver in fine avec une expérimentation prometteuse mais non-scalable.
L’interprétabilité des algorithmes d’IA : un usage en plein essor
L’application de l’IA à des usages règlementés (manipulation de données personnelles, octroi de crédits, fraudes…) nécessite un certain niveau de transparence dans la manière dont l’algorithme produit un résultat.
La transparence et la traçabilité des modèles est un nouveau champ d’application pour les moteurs d’inférence causale.
Nos experts ont créés à cet effet l’offre “Reliable ML“ : n’hésitez pas à nous contacter pour en savoir plus.
Rédigé par Alexander Mikheev, Lead Tech Engineer au sein de notre département Data Driven