vendredi 30 avril 2021

(Vidéo) Cost-sensitive learning

Dans cette vidéo, il est question de la prise en compte des coûts de mauvais classement en analyse prédictive. Les erreurs de prédiction ne sont pas toutes équivalentes. Classer en bonne santé une personne malade n'induit pas les mêmes conséquences que l'inverse par exemple. Cette information additionnelle est portée par une matrice dite de "coûts de mauvais classement". Elle traduit en valeurs numériques les répercussions des erreurs. Notre rôle consiste à utiliser à bon escient cette matrice pour guider la modélisation, mais aussi pour évaluer et comparer les performances des classifieurs.

Mots-clés : logiciel R, package rpart, MASS, lda, matrice de coûts de mauvais classement
Vidéo : Cost-sensitive learning
Données, slides, notebook : Breast cancer
Références :
Documentation MLR, "Cost-Sensitive Classification".
"Pratique de la régression logistique", version 2.0, septembre 2009.
"Coûts de mauvais classement en apprentissage supervisé", janvier 2009.

mercredi 14 avril 2021

Econométrie par Régis Bourbonnais

Cette fiche de lecture concerne la 10ème édition de l'ouvrage "Économétrie" de Régis Bourbonnais, une véritable institution qui a marqué et continue à marquer plusieurs générations de férus de régression et de traitement des séries temporelles. Le livre s'adresse aux étudiants de niveau licence et master en filière économétrie. En réalité, il est susceptible d'intéresser tous les étudiants des composantes à fort contenu mathématique et statistique (MIASHS, BUT STID, etc.).

En son temps, la 2nde édition du même ouvrage, celle de 1998, m'avait inspiré lorsque j'ai eu à élaborer mon cours d'économétrie pour notre licence il y a une quinzaine d'années (corrélation, régression simple et multiple, aspects pratiques de la régression).

Fiche de lecture : "Econométrie" - 10ème édition - Dunod - 2018
Site web de l'auteur : https://regisbourbonnais.dauphine.fr/

vendredi 9 avril 2021

(Vidéo) Model Explainability par H2O

Dans cette vidéo, je reprends l'idée de l'interprétation des modèles exposée précédemment (voir "Outils pour l'interprétation des modèles", avril 2021). Nous explorons les fonctionnalités de la librairie "H2O" cette fois-ci. Elle propose les instruments usuels dans un cadre simplifié (importance des variables, partial dependence plot, shapley values). Je mets surtout un focus particulier sur le graphique "individual conditional expectation plot (ICE)" qui permet de caractériser l'effet marginal d'une variable explicative sur la variable cible lors du classement d'un individu supplémentaire. En d'autres termes, il enrichit la lecture d'une prédiction en mettant en exergue l'évolution de la conclusion (la probabilité d'appartenance à la modalité cible) en fonction de la variation de la variable explicative.

Mots-clés : python, h2o, partial dependence plot, shapley additive explanations, individual conditional expectation
Vidéo : Model Explainability
Données et Notebook Python : Pima H2O Interpretation
Références :
Documentation H2O, "Model Explainability", version 3.32.1.1.
"Machine Learning avec H2O (Python)", Janvier 2019.
"(Vidéo) Outils pour l'interprétation des modèles", avril 2021.

jeudi 8 avril 2021

(Vidéo) Outils pour l'interprétation des modèles

Dans cette vidéo, nous explorons les outils d'interprétation agnostiques des classifieurs c.-à-d. applicables à tous types de modèles, y compris et en particulier aux modèles "boîtes noires" pour lesquels il est difficile d'identifier de prime abord la pertinence des variables explicatives et la nature de leurs liaisons avec l'attribut cible. Pour comprendre le fonctionnement et la teneur des résultats qu'ils fournissent, nous les appliquons dans un premier temps sur un classifieur linéaire (régression logistique) dont nous savons interpréter les coefficients estimés. L'idée est de vérifier la cohérence entre la lecture usuelle des paramètres du modèle (valeur et signe des coefficients) et les résultats proposés par les outils étudiés ([PFI] permutation feature importance et [PDP] graphique de dépendance partielle). Rassurés par leur comportement, nous les utilisons dans un deuxième temps sur un gradient boosting machine. Ils permettent de décrypter les caractéristiques du classifieur, notamment sa capacité à mettre en évidence des relations non-linéaires, impossibles à identifier avec la régression logistique.

Dans la seconde partie du tutoriel, nous étudions le concept de SHAP. Il permet de décortiquer le processus d'affectation des classes pour un individu à classer c.-à-d. à comprendre les caractéristiques (les valeurs prises par les variables pour l'individu à classer) qui ont conduit le modèle à produire l'estimation de la probabilité d'appartenance aux classes. Appliqué à un ensemble d'observations, l'outil SHAP rejoint les informations fournies par les outils d'interprétation des modèles évalués précédemment (PFI et PDF).

Mots-clés : python, scikit-learn, partial dependence plot, pdp, permutation feature importance, shap package, shapley additive explanations, interpretation
Vidéo : Interpretable machine learning
Données et Notebook Python : Pima ML Interpretation
Références :
Documentation Scikit-Learn, "Inspection", Chapitre 4, version 0.24.1.
C. Molnar, "Interpretable Machine Learning – A Guide for Making Black Box Models Explainable", version 08/04/2021.
"Importance des variables dans les modèles", février 2019.
"Graphique de dépendance partielle – R et Python", avril 2019.
"Interpréter un classement en analyse prédictive", avril 2019.
"Python – Machine Learning avec scikit-learn", septembre 2015.

vendredi 2 avril 2021

(Vidéo) Python – AutoML de Scikit-Learn

Nous explorons la solution AutoML basée sur la librairie "scikit-learn" dans cette vidéo. Le package "auto-sklearn" explore l'espace des solutions en croisant les algorithmes d'apprentissage automatique, les hyperparamètres associés, et les techniques de préparation des données. Il s'appuie sur un mécanisme de recherche sophistiqué plutôt qu'un simple brute force. Particularité très intéressante, il utilise également l'expérience acquise durant le traitement d'autres bases benchmark. Un rapprochement à partir des méta-informations extraites des jeux de données permet de situer le problème en cours de traitement.

Nous reprenons dans ce tutoriel le même schéma d'évaluation mis en place durant l'étude de la solution AutoML de la librairie H2O.

Mots-clés : python, automl, scikit-learn, auto-sklearn
Vidéo : Auto-Sklearn
Données : Spam auto-sklearn
Références :
Auto-sklearn – Efficient and Robust Automated Machine Learning (2015, 2020).
"Python – Machine Learning avec scikit-learn", septembre 2015.