Cours de Data Mining
Transcription
Cours de Data Mining
COURS DE DATA MINING Stéphane TUFFERY Université Rennes 1 Master 2 Ingénierie économique et financière Octobre 2011 14/10/2011 © Stéphane Tufféry - Usage réservé à l’Université Rennes 1 1 Présentation de l’intervenant Responsable de l’équipe statistique dans un grand groupe bancaire Enseigne le data mining en Master 2 à l’Université Rennes 1 et à l’Université Catholique de l’Ouest (Angers) Docteur en Mathématiques Auteur de : Data Mining et Statistique Décisionnelle, Éditions Technip, 2005, 3e édition 2010, préface de Gilbert Saporta Data Mining and Statistics for Decision Making, Éditions Wiley, mars 2011 Étude de cas en Statistique Décisionnelle, Éditions Technip, 2009 14/10/2011 © Stéphane Tufféry - Usage réservé à l’Université Rennes 1 2 Plan Qu’est-ce que le data mining ? A quoi sert le data mining ? L’élaboration d’un modèle de scoring La sélection des variables La modélisation La mesure du pouvoir discriminant Questionnaire adaptatif en scoring Quelques principes du data mining L’agrégation de modèles La détection des règles d’associations Conclusion 14/10/2011 © Stéphane Tufféry - Usage réservé à l’Université Rennes 1 3 Qu’est-ce que le data mining ? 14/10/2011 © Stéphane Tufféry - Usage réservé à l’Université Rennes 1 4 La fouille de données Le data mining est l’ensemble des : techniques et méthodes … destinées à l’exploration et l’analyse … de (souvent) grandes bases de données informatiques … en vue de détecter dans ces données des règles, des associations, des tendances inconnues (non fixées a priori), des structures particulières restituant de façon concise l’essentiel de l’information utile … pour l’aide à la décision On parle d’extraire l’information de la donnée Selon le MIT, c’est l’une des 10 technologies émergentes qui « changeront le monde » au XXIe siècle L’ONU a déclaré le 20 octobre Journée mondiale de la statistique 14/10/2011 © Stéphane Tufféry - Usage réservé à l’Université Rennes 1 5 Intérêt du data mining On ne veut pas simplement confirmer des intuitions a priori par des requêtes dans les bases de données mais détecter sans a priori les combinaisons de critères les plus discriminantes Par exemple, dans le domaine commercial, on ne veut plus seulement savoir : « Combien de clients ont acheté tel produit pendant telle période ? » Mais : « Quel est leur profil ? » « Quels autres produits les intéresseront ? » « Quand seront-ils intéressés ? » Les profils de clientèle à découvrir sont en général des profils complexes : pas seulement des oppositions « jeunes/seniors », « citadins/ruraux »… que l’on pourrait deviner en tâtonnant par des statistiques descriptives > Le data mining fait passer d’analyses confirmatoires à des analyses exploratoires 14/10/2011 © Stéphane Tufféry - Usage réservé à l’Université Rennes 1 6 Les 2 types de techniques de DM Les techniques descriptives (recherche de « patterns ») : visent à mettre en évidence des informations présentes mais cachées par le volume des données (c’est le cas des segmentations de clientèle et des recherches d’associations de produits sur les tickets de caisse) réduisent, résument, synthétisent les données il n’y a pas de variable à expliquer Les techniques prédictives (modélisation) : visent à extrapoler de nouvelles informations à partir des informations présentes (c’est le cas du scoring) expliquent les données il y a une variable à expliquer 14/10/2011 © Stéphane Tufféry - Usage réservé à l’Université Rennes 1 7 Les 2 principales familles de méthodes descriptives carte de Kohonen Source : Lebart-Morineau-Piron, Statistique exploratoire multidimensionnelle, page 10 14/10/2011 © Stéphane Tufféry - Usage réservé à l’Université Rennes 1 8 Qu’est-ce que la classification ? Regrouper des objets en groupes, ou classes, ou familles, ou segments, ou clusters, de sorte que : Méthode descriptive : pas de variable cible privilégiée décrire de façon simple une réalité complexe en la résumant Utilisation en marketing, médecine, sciences humaines… 2 objets d’un même groupe se ressemblent le + possible 2 objets de groupes distincts diffèrent le + possible le nombre des groupes est parfois fixé les groupes ne sont pas prédéfinis mais déterminés au cours de l’opération segmentation de clientèle marketing Les objets à classer sont : des individus des variables les deux à la fois (biclustering) 14/10/2011 © Stéphane Tufféry - Usage réservé à l’Université Rennes 1 9 Complexité du problème ! Le nombre de partitions (non recouvrantes) de n objets est 1 kn le nombre de Bell : Bn e k 1 k! Exemple : pour n = 4 objets, on a Bn = 15, avec 1 partition à 1 classe (abcd) 7 partitions à 2 classes (ab,cd), (ac,bd), (ad,bc), (a,bcd), (b,acd), (c,bad), (d,abc) 6 partitions à 3 classes (a,b,cd), (a,c,bd), (a,d,bc), (b,c,ad), (b,d,ac), (c,d,ab) 1 partition à 4 classes (a,b,c,d) Exemple : pour n = 30 objets, on a B30 = 8,47.1023 Bn > exp(n) Nécessité de définir des critères de bonne classification et d’avoir des algorithmes performants 14/10/2011 © Stéphane Tufféry - Usage réservé à l’Université Rennes 1 10 Classement et prédiction Ce sont des méthodes prédictives Classement : la variable à expliquer (ou « cible », « réponse », « dépendante ») est qualitative Prédiction : la variable à expliquer est quantitative on parle aussi de classification (en anglais) ou de discrimination on parle aussi de régression ou d’apprentissage supervisé (réseaux de neurones) exemple : le prix d’un appartement (en fonction de sa superficie, de l’étage et du quartier) Scoring : classement appliqué à une problématique d’entreprise (variable à expliquer souvent binaire) – chaque individu est affecté à une classe (« sain » ou « malade », par exemple) en fonction de ses caractéristiques 14/10/2011 © Stéphane Tufféry - Usage réservé à l’Université Rennes 1 11 Quelques types de score Score d’appétence Score de (comportement) risque Appétence croisement des deux précédents – – + Risque prédire en temps réel les impayés Score d’attrition + Score d’octroi prédire les impayés ou la fraude Score de préacceptation prédire l’achat d’un produit ou service prédire le départ du client vers un concurrent Et aussi : En médecine : diagnostic (bonne santé : oui / non) en fonction du dossier du patient et des analyses médicales Courriels : spam (oui / non) en fonction des caractéristiques du message (fréquence des mots…) 14/10/2011 © Stéphane Tufféry - Usage réservé à l’Université Rennes 1 12 Tableau des méthodes descriptives type famille méthodes modèles descriptives géométriques En grisé : méthodes « classiques » sous-famille analyse factorielle (projection sur un espace de dimension inférieure) analyse typologique (regroupement en classes homogènes) analyse typologique + réduction dimens. 14/10/2011 modèles combinatoires modèles à base de détection de liens règles logiques algorithme analyse en composantes principales ACP (variables continues) analyse factorielle des correspondances AFC (2 variables qualitatives) analyse des correspondances multiples ACM (+ de 2 var. qualitatives) méthodes de partitionnement (centres mobiles, k-means, nuées dynamiques) méthodes hiérarchiques classification neuronale (cartes de Kohonen) classification relationnelle (variables qualitatives) détection d’associations © Stéphane Tufféry - Usage réservé à l’Université Rennes 1 13 Tableau des méthodes prédictives type famille sous-famille méthodes prédictives modèles à base de règles logiques modèles à base de fonctions mathématiques arbres de décision réseaux de neurones En grisé : méthodes « classiques » 14/10/2011 algorithme arbres de décision (variable à expliquer continue ou qualitative) réseaux à apprentissage supervisé : perceptron multicouches, réseau à fonction radiale de base modèles régression linéaire, ANOVA, MANOVA, paramétriques ANCOVA, MANCOVA, modèle linéaire ou semigénéral GLM, régression PLS (variable à paramétriques expliquer continue) analyse discriminante linéaire, régression logistique, régression logistique PLS (variable à expliquer qualitative) modèle log-linéaire, régression de Poisson (variable à expliquer discrète = comptage) modèle linéaire généralisé, modèle additif généralisé (variable à expliquer continue, discrète ou qualitative) k-plus proches voisins (k-NN) prédiction sans modèle © Stéphane Tufféry - Usage réservé à l’Université Rennes 1 14 Statistique inférentielle et data mining Statistique (avant 1950) : quelques centaines d’individus quelques variables recueillies avec un protocole spécial (échantillonnage, plan d’expérience…) fortes hypothèses sur les lois statistiques suivies (linéarité, normalité, homoscédasticité) le modèle prime sur la donnée : il est issu de la théorie et confronté aux données utilisation en laboratoire Analyse des données (1960-1980) : quelques dizaines de milliers d’individus quelques dizaines de variables construction des tableaux « Individus x Variables » importance du calcul et de la représentation visuelle 14/10/2011 Data mining (depuis 1990) : plusieurs millions d’individus plusieurs centaines de variables certaines variables non numériques données recueillies avant l’étude, et souvent à d’autres fins données imparfaites, avec des erreurs de saisie, des valeurs manquantes… nécessité de calculs rapides, parfois en temps réel on ne recherche pas toujours l’optimum théorique, mais le plus compréhensible pour des non statisticiens faibles hypothèses sur les lois statistiques suivies la donnée prime sur le modèle : le modèle est issu des données et on en tire éventuellement des éléments théoriques utilisation en entreprise © Stéphane Tufféry - Usage réservé à l’Université Rennes 1 15 Préhistoire 1875 : régression linéaire de Francis Galton 1896 : formule du coefficient de corrélation de Karl Pearson 1900 : distribution du ² de Karl Pearson 1936 : analyse discriminante de Fisher et Mahalanobis 1941 : analyse factorielle des correspondances de Guttman 1943 : réseaux de neurones de Mc Culloch et Pitts 1944 : régression logistique de Joseph Berkson 1958 : perceptron de Rosenblatt 1962 : analyse des correspondances de J.-P. Benzécri 1964 : arbre de décision AID de J.P. Sonquist et J.-A. Morgan 1965 : méthode des centres mobiles de E. W. Forgy 1967 : méthode des k-means de Mac Queen 1972 : modèle linéaire généralisé de Nelder et Wedderburn 14/10/2011 © Stéphane Tufféry - Usage réservé à l’Université Rennes 1 16 Histoire 1975 : algorithmes génétiques de Holland 1975 : méthode de classement DISQUAL de Gilbert Saporta 1980 : arbre de décision CHAID de KASS 1983 : régression PLS de Herman et Svante Wold 1984 : arbre CART de Breiman, Friedman, Olshen, Stone 1986 : perceptron multicouches de Rumelhart et McClelland 1989 : réseaux de T. Kohonen (cartes auto-adaptatives) vers 1990 : apparition du concept de data mining 1991 : méthode MARS de Jerome H. Friedman 1993 : arbre C4.5 de J. Ross Quinlan 1996 : bagging (Breiman) et boosting (Freund-Shapire) 1998 : support vector machines de Vladimir Vapnik 2001 : forêts aléatoires de L. Breiman 2005 : méthode elastic net de Zhou et Hastie 14/10/2011 © Stéphane Tufféry - Usage réservé à l’Université Rennes 1 17 Le data mining aujourd’hui Ces techniques ne sont pas toutes récentes Ce qui est nouveau, ce sont aussi : les capacités de stockage et de calcul offertes par l’informatique moderne la constitution de giga-bases de données pour les besoins de gestion des entreprises la recherche en théorie de l’apprentissage les logiciels universels, puissants et conviviaux l’intégration du data mining dans les processus de production qui permettent de traiter de grands volumes de données et font sortir le data mining des laboratoires de recherche pour entrer dans les entreprises 14/10/2011 © Stéphane Tufféry - Usage réservé à l’Université Rennes 1 18 Le data mining demain Agrégation de modèles Web mining optimisation des sites meilleure connaissance des internautes croisement avec les bases de données de l’entreprise Text mining rééchantillonnage bootstrap, bagging, boosting… statistique lexicale pour l’analyse des courriers, courriels, dépêches, comptes-rendus, brevets (langue naturelle) Image mining reconnaissance automatique d’une forme ou d’un visage détection d’une échographie anormale, d’une tumeur 14/10/2011 © Stéphane Tufféry - Usage réservé à l’Université Rennes 1 19 A quoi sert le data mining ? 14/10/2011 © Stéphane Tufféry - Usage réservé à l’Université Rennes 1 20 Sondage sur www.kdnuggets.com Industries / Fields where you applied Data Mining in 2009 [180 votes total] 14/10/2011 CRM/ consumer analytics (59) 32.8% Banking (44) 24.4% Direct Marketing/ Fundraising (29) 16.1% Credit Scoring (28) 15.6% Telecom / Cable (26) 14.4% Fraud Detection (25) 13.9% Retail (21) 11.7% Health care/ HR (21) 11.7% Finance (20) 11.1% Science (19) 10.6% Advertising (19) 10.6% e-Commerce (18) 10.0% Insurance (18) 10.0% Web usage mining (15) 8.3% Social Networks (14) 7.8% Medical/ Pharma (14) 7.8% Biotech/Genomics (14) 7.8% Search / Web content mining (12) 6.7% Investment / Stocks (12) 6.7% Security / Anti-terrorism (9) 5.0% Education (8) 4.4% Government/Military (7) 3.9% Manufacturing (6) 3.3% Travel / Hospitality (5) 2.8% Social Policy/Survey analysis (3) 1.7% Entertainment/ Music (3) 1.7% Junk email / Anti-spam (1) 0.6% None (2) Other (14) 1.1% © Stéphane Tufféry - Usage réservé à l’Université Rennes 1 7.8% Sondage effectué en décembre 2009 21 Utilité du data mining dans le CRM (gestion de la relation client) Mieux connaître le client pour mieux le servir pour augmenter sa satisfaction pour augmenter sa fidélité (+ coûteux d’acquérir un client que le conserver) La connaissance du client est encore plus utile dans le secteur tertiaire : les produits se ressemblent entre établissements le prix n’est pas toujours déterminant ce sont surtout le service et la relation avec le client qui font la différence 14/10/2011 © Stéphane Tufféry - Usage réservé à l’Université Rennes 1 22 Exemple du credit scoring Objectifs de la banque : vendre plus en maîtrisant les risques en utilisant les bons canaux au bon moment Conclusion : il faut être pro-actif détecter les besoins des clients et leur tendance à emprunter Le crédit à la consommation un produit standard concurrence des sociétés spécialisées sur le lieu de vente (Cetelem…) quand la banque a connaissance du projet du client, il est déjà trop tard commerciales aux bons clients, avant qu’ils n’en fassent la demande > Faire des propositions + Appétence – – + Risque 14/10/2011 © Stéphane Tufféry - Usage réservé à l’Université Rennes 1 23 Le data mining dans la banque Naissance du score de risque en 1941 (David Durand) Multiples techniques appliquées à la banque de détail et la banque d’entreprise Surtout la banque de particuliers : montants unitaires modérés grand nombre de dossiers dossiers relativement standards Essor dû à : développement des nouvelles technologies nouvelles attentes de qualité de service des clients concurrence des nouveaux entrants (assureurs, grande distribution) et des sociétés de crédit pression mondiale pour une plus grande rentabilité surtout : ratio de solvabilité Bâle 2 14/10/2011 © Stéphane Tufféry - Usage réservé à l’Université Rennes 1 24 Le data mining dans l’assurance de risque Des produits obligatoires (automobile, habitation) : D’où les sujets dominants : soit prendre un client à un concurrent soit faire monter en gamme un client que l’on détient déjà attrition ventes croisées (cross-selling) montées en gamme (up-selling) Besoin de décisionnel dû à : concurrence des nouveaux entrants (bancassurance) bases clients des assureurs traditionnels mal organisées : compartimentées par agent général ou structurées par contrat et non par client 14/10/2011 © Stéphane Tufféry - Usage réservé à l’Université Rennes 1 25 Le data mining dans la téléphonie Deux événements : ouverture du monopole de France Télécom arrivée à saturation du marché de la téléphonie mobile D’où les sujets dominants dans la téléphonie : score d’attrition (churn = changement d’opérateur) optimisation des campagnes marketing text mining (pour analyser les lettres de réclamation) Problème du churn : coût d’acquisition moyen en téléphonie mobile : 250 euros plus d’un million d’utilisateurs changent chaque d’année d’opérateur la loi Chatel (juin 2008) facilite le changement d’opérateur en diminuant le coût pour ceux qui ont dépassé 12 mois chez l’opérateur la portabilité du numéro facilite le churn 14/10/2011 © Stéphane Tufféry - Usage réservé à l’Université Rennes 1 26 Le data mining dans le commerce Vente Par Correspondance e-commerce utilise depuis longtemps des scores d’appétence pour optimiser ses ciblages et en réduire les coûts des centaines de millions de documents envoyés par an personnalisation des pages du site web de l’entreprise, en fonction du profil de chaque internaute optimisation de la navigation sur un site web Grande distribution analyse du ticket de caisse détermination des meilleures implantations (géomarketing) 14/10/2011 © Stéphane Tufféry - Usage réservé à l’Université Rennes 1 27 Autres exemples De l’ petit (génomique) à l’ grand (astrophysique pour le classement en étoile ou galaxie) Du plus quotidien (reconnaissance de l’écriture manuscrite sur les enveloppes) au moins quotidien (aide au pilotage aéronautique) Du plus ouvert (e-commerce) au plus sécuritaire (détection de la fraude dans la téléphonie mobile ou les cartes bancaires) Du plus industriel (contrôle qualité pour la recherche des facteurs expliquant les défauts de la production) au plus théorique (sciences humaines, biologie…) Du plus alimentaire (agronomie et agroalimentaire) au plus divertissant (prévisions d’audience TV) 14/10/2011 © Stéphane Tufféry - Usage réservé à l’Université Rennes 1 28 Exemples médicaux Mettre en évidence des facteurs de risque ou de rémission dans certaines maladies (infarctus et des cancers) – Choisir le traitement le plus approprié – Ne pas prodiguer des soins inutiles Déterminer des segments de patients susceptibles d’être soumis à des protocoles thérapeutiques déterminés, chaque segment regroupant tous les patients réagissant identiquement Décryptage du génome Tests de médicaments, de cosmétiques Prédire les effets sur la peau humaine de nouveaux cosmétiques, en limitant le nombre de tests sur les animaux 14/10/2011 © Stéphane Tufféry - Usage réservé à l’Université Rennes 1 29 L’élaboration d’un modèle de scoring 14/10/2011 © Stéphane Tufféry - Usage réservé à l’Université Rennes 1 30 Définition des objectifs Définir précisément le sujet et certains critères essentiels (variable à expliquer ou « cible ») Définir la population cible en fonction de la disponibilité des données et de la stabilité des indicateurs et des règles de gestion Prévoir l’utilisation opérationnelle des modèles produits tous les clients, les clients actifs, les prospects aussi… unité statistique : individu, famille, entreprise, groupe… Déterminer la période à étudier exemple : « client à risque » et « client sans risque » forme de la restitution, confidentialité, périodicité de mise à jour, utilisation dans d’autres processus Mettre en place un suivi des modèles 14/10/2011 © Stéphane Tufféry - Usage réservé à l’Université Rennes 1 31 Définition de la variable à expliquer En médecine : définition souvent naturelle Dans la banque : qu’est-ce qu’un client non risqué ? un patient a ou non une tumeur (et encore faut-il distinguer les différents stades d’une tumeur) aucun impayé, 1 impayé, n impayés mais dette apurée ? Dans certains modèles, on définit une « zone indéterminée » non modélisée : 1 impayé variable à expliquer non définie aucun impayé variable à expliquer = 0 2 impayés variable à expliquer = 1 Définition parfois encore plus problématique en appétence et en attrition dans la banque, contrairement à la téléphonie, on peut partir brutalement ou progressivement Quant à la fraude, elle n’est pas toujours connue 14/10/2011 © Stéphane Tufféry - Usage réservé à l’Université Rennes 1 32 Biais de sélection En risque : certaines demandes sont refusées et on ne peut donc pas mesurer la variable à expliquer En appétence : certaines populations n’ont jamais été ciblées et on ne leur a pas proposé le produit si on les modélise, elles seront présentes dans l’échantillon des « mauvais » (clients sans appétence) peut-être à tort contrairement au cas précédent, on peut mesurer la variable à expliquer car il y a des souscriptions spontanées envisager de limiter le périmètre aux clients ciblés certaines populations ont été exclues de la modélisation et on leur applique pourtant le modèle il existe des méthodes « d’inférence des refusés », mais dont aucune n’est totalement satisfaisante Et parfois aucune trace n’est conservée des demandes refusées ! Fraude à la carte bancaire : certaines transactions ont été rejetées et on ne saura pas si elles étaient frauduleuses 14/10/2011 © Stéphane Tufféry - Usage réservé à l’Université Rennes 1 33 Taille de l’échantillon mauvaise généralisation taux d'erreur données de test et d'application t données apprentissage bonne généralisation taille de l'échantillon Théorème de Vapnik : R Remp 14/10/2011 h (log( 2n / h) 1) log( / 4) n taille suffisante © Stéphane Tufféry - Usage réservé à l’Université Rennes 1 34 Représentativité de l’échantillon d’étude Hypothèse fondamentale : l’échantillon d’étude est représentatif de la population à laquelle sera appliqué le modèle N’implique pas un échantillonnage aléatoire simple : événement à prédire rare stratification non proportionnelle de l’échantillon sur la variable à expliquer parfois : 50 % de positifs et 50 % de négatifs nécessaire quand on utilise CART pour modéliser 3 % d’acheteurs, sinon CART prédit que personne n’est acheteur excellent taux d’erreur = 3 % ! change la constante du logit de la régression logistique intéressant en cas d’hétéroscédasticité dans une analyse discriminante linéaire 14/10/2011 © Stéphane Tufféry - Usage réservé à l’Université Rennes 1 35 Inventaire des données utiles Recenser avec les spécialistes métier et les informaticiens, les données utiles : accessibles raisonnablement (pas sur microfilms !) fiables suffisamment à jour historisées, si besoin est légalement utilisables Il y a les données : du système d’information (SI) de l’entreprise stockées dans l’entreprise, hors du SI (fichiers Excel...) achetées ou récupérées à l’extérieur de l’entreprise calculées à partir des données précédentes (indicateurs, ratios, évolutions au cours du temps) 14/10/2011 © Stéphane Tufféry - Usage réservé à l’Université Rennes 1 36 Quand on manque de données Enquêtes auprès d’échantillons de clients en les incitant à répondre à des questionnaires en leur proposant des cadeaux Utilisation des mégabases de données (Acxiom, Wegener Direct Marketing) « Scoring prénom » Utilisation de données géodémographiques (type d’habitat en fonction de l’adresse) données moins précises que des données nominatives mais disponibles pour des prospects Recours à des modèles standards pré-établis par des sociétés spécialisées (ex : scores génériques) quand on a des données mais peu d’historique 14/10/2011 © Stéphane Tufféry - Usage réservé à l’Université Rennes 1 37 Scoring prénom P a s c a l 14/10/2011 © Stéphane Tufféry - Usage réservé à l’Université Rennes 1 38 Données géodémographiques Données économiques Données sociodémographiques ancienneté, type et confort des logements, proportion de locataires et propriétaires… Données concurrentielles population, richesse, âge et nombre d’enfants moyens, structures familiales, niveau socioprofessionnel… Données résidentielles nb entreprises, population active, chômage, commerces et services de proximité, habitudes de consommation… implantation de l’entreprise, implantation de ses concurrents, parts de marché, taux de pénétration… Type d’habitat : beaux quartiers, classe moyenne, classe ouvrière, centre ville et quartiers commerçants... 14/10/2011 © Stéphane Tufféry - Usage réservé à l’Université Rennes 1 39 Construction de la base d’analyse variable cible : acheteur (O/N) O N … … O … … N … âge PCS 58 27 … … 46 … … 32 … cadre ouvrier technicien employé situation nb montant famille achats achats marié 2 40 célibataire 3 30 … … … … … … célibataire 3 75 … … … … … … marié 1 50 … … … variable à expliquer observée année n … … … … … … … … … variable explicative m … … … … … … … … … variables explicatives observées année n-1 O : au moins 500 clients ciblés dans l'année n et acheteurs N : au moins 500 clients ciblés dans l'année n et non acheteurs échantillon apprentissage test … … test … … apprentissage … au moins 1000 cas n° client 1 2 … … k … … 1000 … répartition aléatoire des clients entre les 2 échantillons PREDICTION f 14/10/2011 © Stéphane Tufféry - Usage réservé à l’Université Rennes 1 40 Sélection des périodes d’observation Élaboration du modèle :--:--:--:--:--:--:--:--:--:--:--:--:--:--:--:--:--:--:--:--:--:--:--:--: – 24 mois – 12 mois aujourd’hui observation des observation de la variables explicatives variable à expliquer Application du modèle :---:---:---:---:---:---:---:---:---:---:---:---:---:---:---:---:---:-- 18 mois – 6 mois ? aujourd observation des observation de la: :--:--:--:--:--:--:--:--:--:--:--:-:--:--:--:--:--:--:--:--:--:--:--:-– 12 mois variables explicatives aujourd’hui + 12 mois variable cible observation des prédiction de la variables explicatives variable à expliquer Le modèle sera par exemple une fonction f telle que : Probabilité(variable cible = x) = f(variables explicatives) 14/10/2011 © Stéphane Tufféry - Usage réservé à l’Université Rennes 1 41 Pré-segmentation Segmentation (classification) de la population : en groupes forcément distincts selon les données disponibles (clients / prospects) en groupes statistiquement pertinents vis-à-vis des objectifs de l’étude selon certaines caractéristiques sociodémographiques (âge, profession…) si elles correspondent à des offres marketing spécifiques Données utilisées liées à Oui l’événement à prédire Non 14/10/2011 Méthode de classification Classification statistique Règles d’experts solution efficace solution pouvant être efficace solution risquant d’être solution pouvant être moyennement efficace efficace si les données sont bien choisies © Stéphane Tufféry - Usage réservé à l’Université Rennes 1 42 Intérêt de segmenter : le paradoxe de Simpson courriel téléphone TOTAL courriel téléphone TOTAL courriel téléphone TOTAL 14/10/2011 sans achat 1 400 1 375 2 775 Tous clients avec achat 100 125 225 TOTAL 1 500 1 500 3 000 taux d'achat 6,67% 8,33% 7,50% sans achat 950 475 1 425 Hommes avec achat 50 25 75 TOTAL 1 000 500 1 500 taux d'achat 5,00% 5,00% 5,00% sans achat 450 900 1 350 Femmes avec achat 50 100 150 TOTAL 500 1 000 1 500 taux d'achat 10,00% 10,00% 10,00% © Stéphane Tufféry - Usage réservé à l’Université Rennes 1 43 Paradoxe de Simpson : explication Dans le dernier exemple : les hommes ne répondent pas mieux au téléphone qu’au courriel de même pour les femmes et pourtant, le téléphone semble avoir globalement un meilleur taux d’achat Explication : un individu pris au hasard ne répond pas mieux au téléphone mais les femmes achètent plus et on a privilégié le téléphone pour les contacter (liaison positive entre les variables « sexe » et « canal de distribution ») 14/10/2011 © Stéphane Tufféry - Usage réservé à l’Université Rennes 1 44 Pré-segmentation : aspects opérationnels Simplicité de la pré-segmentation (pas trop de règles) Nombre limité de segments et stabilité des segments Tailles des segments généralement du même ordre de grandeur Homogénéité des segments du point de vue des variables explicatives Homogénéité des segments du point de vue de la variable à expliquer 14/10/2011 © Stéphane Tufféry - Usage réservé à l’Université Rennes 1 45 Exemple de segmentation de clientèle 10 patrimoine - âge 5 P C R 2 0 crédit conso-5 - CB 0 faibles revenus S1 (rouge) : peu actifs S2 (rose) : jeunes S3 (bleu) : consommateurs 14/10/2011 5 PCR1 10 forts revenus S4 (orange) : seniors S5 (noir) : aisés S6 (vert) : débiteurs © Stéphane Tufféry - Usage réservé à l’Université Rennes 1 46 Analyse exploratoire des données 1/2 Explorer la distribution des variables Vérifier la fiabilité des variables valeurs incohérentes ou manquantes suppression ou imputation ou isolement certaines variables sont fiables mais trompeuses Détecter les valeurs extrêmes Le profil de souscripteurs peut être faussé par une campagne commerciale ciblée récente voir si valeurs aberrantes à éliminer Variables continues détecter la non-monotonie ou la non-linéarité justifiant la discrétisation tester la normalité des variables (surtout si petits effectifs) et les transformer pour augmenter la normalité éventuellement discrétiser : découper la variable en tranches en fonction de la variable à expliquer et isoler les valeurs manquantes ou aberrantes 14/10/2011 © Stéphane Tufféry - Usage réservé à l’Université Rennes 1 47 Analyse exploratoire des données 2/2 Variables qualitatives ou discrètes Créer des indicateurs pertinents d’après les données brutes regrouper certaines modalités aux effectifs trop petits représenter les modalités dans une analyse des correspondances multiples prendre l’avis des spécialistes du secteur étudié création d’indicateurs pertinents (maxima, moyennes, présence/absence…) utiliser des ratios plutôt que des variables absolues calcul d’évolutions temporelles de variables création de durées, d’anciennetés à partir de dates croisement de variables, interactions (exemple : plafond ligne de crédit + part utilisée taux d’utilisation du crédit) utilisation de coordonnées factorielles Détecter les liaisons entre variables entre variables explicatives et à expliquer (bon) entre variables explicatives entre elles (colinéarité à éviter dans certaines méthodes) 14/10/2011 © Stéphane Tufféry - Usage réservé à l’Université Rennes 1 48 Problème de la qualité des données : 3 niveaux Données non correctes (manquantes ou aberrantes) Pas toujours faciles à détecter S’agit-il d’une erreur ou d’un outlier ? Comment corriger en apprentissage / en application ? Données non cohérentes Venant du rapprochement de données correctes isolément MAIS 0 est-il 0 ou manquant ? 9999..999 est-il manquant ou aberrant ? mesurées à des dates différentes ou sur des échelles différentes ou issues de règles de calcul différentes Données correctes et cohérentes mais trompeuses Par exemple, en appétence, le profil des souscripteurs peut être faussé par une campagne commerciale ciblée récente 14/10/2011 © Stéphane Tufféry - Usage réservé à l’Université Rennes 1 49 Traitement des valeurs manquantes D’abord vérifier que les valeurs manquantes ne proviennent pas : d’un problème technique dans la constitution de la base d’individus qui ne devraient pas se trouver dans la base Sinon, plusieurs solutions sont envisageables selon les cas : supprimer les observations (si elles sont peu nombreuses ou si le non renseignement de la variable est grave et peut laisser suspecter d’autres anomalies dans l’observation) ne pas utiliser la variable concernée (surtout si elle est peu discriminante) ou la remplacer par une variable proche mais sans valeur manquante mieux vaut supprimer une variable a priori peu utile, mais qui est souvent non renseignée et conduirait à exclure de nombreuses observations de la modélisation traiter la valeur manquante comme une valeur à part entière imputation : remplacer la valeur manquante par une valeur par défaut ou déduite des valeurs des autres variables remplacer les valeurs manquantes grâce à une source externe (rarement possible) Mais aucune solution n’est idéale 14/10/2011 © Stéphane Tufféry - Usage réservé à l’Université Rennes 1 50 Imputation des valeurs manquantes Imputation statistique par le mode, la moyenne ou la médiane par une régression ou un arbre de décision imputation simple (minore la variabilité et les intervalles de confiance des paramètres estimés) ou multiple (remplacer chaque valeur manquante par n valeurs, par exemple n = 5, puis faire les analyses sur les n tables et combiner les résultats pour obtenir les paramètres avec leurs écart-types 14/10/2011 © Stéphane Tufféry - Usage réservé à l’Université Rennes 1 51 L’imputation n’est jamais neutre Surtout si les données ne sont pas manquantes au hasard Déformation des variances et des corrélations avant imputation imputation par moyenne ou régression 6 5 4 3 2 1 0 0 1 2 3 après imputation par la moyenne yi 6 5 5 4 4 3 3 2 2 1 xi 0 imputation par régression + résidu aléatoire yi 6 1 xi 0 0 1 2 3 0 1 2 3 source : J.-P. Nakache – A. Gueguen, RSA 2005 14/10/2011 © Stéphane Tufféry - Usage réservé à l’Université Rennes 1 52 Schéma des valeurs manquantes Exemple de sortie produite par la procédure MI de SAS Caractéristiques des données manquantes Moyennes de groupes Groupe Var1 Var2 Var3 1 X X X 6557 80.79 2 X . X 3 0.04 0 3 . X X 1108 13.65 . -0.075471 0.595276 4 . X . 353 4.35 . 0.160265 . 5 . . X 91 1.12 . . 0.000916 6 O O O 4 0.05 . . . 14/10/2011 Fréq Pourcentage Var1 Var2 12.217310 0.245615 . © Stéphane Tufféry - Usage réservé à l’Université Rennes 1 Var3 3.102462 0.166667 53 Examen de la distribution des variables La durée du crédit présente des pics prévisibles à 12, 24, 36, 48 et 60 mois On constate assez nettement la plus forte proportion de crédits plus longs parmi ceux qui ont des impayés 14/10/2011 © Stéphane Tufféry - Usage réservé à l’Université Rennes 1 54 Normalisation : transformations Log (V) Racine carrée (V) si coefficient d’asymétrie > 0 -1/V ou –1/V² si coefficient d’asymétrie > 0 V2 ou V3 si coefficient d’asymétrie < 0 Arc sinus (racine carrée de V/100) transformation la plus courante pour corriger un coefficient d’asymétrie > 0 Si V 0, on prend Log (1 + V) si V est un pourcentage compris entre 0 et 100 Certains logiciels déterminent automatiquement la transformation la plus adaptée en utilisant la fonction de Box-Cox 14/10/2011 © Stéphane Tufféry - Usage réservé à l’Université Rennes 1 55 Normalisation : un exemple Revenus : Log(revenus) : Racine(revenus) : Asymétrie = 2,38 Asymétrie = - 2,03 Asymétrie = 0,64 Aplatissement = 11,72 Aplatissement = 12,03 Aplatissement = 1,76 La racine carrée normalise ici mieux que le logarithme 14/10/2011 (Loi normale : asymétrie = aplatissement (– 3) = 0) © Stéphane Tufféry - Usage réservé à l’Université Rennes 1 56 Utilité de la normalisation Une des hypothèses de l’analyse discriminante linéaire : de X/Gi et égalité des matrices de N’est en pratique jamais satisfaite Mais on constate une amélioration des performances de l’analyse discriminante lorsque l’on s’en rapproche : multinormalité covariances en neutralisant les « outliers » (individus hors norme) en normalisant les variables explicatives susceptibles d’entrer dans le modèle Moralité : mieux vaut connaître les contraintes théoriques pour se rapprocher des conditions optimales 14/10/2011 © Stéphane Tufféry - Usage réservé à l’Université Rennes 1 57 Discrétisation en tranches naturelles Densité clients sans appétence clients avec appétence variable explicative Y 14/10/2011 © Stéphane Tufféry - Usage réservé à l’Université Rennes 1 58 Pourquoi discrétiser ? Appréhender des liaisons non linéaires (de degré >1), voire non monotones, entre les variables continues Neutraliser les valeurs extrêmes (« outliers ») qui sont dans la 1ère et la dernière tranches Gérer les valeurs manquantes (imputation toujours délicate) par une ACM, une régression logistique ou une analyse discriminante DISQUAL rassemblées dans une tranche supplémentaire spécifique Gérer les ratios dont le numérateur et le dénominateur peuvent être tous deux > 0 ou < 0 Traiter simultanément des données quantitatives et qualitatives 14/10/2011 © Stéphane Tufféry - Usage réservé à l’Université Rennes 1 59 Exemple de discrétisation On commence par découper la variable explicative en déciles, et à regarder à quelle valeur correspond chaque décile Par exemple , le 2e décile est 25 ans 14/10/2011 Analysis Variable : Age Rang pour N la variable Age Obs Minimum Maximum 0 105 19.0000000 23.0000000 1 85 24.0000000 25.0000000 2 101 26.0000000 27.0000000 3 120 28.0000000 30.0000000 4 105 31.0000000 33.0000000 5 72 34.0000000 35.0000000 6 113 36.0000000 39.0000000 7 98 40.0000000 44.0000000 8 105 45.0000000 52.0000000 9 96 53.0000000 75.0000000 © Stéphane Tufféry - Usage réservé à l’Université Rennes 1 60 Table de dAge par Cible Exemple de discrétisation dAge(Rang pour la variable Age) FREQUENCE Pourcentage Pct en ligne Le tableau de contingence montre que les deux premiers déciles de l’âge correspondent à un taux d’impayés nettement supérieur à celui des autres déciles. Il y a donc un seuil à 25 ans. Aucun autre seuil ne se distingue nettement, les taux d’impayés fluctuant ensuite entre 20 % et un peu plus de 30 %. Le découpage de l’âge en deux tranches est donc décidé. 14/10/2011 © Stéphane Tufféry - Usage réservé à l’Université RennesTotal 1 Cible 1 2 Total 0 63 42 6.30 4.20 60.00 40.00 105 10.50 1 47 38 4.70 3.80 55.29 44.71 85 8.50 2 74 27 7.40 2.70 73.27 26.73 101 10.10 3 79 41 7.90 4.10 65.83 34.17 120 12.00 4 72 33 7.20 3.30 68.57 31.43 105 10.50 5 55 17 5.50 1.70 76.39 23.61 72 7.20 6 89 24 8.90 2.40 78.76 21.24 113 11.30 7 70 28 7.00 2.80 71.43 28.57 98 9.80 8 84 21 8.40 2.10 80.00 20.00 105 10.50 9 67 29 6.70 2.90 69.79 30.21 96 9.60 700 300 611000 70.00 30.00 100.00 Exemple de regroupement de modalités Regroupement de « < 100 » et « [100-500 euros[ dont les taux d’impayés sont proches (35,99% et 33,01%) Regroupement de « [500-1000 euros[ et « >= 1000 euros » : leurs taux d’impayés sont moins proches mais la 2e modalité est trop petite pour rester seule On pourrait même regrouper ces deux modalités avec « Pas d’épargne » 14/10/2011 Table de Epargne par Cible Epargne FREQUENCE Pourcentage Pct en ligne Cible OK KO Total Pas d'épargne 151 32 15.10 3.20 82.51 17.49 183 18.30 < 100 386 217 38.60 21.70 64.01 35.99 603 60.30 [100-500 euros[ 69 34 6.90 3.40 66.99 33.01 103 10.30 [500-1000 euros[ 52 11 5.20 1.10 82.54 17.46 63 6.30 >= 1000 euros 42 6 4.20 0.60 87.50 12.50 48 4.80 Total © Stéphane Tufféry - Usage réservé à l’Université Rennes 1 700 300 1000 70.00 30.00 100.00 62 Autre exemple de regroupement de modalités Le regroupement des modalités « Locataire » et « Logement gratuit » est évident Elles sont associées à des taux d’impayés proches et élevés (39,11% et 40,74%) Les propriétaires sont moins risqués, surtout s’ils ont fini leur emprunt, mais pas seulement dans ce cas, car ils sont généralement plus attentifs que la moyenne au bon remboursement de leur emprunt 14/10/2011 Table de Statut_domicile par Cible Statut_domicile FREQUENCE Pourcentage Pct en ligne Cible OK KO Total Locataire 109 70 10.90 7.00 60.89 39.11 179 17.90 Propriétaire 527 186 52.70 18.60 73.91 26.09 713 71.30 Logement gratuit 64 44 6.40 4.40 59.26 40.74 108 10.80 Total 700 300 1000 70.00 30.00 100.00 © Stéphane Tufféry - Usage réservé à l’Université Rennes 1 63 Exploration avec une ACM 14/10/2011 © Stéphane Tufféry - Usage réservé à l’Université Rennes 1 64 La sélection des variables 14/10/2011 © Stéphane Tufféry - Usage réservé à l’Université Rennes 1 65 Importance de la sélection des variables Exemple de David Hand (2005) : régression avec un coeff. de corrélation 0,5 entre chaque prédicteur et la cible, et un coeff. de corrélation entre chaque prédicteur Les courbes représentent 1-R² (proportion de la somme des carrés non expliquée) en fonction du nb de prédicteurs 14/10/2011 © Stéphane Tufféry - Usage réservé à l’Université Rennes 1 66 Limiter le nombre de variables sélectionnées En présence de colinéarité entre les prédicteurs, l’apport marginal de chaque prédicteur décroît très vite Et pourtant, ici chaque prédicteur est supposé avoir la même liaison avec la cible, ce qui n’est pas le cas dans une sélection pas à pas réelle où la liaison décroît ! Conclusion : Éviter au maximum la colinéarité des prédicteurs Limiter le nombre de prédicteurs : souvent moins de 10 Alternative : la régression PLS ou régularisée (ridge…) Remarque : Dans une procédure pas à pas, le 1er prédicteur peut occulter un autre prédicteur plus intéressant 14/10/2011 © Stéphane Tufféry - Usage réservé à l’Université Rennes 1 67 Sur-apprentissage en régression (A) Modèle trop simp le (B) B on modèle (C) Modèle trop complexe Un modèle trop poussé dans la phase d’apprentissage : • épouse toutes les fluctuations de l’échantillon d’apprentissage, • détecte ainsi de fausses liaisons, • et les applique à tort sur d’autres échantillons 14/10/2011 © Stéphane Tufféry - Usage réservé à l’Université Rennes 1 68 Sur-apprentissage en classement (C) Modèle trop complexe (B) Bon modèle Source : Olivier Bousquet 14/10/2011 © Stéphane Tufféry - Usage réservé à l’Université Rennes 1 69 Taux d’erreur en fonction de la complexité du modèle mauvaise généralisation taux d'erreur données de test et d'application bonne généralisation données apprentissage taille du modèle (A) (B) arrêter ici (C) Théorème de Vapnik : R Remp 14/10/2011 h (log( 2n / h) 1) log( / 4) n © Stéphane Tufféry - Usage réservé à l’Université Rennes 1 70 Rappel sur les tests Tests paramétriques Tests non-paramétriques supposent que les variables suivent une loi particulière (normalité, homoscédasticité) ex : test de Student, ANOVA ne supposent pas que les variables suivent une loi particulière se fondent souvent sur les rangs des valeurs des variables plutôt que sur les valeurs elles-mêmes peu sensibles aux valeurs aberrantes ex : test de Wilcoxon-Mann-Whitney, test de Kruskal-Wallis Exemple du r de Pearson et du de Spearman : r > présence de valeurs extrêmes ? > r liaison non linéaire non détectée par Pearson ? ex : x = 1, 2, 3… et y = e1, e2, e3… 14/10/2011 © Stéphane Tufféry - Usage réservé à l’Université Rennes 1 71 Liaison entre une variable continue et une variable de classe lois suivies 2 échantillons 3 échantillons et plus (***) normalité – homoscédasticité (*) test T de Student ANOVA normalité – hétéroscédasticité test T de Welch Welch - ANOVA non normalité – hétéroscédasticité (**) Wilcoxon – Mann – Whitney Kruskal – Wallis non normalité – hétéroscédasticité (**) test de la médiane test de la médiane non normalité – hétéroscédasticité (**) test de Jonckheere-Terpstra (échantillons ordonnés) moins puissant (*) Ces tests supportent mieux la non-normalité que l’hétéroscédasticité. (**) Ces tests travaillant sur les rangs et non sur les valeurs elles-mêmes, ils sont plus robustes et s’appliquent également à des variables ordinales (***) ne pas comparer toutes les paires par des tests T on détecte à tort des différences significatives (au seuil de 95 % : dans 27 % des cas pour 4 moyennes égales) 14/10/2011 © Stéphane Tufféry - Usage réservé à l’Université Rennes 1 72 Tableau ANOVA et statistique F Source de Somme des variation carrés (SC) k ni Totale (Yij Y ) i 1 j 1 Interclasse ni (Y i Y ) Intraclasse k Degrés de liberté (dl) 2 2 i 1 k ni i1 j 1 2 ( ) Yij Yi n-1 k-1 Carré moyen (CM) F SC/dl SC/dl CMinterclasse CMintraclasse n-k SC/dl CMinter/CMintra = F à comparer au F d’une loi de Fisher de ddl (k-1,n-k) η² = SCinterclasse / SCtotale = proportion de la variance expliquée 14/10/2011 © Stéphane Tufféry - Usage réservé à l’Université Rennes 1 73 Principe du test ANOVA On appelle « analyse de la variance » ce qui est en fait un test d’égalité de la moyenne, en raison de la façon de réaliser ce test, qui consiste à décomposer la variance de la variable continue Y en 2 parties : ce qui peut être attribué aux différences entre groupes (variance inter-classe) ce qui peut être attribué aux variations aléatoires (variance intra-classe, appelée « erreur ») Si CMinter/CMintra = est grand, c.a.d. si les variations aléatoires sont faibles par rapport à l’effet des différences entre classes, on peut rejeter H0 Cela se produit quand CMinter/CMintra dépasse la valeur critique de la loi de Fisher au niveau avec k–1 et n–k degrés de liberté 14/10/2011 © Stéphane Tufféry - Usage réservé à l’Université Rennes 1 74 Statistique de Mann-Whitney Utilisée pour k = 2 groupes, d’effectifs n1 et n2 quand les hypothèses de normalité et d’égalité des variances ne sont pas satisfaites Soit Ri = somme des rangs des observations du groupe i La statistique du test comparée à une valeur théorique est: n1 n1 1 n2 n2 1 U min n1n2 R1 , n1n2 R2 2 2 Avec les observations des 2 groupes G1 et G2 : G1 : 3 5 6 10 14 G2 : 8 12 16 18 On obtient les rangs G1 : 1 2 3 5 7 U1 = nb de fois où une valeur du groupe 1 précède une valeur du groupe 2 G2 : 4 6 8 9 D’où R1 = 18, R2 = 27, U = min(20+15–18,20+10–27) = 3 14/10/2011 © Stéphane Tufféry - Usage réservé à l’Université Rennes 1 75 Test non-paramétrique de WilcoxonMann-Whitney Statistique de la somme des rangs de Wilcoxon = Ri Les groupes sont d’autant plus significativement différents : que le U de Mann-Whitney est petit que le S de Wilcoxon est très grand ou très petit À chacune de ces statistiques est associé un test dont l’hypothèse nulle est que les rangs du groupe 1 ne diffèrent pas des rangs du groupe 2 où i est soit le 1er, soit le plus petit (dans SAS) groupe les tests sont équivalents test de Wilcoxon-Mann-Whitney On peut : comparer U et S à des valeurs lues en table ou, si n1 et n2 > 8, utiliser la convergence sous H0 vers une loi normale N(,) et calculer Z = (U-)/ et |Z| 14/10/2011 © Stéphane Tufféry - Usage réservé à l’Université Rennes 1 76 Test non-paramétrique de Kruskal-Wallis Utilisé pour k 2 groupes quand les hypothèses de normalité et d’égalité des variances ne sont pas satisfaites Soient N = nb d’observations, ni l’effectif du groupe i et Ri la somme des rangs des observations du groupe i La statistique du test est : 2 k 12 Ri 3( N 1) H N ( N 1) i 1 ni Correctif à apporter en cas d’égalités de rangs Si les effectifs sont grands ou si k > 6, H tend vers ² à k–1 d° de liberté sinon, regarder valeurs critiques dans une table 14/10/2011 © Stéphane Tufféry - Usage réservé à l’Université Rennes 1 77 Tests non-paramétriques sur SAS La PROC NPAR1WAY de SAS permet d'effectuer le test de Kruskal-Wallis et de Wilcoxon-Mann-Whitney (si k = 2) PROC NPAR1WAY WILCOXON DATA=table CORRECT=no ; CLASS a ; /* variable de groupe */ VAR x ; /* variable quantitative */ EXACT ; /* test exact facultatif */ RUN ; Autres options que WILCOXON : ANOVA : anova classique EDF : tests de Kolmogorov-Smirnov et Cramer-von Mises, et, si 2 niveaux de classification seulement, statistique de Kuiper MEDIAN : test de la médiane 14/10/2011 © Stéphane Tufféry - Usage réservé à l’Université Rennes 1 78 Résultats des tests avec option WILCOXON Wilcoxon Two-Sample Test Statistic (S) Wilcoxon Scores (Rank Sums) for Variable x Classified by Variable a 27.000 0 Normal Approximation Z 1.7146 One-Sided Pr > Z 0.0432 Two-Sided Pr > |Z| 0.0864 a N Sum of Scores 1 5 18.0 25.0 4.082483 3.600 2 4 27.0 20.0 4.082483 6.750 Chi-Square Pr > Square One-Sided Pr > Z 0.0624 Two-Sided Pr > |Z| 0.1248 Exact Test One-Sided Pr >= S 0.0556 Two-Sided Pr >= |S - Mean| 0.1111 14/10/2011 Std Dev Under H0 Mean Score Kruskal-Wallis Test n1, n2, R1 et R2 permettent de calculer U de Mann-Whitney 2.9400 1 DF t Approximation Expected Under H0 Chi- 0.0864 test non significatif : pas de différences entre les deux groupes © Stéphane Tufféry - Usage réservé à l’Université Rennes 1 79 Sélection des variables explicatives Dans la sélection des variables discriminantes d’un modèle, le test de Kruskal-Wallis est souvent plus apte que l’ANOVA paramétrique à détecter des variables qui seront efficaces, une fois mises en classes, dans une régression logistique notamment les variables hautement non normales que sont les ratios X/Y Idée de présentation des variables discriminantes : ² CHAID ddl variable ² KW X 2613,076444 1 0,0957 1 1023,9000 5 4 2,3606E-220 1 1 Y 2045,342644 2 0,0716 2 949,0000 5 4 4,0218E-204 2 11 Z 1606,254491 3 0,0476 5 902,3000 4 3 2,8063E-195 4 12 … 1566,991315 4 0,0491 4 920,4000 4 3 3,3272E-199 3 4 R² rang R² nb nœuds CHAID rang KW proba CHAID rang CHAID rang CART R² = des carrés interclasse / totale des carrés ² KW = ² de Kruskal-Wallis (à 1 d° de liberté) 14/10/2011 © Stéphane Tufféry - Usage réservé à l’Université Rennes 1 80 Sélection des variables explicatives En présence de corrélation entre les prédicteurs, l’apport marginal de chaque prédicteur décroît très vite Il peut même altérer le modèle (inversions de signes des paramètres) et réduire son pouvoir prédictif On préfère souvent un prédicteur moins lié à la variable à expliquer mais moins corrélé aux autres On limite le nombre de prédicteurs : moins de 10 dans la plupart des modèles de score On effectue des tests statistiques de corrélation Il est plus facile de limiter le nombre de prédicteurs si la population est homogène 14/10/2011 © Stéphane Tufféry - Usage réservé à l’Université Rennes 1 81 Automatisation de la sélection Avec l’ODS de SAS ou l’OMS de SPSS : ODS OUTPUT KruskalWallisTest = kruskal ; PROC NPAR1WAY WILCOXON DATA = exemple; CLASS segment ; VAR &var ; DATA kruskal (keep = Variable nValue1 RENAME=(nValue1=KWallis)) ; SET kruskal ; WHERE name1 = '_KW_' ; PROC SORT DATA = kruskal ; BY DESCENDING KWallis ; RUN; OMS /SELECT TABLES /IF COMMANDS = ["NPar Tests"] SUBTYPES = ["Kruskal Wallis Test Statistics"] /DESTINATION FORMAT = SAV OUTFILE = "C:\temp\kw.sav" /COLUMNS DIMNAMES=['Statistics']. NPAR TESTS /K-W= !var BY segment (0 1) /MISSING ANALYSIS. OMSEND. GET FILE = "C:\temp\kw.sav". SELECT IF(Var1 = 'Khi-deux'). EXE. SORT CASES Var3 (D) . SAVE OUTFILE = "C:\temp\kw.sav" /KEEP=Var2 Var3. 14/10/2011 © Stéphane Tufféry - Usage réservé à l’Université Rennes 1 82 Exemple de liste des variables Obs Liste des variables par liaison décroissante avec la variable à expliquer Ici les variables sont qualitatives et la liaison mesurée par le V de Cramer 0,4 0,35 0,3 0,25 0,2 0,15 0,1 0,05 Au Ag tre e s_ cr tu e at di io ts n_ fa m ilia le G ar an t ie Ta s ux _e ffo Nb rt _c re di Ty ts pe _e m pl oi An Te cie le ph nn on et e_ e do Nb m ici _p le er s_ ch ar ge Si Hi s Co m pt to es riq ue _c re Du di t re e_ cr ed it Ep ar gn O e bj et _ cr M ed on it ta nt _c re di t An cie Bi nn en et s e_ em St at pl ut oi _d om ici le 0 Variable 1 0.35174 Comptes 2 0.24838 Historique_credit 3 0.20499 Duree_credit 4 0.19000 Epargne 5 0.17354 Objet_credit 6 0.15809 Montant_credit 7 0.15401 Biens 8 0.13553 Anciennete_emploi 9 0.13491 Statut_domicile 10 0.12794 Age 11 0.11331 Autres_credits 12 0.09801 Situation_familiale 13 0.08152 Garanties 14 0.07401 Taux_effort 15 0.05168 Nb_credits 16 0.04342 Type_emploi 17 0.03647 Telephone 0.02737 Anciennete_domicile 83 © Stéphane Tufféry - Usage réservé à l’Université Rennes 1 0.00301 Nb_pers_charge 19 18 14/10/2011 V_Cramer Pourquoi le V de Cramer ? Classe 1 Classe 2 Classe 1 Ensemble Classe 2 Ensemble Effectifs observés : Effectifs observés : A 55 45 100 A 550 450 1000 B 20 30 50 B 200 300 500 Total 75 75 150 Total 750 750 1500 Effectifs attendus si la variable est indépendante de la classe : Effectifs attendus si la variable est indépendante de la classe : A 50 50 100 A 500 500 1000 B 25 25 50 B 250 250 500 Total 75 75 150 Total 750 750 1500 Probabilité du ² = 0,08326454 Probabilité du ² = 4,3205.10-8 Quand la taille de la population augmente, le moindre écart devient significatif aux seuils usuels 14/10/2011 © Stéphane Tufféry - Usage réservé à l’Université Rennes 1 84 Le V de Cramer V de Cramer = 2 2 max mesure directement l'intensité de la liaison de 2 variables catégorielles, sans avoir recours à une table du ² en intégrant l’effectif et le nombre de degrés de liberté, par l'intermédiaire de ²max ²max = effectif x [min (nb lignes, nb colonnes) – 1] V compris entre 0 (liaison nulle) et 1 (liaison parfaite) 14/10/2011 © Stéphane Tufféry - Usage réservé à l’Université Rennes 1 85 Sélection des variables : bootstrap On effectue une régression logistique stepwise sur chacun des échantillons bootstrap Variable Nb occurrences Constante 50 V05 46 V09 39 V14 37 V01 35 V03 34 V13 28 V02 23 V04 22 V18 18 V22 18 V19 16 V17 15 V24 14 V08 13 V36 12 V28 11 V07 10 14/10/2011 Variable Nb occurrences V25 7 V26 7 V15 6 V12 5 V29 5 V31 5 V10 4 V20 4 V06 2 V16 2 V32 2 V37 2 V11 1 V21 1 V23 1 V27 1 V34 1 V35 1 Bootstrap : B tirages aléatoires avec remise de n individus parmi n et sélection de variables sur chacun des B échantillons bootstrap C 60 o V n 0 50 s e5 V V t 0 V V 1 a 9 0 0 4 40 n 1 3 V t 1 V V 3 0 30 0 V V 2 4 1 2 V V V V V 1 1 V V 8 2 2 0 20 9 7 3 2 4 8 0 V V V V V V 6 8 V V 7 2 2 1 1 2 3 V V V V V V V V V V 1 2 5 6 10 5 2 9 1 0 1 3 3 1 2 2 2 3 3 0 0 6 6 2 7 1 1 3 7 4 5 seuil seuil 0 © Stéphane Tufféry - Usage réservé à l’Université Rennes 1 86 Sélection des variables : classification à l’aide d’une ACP avec rotation R-squared with Cluster Variable Own Cluster Next Closest 1-R**2 Ratio Cluster 1 nbpoints 0.6546 0.0011 0.3458 nb points fidélité nbproduits 0.6189 0.0183 0.3882 nb produits nbachats 0.5950 0.0007 0.4053 nb achats revenus 0.4551 0.0234 0.5580 revenus du client abonnement 0.2537 0.0042 0.7495 abonnement autre service utilcredit 0.2312 0.0002 0.7689 règlements à crédit age 0.6033 0.0000 0.3967 âge relation 0.6461 0.0336 0.3662 relation (ancienneté client) evolconsom 0.2151 0.0027 0.7870 évolution consommation Cluster 2 Variable Label PROC VARCLUS DATA=fichier_client; VAR age relation nbpoints nbproduits nbachats revenus abonnement evolconsom utilcredit; RUN; 14/10/2011 © Stéphane Tufféry - Usage réservé à l’Université Rennes 1 87 ACP avec rotation pour la classification de variables La procédure VARCLUS effectue une ACP avec rotation (quartimax) qui maximise la variance des coefficients de corrélation de chaque variable avec l’ensemble des facteurs Au lieu de maximiser la somme des carrés des coefficients de corrélation De façon à minimiser le nombre de facteurs nécessaires pour expliquer chaque variable 14/10/2011 © Stéphane Tufféry - Usage réservé à l’Université Rennes 1 88 La modélisation 14/10/2011 © Stéphane Tufféry - Usage réservé à l’Université Rennes 1 89 Méthodes inductives : 4 étapes Apprentissage : construction du modèle sur un 1er échantillon pour lequel on connaît la valeur de la variable cible Test : vérification du modèle sur un 2d échantillon pour lequel on connaît la valeur de la variable cible, que l’on compare à la valeur prédite par le modèle si le résultat du test est insuffisant (d’après la matrice de confusion ou la courbe ROC), on recommence l’apprentissage Validation du modèle sur un 3e échantillon, pour avoir une idée du taux d’erreur non biaisé du modèle Application du modèle à l’ensemble de la population 14/10/2011 valeur prédite A B valeur réelle A 1800 200 B 300 1700 TOTAL © Stéphane Tufféry - Usage réservé à l’Université Rennes 1 TOTAL 4000 90 Phase de modélisation Régression précision) logit logistique (généralité - concision - = - 0.98779849 - (0.00005411 * liquidités) + (0.01941272 * mouvements) + (0.12187987 * produits) - (0.00001503 * patrimoine); score = exp(logit) / (1 + exp(logit)); Analyse discriminante précision) Arbre de décision (généralité – lisibilité) 14/10/2011 (simplicité – © Stéphane Tufféry - Usage réservé à l’Université Rennes 1 concision – 91 Principales méthodes de scoring Analyse discriminante linéaire Résultat explicite P(Y/ X1, … , Xp) sous forme d’une formule Requiert des Xi continues et des lois Xi/Y multinormales et homoscédastiques (attention aux « outliers ») Optimale si les hypothèses sont remplies Régression logistique Sans hypothèse sur les lois Xi/Y, Xi peut être discret, nécessaire absence de colinéarité entre les Xi Précision parfois légèrement inférieure à l’analyse discriminante Arbres de décision Règles complètement explicites Traitent les données hétérogènes, éventuellement manquantes, sans hypothèses de distribution Détection de phénomènes non linéaires Moindre robustesse 14/10/2011 92 © Stéphane Tufféry - Usage réservé à l’Université Rennes 1 Sur-apprentissage dans un arbre la scission des nœuds 9 et 10 manque de robustesse la différence entre les erreurs en test et en apprentissage est d’autant plus petite que l’échantillon d’apprentissage est plus grand cohérent avec l’inégalité de Vapnik sur l’intervalle de confiance de l’erreur de prédiction Intérêt du « bootstrap aggregating » (bagging) avec des méthodes relativement peu robustes comme les arbres de décision 14/10/2011 © Stéphane Tufféry - Usage réservé à l’Université Rennes 1 93 Élagage d’un arbre de décision taux d'erreur données de test et d'application données apprentissage élaguer ici profondeur arbre (nb de feuilles) Un bon arbre doit être élagué pour éviter la remontée du taux d’erreur due au sur-apprentissage Dans l’exemple précédent, il faut élaguer les feuilles 9 et 10 14/10/2011 © Stéphane Tufféry - Usage réservé à l’Université Rennes 1 94 Grille de score Passage de coefficients (« Estimation ») à des pondérations dont la somme est comprise entre 0 et 100 Analyse des estimations de la vraisemblance maximum Erreur Khi 2 DF Estimation std de Wald Pr > Khi 2 Paramètre Variable Modalité Age > 25 ans 0 Age ≤ 25 ans 8 Autres_credits Aucun crédit extérieur 0 Autres_credits Crédits extérieurs 7 Comptes Pas de compte 0 Nb points 1 -3.1995 0.3967 65.0626 <.0001 Comptes CC >= 200 euros 1 1.0772 0.4254 6.4109 0.0113 Comptes CC < 0 euros 1 2.0129 0.2730 54.3578 <.0001 Comptes CC [0-200 euros[ 1 1.5001 0.2690 31.1067 <.0001 Comptes CC ≥ 200 euros 13 Comptes Pas de compte Comptes CC [0-200 euros[ 19 Comptes CC < 0 euros 25 Duree_credit ≤ 15 mois 0 Duree_credit 16-36 mois 13 Duree_credit > 36 mois 18 Epargne pas épargne ou > 500 euros 0 Epargne < 500 euros 8 Intercept 0 0 . . . Historique_credit Crédits en impayé 1 1.0794 0.3710 8.4629 0.0036 Historique_credit Crédits sans retard 1 0.4519 0.2385 3.5888 0.0582 Historique_credit Jamais aucun crédit 0 0 . . . Duree_credit > 36 mois 1 1.4424 0.3479 17.1937 <.0001 Duree_credit 16-36 mois 1 1.0232 0.2197 21.6955 <.0001 Duree_credit <= 15 mois 0 0 . . . Age <= 25 ans 1 0.6288 0.2454 6.5675 0.0104 Age > 25 ans 0 0 . . . Epargne < 500 euros 1 0.6415 0.2366 7.3501 0.0067 Epargne pas épargne ou > 500 euros 0 0 . . . Garanties Avec garant 0 Garanties Avec garant 1 -1.7210 0.5598 9.4522 0.0021 Garanties Sans garant 21 Garanties Sans garant 0 0 . . . Autres_credits Aucun crédit extérieur 1 -0.5359 0.2439 4.8276 0.0280 Historique_credit Jamais aucun crédit 0 Autres_credits Crédits extérieurs 0 0 . . . Historique_credit Crédits sans retard 6 Historique_credit Crédits en impayé 13 14/10/2011 © Stéphane Tufféry - Usage réservé à l’Université Rennes 1 95 Exemples de notations Note d’un jeune de moins de 25 ans, qui demande pour la première fois un crédit dans l’établissement et qui n’en a pas ailleurs, sans impayé, avec un compte dont le solde moyen est légèrement positif (mais < 200 €), avec un peu d’épargne (< 500 €), sans garant, qui demande un crédit sur 36 mois : Note d’un demandeur de plus de 25 ans, avec des crédits à la concurrence, sans impayé, avec un compte dont le solde moyen est > 200 €, avec plus de 500 € d’épargne, sans garant, qui demande un crédit sur 12 mois : 8 + 0 + 19 + 13 + 8 + 21 + 0 = 69 points 0 + 7 + 13 + 0 + 0 + 21 + 0 = 41 points On constate la facilité de l’implémentation et du calcul du score 14/10/2011 © Stéphane Tufféry - Usage réservé à l’Université Rennes 1 96 Découpage de la note de score On peut calculer les déciles du nombre de points et Table de dnbpoints par Cible leurs taux d’impayés correspondants : dnbpoints(Rang pour la variable nbpoints) Analysis Variable : nbpoints FREQUENCE Pct en ligne Rang pour N la variable nbpoints Obs Minimum Maximum 0 14/10/2011 104 Cible OK KO Total 0 99 95.19 5 4.81 104 1 89 93.68 6 6.32 95 2 100 93.46 7 6.54 107 6.0000000 29.0000000 1 95 33.0000000 37.0000000 2 107 39.0000000 42.0000000 3 101 19 84.17 15.83 120 3 120 43.0000000 48.0000000 4 71 27 72.45 27.55 98 4 98 49.0000000 54.0000000 5 60 33 64.52 35.48 93 5 93 55.0000000 60.0000000 6 81 6 81 61.0000000 65.0000000 48 33 59.26 40.74 7 104 7 104 66.0000000 69.0000000 60 44 57.69 42.31 8 92 70.0000000 74.0000000 8 38 54 41.30 58.70 92 9 106 75.0000000 95.0000000 9 34 72 32.08 67.92 106 Seuils de taux © Stéphane Tufféry - Usage réservé à l’Université Rennes 1 Total 700 300 97 1000 Taux d’impayés par tranches de score Table de nbpoints par Cible nbpoints FREQUENCE Pourcentage Pct en ligne Tranche de risque faible : Cible 8,69% d’impayés octroi du crédit avec minimum de formalités un KO Total Tranche de risque moyen : 37 3.70 8.69 426 42.60 risque moyen 239 137 [49 , 69] points 23.90 13.70 376 37.60 72 126 7.20 12.60 36.36 63.64 198 19.80 OK risque faible 389 [0 , 48] points 38.90 91.31 Total 14/10/2011 selon la Tranche de risque élevé : 63.56 36.44 risque fort ≥ 70 points 36,44% d’impayés octroi du crédit procédure standard 63,64% d’impayés octroi du crédit interdit sauf par l’échelon hiérarchique supérieur (directeur d’agence) 700 300 1000 70.00 30.00 100.00 © Stéphane Tufféry - Usage réservé à l’Université Rennes 1 98 Reprenons nos exemples Demandeur de moins de 25 ans, qui demande pour la première fois un crédit dans l’établissement et qui n’en a pas ailleurs, sans impayé, avec un compte dont le solde moyen est légèrement positif (mais < 200 €), avec un peu d’épargne (< 500 €), sans garant, qui demande un crédit sur 36 mois : 69 points risque moyen On est à la limite du risque élevé et cette limite aurait été franchie avec un crédit sur plus de 36 mois Demandeur de plus de 25 ans, avec des crédits à la concurrence, sans impayé, avec un compte dont le solde moyen est > 200 €, avec plus de 500 € d’épargne, sans garant, qui demande un crédit sur 12 mois : 41 points risque faible 14/10/2011 © Stéphane Tufféry - Usage réservé à l’Université Rennes 1 99 Exemple de prédiction des impayés à 12 mois 100% 90% 5,61 7,64 80% 10,46 70% 17,27 50,3 60% 50% 26,8 40% 22,37 30% 20% 17,45 32,23 10% 5,67 3,41 0,8 0% % clients Score 1 14/10/2011 Score 2 % impayés Score 3 Score 4 Score 5 © Stéphane Tufféry - Usage réservé à l’Université Rennes 1 Score 6 100 Les résultats du modèle retenu (autre exemple) 50,00% 45,00% 40,00% 35,00% 30,00% 25,00% 20,00% 15,00% 10,00% 5,00% 0,00% taux souscription 14/10/2011 1 2 3 4 5 6 7 8 9 10 0,10% 0,22% 0,67% 0,86% 1,38% 2,15% 3,23% 9,37% 21,08% 44,76% © Stéphane Tufféry - Usage réservé à l’Université Rennes 1 101 La mesure du pouvoir discriminant 14/10/2011 © Stéphane Tufféry - Usage réservé à l’Université Rennes 1 102 Validation des modèles Étape très importante car des modèles peuvent : donner de faux résultats (données non fiables) mal se généraliser dans l’espace (autre échantillon) ou le temps (échantillon postérieur) être peu efficaces (trop de faux positifs) être incompréhensibles ou inacceptables par les utilisateurs sur-apprentissage souvent en raison des variables utilisées Principaux outils de comparaison : matrices de confusion, courbes ROC, de lift, et indices associés Courbe ROC : proportion y de vrais positifs en fonction de la proportion x de faux positifs 14/10/2011 © Stéphane Tufféry - Usage réservé à l’Université Rennes 1 103 Sensibilité et spécificité Pour un score devant discriminer un groupe A (les positifs; ex : les risqués) par rapport à un autre groupe B (les négatifs ; ex : les non risqués), on définit 2 fonctions du seuil de séparation s du score : Pour un modèle, on cherche s qui maximise (s) tout en minimisant les faux positifs 1 - (s) = Proba(score ≥ s / B) sensibilité = (s) = Proba(score ≥ s / A) = probabilité de bien détecter un positif spécificité = (s) = Proba(score < s / B) = probabilité de bien détecter un négatif faux positifs : négatifs considérés comme positifs à cause du score Le meilleur modèle : permet de capturer le plus possible de vrais positifs avec le moins possible de faux positifs 14/10/2011 © Stéphane Tufféry - Usage réservé à l’Université Rennes 1 104 1,0 Courbe ROC ,8 Source de la courbe ,5 Ligne de référence arbre de décision ,3 analys discriminante La courbe ROC 0,0 régress. logistique sur l’axe Y : sensibilité = (s) 0,0 ,3 ,5 ,8 1,0 sur l’axe X : 1 - spécificité = 1 - (s) proportion y de vrais positifs en fonction de la proportion x de faux positifs, lorsque l'on fait varier le seuil s du score Exemple : si la courbe ROC passe par le point (0,3;0,9), ce point correspond à un seuil s qui est tel que : si on considère « risqués » tous les individus dont le score ≥ s, on a détecté : 30% des non-risqués (30% des non-risqués ont un score ≥ s : ce sont les faux positifs) 90 % des vrais risqués (90 % des risqués ont un score ≥ s : ce sont les vrais positifs) NB : 0,3 ne correspond pas à 30 % de la population totale ! 14/10/2011 © Stéphane Tufféry - Usage réservé à l’Université Rennes 1 105 Exemple de courbe ROC # Classe Score # Classe Score 1 P 0,90 2 P 0,80 11 P 0,40 12 N 0,39 3 N 0,70 13 P 0,38 4 P 0,65 14 P 0,37 5 P 0,60 15 N 0,35 0,30 6 P 0,55 16 1,000 N 7 P 0,50 17 N 0,25 ,900 P 0,20 N 0,15 N 0,10 8 N 0,45 18 9 N 0,44 19 10 N 0,42 20 ,800 0,37 0,15 0,10 ,900 1,000 0,25 0,40 ,700 True positive rate 0,50 ,600 0,42 ,500 ,400 ,300 ,200 0,70 ,100 ,000 ,000 14/10/2011 ,100 ,200 ,300 ,400 ,500 ,600 False positive rate 1 © Stéphane Tufféry - Usage réservé à l’Université Rennes ,700 ,800 106 Interprétation de la courbe ROC seuil s minimum : tous classés en + taux de vrais positifs prédiction parfaite seuil s maximum : tous classés en - prédiction nulle taux de faux positifs 14/10/2011 © Stéphane Tufféry - Usage réservé à l’Université Rennes 1 107 Matrice de confusion et courbe ROC Tableau de classementa Prévu CHD Observé CHD 0 0 1 1 45 16 Pourcentage global 12 27 Pourcentage correct 78,9 62,8 72,0 a. La valeur de césure est ,500 Sensibilité = 27/43 = 0,63 Seuil à 0,5 (= césure de la matrice de confusion) 1 - Spécificité = 1-(45/57) = 0,21 14/10/2011 © Stéphane Tufféry - Usage réservé à l’Université Rennes 1 108 Matrice de confusion (avec SAS) Table de classification Correct Incorrect Pourcentages Niveau de prob. Événement Nonévénement Événement Nonévénement Correct Sensibilité Spécificité POS fausse NEG fausse 0.000 43 0 57 0 43.0 100.0 0.0 57.0 . 0.100 42 6 51 1 48.0 97.7 10.5 54.8 14.3 0.200 39 24 33 4 63.0 90.7 42.1 45.8 14.3 0.300 36 32 25 7 68.0 83.7 56.1 41.0 17.9 0.400 32 41 16 11 73.0 74.4 71.9 33.3 21.2 0.500 27 45 12 16 72.0 62.8 78.9 30.8 26.2 0.600 25 50 7 18 75.0 58.1 87.7 21.9 26.5 0.700 19 51 6 24 70.0 44.2 89.5 24.0 32.0 0.800 7 55 2 36 62.0 16.3 96.5 22.2 39.6 42 58.0 2.3 100.0 0.0 42.4 43 57.0 0.0 100.0 . 43.0 prédit0.900 1.000 Observé total 14/10/2011 1 0 0 57 0 1 total 57 0 0 45 12 57 1 16 27 43 61 39 100 Correct = (45 + 27) / 100 = 72 % Sensibilité = 27 / 43 = 62,8 % Spécificité = 45 / 57 = 78,9 % POS fausse = 12 / 39 = 30,8 % NEG fausse = 16 / 61 = 26,2 % © Stéphane Tufféry - Usage réservé à l’Université Rennes 1 109 Courbes ROC avec entrée progressive des variables du modèle Sensi bi l i t é 1. 0 _step_ = 7 0. 9 0. 8 0. 7 _step_ = 1 0. 6 0. 5 0. 4 0. 3 Rapprocher l’apport de plus en plus faible de chaque variable avec la remarque de David Hand 0. 2 0. 1 0. 0 0. 0 0. 1 0. 2 0. 3 0. 4 0. 5 1 - 14/10/2011 0. 6 0. 7 0. 8 0. 9 1. 0 Spéci f i ci t é © Stéphane Tufféry - Usage réservé à l’Université Rennes 1 110 AUC : Aire sous la courbe ROC Aire AUC sous la courbe ROC = probabilité que score(x) > score(y), si x est tiré au hasard dans le groupe A (à prédire) et y dans le groupe B 1ère méthode d’estimation : par la méthode des trapèzes 2e méthode d’estimation : par les paires concordantes soit n1 (resp. n2) le nb d’observations dans A (resp. B) on s’intéresse aux n1n2 paires formées d’un x dans A et d’un y dans B parmi ces t paires : on a concordance si score(x) > score(y) ; discordance si score(x) < score(y) soient nc = nb de paires concordantes ; nd = nb de paires discordantes ; n1n2 - nc - nd = nb d’ex aequo aire sous la courbe ROC (nc + 0,5[t - nc - nd]) / n1n2 3e méthode équivalente : par le test de Mann-Whitney U = n1n2(1 – AUC) ou n1n2AUC 14/10/2011 © Stéphane Tufféry - Usage réservé à l’Université Rennes 1 111 AUC : calcul avec SAS ODS OUTPUT WilcoxonScores = wilcoxon; PROC NPAR1WAY WILCOXON DATA=&data CORRECT=no; CLASS &cible; VAR &score; RUN; U est la statistique de Mann-Whitney, qui se déduit des effectifs ni et de la somme des rangs Ri fournis par la proc NPAR1WAY de SAS DATA auc; SET wilcoxon; n2 = N; R2 = SumOfScores ; n1 = LAG(N); R1 = LAG(SumOfScores) ; u1 = (n1*n2) + (n1*(n1+1)/2) - R1 ; u2 = (n1*n2) + (n2*(n2+1)/2) - R2 ; u = MAX(u1,u2); AUC = ROUND(u/(n1*n2),0.001); RUN; n n 1 n n 1 U min n1n2 1 1 R1 , n1n2 2 2 R2 2 2 nb de fois où un score du groupe 1 > un score du groupe 2 PROC PRINT DATA=auc (KEEP = AUC) ; TITLE "Aire sous la courbe ROC de &data"; WHERE AUC > .; Obs Class N SumOfScores RUN; 14/10/2011 n2 R2 n1 R1 U1 U2 U AUC 1 1 711 1038858.0 711 1038858 . . . . . . 2 0 1490 1384443.0 1490 1384443 711 1038858 273648 785742 273648 0.74169 © Stéphane Tufféry - Usage réservé à l’Université Rennes 1 112 Utilisation de l’AUC Le modèle est d'autant meilleur que l’AUC est plus proche de 1 Si l'AUC = 0,5 : modèle pas meilleur qu'une notation aléatoire. Il existe un intervalle de confiance sur l’AUC et un test associé : Ai re sous la courbe Variable(s) de résultat s t ests arbre de décision régres sion logistique analy se disc riminante Zone ,887 ,906 ,889 a Erreur Std. ,008 ,007 ,008 Signif . b asy mptot ique ,000000 ,000000 ,000000 Interv alle de c onf iance 95% asy mpt otique Borne Borne inf érieure supérieure ,872 ,902 ,892 ,921 ,873 ,904 a. Dans l'hy pot hèse non-paramétrique b. Hy pot hèse nulle /: zone v raie = 0.5 Permet de comparer des modèles de types différents sur tout échantillon 14/10/2011 © Stéphane Tufféry - Usage réservé à l’Université Rennes 1 113 Courbe de lift La courbe de lift : sur l’axe Y : sensibilité = (s) = Proba(score ≥ s / A) sur l’axe X : Proba(score ≥ s) proportion de vrais positifs en fonction de la proportion d’individus sélectionnés, en faisant varier le seuil s du score même ordonnée que la courbe ROC, mais une abscisse généralement plus grande la courbe de lift est en général sous la courbe ROC 100 90 Très utilisée en marketing % d'individus répondants > ciblage aléatoire 80 ciblage par scoring 70 ciblage idéal 60 50 40 30 Lift = 40/10 = 4 20 10 0 0 25 50 75 100 % d'indiv idus ciblés 14/10/2011 © Stéphane Tufféry - Usage réservé à l’Université Rennes 1 COURBE DE CONCENTRATION 114 Lien entre courbe de lift et ROC Relation entre l’aire AUL sous la courbe de lift et l’aire AUC : Cas particuliers : AUC – AUL = p(AUC – 0,5) AUL = p/2 + (1 – p)AUC où p = Proba(A) = probabilité a priori de l’événement dans la population (=0,25 dans l’exemple précédent) AUC = 1 AUL = p/2 + (1 – p) = 1 – p/2 (modèle parfait !) AUC = 0,5 AUL = p/2 + 1/2 – p/2 = 0,5 p petit AUC et AUL sont proches AUC1 > AUC2 AUL1 > AUL2 Ces indicateurs sont des critères universels de comparaison de modèles 14/10/2011 © Stéphane Tufféry - Usage réservé à l’Université Rennes 1 115 Questionnaire adaptatif en scoring 14/10/2011 © Stéphane Tufféry - Usage réservé à l’Université Rennes 1 116 Problème posé Soient Y la variable à expliquer, et X1… Xk les variables explicatives Y = +1 (bon payeur) ou -1 (mauvais payeur) On calcule p = P(Y=1|Xi1=xi1, Xi2=xi2...) pour un ensemble de variables dès que p > s2 crédit octroyé dès que p < s1 (avec s1 < s2) crédit refusé Étape 1 Pour chaque modalité xij de chaque variable Xi, on calcule P(Y=1|Xi=xij) et on pose Pi = jP(xij), la somme étant prise sur toutes les modalités xij telles que P(Y=1|Xi=xij) < s1 ou > s2 ce sont les modalités qui permettent immédiatement d’octroyer ou de refuser le crédit 14/10/2011 © Stéphane Tufféry - Usage réservé à l’Université Rennes 1 117 Déroulement du questionnaire Étape 1 (suite) La 1ère question posée au demandeur de crédit correspondra à la variable Xi maximisant Pi c’est celle qui maximise la probabilité de pouvoir arrêter le questionnaire du client et prendre une décision Si aucune variable Xi n’a de modalité telle que P(Y=1|Xi=xij) < s1 ou > s2, on prend par exemple l’âge, qui est parent de plusieurs autres variables sur lesquelles il influe (situation de famille, nombre d’enfants, revenus…) Étape 2 Ayant obtenu du demandeur la réponse Q1 à la 1ère question, on recherche la 2e variable Xi qui maximise Pi = jP(xij|Q1), la somme étant prise sur toutes les modalités xij de Xi telles que P(Y=1|Q1,Xi=xij) < s1 ou > s2 14/10/2011 © Stéphane Tufféry - Usage réservé à l’Université Rennes 1 118 Avantages et inconvénients Étape n A chaque étape, on sélectionne la variable (et donc la question) qui maximise la probabilité de pouvoir arrêter le questionnaire, compte tenu des réponses précédentes Fin du processus quand P(Y=1 | Q1, Q2…) est < s1 ou > s2 Cette méthode de scoring est dite « du questionnaire adaptatif » (Naïm et al., 2007) un peu moins précise qu’une méthode traditionnelle la probabilité calculée sur un nombre partiel de réponses n’est pas nécessairement égale à la probabilité calculée sur l’ensemble des réponses (une très bonne réponse peut « repêcher » un dossier mal parti et vice versa) l’existence de nombreux questionnaires incomplets dans la base rend problématique l’élaboration des scores futurs mais cette méthode permet de minimiser le nombre de questions à poser au client et donc le temps d’instruction méthode utilisée pour un score d’octroi au crédit à la consommation utilisé en ligne sur Internet (en moyenne 8,5 questions posées sur les 14 possibles) 14/10/2011 © Stéphane Tufféry - Usage réservé à l’Université Rennes 1 119 Quelques principes du data mining 14/10/2011 © Stéphane Tufféry - Usage réservé à l’Université Rennes 1 120 Les 8 principes de base de la modélisation La préparation des données est la phase la plus longue, pas la plus passionnante mais la plus importante Il faut un nombre suffisant d’observations pour en inférer un modèle Validation sur un échantillon de test distinct de celui d’apprentissage (ou validation croisée) Arbitrage entre la précision d’un modèle et sa robustesse (« dilemme biais – variance ») Limiter le nombre de variables explicatives et surtout éviter leur colinéarité Perdre parfois de l’information pour en gagner On modélise mieux des populations homogènes découpage des variables continues en classes intérêt d’une classification préalable à la modélisation La performance d’un modèle dépend plus de la qualité des données et du type de problème que de la méthode 14/10/2011 © Stéphane Tufféry - Usage réservé à l’Université Rennes 1 121 Qualités attendues d’une technique prédictive 1/2 La précision La robustesse le taux d’erreur doit être le plus bas possible, et l’aire sous la courbe ROC la plus proche possible de 1 être le moins sensible possible aux fluctuations aléatoires de certaines variables et aux valeurs manquantes ne pas dépendre de l’échantillon d’apprentissage utilisé et bien se généraliser à d’autres échantillons La concision les règles du modèle doivent être les plus simples et les moins nombreuses possible 14/10/2011 © Stéphane Tufféry - Usage réservé à l’Université Rennes 1 122 Qualités attendues d’une technique prédictive 2/2 Des résultats explicites La diversité des types de données manipulées toutes les méthodes ne sont pas aptes à traiter les données qualitatives, discrètes, continues et… manquantes La rapidité de calcul du modèle les règles du modèle doivent être accessibles et compréhensibles un apprentissage trop long limite le nombre d’essais possibles Les possibilités de paramétrage dans un classement, il est parfois intéressant de pouvoir pondérer les erreurs de classement, pour signifier, par exemple, qu’il est plus grave de classer un patient malade en « non-malade » que l’inverse 14/10/2011 © Stéphane Tufféry - Usage réservé à l’Université Rennes 1 123 Choix d’une méthode : nature des données explicatives 1 quantitative n quantitatives (covariable) (covariables) 1 qualitative (facteur) n qualitatives (facteurs) mélange ANOVA, arbres de décision, réseaux de neurones ANCOVA, arbres de décision, réseaux de neurones MANCOVA, réseaux de neurones régression logistique, arbres, réseaux de neurones à expliquer 1 quantitative n quantitatives (représentent des quantités ) 1 qualitative nominale ou binaire 1 discrète (comptage) 1 quantitative asymétrique 1 qualitative ordinale n quantitatives ou14/10/2011 qualitatives rég. linéaire simple, régression robuste, arbres de décision régression PLS2 ADL, régression logistique, arbres de décision rég. linéaire multiple, ANOVA, rég. robuste, PLS, arbres de arbres, réseaux de décision neurones régression PLS2, réseaux de neurones MANOVA MANOVA, réseaux de neurones ADL, rég. logistique, régression régression reg. logistique PLS, logistique, logistique, arbres, réseaux de DISQUAL, DISQUAL, neurones, SVM arbres arbres, réseaux de neurones modèle linéaire généralisé (régression de Poisson, modèle log-linéaire) modèle linéaire généralisé (régressions gamma et log-normale) régression logistique ordinale (au moins 3 niveaux) modèle à mesures répétées (les n variables représentent mesures répétées d’une même © Stéphane Tufféry - Usagedes réservé à l’Université Rennes 1 quantité) 124 Choix d’une méthode : précision, robustesse, concision, lisibilité Précision : privilégier la régression linéaire, l’analyse discriminante et la régression logistique, et parfois les réseaux de neurones en prenant garde au surapprentissage (ne pas avoir trop de neurones dans la ou les couches cachées) Robustesse : éviter les arbres de décision et se méfier des réseaux de neurones, préférer une régression robuste à une régression linéaire par les moindres carrés Concision : privilégier la régression linéaire, l’analyse discriminante et la régression logistique, ainsi que les arbres sans trop de feuilles Lisibilité : préférer les arbres de décision et prohiber les réseaux de neurones. La régression logistique, DISQUAL, l’analyse discriminante linéaire et la régression linéaire fournissent aussi des modèles faciles à interpréter 14/10/2011 © Stéphane Tufféry - Usage réservé à l’Université Rennes 1 125 Choix d’une méthode : autres critères Peu de données : éviter les arbres de décision et les réseaux de neurones Données avec des valeurs manquantes : essayer de recourir à un arbre, à une régression PLS, ou à une régression logistique en codant les valeurs manquantes comme une classe particulière Les valeurs extrêmes de variables continues n’affectent pas les arbres de décision, ni la régression logistique et DISQUAL quand les variables continues sont découpées en classes et les extrêmes placés dans 1 ou 2 classes Variables explicatives très nombreuses ou très corrélées : arbres de décision, régression régularisée ou PLS Mauvaise compréhension de la structure des données : réseaux de neurones (sinon exploiter la compréhension des données par d’autres types de modèles) 14/10/2011 © Stéphane Tufféry - Usage réservé à l’Université Rennes 1 126 Choix d’une méthode : topographie des classes à discriminer 1 0 0 0 0 1 0 1 0 1 0 0 1 1 ? 0 1 1 0 1 1 0 0 0 0 1 10 1 0 1 1 11 ? 00 00 + 1 1 + ? 00 + 1 1 00 11 1 0 0 0 0 1 10 1 0 1 1 11 ? 00 00 + 1 1 + ? 00 + 1 1 00 11 ? est classé en "1" ? est classé en "0" ? est classé en "0" Analyse discriminante Réseau de neurones Arbre de décision Toutes les méthodes inductives de classement découpent l’espace des variables en régions, dont chacune est associée à une des classes La forme de ces régions dépend de la méthode employée 14/10/2011 © Stéphane Tufféry - Usage réservé à l’Université Rennes 1 127 Influence des données et méthodes Pour un jeu de données fixé, les écarts entre les performances de différents modèles sont souvent faibles exemple de Gilbert Saporta sur des données d’assurance automobile (on mesure l’aire sous la courbe ROC) : le choix de la méthode est parfois affaire d’école Les performances d’un modèle dépendent : régression logistique : 0,933 régression PLS : 0,933 analyse discriminante DISQUAL : 0,934 analyse discriminante barycentrique : 0,935 un peu de la technique de modélisation employée beaucoup plus des données ! D’où l’importance de la phase préliminaire d’exploration et d’analyse des données et même le travail (informatique) de collecte des données 14/10/2011 © Stéphane Tufféry - Usage réservé à l’Université Rennes 1 128 L’agrégation de modèles 14/10/2011 © Stéphane Tufféry - Usage réservé à l’Université Rennes 1 129 Principe du bootstrap 1/4 Pb : estimation d’un paramètre statistique défini dans une population globale et fonction d’une loi statistique F Or, la population et la loi F sont généralement inconnues ex : la moyenne = E(F) d’autant que la population peut être en évolution perpétuelle ou qu’il peut exister des erreurs de mesure, de saisie… Quand nous travaillons sur un jeu de données, il s’agit presque toujours d’un échantillon S = {x1, x2, …, xn} tiré d’une population globale inconnue et on cherche à approcher le paramètre par un estimateur défini sur S, cet estimateur étant obtenu en remplaçant la loi inconnue F par la loi « empirique », qui est la loi discrète donnant une probabilité 1/n à chaque xi 14/10/2011 © Stéphane Tufféry - Usage réservé à l’Université Rennes 1 130 Principe du bootstrap 2/4 Cet estimateur est appelé estimateur « plug-in » n s(x) pour signifier qu’il dépend de l’échantillon On le note Si F est la loi normale de moyenne F et de d’écart-type F, on connaît la distribution des estimateurs : elle suit la loi normale de moyenne F et de d’écart-type F / n 1 ex : xi est un estimateur « plug-in » de la moyenne n i 1 E( ) = on dit que est un estimateur sans biais. ici, de plus, il est donné par une formule explicite, de même que son écart-type Plus généralement se pose la question de la précision et de la robustesse d’un estimateur, i.e. de son biais et de son écart-type, généralement non explicites 14/10/2011 © Stéphane Tufféry - Usage réservé à l’Université Rennes 1 131 Principe du bootstrap 3/4 Pour calculer l’écart-type de l’estimateur, il faudrait pouvoir déterminer l’estimateur sur un grand nombre d’échantillons S’, S’’… Or, souvent un seul échantillon S nous est donné Idée de Bradley Efron (1979) : reproduire le passage de la population à l’échantillon S étudié, en faisant jouer à S = {x1, x2, …, xn} le rôle d’une nouvelle population et en obtenant les échantillons souhaités S’, S’’… par des tirages aléatoires avec remise des n individus x1, x2, …, xn Échantillon bootstrap = échantillon obtenu par tirage avec remise de n individus parmi n Chaque xi peut être tiré plusieurs fois ou ne pas être tiré. Sa probabilité d’être tiré est p = 1 – (1 – 1/n)n, et p 0,632 quand n + 14/10/2011 © Stéphane Tufféry - Usage réservé à l’Université Rennes 1 132 Principe du bootstrap 4/4 Pour avoir le biais et l’écart-type de l’estimateur d’un paramètre statistique avec et F inconnues On tire B (souvent B 100) échantillons bootstrap on calcule sur chacun d’eux l’estimateur « plug-in » on obtient une distribution des estimateurs « plug-in » 1 centrée autour de la moyenne B on déduit un écart-type qui fournit l’approximation recherchée de l’écart-type de l’estimateur B b 1 *b on peut déduire un intervalle de confiance [Q2,5 ; Q97,5] à 95 % de l’estimateur en regardant la 25e plus faible valeur Q2,5 et la 25e plus forte valeur Q97,5 de l’estimateur bootstrap le biais = différence entre l’estimateur calculé sur S et la moyenne des estimateurs bootstrap 14/10/2011 © Stéphane Tufféry - Usage réservé à l’Université Rennes 1 133 Application au scoring Les paramètres que l’on cherche à estimer sont : le taux d’erreur (ou de bon classement) ou une autre mesure de performance du modèle de score (aire sous la courbe ROC, indice de Gini…) les coefficients de la fonction de score les prédictions (probabilités a posteriori d’appartenance à chaque classe à prédire) La population globale sur laquelle devrait être construit le modèle est inconnue : on tire B échantillons bootstrap à partir de l’échantillon initial puis on construit un modèle sur chaque échantillon on obtient des intervalles de confiance des indicateurs de performance (ex : aire sous la courbe ROC) du modèle 14/10/2011 © Stéphane Tufféry - Usage réservé à l’Université Rennes 1 134 Rééchantillonnage boostrap et bagging 14/10/2011 © Stéphane Tufféry - Usage réservé à l’Université Rennes 1 135 Biais des estimations NB : la moyenne des taux d’erreur sur les échantillons bootstrap est une estimation biaisée par optimisme Une variante consiste à calculer les erreurs sur les seuls individus n’appartenant pas à l’échantillon bootstrap : c’est l’estimation « out-of-bag » Comme cette estimation est cette fois-ci biaisée par pessimisme, Efron et Tibshirani ont proposé de pallier simultanément le biais optimiste de l’estimation de la resubstitution et le biais pessimiste du bootstrap « outof-bag » par la « formule magique » du « .632bootstrap » : Estimation.632 = 0,368 x estimation(resubstitution) + 0,632 x estimation(bootstrap-oob) 14/10/2011 © Stéphane Tufféry - Usage réservé à l’Université Rennes 1 136 Rééchantillonnage boostrap avec estimation « out-of-bag » 14/10/2011 « Formule magique » du « .632bootstrap » (Efron et Tibshirani) : Estimation.632 = 0,368 x estimation(resubstitution) + 137 © Stéphane Tufféry - Usage réservé à l’Université Rennes 1 0,632 x estimation(bootstrap-oob) Agrégation de modèles : le bagging BAGGING : Bootstrap AGGregatING, Breiman, 1996 Construction d’une famille de modèles sur n échantillons bootstrap (tirages avec remise) Le classifieur de base est le même à chaque itération : CART, CHAID, modèle logit… Les n modèles sont enfin agrégés par un vote ou une moyenne des estimations (ou une moyenne des probabilités en régression logistique) 14/10/2011 © Stéphane Tufféry - Usage réservé à l’Université Rennes 1 138 Exemple de performances du bagging sur un arbre CHAID 0,780 0,760 Aire sous la courbe ROC 0,740 0,720 0,700 0,680 0,660 0,640 0,620 1 10 19 28 37 46 55 64 73 82 91 100 Nombre d'échantillons bootstrap 14/10/2011 AUC validation (leaf = 50 - maxdepth = 3) AUC validation (leaf = 100 - maxdepth = 3) AUC validation (leaf = 25 - maxdepth = 3) AUC validation (leaf = 50 - maxdepth = 1) © Stéphane Tufféry - Usage réservé à l’Université Rennes 1 139 Constats sur le bagging de CHAID Premiers constats au vu des tests sur le jeu de données Assurance TIC (http://www.liacs.nl/~putten/library/cc2000) Détails et code SAS dans : Tufféry, Étude de cas en statistique décisionnelle, Éditions Technip, 2009 L’arbre à un seul niveau voit sa performance améliorée par le bagging tout en restant limitée (mais supérieure à celle d’un arbre de profondeur 3 non baggé) A profondeur égale (= 3), un arbre avec des effectifs minima de feuilles (leaf) = 25 est dans un premier temps moins robuste et a une AUC plus faible en test qu’avec leaf = 50 (leaf = 100 donne un arbre moins précis) En revanche, les trois courbes d’AUC en fonction du nombre de tirages converge vers une valeur commune (0,760) qui est bien plus élevée que les AUC initiales 14/10/2011 © Stéphane Tufféry - Usage réservé à l’Université Rennes 1 140 Effet du bagging selon la force du classifieur de base 0,770 0,760 Aire sous la courbe ROC 0,750 0,740 0,730 0,720 0,710 0,700 1 10 19 28 37 46 55 64 73 82 91 100 Nombre d'échantillons bootstrap AUC validation CHAID (leaf = 50) 14/10/2011 AUC validation logit AUC validation ADL © Stéphane Tufféry - Usage réservé à l’Université Rennes 1 141 Constats sur le bagging Pour la régression logit et l’analyse discriminante linéaire (ADL), on a baggé le modèle en prenant chaque fois les mêmes variables (celles du modèle de base) sans opérer de sélection à chaque itération, afin d’avoir les mêmes variables dans chaque modèle agrégé, et pouvoir considérer le modèle final comme celui dont les coefficients sont les moyennes des coefficients de chaque modèle agrégé On constate que le logit et l’ADL ne gagnent pas au bagging C’est généralement le cas des classifieurs « forts » (robustes = faible variance) Les classifieurs « faibles » que sont les arbres gagnent au bagging mais voient leur structure simple détruite (un agrégat d’arbre n’est plus un arbre) ce qui peut en diminuer l’intérêt et rendre plus difficile l’utilisation 14/10/2011 © Stéphane Tufféry - Usage réservé à l’Université Rennes 1 142 Agrégation de modèles : les forêts aléatoires Forêts aléatoires, Breiman, 2001 = Bagging pour les arbres de décision en ajoutant un tirage aléatoire d’un sous-ensemble parmi l’ensemble des variables explicatives Évite de voir apparaître toujours les mêmes variables Chaque arbre élémentaire est moins performant mais l’agrégation peut conduire à un modèle agrégé plus performant Efficace sur les souches (« stumps »), arbres à 2 feuilles contrairement au simple bagging Breiman suggère un sous-ensemble de p variables (racine du nombre total de variables explicatives) 14/10/2011 © Stéphane Tufféry - Usage réservé à l’Université Rennes 1 143 Agrégation de modèles : le boosting BOOSTING, Freund et Schapire, 1996 Version adaptative et généralement déterministe du Bagging : on travaille sur toute la population et à chaque itération, on augmente le poids des individus mal classés dans les itérations précédentes tandis que le poids des bien classés n’augmente pas Nombreux algorithmes : Discrete AdaBoost, Real AdaBoost, LogitBoost, Gentle AdaBoost et Arcing (Adaptative Resampling and Combining) Avec CART, le nb de feuilles est à prendre dans [4,8] ou = p, où p = nb de variables explicatives 14/10/2011 © Stéphane Tufféry - Usage réservé à l’Université Rennes 1 144 Illustration (Robert Schapire) Extrait d’une conférence visible ici : http://videolectures.net/mlss05us_schapire_b/ 14/10/2011 © Stéphane Tufféry - Usage réservé à l’Université Rennes 1 145 Différence entre bagging et boosting En boosting : on construit un ensemble de modèles dont on agrège ensuite les prédictions remarque : on remarque dans mmfm(x) l’expression de g(E(Y/X=x)) rencontrée dans le modèle additif généralisé le boosting est un modèle additif (Hastie et al., 2009) Mais : on n’utilise pas nécessairement des échantillons bootstrap mais plus souvent l’échantillon initial complet à chaque itération (sauf dans quelques versions des algorithmes AdaBoost et Arcing) chaque modèle est une version adaptative du précédent, l’adaptation consistant à augmenter le poids des individus précédemment mal classés par rapport à celui des bien classés l’agrégation finale des modèles est réalisée par une moyenne de tous les modèles dans laquelle chacun est généralement pondéré par sa qualité d’ajustement 14/10/2011 © Stéphane Tufféry - Usage réservé à l’Université Rennes 1 146 Algorithme Discrete AdaBoost 1) Initialiser les poids des N individus de l’échantillon d’apprentissage : pi = 1/N, i = 1, 2, …, N 2) Répéter pour m = 1 à M Ajuster le classifieur fm(x) {-1,+1} sur l’échantillon d’apprentissage pondéré par les poids pi Calculer le taux d’erreur m pondéré des observations mal classées et calculer m = ln((1-m)/m) Multiplier le poids pi de chaque observation mal classée par exp(m) pour i = 1, 2, …, N Normaliser les poids pi pour que leur somme soit 1 3) Le classifieur boosté est le signe de la somme mmfm(x) (ou la valeur moyenne des mfm(x)) 14/10/2011 © Stéphane Tufféry - Usage réservé à l’Université Rennes 1 147 Algorithme Arcing 1) Initialiser les poids des N individus de l’échantillon d’apprentissage : pi = 1/N, i = 1, 2, …, N 2) Répéter pour m = 1 à M Dans l’échantillon d’apprentissage, tirer avec remise N individus chacun selon la probabilité pi Ajuster le classifieur fm(x) {-1,+1} sur l’échantillon ainsi tiré Sur l’échantillon d’apprentissage initial : Calculer le taux d’erreur m pondéré des observations mal classées par fm(x) et calculer m = ln((1-m)/m) Multiplier le poids pi de chaque observation mal classée par exp(m) pour i = 1, 2, …, N Normaliser les poids pi pour que leur somme soit 1 3) Le classifieur boosté est le signe de la somme mmfm(x) (ou la valeur moyenne des mfm(x)) 14/10/2011 © Stéphane Tufféry - Usage réservé à l’Université Rennes 1 148 Algorithme Arcing (variante arc-x4) A chaque itération, le poids d’un individu est proportionnel à la somme de 1 et des puissances 4e des nombres d’erreurs de classification des itérations précédentes Breiman (Breiman, 1996) a choisi la puissance 4e de façon empirique après avoir testé plusieurs valeurs 14/10/2011 © Stéphane Tufféry - Usage réservé à l’Université Rennes 1 149 Algorithme Real AdaBoost 1) Initialiser les poids des N individus : 2) Répéter pour m = 1 à M calculer la probabilité pm(x) = P(Y = 1|x) sur l’échantillon d’apprentissage pondéré par les poids pi Calculer fm(x) = ½ Log(pm(x)/(1-pm(x)) Multiplier le poids pi de chaque observation (xi,yi) par exp(-yi.fm(xi)) pour i = 1, 2, …, N Normaliser les poids pi pour que leur somme soit 1 pi = 1/N, i = 1, 2, …, N 3) Le classifieur boosté est le signe de la somme mfm(x) 14/10/2011 © Stéphane Tufféry - Usage réservé à l’Université Rennes 1 150 Exemple de performances du boosting sur un arbre CHAID Premiers constats au vu des tests sur le jeu de données Assurance TIC (http://www.liacs.nl/~putten/library/cc2000) Les meilleures performances avec CHAID sont obtenues en test avec une taille minimale de feuilles = 50 Nous avons obtenu de bien meilleurs résultats avec la variante « arcing » du boosting, qui introduit le facteur aléatoire par un tirage avec remise et avec une probabilité de tirage plus importante pour les individus mal classés à l’itération précédente Ce tirage aléatoire introduit une plus grande diversité dans les modèles obtenus et agrégés Nous avons donc limité nos tests à la variante « arcing » 14/10/2011 © Stéphane Tufféry - Usage réservé à l’Université Rennes 1 151 Constats sur cet exemple Dans cet exemple, le meilleur résultat est obtenu avec : l’arcing sur des arbres de profondeur 3 plutôt que des arbres de base moins complexes (profondeur 1 ou 2) mais on note que les arbres de profondeur 1 bénéficient plus de l’arcing (on atteint AUC = 0,740) que du bagging sur des arbres ayant un effectif minimum de 25 individus par feuille (on atteint AUC = 0,765 contre 0,760 avec un bagging ou un arcing sur 50 ou 100 individus par feuille) sur l’ensemble des prédicteurs, sans sélection préalable avec au moins 300 itérations avec pondération des prédictions en fonction du taux d’erreur de l’itération, qui est généralement bénéfique en limitant le surapprentissage qui surviendrait en raison de l’importance accordé aux outliers 14/10/2011 © Stéphane Tufféry - Usage réservé à l’Université Rennes 1 152 BAGGING BOOSTING Caractéristiques Le bagging est un mécanisme aléatoire Le boosting est adaptatif et généralement (sauf l’arcing) déterministe On utilise un nouvel échantillon bootstrap à chaque itération On utilise généralement l’échantillon initial complet à chaque itération (sauf pour l’arcing) Chaque modèle produit doit être performant sur l’ensemble des observations Chaque modèle produit doit être performant sur certaines observations ; un modèle performant sur certains outliers sera moins performant sur les autres individus Dans l’agrégation, tous les modèles ont le même poids Dans l’agrégation, les modèles pondérés selon leur taux d’erreur sont généralement Avantages et inconvénients Technique de réduction de la variance par moyenne de modèles Peut diminuer la variance et le biais du classifieur de base. Mais la variance peut augmenter avec un classifieur stable Perte de lisibilité quand le classifieur de base est un arbre de décision Perte de lisibilité quand le classifieur de base est un arbre de décision Inopérant sur les « stumps » Efficace sur les « stumps » Convergence plus rapide Convergence plus lente Possibilité de paralléliser l’algorithme Algorithme séquentiel ne pouvant être parallélisé Pas de sur-apprentissage : supérieur au boosting en présence de « bruit » Risque de sur-apprentissage mais globalement supérieur au bagging sur des données non bruitées (l’arcing est moins sensible au bruit) Le bagging est plus souvent efficace que le boosting… … mais quand le boosting est efficace, il dépasse le boosting 14/10/2011 © Stéphane Tufféry - Usage réservé à l’Université Rennes 1 153 La détection des règles d’associations 14/10/2011 © Stéphane Tufféry - Usage réservé à l’Université Rennes 1 154 Les recherches d’associations Rechercher les associations consiste à rechercher les règles du type : « Si pour un individu, la variable A = xA, la variable B = xB, etc, alors, dans 80% des cas, la variable Z = xZ, cette configuration se rencontrant pour 20 % des individus » La valeur de 80% est appelée indice de confiance et la valeur de 20% est appelée indice de support Par exemple, dans l’ensemble de transactions ci-contre : T26 A B C D T1245 B C E F T156 B E T2356 A B T145 C D E D l’indice de confiance de « B E » = 3/4 l’indice de support de « B E » = 3/5 14/10/2011 © Stéphane Tufféry - Usage réservé à l’Université Rennes 1 155 Les associations : définitions Une règle est donc une expression de la forme : > Si Condition alors Résultat Synonymes : Condition = Antécédent Résultat = Conséquent Les éléments d’une règle {A = xA, B = xB, ...} {Z = xZ} sont les items Exemple : > Si riz et vin blanc, alors poisson L’indice de support est la probabilité : > Prob (condition et résultat) L’indice de confiance est la probabilité : > Prob (condition et résultat) / Prob (condition) 14/10/2011 © Stéphane Tufféry - Usage réservé à l’Université Rennes 1 156 Intérêt d’une règle d’association Dans l’exemple précédent, on a : Or, Prob (B) = 0,8 indice de confiance de l’association C B est 2/3 indice de support = 2/5 B est présent dans presque tous les tickets de caisse Cette probabilité est supérieure à l’indice de confiance de C B, ce qui fait que l’on ne gagne rien à utiliser la règle C B pour prédire B Si l’on suppose aléatoirement qu’un ticket de caisse contient B, on n’a qu’1 chance sur 5 de se tromper, contre 1 chance sur 3 en appliquant la règle C B 14/10/2011 © Stéphane Tufféry - Usage réservé à l’Université Rennes 1 157 Lift d’une règle : mesure son intérêt L’amélioration apportée par une règle, par rapport à une réponse au hasard est appelée « lift » et vaut : Quand le lift est < 1, la règle n’apporte rien lift (règle) = confiance (règle) / Prob (résultat) = Prob (condition et résultat) / [ Prob (condition) x Prob (résultat) ] car Prob (résultat) > indice de confiance (règle) Exemples : lift (C B) = 5/6 (règle inutile) lift (B E) = 5/4 (règle utile). 14/10/2011 © Stéphane Tufféry - Usage réservé à l’Université Rennes 1 158 Lift de la règle inverse Il faut noter que si le lift de la règle est < 1, alors le lift de la règle inverse, c.a.d. de : confiance (règle inverse) = 1 - confiance (règle) et Si Condition alors NON Résultat est > 1, puisque : Si Condition alors Résultat Prob (NON résultat) = 1 - Prob (résultat) d’où Prob (NON résultat) < confiance (règle inverse) Si une règle n’est pas utile, on peut donc essayer la règle inverse… en espérant que cette dernière soit intéressante en termes de métier ou de marketing 14/10/2011 © Stéphane Tufféry - Usage réservé à l’Université Rennes 1 159 Algorithme Apriori C’est l’algorithme le plus répandu (Agrawal et al.) Il fonctionne en deux étapes : il commence par rechercher les sous-ensembles d’items ayant une probabilité d’apparition (support) supérieure à un certain seuil s 1e passe : élimination des items moins fréquents que s 2e passe : constitution des combinaisons de deux items parmi les précédents, et élimination des combinaisons moins fréquentes que s etc : les ensembles fréquents de taille n qui nous intéressent sont ceux provenant d’ensembles de taille n – 1 eux-mêmes fréquents puis il tente de décomposer chaque sous-ensemble sous une forme {Condition Résultat} telle que le quotient « Prob (Condition et Résultat) / Prob (Condition) » (indice de confiance), soit supérieur à un certain seuil difficulté : pour chaque sous-ensemble d’items E à n éléments, il y a 2n–1 – 1 règles de la forme A {E – A} optimisation d’Apriori pour l’identification des règles à conserver 14/10/2011 © Stéphane Tufféry - Usage réservé à l’Université Rennes 1 160 Mise en œuvre En pratique, les règles demeurent très nombreuses, et la plupart des logiciels permettent de stocker ces règles dans un fichier, dans lequel il est possible de filtrer les règles Condition Résultat en deçà d’un certain indice de support, et de les trier selon leur support, leur confiance ou leur lift On est généralement plus sévère sur le seuil de confiance que de support, surtout si l’on recherche des règles rares, et un exemple courant de filtre sera 75 % pour la confiance et 5 % pour le support (et bien sûr 1 pour le lift) Même avec ces filtres, le nombre de règles peut vite atteindre plusieurs millions pour seulement quelques centaines d’items et quelques milliers d’observations Certains logiciels permettent d’ajouter un filtre sur le contenu des règles, pour ne conserver que celles qui contiennent un item donné dans leur résultat ou leurs conditions Les logiciels permettent aussi de fixer une limite à la taille des règles : on dépasse rarement 10 items 14/10/2011 © Stéphane Tufféry - Usage réservé à l’Université Rennes 1 161 Paramétrage d’IBM SPSS Modeler 14/10/2011 © Stéphane Tufféry - Usage réservé à l’Université Rennes 1 162 Illustration avec IBM SPSS Modeler 14/10/2011 © Stéphane Tufféry - Usage réservé à l’Université Rennes 1 163 Taxinomie : définition Les produits peuvent être définies avec un niveau plus ou moins fin de détail On peut par exemple considérer : les produits d’épargne bancaire, financière… parmi les produits d’épargne bancaire, les comptes de chèques, les livrets… parmi les livrets, les livrets A, les Codevi, les LEP… La taxinomie des produits est l’ensemble de ces niveaux 14/10/2011 © Stéphane Tufféry - Usage réservé à l’Université Rennes 1 164 Taxinomie : utilisation Le niveau le plus fin permet d’entreprendre des actions commerciales plus précises Mais travailler au niveau le plus fin multiplie les règles, parmi lesquelles un grand nombre n’auront qu’un faible support et seront peut-être éliminées Travailler au niveau le plus général permet d’obtenir des règles plus fortes > Les 2 points de vue ont leurs avantages et leurs inconvénients Il faut adapter le niveau de généralité à chaque produit, en fonction notamment de sa rareté > 14/10/2011 © Stéphane Tufféry - Usage réservé à l’Université Rennes 1 165 Taxinomie : intérêt Les articles les plus rares et les plus chers (exemple : micro-informatique ou HIFI dans un grand magasin) seront codifiés au niveau le plus fin Les articles les plus courants (exemple : produits alimentaires) seront codifiés à un niveau plus général On regroupera par exemple tous les yaourts, fromages blancs, flancs… en « produits laitiers », tout en distinguant un téléviseur d’un magnétoscope ou d’un caméscope L’intérêt de cette façon de procéder est d’obtenir des règles plus pertinentes, dans lesquelles les articles les plus courants ne dissimulent pas, par leur fréquence, les articles les moins courants 14/10/2011 © Stéphane Tufféry - Usage réservé à l’Université Rennes 1 166 L’analyse du ticket de caisse Cette technique est très utilisée dans la grande distribution : > d’où les termes d’analyse du ticket de caisse ou du panier de la ménagère (market basket analysis) pour désigner la recherche d’associations Autres usages : associations d’options retenues dans les produits packagés (banque, téléphonie, assurance…) web mining (analyse de la navigation sur un site internet) Difficultés : volumes de données importants trouver des règles intéressantes noyées parmi les règles triviales ou non utilisables 14/10/2011 © Stéphane Tufféry - Usage réservé à l’Université Rennes 1 167 Conclusion 14/10/2011 © Stéphane Tufféry - Usage réservé à l’Université Rennes 1 168 Perspectives professionnelles Finance Réglementation Bâle II (et bientôt Bâle III) Évolution des marchés boursiers Marketing Dont marketing direct et sur le web Étude des préférences et des comportements des consommateurs Assurance (scoring et actuariat) Industrie pharmaceutique, santé Tests cliniques, pharmacovigilance, épidémiologie Médecine Analyses de survie, causes, prévention et traitement des maladies Environnement et Météorologie Études sur le climat, la pollution Recherche scientifique … 14/10/2011 © Stéphane Tufféry - Usage réservé à l’Université Rennes 1 169 Limites légales au data mining CNIL : des pouvoirs renforcés en 2004 Données sensibles données génétiques, infractions et condamnations, numéro NIR (hors du cadre normal de certains traitements : paie du personnel, assurance maladie), données biométriques, difficultés sociales des personnes (absence de revenus, chômage…) Quelques points à surveiller par la loi n° 2004-801 relative à la protection des personnes physiques à l’égard des traitements de données à caractère personnel, transposant la directive européenne 95/46/CE en remaniant la loi n° 78-17 variables des scores (pas de donnée sensible) noms des segments de clientèle utilisation des données et des modèles qui les utilisent information et droit d’accès du client Autres limitations données géodémographiques (très peu de données à l’îlot) 14/10/2011 © Stéphane Tufféry - Usage réservé à l’Université Rennes 1 170 Quelques liens Site de la Société Française de Statistique : www.sfds.asso.fr Site de Gilbert Saporta (contenu riche, avec de nombreux cours) : http://cedric.cnam.fr/~saporta/ Site de Philippe Besse (très complet sur les statistiques et le data mining) : www.math.univ-toulouse.fr/~besse/ Site du livre The Elements of Statistical Learning de Hastie, Tibshirani et Friedman : http://www-stat.stanford.edu/~tibs/ElemStatLearn/ Site de Statsoft (statistiques et data mining) : www.statsoft.com/textbook/stathome.html StatNotes Online Textbook (statistiques) : www2.chass.ncsu.edu/garson/pa765/statnote.htm Statistique avec R : http://zoonek2.free.fr/UNIX/48_R/all.html Données réelles : http://www.umass.edu/statdata/statdata/index.htm Site d’Olivier Decourt (spécialiste de SAS) : www.od-datamining.com/ Blog d’Arthur Charpentier : http://freakonometrics.blog.free.fr/ 14/10/2011 © Stéphane Tufféry - Usage réservé à l’Université Rennes 1 171