.. image:: pyeco.png :height: 20 :alt: Economie :target: http://www.xavierdupre.fr/app/ensae_teaching_cs/helpsphinx/td_2a_notions.html#pour-un-profil-plutot-economiste .. image:: pystat.png :height: 20 :alt: Statistique :target: http://www.xavierdupre.fr/app/ensae_teaching_cs/helpsphinx/td_2a_notions.html#pour-un-profil-plutot-data-scientist .. _l-ml2a-mlethical: Machine Learning éthique (fairness) +++++++++++++++++++++++++++++++++++ Toutes les entreprises ont des données. Ce qui a changé récemment est ce ne sont plus seulement des données à caractère personnel, l'ensemble de vos commandes, le montant, mais aussi des données de déplacements. Le téléphone portable et les applications permet à beaucoup plus d'acteurs de collecter ces mêmes données. La législation n'est pas toujours très claire quant à ce qu'on le droit d'en faire et les pays ne partagent pas tous les mêmes règles. De plus, c'est une chose que de fixer une limite, c'est autre chose que de vérifier qu'elle n'a pas été franchie. Des modèles construits avec des données si précises peuvent de retrouver des informations que vous n'avez pourtant pas divulgué. Comment déterminer si un modèle ne produit pas des résultats biaisés envers une partie de la population même avec des données anonymes ? Les articles sont encore peu nombreux à ce sujet et plutôt récents. Il est probable qu'il y en ait un peu plus à l'avenir. Il n'existe pas de certitude quant au caractère éthique d'un modèle. Quelques idées ont néanmoins émergé : * La collecte des données est parfois biaisée, les échantillons aléatoires sont rares sur Internet, la collecte est incitative (échange service contre données). Certaines sous-population sont sur-représentées, d'autres sous-représentées. Il faut en tenir compte. * Construire un modèle interprétable et de cette façon vérifier son côté éthique : `Ideas on interpreting machine learning `_. * Fabriquer de fausses observations pour vérifier que le modèle ne change pas de prédictions quand il ne le devrait pas : `Equality of Opportunity in Supervised Learning `_. * Construire deux modèles pour éviter les interactions entre :math:`X_1` et :math:`X_2`, le premier modèle ne voit que :math:`X_1`, le second ne voit que :math:`X_2`, puis on combine les prédictions : `When Recommendations Systems Go Bad `_. * Construire une partition de la population à étudier pour vérifier que l'appartenance à un sous-groupe n'est pas corrélée à la prédiction ou à l'erreur de prédiction : `FairTest: Discovering Unwarranted Associations in Data-Driven Applications `_. L'article `Equality of Opportunity in Supervised Learning `_ définit l'aspect éthique comme l'invariance d'une loi marginale. On suppose que *S* est un attribut protégé binaire (exemple : le genre). *I* sont les entrées du modèle de machine learning, *O* les sorties. Le modèle est éthique si : .. math:: \pr{ O | I, S=0} = \pr{ O | I, S=1} La connaissance de *S* ne change pas la prédiction. Cela pose deux problèmes. Le premier est que parfois cette distribution change car cet attribut est corrélé avec un autre qui lui n'est pas protégé. Que décide-t-on dans ce cas ? Le second est l'égalité n'est jamais vérifié sur de vraies données, les deux distributions doivent être proches. Elles peuvent l'être sur l'ensemble de la population tout en ne l'étant pas du tout sur une petite partie de la population. L'article `FairTest: Discovering Unwarranted Associations in Data-Driven Applications `_ propose une réponse à ces deux problèmes. L'article `A Reductions Approach to Fair Classification `_ pousse ces concepts jusqu'à définir mathématiquement la parité d'un modèle et l'égalité des chances (voir :ref:`blog-ethique-fairlearn`). *Notebooks* .. toctree:: ../notebooks/td2a_ethics ../notebooks/td2a_ethics_correction *Lectures mathématiques* * `A Reductions Approach to Fair Classification `_ * `FairTest: Discovering Unwarranted Associations in Data-Driven Applications `_ * `A comparative study of fairness-enhancing interventions in machine learning `_ * `CERTIFAI: A Common Framework to Provide Explanations and Analyse the Fairness and Robustness of Black-box Models `_ *Lectures françaises* * `Guide des algorithmes publics `_ * `Comment permettre à l'homme de garder la main ? `_, Les enjeux éthiques des algorithmes et de l’intelligence artificielle, Synthèse du débat public animé par la :epkg:`CNIL` dans le cadre de la mission de réflexion éthique confiée par la loi pour une république numérique. * `O21 : La transparence des algorithmes relève des droits civiques `_ * `Enquête : comment les apps Figaro, L'Equipe ou Closer participent au pistage de 10 millions de Français `_ * `Surveiller et prévenir, l'ère de la pénalité prédictive `_ * `Nozha Boujemaa : "Les algorithmes doivent apporter une aide à la décision mais pas en être les prescripteurs" `_ *Lectures* *2020-2021* * `An overview of some available Fairness Frameworks & Packages `_ *2018-2020* * `Equality of Opportunity in Supervised Learning `_ * `TransAlgo : évaluer la responsabilité et la transparence des systèmes algorithmiques `_ * `Réguler les algorithmes : remise d'un rapport à Axelle Lemaire `_ * `Accountable Algorithms `_ (PhD thesis) * `Improving the Transparency of the Sharing Economy `_ * `Sunlight: Fine-grained Targeting Detection at Scale with Statistical Confidence `_ * `Justice actuarielle, algorithmes... et données `_ * `On Fairness, Diversity and Randomness in Algorithmic Decision Making `_ * `Ten simple rules for responsible big data research `_ * `Concrete Problems in AI Safety `_ * `Predict Responsibly: Increasing Fairness by Learning to Defer `_ * `Ethics by Design: necessity or curse? `_ * `Equality of Opportunity in Supervised Learning `_ * `Algorithm Assessment Report `_ (issu de l'INSEE néozélandaise) * `Impossibility and Uncertainty Theorems in AI Value Alignment `_ * `Themis-ml: A Fairness-aware Machine Learning Interface for End-to-end Discrimination Discovery and Mitigation `_ * `Automated Directed Fairness Testing `_ * `Automated Experiments on Ad Privacy Settings `_ * `Fairness in Criminal Justice Risk Assessments: The State of the Art `_ * `Counterfactual Fairness `_ * `Fairness Constraints: A Flexible Approach for Fair Classification `_ *Conférences* * `Katharine Jarmul | Keynote: Ethical Machine Learning: Creating Fair Models in an Unjust World `_ * `When Recommendations Systems Go Bad `_ * `How AI Designers will Dictate Our Civic Future `_ de `Latanya Sweeney `_, je recommande vivement cette conférence qui montre comment des biais peuvent apparaître dans un système intégrant le machine learning, il n'existe pas de façon d'éviter les biais si ce n'est en gardant constamment à l'esprit qu'ils apparaîtront quoiqu'il arrive si un système est prévu pour s'adapter au fur et à mesure. Le système apprend les biais et limite de plus en plus tout ce qui pourrait l'en faire sortir. *Sites* * `Data Transparency Lab `_ * `OPAL `_ * `FATML `_ ou Fairness, Accountability, and Transparency in Machine Learning, ce site est une excellente source d'article scientifiques sur le sujet. * `FATE `_, groupe de recherche sur Fairness, Accountability, Transparency, and Ethics in AI chez :epkg:`Microsoft` * `Data&Society `_, publications d'articles ou rapports comme celui-ci `Fairness in Precision Medicine `_ qui traite des biais qui peuvent survenir lorsqu'on adapte les décisions médicales en fonction des données récoltées pour une personne en particulier (*precision medecine*). * `CS 294: Fairness in Machine Learning `_ * `Algorithms and Bias: Q. and A. With Cynthia Dwork `_ * `Fairness is not static: deeper understanding of long term fairness via simulation studies `_ *Articles* * `Microsoft is developing a tool to help engineers catch bias in algorithms `_ * `Sent to Prison by a Software Program's Secret Algorithms `_, `Emotional Judges and Unlucky Juveniles `_, `How artificial intelligence can help us make judges less biased `_ * `How We Analyzed the COMPAS Recidivism Algorithm `_ * `ML-fairness-gym: A Tool for Exploring Long-Term Impacts of Machine Learning Systems `_ *Modules* * `fairlearn `_ * `LiFT `_ * `fairness-comparison `_ (un peu maintenu) * `fairness-indicators `_ * `ml-fairness-gym `_ *Modules non maintenu* C'est souvent le cas de code produit par des chercheurs qui écrive le code pour écrire un article scientifique et qui n'a pas vocation à être maintenu par la suite. * `aequitas `_ * `fair-classification `_ (non maintenu) * `fairml `_ * `fairml-farm `_ * `fairtest `_ * `themis-ml `_ * `FairSight `_ * `BlackBoxAuditing `_