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 :
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
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…
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
le nombre de Bell : 1 kn
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
on parle aussi de classification (en anglais) ou de
discrimination
Prédiction : la variable à expliquer est quantitative
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
prédire l’achat d’un produit ou service
Score de (comportement) risque
prédire les impayés ou la fraude +
Score de préacceptation Appétence
croisement des deux précédents –
+ –
Score d’octroi Risque
prédire en temps réel les impayés
Score d’attrition
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 sous-famille algorithme
méthodes modèles analyse factorielle analyse en composantes principales ACP
descriptives géométriques (projection sur un (variables continues)
espace de analyse factorielle des correspondances
dimension AFC (2 variables qualitatives)
En grisé : méthodes
« classiques » inférieure) analyse des correspondances multiples
ACM (+ de 2 var. qualitatives)
analyse typologique méthodes de partitionnement (centres
(regroupement en mobiles, k-means, nuées dynamiques)
classes homogènes) méthodes hiérarchiques
analyse typologique classification neuronale (cartes de
+ réduction dimens. Kohonen)
modèles classification relationnelle (variables
combinatoires qualitatives)
modèles à base de détection de liens détection d’associations
règles logiques
14/10/2011 © Stéphane Tufféry - Usage réservé à l’Université Rennes 1 13
Tableau des méthodes prédictives
type famille sous-famille algorithme
méthodes modèles à base arbres de arbres de décision (variable à expliquer
prédictives de règles logiques décision continue ou qualitative)
modèles à base réseaux de réseaux à apprentissage supervisé :
de fonctions neurones perceptron multicouches, réseau à
mathématiques fonction radiale de base
modèles régression linéaire, ANOVA, MANOVA,
paramétriques ANCOVA, MANCOVA, modèle linéaire
ou semi- général GLM, régression PLS (variable à
paramétriques expliquer continue)
analyse discriminante linéaire, régression
logistique, régression logistique PLS
En grisé : méthodes (variable à expliquer qualitative)
« classiques » 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)
prédiction sans k-plus proches voisins (k-NN)
14/10/2011 modèle © Stéphane Tufféry - Usage réservé à l’Université Rennes 1 14
Statistique inférentielle et data mining
Statistique (avant 1950) : Data mining (depuis 1990) :
quelques centaines d’individus plusieurs millions d’individus
quelques variables recueillies avec plusieurs centaines de variables
un protocole spécial certaines variables non numériques
(échantillonnage, plan
d’expérience…) données recueillies avant l’étude, et
souvent à d’autres fins
fortes hypothèses sur les lois
statistiques suivies (linéarité, données imparfaites, avec des erreurs
normalité, homoscédasticité) de saisie, des valeurs manquantes…
le modèle prime sur la donnée : il nécessité de calculs rapides, parfois
est issu de la théorie et confronté en temps réel
aux données on ne recherche pas toujours
utilisation en laboratoire l’optimum théorique, mais le plus
compréhensible pour des non
Analyse des données (1960-1980) : statisticiens
quelques dizaines de milliers faibles hypothèses sur les lois
d’individus statistiques suivies
quelques dizaines de variables la donnée prime sur le modèle : le
construction des tableaux modèle est issu des données et on en
« Individus x Variables » tire éventuellement des éléments
importance du calcul et de la théoriques
représentation visuelle utilisation en entreprise
14/10/2011 © 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
rééchantillonnage bootstrap, bagging, boosting…
Web mining
optimisation des sites
meilleure connaissance des internautes
croisement avec les bases de données de l’entreprise
Text mining
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 [Link]
Industries / Fields where you applied Data Mining in 2009 [180 votes total]
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% Sondage
Fraud Detection (25) 13.9%
Retail (21) 11.7% effectué
Health care/ HR (21) 11.7%
Finance (20) 11.1%
en
Science (19)
Advertising (19)
10.6%
10.6%
décembre
e-Commerce (18) 10.0% 2009
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%
14/10/2011 None (2) © Stéphane Tufféry - Usage réservé à l’Université
1.1% Rennes 1 21
Other (14) 7.8%
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 : Conclusion :
vendre plus il faut être pro-actif
en maîtrisant les risques détecter les besoins des clients
en utilisant les bons canaux et leur tendance à emprunter
au bon moment
> Faire des propositions
Le crédit à la consommation commerciales aux bons clients,
un produit standard
avant qu’ils n’en fassent la
concurrence des sociétés
demande
spécialisées sur le lieu de
vente (Cetelem…)
+
quand la banque a
Appétence
connaissance du projet du
client, il est déjà trop tard –
+ –
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) :
soit prendre un client à un concurrent
soit faire monter en gamme un client que l’on détient déjà
D’où les sujets dominants :
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
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
e-commerce
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 »)
exemple : « client à risque » et « client sans risque »
Définir la population cible
tous les clients, les clients actifs, les prospects aussi…
unité statistique : individu, famille, entreprise, groupe…
Déterminer la période à étudier
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
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
un patient a ou non une tumeur (et encore faut-il distinguer les
différents stades d’une tumeur)
Dans la banque : qu’est-ce qu’un client non risqué ?
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
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 !
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
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
taux mauvaise
d'erreur généralisation
données de test
et d'application
t
données apprentissage
bonne
généralisation
taille de l'échantillon
Théorème de Vapnik :
taille suffisante
h (log( 2n / h) 1) log( / 4)
R Remp
n
14/10/2011 © 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
nb entreprises, population active, chômage, commerces et
services de proximité, habitudes de consommation…
Données sociodémographiques
population, richesse, âge et nombre d’enfants moyens,
structures familiales, niveau socioprofessionnel…
Données résidentielles
ancienneté, type et confort des logements, proportion de
locataires et propriétaires…
Données concurrentielles
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
n° variable cible : âge PCS situation nb montant … variable échantillon
client acheteur (O/N) famille achats achats explicative m
1 O 58 cadre marié 2 40 … … apprentissage
2 N 27 ouvrier célibataire 3 30 … … test
… … … … … … … … …
au moins 1000 cas
… … … … … … … … …
k O 46 technicien célibataire 3 75 … … test
… … … … … … … … …
… … … … … … … … …
1000 N 32 employé marié 1 50 … … apprentissage
… … … … … … … …
variable à expliquer variables explicatives répartition
observée année n observées année n-1 aléatoire
des clients
O : au moins 500 clients ciblés dans l'année n et acheteurs entre les 2
N : au moins 500 clients ciblés dans l'année n et non acheteurs é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 aujourd’hui + 12 mois
variables explicatives 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
Méthode de classification
Classification statistique Règles d’experts
Données utilisées liées à Oui solution efficace solution pouvant être
l’événement à prédire efficace
Non solution risquant d’être solution pouvant être
moyennement efficace efficace si les données
sont bien choisies
14/10/2011 © Stéphane Tufféry - Usage réservé à l’Université Rennes 1 42
Intérêt de segmenter :
le paradoxe de Simpson
Tous clients
sans achat avec achat TOTAL taux d'achat
courriel 1 400 100 1 500 6,67%
téléphone 1 375 125 1 500 8,33%
TOTAL 2 775 225 3 000 7,50%
Hommes
sans achat avec achat TOTAL taux d'achat
courriel 950 50 1 000 5,00%
téléphone 475 25 500 5,00%
TOTAL 1 425 75 1 500 5,00%
Femmes
sans achat avec achat TOTAL taux d'achat
courriel 450 50 500 10,00%
téléphone 900 100 1 000 10,00%
TOTAL 1 350 150 1 500 10,00%
14/10/2011 © 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
P
C
R
2
0
crédit conso-5 - CB
0 5 10
faibles revenus PCR1
forts revenus
S1 (rouge) : peu actifs S4 (orange) : seniors
S2 (rose) : jeunes S5 (noir) : aisés
S3 (bleu) : consommateurs S6 (vert) : débiteurs
14/10/2011 © 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
Le profil de souscripteurs peut être faussé par une campagne commerciale ciblée
récente
Détecter les valeurs extrêmes
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
regrouper certaines modalités aux effectifs trop petits
représenter les modalités dans une analyse des correspondances
multiples
Créer des indicateurs pertinents d’après les données brutes
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
0 est-il 0 ou manquant ?
9999..999 est-il manquant ou aberrant ?
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
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 après imputation par la
moyenne
6 imputation 6
yi 6
yi imputation
5 par 5 5 par
4
moyenne 4 4
régression
3
ou
3 3
+ résidu
2 2
2
régression 1
aléatoire
1 1
0 0
0 1 2
xi
3
0
xi
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 Fréq Pourcentage Var1 Var2 Var3
1 X X X 6557 80.79 12.217310 0.245615 3.102462
2 X . X 3 0.04 0 . 0.166667
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 © Stéphane Tufféry - Usage réservé à l’Université Rennes 1 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)
transformation la plus courante pour corriger un
coefficient d’asymétrie > 0
Si V 0, on prend Log (1 + 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)
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
(Loi normale : asymétrie = aplatissement (– 3) = 0)
14/10/2011 © 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 :
multinormalité de X/Gi et égalité des matrices de
covariances
N’est en pratique jamais satisfaite
Mais on constate une amélioration des performances
de l’analyse discriminante lorsque l’on s’en rapproche :
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
par une ACM, une régression logistique ou une analyse
discriminante DISQUAL
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)
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
Analysis Variable : Age
On commence par
Rang pour
découper la variable la variable N
explicative en déciles, et Age Obs Minimum Maximum
à regarder à quelle valeur 0 105 19.0000000 23.0000000
correspond chaque 1 85 24.0000000 25.0000000
décile 2 101 26.0000000 27.0000000
3 120 28.0000000 30.0000000
Par exemple , le 2e décile
4 105 31.0000000 33.0000000
est 25 ans
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
14/10/2011 © Stéphane Tufféry - Usage réservé à l’Université Rennes 1 60
Table de dAge par Cible
dAge(Rang
Exemple de discrétisation
pour la
variable Age) Cible
FREQUENCE
Pourcentage
Pct en ligne 1 2 Total
Le tableau de contingence montre 0 63 42
6.30 4.20
105
10.50
60.00 40.00
que les deux premiers déciles de 1 47 38
4.70 3.80
85
8.50
l’âge correspondent à un taux 2
55.29 44.71
74 27 101
d’impayés nettement supérieur à
7.40 2.70 10.10
73.27 26.73
3 79 41 120
celui des autres déciles. Il y a donc 7.90 4.10
65.83 34.17
12.00
un seuil à 25 ans. 4 72 33
7.20 3.30
105
10.50
68.57 31.43
Aucun autre seuil ne se distingue 5 55 17
5.50 1.70
72
7.20
nettement, les taux d’impayés
76.39 23.61
6 89 24 113
8.90 2.40 11.30
fluctuant ensuite entre 20 % et un 7
78.76 21.24
70 28 98
peu plus de 30 %. 7.00 2.80
71.43 28.57
9.80
8 84 21 105
Le découpage de l’âge en deux 8.40 2.10
80.00 20.00
10.50
tranches est donc décidé. 9 67 29
6.70 2.90
69.79 30.21
96
9.60
14/10/2011 © Stéphane Tufféry - Usage réservé à l’Université RennesTotal
1 700 300 611000
70.00 30.00 100.00
Exemple de regroupement de modalités
Regroupement de « < 100 » et Table de Epargne par Cible
Epargne Cible
« [100-500 euros[ dont les taux FREQUENCE
d’impayés sont proches (35,99% et Pourcentage
Pct en ligne OK KO Total
33,01%) Pas d'épargne 151 32
15.10 3.20
183
18.30
82.51 17.49
Regroupement de « [500-1000 < 100 386 217 603
38.60 21.70 60.30
euros[ et « >= 1000 euros » : leurs 64.01 35.99
taux d’impayés sont moins proches [100-500 euros[ 69 34
6.90 3.40
103
10.30
66.99 33.01
mais la 2e modalité est trop petite [500-1000 euros[ 52 11 63
pour rester seule 5.20 1.10
82.54 17.46
6.30
>= 1000 euros 42 6 48
On pourrait même regrouper ces 4.20 0.60 4.80
87.50 12.50
deux modalités avec « Pas Total 700 300 1000
d’épargne »
70.00 30.00 100.00
14/10/2011 © Stéphane Tufféry - Usage réservé à l’Université Rennes 1 62
Autre exemple de regroupement de
modalités
Le regroupement des modalités
« Locataire » et « Logement Table de Statut_domicile par Cible
Statut_domicile Cible
gratuit » est évident FREQUENCE
Elles sont associées à des taux Pourcentage
Pct en ligne OK KO Total
d’impayés proches et élevés Locataire 109 70 179
(39,11% et 40,74%) 10.90 7.00
60.89 39.11
17.90
Les propriétaires sont moins Propriétaire 527 186
52.70 18.60
713
71.30
risqués, surtout s’ils ont fini leur 73.91 26.09
emprunt, mais pas seulement dans Logement gratuit 64 44
6.40 4.40
108
10.80
ce cas, car ils sont généralement 59.26 40.74
Total 700 300 1000
plus attentifs que la moyenne au 70.00 30.00 100.00
bon remboursement de leur
emprunt
14/10/2011 © 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
taux généralisation
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 :
h (log( 2n / h) 1) log( / 4)
R Remp
n
14/10/2011 © Stéphane Tufféry - Usage réservé à l’Université Rennes 1 70
Rappel sur les tests
Tests paramétriques
supposent que les variables suivent une loi
particulière (normalité, homoscédasticité)
ex : test de Student, ANOVA
Tests non-paramétriques
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 Degrés de Carré F
variation carrés (SC) liberté (dl) moyen (CM)
k ni
(Yij Y )
2
Totale n-1 SC/dl
i 1 j 1
Inter- k CMinterclasse
ni (Y i Y )
2
k-1 SC/dl
classe i 1 CMintraclasse
k ni
Intra-
Yij Yi
2
( ) n-k SC/dl
classe i1 j 1
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
U1 = nb de fois où une
G2 : 8 12 16 18
valeur du groupe 1 précède
On obtient les rangs une valeur du groupe 2
G1 : 1 2 3 5 7 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 Wilcoxon-
Mann-Whitney
Statistique de la somme des rangs de Wilcoxon = Ri
où i est soit le 1er, soit le plus petit (dans SAS) groupe
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
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
12 k
Ri
H 3( N 1)
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 Wilcoxon Scores (Rank Sums) for Variable x
Classified by Variable a
Statistic (S) 27.000
0 Sum of Expected Std Dev Mean
a N Scores Under H0 Under H0 Score
1 5 18.0 25.0 4.082483 3.600
Normal Approximation 2 4 27.0 20.0 4.082483 6.750
Z 1.7146
One-Sided Pr > Z 0.0432 Kruskal-Wallis Test
0.0864 Chi-Square 2.9400
Two-Sided Pr > |Z|
DF 1
Pr > Chi- 0.0864
t Approximation Square
One-Sided Pr > Z 0.0624
Two-Sided Pr > |Z| 0.1248
test non
n1, n2, R1 et R2 significatif : pas
Exact Test
permettent de de différences
One-Sided Pr >= S 0.0556
calculer U de entre les deux
Two-Sided Pr >= |S - Mean| 0.1111 Mann-Whitney groupes
14/10/2011 © 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 :
rang rang nb nœuds rang rang
variable ² KW KW R² R² ² CHAID CHAID ddl proba CHAID CHAID CART
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² = 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 ; OMS
/SELECT TABLES
PROC NPAR1WAY WILCOXON DATA = exemple; /IF COMMANDS = ["NPar Tests"]
SUBTYPES = ["Kruskal Wallis Test Statistics"]
CLASS segment ;
/DESTINATION FORMAT = SAV OUTFILE = "C:\temp\[Link]"
VAR &var ; /COLUMNS DIMNAMES=['Statistics'].
DATA kruskal (keep = Variable nValue1 NPAR TESTS
RENAME=(nValue1=KWallis)) ; /K-W= !var BY segment (0 1)
SET kruskal ; /MISSING ANALYSIS.
WHERE name1 = '_KW_' ;
OMSEND.
PROC SORT DATA = kruskal ;
GET FILE = "C:\temp\[Link]".
BY DESCENDING KWallis ;
RUN; SELECT IF(Var1 = 'Khi-deux').
EXE.
SORT CASES Var3 (D) .
SAVE OUTFILE = "C:\temp\[Link]" /KEEP=Var2 Var3.
14/10/2011 © Stéphane Tufféry - Usage réservé à l’Université Rennes 1 82
Exemple de liste des variables
Obs V_Cramer Variable
1 0.35174 Comptes
Liste des variables par liaison 2 0.24838 Historique_credit
décroissante avec la variable 3 0.20499 Duree_credit
à expliquer 4 0.19000 Epargne
5 0.17354 Objet_credit
Ici les variables sont 6 0.15809 Montant_credit
qualitatives et la liaison 7 0.15401 Biens
mesurée par le V de Cramer 8 0.13553 Anciennete_emploi
0,4
9 0.13491 Statut_domicile
0,35 10 0.12794 Age
0,3
11 0.11331 Autres_credits
0,25
0,2 12 0.09801 Situation_familiale
0,15
13 0.08152 Garanties
0,1
0,05 14 0.07401 Taux_effort
0
ge 15 0.05168 Nb_credits
rt
e
oi
e
it
e
oi
le
t
ts
es
ts
s
t
it
le
le
di
di
on
ed
ffo
gn
en
Ag
t ie
ed
pl
pl
ilia
di
ici
di
ici
ar
re
pt
re
ph
em
m
re
cr
an
_e
Bi
ar
cr
ch
om
m
m
_c
_c
0.04342 Type_emploi
cr
16
_e
e_
_c
Ep
do
le
ux
ar
fa
Co
s_
e_
s_
et
ue
nt
_d
Te
pe
re
Nb
G
n_
e_
Ta
ta
bj
er
tre
et
riq
ut
Du
Ty
O
on
io
_p
et
nn
at
Au
to
at
nn
M
Nb
St
cie
s
tu
Hi
0.03647 Telephone
cie
17
Si
An
An
18 0.02737 Anciennete_domicile
14/10/2011 © Stéphane Tufféry - Usage réservé à l’Université Rennes 1 0.00301 Nb_pers_charge
83
19
Pourquoi le V de Cramer ?
Classe 1 Classe 2 Ensemble Classe 1 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 Effectifs attendus si la variable est indépendante de
la classe : 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
2
V de Cramer =
max
2
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 Variable Nb occurrences
Constante 50 V25 7 Bootstrap : B tirages aléatoires avec
V05 46 V26 7 remise de n individus parmi n et
V09 39 V15 6
V14 37 V12 5
sélection de variables sur chacun des B
V01 35 V29 5 échantillons bootstrap
V03 34 V31 5 C
V13 28 V10 4 60 o
V
V02 23 V20 4 n
0
V04 22 V06 2 50 s e5 V V
V18 18 V16 2
t
a
0
9
1
V V
0 0
seuil
40 n 4
1 3 V
V22 18 V32 2 t 1 V
V
V19 16 V37 2
seuil
3 0
30 0 V V
V17 15 V11 1 2 4 1 2 V V V
1 1 V V
8 2 2 0 V V
V24 14 V21 1 20 9 7
4 8
3 2
0 V V V V V V
V08 13 V23 1 6 8 V V
7 2 2 1 1 2 3 V V V V V V V V V V
10 5 6 1 2
V36 12 V27 1 5 2 9 1
0 0
0 1 3 3 1 2 2 2 3 3
6 6 2 7 1 1 3 7 4 5
V28 11 V34 1
0
V07 10 V35 1
14/10/2011 © 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
Own Next 1-R**2 Variable
Cluster Variable Cluster Closest Ratio Label
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
Cluster 2 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
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 valeur prédite A B TOTAL
Validation du modèle sur un 3e échantillon, valeur réelle
A 1800 200
pour avoir une idée du taux d’erreur non
biaisé du modèle B 300 1700
Application du modèle à l’ensemble de la TOTAL 4000
population
14/10/2011 © Stéphane Tufféry - Usage réservé à l’Université Rennes 1 90
Phase de modélisation
Régression logistique (généralité - concision -
précision)
logit = - 0.98779849 - (0.00005411 * liquidités)
+ (0.01941272 * mouvements) + (0.12187987 * produits)
- (0.00001503 * patrimoine);
score = exp(logit) / (1 + exp(logit));
Analyse discriminante (simplicité – concision –
précision)
Arbre de décision
(généralité – lisibilité)
14/10/2011 © Stéphane Tufféry - Usage réservé à l’Université Rennes 1 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 © Stéphane Tufféry - Usage réservé à l’Université Rennes 1 92
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
profondeur arbre
élaguer ici (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
Variable Modalité Nb points
Age > 25 ans 0
Analyse des estimations de la vraisemblance maximum Age ≤ 25 ans 8
Erreur Khi 2
Paramètre DF Estimation std de Wald Pr > Khi 2 Autres_credits Aucun crédit extérieur 0
Intercept 1 -3.1995 0.3967 65.0626 <.0001
Autres_credits Crédits extérieurs 7
Comptes CC >= 200 euros 1 1.0772 0.4254 6.4109 0.0113
1 2.0129 0.2730 54.3578 <.0001
Comptes Pas de compte 0
Comptes CC < 0 euros
Comptes CC [0-200 euros[ 1 1.5001 0.2690 31.1067 <.0001 Comptes CC ≥ 200 euros 13
Comptes Pas de compte 0 0 . . .
Comptes CC [0-200 euros[ 19
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 Comptes CC < 0 euros 25
Historique_credit Jamais aucun crédit 0 0 . . . Duree_credit ≤ 15 mois 0
Duree_credit > 36 mois 1 1.4424 0.3479 17.1937 <.0001
Duree_credit 16-36 mois 13
Duree_credit 16-36 mois 1 1.0232 0.2197 21.6955 <.0001
Duree_credit <= 15 mois 0 0 . . . Duree_credit > 36 mois 18
Age <= 25 ans 1 0.6288 0.2454 6.5675 0.0104 Epargne pas épargne ou > 500 euros 0
Age > 25 ans 0 0 . . .
Epargne < 500 euros 8
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 . . .
1 -0.5359 0.2439 4.8276 0.0280
Historique_credit Jamais aucun crédit 0
Autres_credits Aucun crédit extérieur
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 :
8 + 0 + 19 + 13 + 8 + 21 + 0 = 69 points
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 :
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
leurs taux d’impayés correspondants : dnbpoints(Rang
Table de dnbpoints par Cible
pour la variable
nbpoints) Cible
Analysis Variable : nbpoints
FREQUENCE
Rang pour Pct en ligne OK KO Total
la variable N 0 99 5 104
95.19 4.81
nbpoints Obs Minimum Maximum 89 6 95
1
93.68 6.32
0 104 6.0000000 29.0000000
2 100 7 107
1 95 33.0000000 37.0000000 93.46 6.54
3 101 19 120
2 107 39.0000000 42.0000000 84.17 15.83
3 120 43.0000000 48.0000000 4 71 27 98
72.45 27.55
4 98 49.0000000 54.0000000 Seuils 5 60 33
64.52 35.48
93
5 93 55.0000000 60.0000000 de taux 6 48 33 81
59.26 40.74
6 81 61.0000000 65.0000000
7 60 44 104
7 104 66.0000000 69.0000000 57.69 42.31
8 38 54 92
8 92 70.0000000 74.0000000 41.30 58.70
9 34 72 106
9 106 75.0000000 95.0000000 32.08 67.92
14/10/2011 © Stéphane Tufféry - Usage réservé à l’Université Rennes 1 97
Total 700 300 1000
Taux d’impayés par tranches de score
Table de nbpoints par Cible Tranche de risque faible :
nbpoints Cible 8,69% d’impayés
octroi du crédit avec un
FREQUENCE minimum de formalités
Pourcentage
Pct en ligne OK KO Total Tranche de risque moyen :
risque faible 389 37 426 36,44% d’impayés
[0 , 48] points 38.90 3.70 42.60 octroi du crédit selon la
91.31 8.69 procédure standard
risque moyen 239 137 376
Tranche de risque élevé :
[49 , 69] points 23.90 13.70 37.60
63.56 36.44 63,64% d’impayés
risque fort 72 126 198 octroi du crédit interdit sauf par
≥ 70 points 7.20 12.60 19.80 l’échelon hiérarchique supérieur
36.36 63.64 (directeur d’agence)
Total 700 300 1000
70.00 30.00 100.00
14/10/2011 © 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% 5,61
90% 7,64
80% 10,46
50,3
70% 17,27
60%
50%
26,8
40% 22,37
30%
20% 17,45
32,23
10% 5,67
0% 3,41
0,8
% clients % impayés
Score 1 Score 2 Score 3 Score 4 Score 5 Score 6
14/10/2011 © Stéphane Tufféry - Usage réservé à l’Université Rennes 1 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%
1 2 3 4 5 6 7 8 9 10
taux souscription 0,10% 0,22% 0,67% 0,86% 1,38% 2,15% 3,23% 9,37% 21,08% 44,76%
14/10/2011 © 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)
sur-apprentissage
être peu efficaces (trop de faux positifs)
être incompréhensibles ou inacceptables par les utilisateurs
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 :
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
Pour un modèle, on cherche s qui maximise (s) tout en
minimisant les faux positifs 1 - (s) = Proba(score ≥ s / B)
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 11 P 0,40
2 P 0,80 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
6 P 0,55 16 1,000
N 0,30
7 P 0,50 17 N 0,25 0,37 0,15 0,10
,900
8 N 0,45 18 P 0,20
9 N 0,44 19 N 0,15 0,25
,800
10 N 0,42 20 N 0,10
0,40
,700
0,50
True positive rate
,600
0,42
,500
,400
,300
,200
0,70
,100
,000
,000 ,100 ,200 ,300 ,400 ,500 ,600 ,700 ,800 ,900 1,000
14/10/2011 © Stéphane Tufféry - Usage réservé à l’Université Rennes
False positive rate 1 106
Interprétation de la courbe ROC
seuil s minimum :
prédiction parfaite
taux de vrais positifs tous classés en +
seuil s maximum :
prédiction nulle
tous classés en -
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 Pourcentage
Observé 0 1 correct
CHD 0 45 12 78,9
1 16 27 62,8
Pourcentage global 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 Non- Non- POS NEG
prob. Événement événement Événement événement Correct Sensibilité Spécificité fausse 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
prédit0.900
1 0 57 1 total
0 42 58.0 2.3 100.0 0.0 42.4
Observé
1.000
0 57 0 43 57.0 0.0 100.0 . 43.0
0 45 12 57 Correct = (45 + 27) / 100 = 72 %
Sensibilité = 27 / 43 = 62,8 %
1 16 27 43 Spécificité = 45 / 57 = 78,9 %
POS fausse = 12 / 39 = 30,8 %
total 61 39 100
NEG fausse = 16 / 61 = 26,2 %
14/10/2011 © 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
0. 2
faible de chaque variable avec la
0. 1 remarque de David Hand
0. 0
0. 0 0. 1 0. 2 0. 3 0. 4 0. 5 0. 6 0. 7 0. 8 0. 9 1. 0
1 - Spéci f i ci t é
14/10/2011 © 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; U est la statistique de Mann-Whitney, qui se
RUN; déduit des effectifs ni et de la somme des
DATA auc; rangs Ri fournis par la proc NPAR1WAY de
SET wilcoxon; SAS
n2 = N; R2 = SumOfScores ;
n1 = LAG(N); R1 = LAG(SumOfScores) ;
u1 = (n1*n2) + (n1*(n1+1)/2) - R1 ; n n 1 n n 1
u2 = (n1*n2) + (n2*(n2+1)/2) - R2 ;
U min n1n2 1 1 R1 , n1n2 2 2 R2
u = MAX(u1,u2);
2 2
AUC = ROUND(u/(n1*n2),0.001);
RUN; 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 n2 R2 n1 R1 U1 U2 U AUC
RUN;
1 1 711 1038858.0 711 1038858 . . . . . .
2 0 1490 1384443.0 1490 1384443 711 1038858 273648 785742 273648 0.74169
14/10/2011 © 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
Interv alle de c onf iance
95% asy mpt otique
Variable(s) de Signif . Borne Borne
a b
résultat s t ests Zone Erreur Std. asy mptot ique inf érieure supérieure
arbre de décision ,887 ,008 ,000000 ,872 ,902
régres sion logistique ,906 ,007 ,000000 ,892 ,921
analy se disc riminante ,889 ,008 ,000000 ,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 100
90
> la courbe de lift est en général ciblage aléatoire
% d'individus répondants
80
ciblage par scoring
sous la courbe ROC 70
60
ciblage idéal
Très utilisée en marketing 50
40
30
20 Lift = 40/10 = 4
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 114
COURBE DE CONCENTRATION
Lien entre courbe de lift et ROC
Relation entre l’aire AUL sous la courbe de lift et l’aire
AUC :
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)
Cas particuliers :
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
découpage des variables continues en classes
On modélise mieux des populations homogènes
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
le taux d’erreur doit être le plus bas possible, et l’aire
sous la courbe ROC la plus proche possible de 1
La robustesse
ê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
les règles du modèle doivent être accessibles et compréhensibles
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
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 1 qualitative n qualitatives mélange
(covariable) (covariables) (facteur) (facteurs)
à expliquer
1 quantitative rég. linéaire rég. linéaire multiple, ANOVA, ANOVA, arbres ANCOVA,
simple, rég. robuste, PLS, arbres de de décision, arbres de
régression arbres, réseaux de décision réseaux de décision,
robuste, arbres neurones neurones réseaux de
de décision neurones
n quantitatives régression régression PLS2, MANOVA MANOVA, MANCOVA,
(représentent des PLS2 réseaux de neurones réseaux de réseaux de
quantités ) neurones neurones
1 qualitative ADL, ADL, rég. logistique, régression régression régression
nominale ou régression reg. logistique PLS, logistique, logistique, logistique,
binaire logistique, arbres, réseaux de DISQUAL, DISQUAL, arbres, réseaux
arbres de neurones, SVM arbres arbres, réseaux de neurones
décision de neurones
1 discrète modèle linéaire généralisé
(comptage) (régression de Poisson, modèle log-linéaire)
1 quantitative modèle linéaire généralisé
asymétrique (régressions gamma et log-normale)
1 qualitative régression logistique ordinale
ordinale (au moins 3 niveaux)
n quantitatives modèle à mesures répétées
ou14/10/2011
qualitatives (les
© n variables
Stéphane représentent
Tufféry - Usagedes mesures
réservé répétées d’une
à l’Université même
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 sur-
apprentissage (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 00 1 0 0 1 0 0
0 0 1 0 1 0 0 1 10 1 0 0 1 10 1
0 1 0 1 1 11 0 1 1 11
0 0 ? 00 00 ? 00 00
1 1 ? 0 +
1 1
+ ? 00 +
1 1
+ ? 00
1 1 0 1 +
1 1 00 11 +
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) :
régression logistique : 0,933
régression PLS : 0,933
analyse discriminante DISQUAL : 0,934
analyse discriminante barycentrique : 0,935
le choix de la méthode est parfois affaire d’école
Les performances d’un modèle dépendent :
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
ex : la moyenne = E(F)
Or, la population et la loi F sont généralement inconnues
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 »
On le note n s(x) pour signifier qu’il dépend de l’échantillon
1
ex : xi est un estimateur « plug-in » de la moyenne
n i 1
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
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 »
B
1
centrée autour de la moyenne B *b
b 1
on déduit un écart-type qui fournit l’approximation
recherchée de l’écart-type de l’estimateur
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 « out-
of-bag » par la « formule magique » du « .632-
bootstrap » :
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 »
« Formule magique » du « .632-
bootstrap » (Efron et Tibshirani) :
Estimation.632 =
0,368 x estimation(resubstitution) +
© Stéphane Tufféry - Usage réservé à l’Université Rennes 1
14/10/2011
0,632 x estimation(bootstrap-oob)
137
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
0,740
Aire sous la courbe ROC
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
AUC validation (leaf = 50 - maxdepth = 3) AUC validation (leaf = 100 - maxdepth = 3)
AUC validation (leaf = 25 - maxdepth = 3) AUC validation (leaf = 50 - maxdepth = 1)
14/10/2011 © 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 ([Link]
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
0,750
Aire sous la courbe ROC
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) AUC validation logit AUC validation ADL
14/10/2011 © 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 :
[Link]
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 :
pi = 1/N, i = 1, 2, …, N
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(-[Link](xi)) 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
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 ([Link]
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 sur-
apprentissage 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 On utilise généralement l’échantillon initial complet à
itération chaque itération (sauf pour l’arcing)
Chaque modèle produit doit être performant sur Chaque modèle produit doit être performant sur certaines
l’ensemble des observations 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 Dans l’agrégation, les modèles sont généralement
poids pondérés selon leur taux d’erreur
Avantages et inconvénients
Technique de réduction de la variance par moyenne Peut diminuer la variance et le biais du classifieur de base.
de modèles Mais la variance peut augmenter avec un classifieur stable
Perte de lisibilité quand le classifieur de base est un Perte de lisibilité quand le classifieur de base est un arbre
arbre de décision 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 Risque de sur-apprentissage mais globalement supérieur
en présence de « bruit » au bagging sur des données non bruitées (l’arcing est
moins sensible au bruit)
Le bagging est plus souvent efficace que le … mais quand le boosting est efficace, il dépasse le
boosting… 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 = T26 A B C D E
xA, la variable B = xB, etc, alors,
T1245 B C E F
dans 80% des cas, la variable Z =
xZ, cette configuration se T156 B E
rencontrant pour 20 % des
individus » T2356 A B D
La valeur de 80% est appelée indice T145 C D
de confiance et la valeur de 20% est
appelée indice de support
Par exemple, dans l’ensemble de
transactions ci-contre :
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 :
indice de confiance de l’association C B est 2/3
indice de support = 2/5
Or, Prob (B) = 0,8
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 :
lift (règle) = confiance (règle) / Prob (résultat)
= Prob (condition et résultat) / [ Prob (condition) x Prob
(résultat) ]
Quand le lift est < 1, la règle n’apporte rien
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
Si Condition alors Résultat
est < 1, alors le lift de la règle inverse, c.a.d. de :
Si Condition alors NON Résultat
est > 1, puisque :
confiance (règle inverse) = 1 - confiance (règle)
et
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
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
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
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 : [Link]
Site de Gilbert Saporta (contenu riche, avec de nombreux cours) :
[Link]
Site de Philippe Besse (très complet sur les statistiques et le data
mining) : [Link]/~besse/
Site du livre The Elements of Statistical Learning de Hastie, Tibshirani et
Friedman : [Link]
Site de Statsoft (statistiques et data mining) :
[Link]/textbook/[Link]
StatNotes Online Textbook (statistiques) :
[Link]/garson/pa765/[Link]
Statistique avec R : [Link]
Données réelles : [Link]
Site d’Olivier Decourt (spécialiste de SAS) : [Link]/
Blog d’Arthur Charpentier : [Link]
14/10/2011 © Stéphane Tufféry - Usage réservé à l’Université Rennes 1 171