Les apports de l’approche causale : exploration sur des cas d’usage concrets
Présentation des intervenants
Cet atelier a été animé par :
Introduction
De par sa complexité de modélisation, la causalité est un phénomène rarement, voire jamais, pris en compte dans les modèles de Machine Learning actuels. Aujourd’hui, l’outil d’analyse pour vérifier la dépendance entre plusieurs variables est la corrélation. Cependant, la corrélation est un outil symétrique, il ne nous donne aucunement le lien de cause à effet qui lie 2 variables, contrairement à la causalité.
L’apport de la causalité permet d’aller au-delà des approches classiques de Machine Learning et de répondre, via des scénarios contrefactuels, à des questions du style “qu'est-ce qui se serait passé si” …(j’avais été un homme à un entretien d’embauche, si j’avais fait plus d’exercice…)
Données utilisées
Lors de cet atelier, nous avons utilisé des données synthétiques assez simples pour comprendre, d’une part les principes de base de la causalité, et d’autre part les limites des méthodes de machine learning les plus courantes. Les données sont dans le Notebook utilisé pour le TP.
Déroulé de l’atelier
Cet atelier s’est déroulé en 2 parties :
Les deux premières parties ont permis de poser les notions de la causalité et de faire une première mise en contexte de ses apports en faisant référence à des publications de grandes plateformes (LinkedIn, Netflix et Booking). La troisième partie était dédiée aux apports de la causalité pour les méthodes de Machine Learning, cette fois-ci avec une approche très concrète puisque Fabien a présenté la contribution des études causales pour les problématiques assurantielles et Audrey l’intérêt des analyses causales pour évaluer l’impact de campagnes marketing. Enfin, Georges a défini une première base de concepts mathématiques de la causalité, en introduisant les prérequis, les parents (causes) et les descendants (conséquences), les DAG, les 4 graphes causaux fondamentaux et les propriétés des probabilités conditionnelles associées, sur des cas simples.
La seconde partie de l’après-midi était dédiée à la mise en application des différents concepts et cas simples abordés dans la présentation, pour “toucher du doigt” l’implémentation des graphes causaux en Python.
Finalement, la dernière partie servait à montrer en quoi la causalité se distingue des méthodes statistiques actuelles, et donc à mettre en évidence son bénéfice pour le ML. Des modèles de ML (une régression linéaire, une random forest et un réseau de neurones) ont été entraînés sur des variables explicatives fictives pour prédire une variable cible, fictive également, dont nous connaissions les relations de causalité. Ensuite, nous avons, pour chaque modèle, observé la feature importance de chaque variable dans la prédiction, ainsi que leur corrélation avec la cible. Nous nous sommes vite rendu compte que la feature importance de ces modèles statistiques ne permettait de retrouver aucune information sur la nature des relations entre les variables. La cible n’était pas prédite à partir d’une de ses causes (ou d’une combinaison de celles-ci), mais à partir d’une autre variable avec laquelle elle partage une cause commune, parfois lointaine. Dans d’autres cas, il est même possible que des variables qui sont des conséquences directes de la variable cible soient utilisées pour prédire cette dernière ; ce qui n’a aucun sens physique.
Ceci est dû au fait que les méthodes statistiques classiques ne se basent que sur des corrélations entre les variables. Alors, les méthodes d’interprétabilité de ces modèles conduisent à des compréhensions erronées de la dynamique du système. Le sujet est d’autant plus important que si l’on veut agir sur le système pour orienter sa dynamique (notion d’intervention), la seule interprétation des modèles statistiques ne permet pas d’avoir une action efficace.
Conclusion
Ce premier atelier sur le thème de la causalité nous a permis de nous familiariser avec cette notion pourtant connue de tous mais rarement utilisée dans nos différentes modélisations en l’état. Cet atelier s’est terminé avec l’introduction de la librairie dowhy, développée par Microsoft, qui permet de modéliser les inférences causales entre les variables. Elle fera l’objet d’un atelier à venir. Mais en plus de découvrir la librairie dowhy, nous vous proposons de découvrir la méthode hybride d’analyse causale d’Ekimetrics, lors de notre prochain atelier, le 16 mars. Vous pouvez vous inscrire ici.
N’hésitez pas à regarder la rediffusion de l’atelier sur Youtube. Vous pouvez également retrouver les slides de présentation ainsi que le Notebook utilisé pour la partie pratique sur notre Github.