Vous êtes sur la page 1sur 75

Visualiser les performances d’un modèle

213
CHAPITRE 8

Courbes cumulatives de réponse et courbes de lift


Les courbes ROC sont couramment utilisées pour visualiser les performances des modèles de
classification, d’estimation des probabilités des classes et de scoring. Cependant, si vous n’êtes
pas encore familier du sujet, vous venez de découvrir que la courbe ROC n’est pas la méthode
de visualisation la plus intuitive pour les partenaires qui voudraient comprendre les résultats. Il
est crucial pour le data scientist de privilégier une communication claire avec les partenaires
clés, car elle est essentielle pour choisir la méthode de modélisation la plus appropriée (et aussi
construire correctement le bon modèle). Par conséquent, il convient d’envisager l’utilisation de
méthodes de visualisation qui ne seront pas aussi simples que la courbe ROC, mais dont les
représentations seront plus intuitives. Dans certains cas cependant, les partenaires doivent
aussi comprendre que les caractéristiques théoriques qui sont parfois laissées de côté, sont éga-
lement importantes ; c’est pourquoi les visualisations complexes ne doivent pas être ignorées.

1704
La courbe cumulative de réponse est l’alternative la plus courante de la courbe ROC pour la
visualisation des résultats d’un modèle. Les deux courbes sont étroitement liées, mais la

3947
courbe cumulative de réponse est plus intuitive. Elle représente le taux de réussite (taux de
VP, axe des y), c’est-à-dire le pourcentage d’instances positives correctement classifiées, par rapport

5:16
au pourcentage de la population qui est ciblé (axe des x). Théoriquement, plus on descend
dans la liste ordonnée des instances, plus la proportion d’instances ciblées est grande. Dans

.63.4
l’idéal, si le modèle est bon, plus on est vers le haut de la liste et plus la proportion d’instances
positives réelles est grande par rapport à celles des instances négatives réelles. Comme pour la
.121
courbe ROC, la diagonale x = y représente les performances d’un modèle aléatoire. L’intui-
tion est évidente dans ce cas : si le modèle cible 20 % des instances de manière complètement
:196

aléatoire, alors il cible 20 % des instances positives. Tout classifieur qui se positionne au-
2

dessus de cette diagonale fournit un bénéfice.


6149

Remarque
:888

La courbe cumulative de réponse est parfois appelée courbe de lift, car elle permet de voir l’augmentation
des performances d’un modèle par rapport au modèle aléatoire comme la différence d’élévation (lift) entre
1051

la courbe correspondant à ce modèle et la diagonale. Nous préférons le nom de courbe cumulative de


réponse, car « courbe de lift » peut également désigner une courbe qui représente le lift numérique.
1064

Le lift d’un classifieur représente sa supériorité par rapport au modèle aléatoire. Le lift repré-
e:21

sente la proportion d’instances positives qui sont poussées vers le haut dans une liste, au-
dessus des instances négatives. Considérons par exemple une liste de 100 clients dont la
:Non

moitié sont des cas d’attrition (les instances positives) et la moitié ne le sont pas (les instances
négatives). En parcourant la liste vers le bas jusqu’à sa moitié (une proportion d’instances
x.com

ciblées de 0,5), combien d’instances positives pensez-vous rencontrer dans cette première
moitié ? Si la liste a été triée aléatoirement, vous pouvez supposer trouver la moitié des ins-
larvo

tances positives (0,5), ce qui donne un lift de 0,5 / 0,5 = 1. Si la liste a été triée par un bon
classifieur, alors cette première moitié de la liste contient probablement plus de la moitié des
instances positives, ce qui donne un lift supérieur à 1. Avec un classifieur parfait, toutes les
scho

instances positives se retrouvent en haut de la liste, c’est pourquoi, à mi-parcours nous les
avons déjà toutes croisées (1,0), ce qui donne un lift de 1,0 / 0,5 = 2.
univ.
Data science pour l’entreprise
214

La figure 8-6 représente quatre exemples de courbes cumulatives de réponse et la figure 8-7
montre la courbe de lift correspondant à ces quatre exemples.

Figure 8–6 Courbes cumulatives de réponse des classifieurs


Quatre classifieurs (A à D) et leur
A
courbe cumulative de réponse
B

Pourcentage d’instances positives ciblées


C
D
Aléatoire

1704
3947
5:16
.63.4
Pourcentage d’instances de test (triées par ordre décroissant de leur score)
.121
Figure 8–7 Courbes de lift des classifieurs
Les quatre classifieurs (A à D) de la
A
:196

figure 8-6 et leur courbe de lift


B
C
2

D
6149

Aléatoire
:888
Lift

1051
1064
e:21
:Non

Pourcentage d’instances de test (triées par ordre décroissant de leur score)


x.com

La courbe de lift est la valeur de la courbe cumulative de réponse à un point x donné divisée
par la valeur de la diagonale (x = y) à ce point. La diagonale d’une courbe cumulative de
larvo

réponse devient horizontale lorsque y = 1 sur la courbe de lift.


Vous entendrez parfois dire : « Notre modèle fait deux fois mieux que (ou 2X) le lift. » Cela
scho

signifie qu’avec le seuil choisi (souvent non précisé), la courbe de lift montre que les instances
univ.
Visualiser les performances d’un modèle
215
CHAPITRE 8

ciblées par le modèle construit sont deux fois plus efficaces que celles qui sont ciblées par un
modèle aléatoire. Sur la courbe cumulative de réponse, le taux de VP du modèle est deux fois
supérieur au taux de VP du modèle aléatoire, la diagonale. (Vous pouvez aussi créer une ver-
sion du lift par rapport à une baseline différente.) La courbe de lift représente le lift numé-
rique sur l’axe des y par rapport au pourcentage d’instances ciblées sur l’axe des x (son axe des
x est identique à celui de la courbe cumulative de réponse).
Si la proportion d’instances positives dans la population est inconnue, ou si les données de
test ne sont pas représentatives quant à cette proportion, alors l’utilisation de la courbe de lift
ou de la courbe cumulative de réponse devra se faire avec prudence. Contrairement à la
courbe de lift, ces deux courbes supposent que les données de test ont exactement les mêmes
probabilités a priori que la population à laquelle le modèle sera appliqué. Pour simplifier notre
propos, nous avons décidé d’ignorer ce problème, ce qui nous permet d’utiliser une méthode
de visualisation plus intuitive.

1704
Dans la publicité en ligne, par exemple, le taux de base de réponse à une publicité peut être

3947
très faible. Un taux de un sur 10 millions (1/107) n’est pas fréquent. En général, les modélisa-
teurs n’aiment pas les ensembles de données contenant un client qui a répondu contre un mil-
lion d’autres qui n’ont pas répondu. Dans ce cas, ils réduisent le nombre de clients qui n’ont

5:16
pas répondu afin d’obtenir un ensemble de données plus équilibré pour la modélisation et

.63.4
pour l’évaluation. S’ils utilisent ensuite une courbe ROC pour visualiser les performances de
leur classifieur, cette modification des données n’aura aucun effet (car comme nous l’avons vu,
les axes représentent des proportions d’une même classe). La courbe de lift et la courbe
.121
cumulative de réponse, en revanche, seront différentes : les formes des courbes seront tou-
:196

jours significatives, mais les rapports entre les valeurs des deux axes ne seront pas valides.
2
6149

Exemple : analyser les performances pour


le problème d’attrition
:888
1051

Au cours des chapitres précédents, nous avons largement couvert le sujet de l’évaluation. Nous
avons introduit plusieurs méthodes importantes et divers problèmes associés à l’évaluation des
1064

modèles. Dans cette section, nous les relions tous dans une étude de cas à l’aide de laquelle nous
montrerons les résultats de différentes méthodes d’évaluation. Pour cet exemple, nous repren-
e:21

drons notre problème d’attrition client dans le secteur de la téléphonie mobile. Nous utiliserons
cette fois un ensemble de données différent (et plus complexe). Cet ensemble de données pro-
:Non

vient d’un concours de data mining KDD : la KDD Cup de 2009 (http://www.kdd.org/kdd-cup/
view/kdd-cup-2009). Nous n’avons pas utilisé ces données dans nos exemples précédents (par
x.com

exemple, au tableau 3-2, page 79, et à la figure 3-18, page 81), car les noms et les valeurs des
attributs ont été largement anonymisés pour des raisons de confidentialité. Les attributs et leurs
valeurs sont donc beaucoup moins compréhensibles, ce qui aurait rendu difficile la compréhen-
larvo

sion de nos discussions. Nous pouvons cependant effectuer une analyse des performances avec les
données nettoyées. Voici la description offerte par leur site :
scho
univ.
Data science pour l’entreprise
216

« La KDD Cup 2009 vous offre l’occasion de manipuler de grands volumes de données marketing
extraites par l’entreprise Orange (anciennement France Télécom). Votre objectif sera de prédire la
tendance des clients à changer d’opérateur (attrition), à acheter de nouveaux produits ou services
(appétence), ou à acheter des mises à jour ou des modules add-ons qui leur sont proposés pour aug-
menter la rentabilité des ventes (vente poussée). Dans un système de CRM (de l’anglais Customer
relationship management), le moyen le plus simple de générer des informations sur les clients est de
leur attribuer des scores.
Le score (produit par le modèle) est une estimation, pour toutes les instances, de la variable cible à
expliquer (par exemple, l’attrition, l’appétence ou la vente poussée). Les outils fournissant des scores
permettent de projeter des informations quantifiables à partir d’une population donnée. Les scores sont
calculés à partir de caractéristiques fournies en entrées et qui décrivent les instances. Ils sont ensuite
utilisés dans un système d’information (IS), par exemple, pour personnaliser les relations clients. »

1704
Seule une partie des données est intéressante à décrire, car elles ont été largement nettoyées,
mais il convient tout de même de noter le déséquilibre des classes. Les données décrivent

3947
47 000 instances au total, dont 7 % sont étiquetées comme des cas d’attrition (les exemples
positifs) alors que les 93 % restants ne sont pas des cas d’attrition (les exemples négatifs). Le
déséquilibre des classes n’est pas des plus sévères, mais il vaut mieux le mentionner pour des

5:16
raisons que vous comprendrez plus loin.

.63.4
Nous tenons à souligner ici que notre objectif n’est pas de proposer des solutions efficaces à ce
problème, ou de déterminer quels modèles seraient les plus appropriés. Nous voulons seule-
.121
ment nous appuyer sur cet exemple de problème pour illustrer les idées développées jusqu’ici
au sujet de l’évaluation des modèles de data mining. Nous avons peu insisté sur l’optimisation
:196

des performances. Nous entraînerons et testerons plusieurs modèles : un arbre de classifica-


tion, une fonction de régression logistique, un modèle des plus proches voisins ainsi qu’un
2

modèle bayésien naïf (que nous introduirons au chapitre 9). Les détails de ces modèles ne
6149

sont pas essentiels pour la suite de cette section, nous les considérons comme des sortes de
boîtes noires avec différentes caractéristiques de performances. Nous utilisons les techniques
:888

d’évaluation et de visualisation introduites dans les précédents chapitres pour comprendre


leurs caractéristiques.
1051

Commençons par une évaluation très naïve. Nous entraînerons notre modèle sur l’ensemble
1064

de données complet, puis nous le testerons sur ce même ensemble de données. Nous mesure-
rons également l’exactitude de la classification. Le tableau 8-1 montre les résultats de cette
expérience.
e:21

Tableau 8–1 Exactitude des quatre classifieurs entraînés et testés sur l’ensemble de données complet
:Non

de la KDD Cup 2009 concernant le problème d’attrition


Modèle Exactitude
x.com

Arbre de classification 95 %
Régression logistique 93 %
larvo

k plus proches voisins 100 %


Modèle bayésien naïf 76 %
scho
univ.
Visualiser les performances d’un modèle
217
CHAPITRE 8

Plusieurs points sont à noter ici. Tout d’abord, les performances sont très variées, de 76 à
100 %. De plus, l’ensemble de données ayant un taux de base de 93 %, n’importe quel classi-
fieur devrait atteindre au moins cette exactitude. Le résultat du classifieur bayésien naïf est
donc étonnant. Par ailleurs, l’exactitude de 100 % du classifieur des k plus proches voisins est
à prendre avec méfiance5.
Cette première expérience a été réalisée avec un ensemble de test, et à ce stade (vous avez lu le
chapitre 5) vous savez que ces nombres sont douteux, voire insignifiants. Au mieux, ils indi-
quent à quel point chaque modèle est capable de mémoriser (se surajuster) les données de
test. Au lieu de nous attarder sur ces nombres, nous allons donc refaire l’évaluation, plus
rigoureusement cette fois, avec des ensembles d’entraînement et de test distincts. Nous pour-
rions pour cela diviser l’ensemble de données en deux, mais nous allons plutôt utiliser une
méthode de validation croisée comme celle que nous avons présentée à la section « De l’éva-
luation avec ensemble de test à la validation croisée » du chapitre 5, page 124. Ainsi, nos

1704
ensembles seront non seulement bien distincts, mais ils nous permettront également de nous
faire une idée de la variation des résultats. Les résultats sont affichés au tableau 8-2.

3947
Tableau 8–2 Exactitude et AUC de quatre classifieurs sur les données KDD Cup 2009 pour le problème

5:16
de l’attrition. Les valeurs présentées ont été obtenues suite à une validation croisée.
Modèle Exactitude (%)

.63.4
Arbre de classification 91,8 ± 0,0
Régression logistique 93,0 ± 0,1
.121
k plus proches voisins 93,0 ± 0,0
:196

Modèle bayésien naïf 76,5 ± 0,6


2

Les nombres présentés sont les moyennes des résultats de la validation croisée à dix échantillons
6149

pour chaque modèle. Le signe « ± » après chaque valeur est l’écart-type, une sorte de garde-fou :
un grand écart-type indique que les résultats des tests sont irréguliers, ce qui peut être dû à un
:888

ensemble de test trop petit ou à un modèle inapproprié à cette portion du problème.


L’exactitude des modèles a considérablement diminué, à l’exception du modèle bayésien naïf,
1051

qui est toujours aussi étrangement bas. Les écarts-types sont relativement bas par rapport aux
moyennes du test précédent, ce qui indique une faible variation dans les performances des
1064

différents échantillons. C’est plutôt bon signe.


Les valeurs de la colonne de droite sont celles de l’aire sous la courbe ROC (ou AUC). Nous
e:21

avons déjà survolé cette mesure à la section « L’aire sous la courbe ROC (AUC, area under the
:Non

curve), page 212 : elle représente de manière pertinente les performances de prédiction d’un
classifieur. Elle varie entre zéro et un. Une AUC de 0,5 correspond à une classification aléa-
toire (le classifieur est incapable de distinguer les instances positives des instances négatives),
x.com

et une AUC de 1 correspond à un classifieur qui sait parfaitement les distinguer. L’une des
raisons pour lesquelles l’exactitude est une métrique moins significative est qu’elle est trom-
larvo
scho

5. L’optimisme peut être bon, mais la règle tacite, en data mining, est qu’il faut se méfier des performances parfaites
dans un problème réel.
univ.
Data science pour l’entreprise
218

peuse lorsque la distribution des classes n’est pas équilibrée, ce qui est le cas dans notre
exemple actuel (93 % d’instances négatives contre 7 % d’instances positives).
À la section « Le surajustement en détail » du chapitre 5, page 114, nous avons introduit un
moyen de détecter le surajustement d’un modèle. La figure 8-8 représente les courbes d’ajus-
tement de l’arbre de classification pour notre problème d’attrition. L’idée est que plus un
modèle est complexe, plus il a de chances de se surajuster aux données, mais à un certain
moment il ne fait plus que mémoriser les idiosyncrasies de l’ensemble d’entraînement utilisé,
au lieu d’apprendre les caractéristiques générales de la population. La courbe d’ajustement
compare graphiquement la complexité du modèle (dans ce cas, le nombre de nœuds de
l’arbre) par rapport à une mesure de performance (en l’occurrence, l’AUC) à partir de deux
ensembles de données : celui sur lequel le modèle a été entraîné et un ensemble de test dis-
tinct. Le surajustement apparaît lorsque les performances sur les données de test commen-
cent à diminuer, ce que nous pouvons voir à la figure 8-86. Sans aucun doute, l’arbre de clas-

1704
sification est surajusté, ainsi que les autres modèles. Le point idéal au niveau duquel les
performances sur les données de test sont au maximum, correspond à peu près à un arbre de

3947
100 nœuds, après quoi les performances déclinent.

5:16
Figure 8–8
Courbes d’ajustement d’un arbre de

.63.4
classification sur les données d’attrition :
l’aire sous la courbe ROC (AUC) change à ,
Aire sous la courbe ROC (AUC)

mesure que la complexité (taille) de l’arbre


.121
augmente. Les performances sur les données
d’entraînement (courbe du haut) continuent
:196

,
d’augmenter, alors que celles des données de
test atteignent un pic maximal puis
2

déclinent.
6149

,
:888

,
1051

données d’entraînement
données de test
,
1064

Taille de l’arbre (nombre de nœuds)

Revenons maintenant à nos chiffres de comparaison des modèles du tableau 8-2. Ces valeurs
e:21

sont les résultats d’une évaluation raisonnable utilisant des données de test, elles sont donc
:Non

plus fiables. Mais elles posent tout de même quelques problèmes, en particulier en ce qui con-
cerne les valeurs de l’AUC. D’une part, celles-ci sont relativement faibles, ce qui n’est pas sur-
x.com

prenant pour un problème réel : la plupart des ensembles de données réels contiennent peu
d’informations exploitables, ou le problème de data science est mis au point après que les pro-
blèmes les plus simples ont déjà été résolus. Le problème de l’attrition est assez complexe, ces
larvo
scho

6. Vous remarquerez que l’axe des x est à l’échelle logarithmique, c’est pourquoi la partie de droite de la courbe
paraît écrasée.
univ.
Visualiser les performances d’un modèle
219
CHAPITRE 8

résultats modestes ne sont donc pas surprenants et même des AUC modestes peuvent con-
duire à de bons résultats pour l’entreprise.
D’autre part, le modèle bayésien naïf, qui a l’exactitude la plus faible du groupe, a l’AUC la
plus élevée dans le tableau 8-2. Alors que se passe-t-il ? Jetons un œil à un exemple de matrice
de confusion associée au modèle bayésien naïf, celle qui a l’AUC la plus élevée et l’exactitude
la plus basse, et comparons-la avec la matrice de confusion du modèle k-NN (AUC la plus
faible et exactitude la plus élevée) sur le même ensemble de données.
Voici la matrice de confusion du modèle bayésien naïf :

p n
O 127 (3 %) 848 (18 %)
N 200 (4 %) 3 518 (75 %)

1704
Et voici celle du modèle k-NN sur les mêmes données de test :

3947
p n
O 3 (0 %) 15 (0 %)

5:16
N 324 (7 %) 4 351 (93 %)

.63.4
La matrice de confusion du modèle k-NN montre qu’il prédit rarement l’attrition : la ligne O
est pratiquement vide. Autrement dit, ses performances, avec une exactitude de 93 %, sont
.121
largement supérieures à celles du classifieur de base. Le modèle bayésien naïf, en revanche,
commet plus d’erreurs (son exactitude est donc inférieure) mais il identifie beaucoup mieux
:196

les cas d’attrition. La figure 8-9 représente les courbes ROC d’un échantillon représentatif de
2

notre procédure de validation croisée. Vous remarquerez que les courbes du modèle bayésien
6149

naïf (NB) et de l’arbre de classification (Arbre) sont un peu plus bombées que les autres
courbes, ce qui indique des performances de prédiction supérieures.
:888

Figure 8–9 ROC


1051

Les courbes ROC des classifieurs 1,0


sur un échantillon de notre
validation croisée, dans notre
1064

problème d’attrition client 0,8


Taux de vrais positifs

e:21

0,6
:Non

0,4
x.com

Arbre échantillon 5 (aire ROC = 0,61)


0,2
LR échantillon 5 (aire ROC = 0,58)
larvo

k-NN échantillon 5 (aire ROC = 0,51)


NB échantillon 5 (aire ROC = 0,63)
Aléatoire
scho

0,0
0,0 0,2 0,4 0,6 0,8 1,0
Taux de faux positifs
univ.
Data science pour l’entreprise
220

Comme nous l’avons vu, les courbes ROC sont techniquement intéressantes mais elles peu-
vent être difficiles à comprendre. Leur courbure et la supériorité d’une courbe par rapport à
une autre peut être difficile à juger d’un simple regard. Les courbes de lift et de profit étant
parfois préférables, examinons-les de plus près.
L’avantage des courbes de lift est qu’elles ne requièrent aucune connaissance préalable sur les
coûts, nous allons donc commencer par elles (figure 8-10).

Figure 8–10 Courbe de lift des classifieurs de notre problème d’attrition client
Les courbes de lift de notre 3,0
problème d’attrition client Arbre
LR
2,5 k-NN
NB

1704
Aléatoire
2,0

3947
1,5
Lift

5:16
1,0

.63.4
.121
0,5
:196

0,0
0,0 0,2 0,4 0,6 0,8 1,0
Proportion d’instances de test (par ordre décroissant de leur score)
2
6149

Les courbes de la figure 8-10 représentent des moyennes sur les 10 échantillons de test de la
validation croisée. Globalement, les classifieurs atteignent le maximum de leurs performances
:888

très tôt puis chutent au niveau des performances du modèle aléatoire (lift = 1). Les modèles
Arbre (l’arbre de classification) et NB (le modèle bayésien naïf ) ont les meilleures perfor-
1051

mances. Le modèle Arbre est supérieur jusqu’à 25 % des premières instances, après quoi le
modèle NB devient supérieur. Les modèles k-NN et LR (régression logistique) sont tous deux
1064

assez mauvais et ne dépassent tous les autres à aucun moment. En observant ce graphique, si
votre objectif est de cibler les premiers 25 % ou moins de vos clients, vous savez que l’arbre de
e:21

classification est le plus approprié. Et si vous voulez cibler un peu plus de clients (descendre plus
bas dans la liste ordonnée des instances), c’est le modèle NB qu’il faut appliquer. Les courbes de
:Non

lift sont sensibles à la distribution des classes, et si les proportions de clients qui quittent l’entre-
prise et de clients fidèles changent, les courbes seront également modifiées.
x.com

La courbe de lift montre la supériorité de chaque modèle par rapport aux autres, mais elle ne
dit pas quel est le bénéfice attendu de chacun, ni même s’ils apportent des bénéfices. Ces der-
larvo

niers sont explicités dans la courbe de profit, qui est basée sur des hypothèses concernant les
coûts et les bénéfices et montre la valeur attendue.
scho
univ.
Visualiser les performances d’un modèle
221
CHAPITRE 8

REMARQUE La combinaison de classifieurs


En observant ces courbes, vous vous dites peut-être : « si le modèle Arbre est supérieur pour 25 % des pre-
mières instances et si NB est meilleur pour le reste des instances, pourquoi ne pas utiliser le premier pour le
début de la liste, puis NB pour le reste ? » C’est une idée intéressante, mais vous n’obtiendrez pas nécessai-
rement les meilleurs résultats de cette manière. En bref, les deux modèles ordonnent la liste différemment,
donc vous ne pourrez pas vous attendre à des résultats optimaux si vous sélectionnez des segments de cha-
cune des listes. Les courbes d’évaluation ne sont valides que pour chaque modèle individuellement, mais
rien n’est sûr à partir du moment où vous commencez à combiner leurs listes ordonnées.
Les classifieurs peuvent cependant être combinés en respectant certains principes, de manière à ce que
le résultat de leur combinaison permette de dépasser les performances des classifieurs individuels. Ce
type de combinaison est appelé « ensemble », et nous en parlons à la section « Biais, variance et métho-
des ensemblistes » du chapitre 12, page 295.

1704
Ignorons pour le moment les détails de l’attrition client dans le secteur de la téléphonie
mobile (nous y reviendrons au chapitre 11). Pour rendre les choses plus intéressantes, nous

3947
allons faire deux suppositions concernant les coûts et les bénéfices. Pour notre premier scé-
nario, nous supposons une dépense de 3 € pour chaque offre et un bénéfice brut de 30 €,

5:16
donc un vrai positif conduit à un bénéfice net de 27 € et un faux positif à une perte nette de
3 €. Le taux de rentabilité est donc de 9 pour 1. Les courbes de profit associées à ce scénario

.63.4
sont présentées à la figure 8-11. Les performances de l’arbre de classification sont supérieures
lorsque le seuil est élevé. Le bénéfice maximal, dans ce scénario, peut être atteint en ciblant
.121
environ les premiers 20 % de la population.
:196

Figure 8–11 Courbe de profit des classifieurs de notre problème d’attrition client
Les courbes de profit de nos quatre
Arbre
2

classifieurs pour notre problème


6149

LR
d’attrition client, en supposant un
k-NN
taux de rentabilité de 9 pour 1
NB
:888
1051
Profit

1064
e:21
:Non
x.com

0,0 0,2 0,4 0,6 0,8 1,0


Proportion d’instances de test (par ordre décroissant de leur score)
larvo

Dans notre second scénario, nous supposons que le coût par offre est le même, 3 € (le coût
des faux positifs ne change donc pas) mais que le bénéfice brut est supérieur (39 €). Un vrai
scho

positif nous apporte donc un bénéfice net de 36 €. Le taux de rentabilité est cette fois-ci de
univ.
Data science pour l’entreprise
222

12 pour 1. Les courbes de profit de ce scénario sont présentées à la figure 8-12. Comme on
pouvait s’y attendre, le bénéfice maximal de ce scénario est largement supérieur au précédent.
En outre, les bénéfices maximaux sont différents selon les courbes. Le sommet de la courbe
Arbre se situe à 20 % de la population, alors que celui de la courbe NB, légèrement supérieur,
se situe à 35 % de la population. Les courbes Arbre et LR se croisent au même endroit dans
les deux graphiques : à environ 25 % de la population. Nous voyons ainsi la sensibilité des
courbes de profit aux valeurs des coûts et bénéfices préalablement définies.

Figure 8–12 Courbe de profit des classifieurs de notre problème d’attrition client
Les courbes de profit des quatre
Arbre
classifieurs pour le problème
LR
d’attrition client, en supposant
k-NN
un taux de rentabilité supérieur
de 12 pour 1 (à comparer avec NB

1704
la figure 8-11)

3947
Profit

5:16
.63.4
.121
:196

0,0 0,2 0,4 0,6 0,8 1,0


Proportion d’instances de test (par ordre décroissant de leur score)
2
6149

Pour clore cette section, nous tenons à rappeler que ces courbes ne sont que des illustrations
de différentes techniques d’évaluation des modèles de data mining. L’optimisation des
:888

méthodes d’induction pour le problème en question a été ignorée. Nous ne pourrons donc pas
en tirer des conclusions sur les avantages de chaque modèle ou pour dire lequel est le plus
1051

approprié pour un problème de prédiction de l’attrition client. Nous avons simplement pro-
duit une variété de modèles avec des performances différentes pour montrer comment ces
1064

courbes permettent de révéler leurs différences.


e:21

Résumé
:Non

La recherche d’une méthode d’évaluation appropriée et la présentation de ses résultats aux


x.com

partenaires constituent une part fondamentale du travail du data scientist et nécessite une
grande expérience. Elle est cruciale dans la mesure où elle permet d’éviter les mauvaises sur-
prises tout en comblant les attentes des parties prenantes. La visualisation des résultats est
larvo

donc également une part importante de la tâche d’évaluation.


Lors de l’induction d’un modèle à partir des données, l’ajustement de l’ensemble d’entraîne-
scho

ment de différentes manières peut s’avérer utile, voire nécessaire. Mais l’évaluation doit toujours
univ.
Visualiser les performances d’un modèle
223
CHAPITRE 8

se baser sur un échantillon représentatif de la population réelle d’où sont extraites les données
afin que les résultats reflètent ce que l’on peut attendre du modèle lors de son déploiement.
Lorsque les coûts et les bénéfices associés aux décisions peuvent être préalablement spécifiés,
alors nous pouvons calculer un coût attendu par instance pour chaque modèle, puis choisir le
modèle qui a la meilleure valeur attendue. Parfois, une simple courbe de profit permet de
comparer différents modèles sous certaines conditions bien définies. Ce type de courbe est
généralement facile à comprendre pour les partenaires hors de l’équipe de data science, car
elles résument les performances du modèle à leurs coûts et bénéfices globaux.
L’inconvénient avec les courbes de profit est que les informations concernant le contexte d’usage
doivent être connues et spécifiées au préalable. Seulement, dans les problèmes réels, ces infor-
mations sont le plus souvent indéterminées et changent dans le temps et les data scientists doi-
vent pallier l’incertitude. D’autres types de courbes sont disponibles pour ces cas. Lorsque les

1704
coûts et bénéfices associés aux décisions sont incertains, mais que la distribution n’est pas sus-
ceptible de changer, une courbe cumulative de réponse ou une courbe de lift sont plus appropriées.

3947
Ces deux types de courbes permettent d’expliciter la supériorité des classifieurs les uns par rap-
port aux autres, indépendamment de la valeur (financière ou autre) de leurs avantages.

5:16
Enfin, les courbes ROC sont un outil de visualisation utile pour le data scientist. Leur inter-
prétation requiert un certain niveau d’expérience, mais elle permet d’évaluer les performances

.63.4
d’un modèle indépendamment de ses conditions d’utilisation. Elles permettent ainsi de
mettre en valeur les compromis fondamentaux de chaque modèle. .121
La comparaison de modèles occupe une place importante dans les projets d’apprentissage
automatique et de data mining. Elle sert de support au data scientist pour défendre les avan-
:196

tages d’un algorithme par rapport à un autre. La littérature sur les méthodes de comparaison
des classifieurs est donc abondante. Le lecteur intéressé pourra commencer par l’article inti-
2
6149

tulé « Approximate Statistical Tests for Comparing Supervised Classification Learning


Algorithms », de Thomas Dietterich (1998). L’ouvrage Evaluating Learning Algorithms: A
:888

Classification Perspective ( Japkowicz & Shah, 2011) est également un bon point de départ.
1051
1064
e:21
:Non
x.com
larvo
scho
univ.
univ.
scho
larvo
x.com
:Non
e:21
1064
1051
:888
6149
2:196
.121
.63.4
5:16
3947
1704
9
Preuves et probabilités

1704
3947
5:16
CONCEPTS FONDAMENTAUX : combinaison simple de preuves avec la règle du modèle bayésien ; raisonne-

.63.4
ment probabiliste basé sur des hypothèses d’indépendance conditionnelle.
EXEMPLES DE TECHNIQUES : classification du modèle bayésien naïf ; indice de lift.
.121

Jusqu’ici, nous avons étudié différentes méthodes permettant d’utiliser des données pour pré-
:196

dire une certaine valeur d’une instance donnée, telle que sa classe. Nous allons maintenant
voir une manière différente de tirer des conclusions à partir des données. Nous pouvons en
2
6149

effet considérer les informations extraites des données au sujet d’une instance comme des
preuves pour ou contre les différentes valeurs de la cible. Les informations disponibles au
sujet de l’instance sont représentées comme des caractéristiques de cette instance. Et si nous
:888

pouvons attribuer un degré de fiabilité aux preuves fournies par chaque caractéristique, alors
1051

nous pouvons mettre au point une formulation probabiliste combinant ces preuves qui nous
conduira à une conclusion quant à la valeur de la cible. La fiabilité des preuves est déterminée
sur la base des données d’entraînement.
1064
e:21

Exemple : ciblage publicitaire en ligne


:Non

Voyons dès maintenant un exemple pour illustrer cette idée. Nous utilisons une méthode de
classification pour résoudre un tout nouveau problème d’entreprise : les contenus publicitaires
x.com

ciblés en ligne, basés sur des informations extraites de l’historique de navigation des clients.
En tant que clients, nous sommes aujourd’hui habitués à recevoir de vastes quantités d’infor-
larvo

mations et de services sur le Web, en apparence gratuits. Sauf que cette gratuité est en réalité
la contrepartie des revenus, réels ou virtuels, de la publicité en ligne, de même que les pro-
scho

grammes télévisés sont gratuits. Prenons l’exemple de l’espace publicitaire, à savoir les publi-
univ.
Data science pour l’entreprise
226

cités qui apparaissent en haut, sur les côtés ou au bas des pages de contenus que nous lisons
ou consultons.
L’espace publicitaire se distingue des publicités dans les résultats de recherche (les publicités qui
s’affichent avec les résultats d’une recherche sur Google, par exemple) sur un point clé : dans la
plupart des pages web, l’internaute n’a pas saisi une phrase liée exactement à ce qu’il cherche. Le
ciblage publicitaire doit donc se baser sur d’autres types d’inférences. Dans les chapitres précé-
dents, nous avons parlé d’un type spécifique d’inférence : déduire la valeur de la variable cible
d’une instance à partir des valeurs de ses caractéristiques. Nous pouvons donc appliquer les
techniques vues jusqu’ici pour un autre type d’inférence, à savoir : si un client particulier est
intéressé par une certaine publicité. Nous introduisons dans ce chapitre une approche complète-
ment différente du problème, qui est couramment utilisée et facile à appliquer.
Commençons tout d’abord par préciser notre problème de ciblage publicitaire. Que repré-

1704
sente une instance ? Quelle est la variable cible ? Quelles sont les caractéristiques ? Et com-
ment allons-nous acquérir des données d’entraînement ?

3947
Nous travaillons pour un grand fournisseur de contenu (un éditeur) qui publie divers types de
contenus. Ces derniers sont largement consultés sur Internet, son potentiel d’espaces publici-

5:16
taires est donc assez vaste. Yahoo!, par exemple, possède un nombre considérable de posses-
sions sur le Web qui sont soutenues par la publicité et que nous pouvons considérer comme

.63.4
différents éléments de contenu. En 2013, Yahoo! a accepté l’achat de Tumblr, un site de blog-
ging contenant 50 millions de billets de blog répartis dans environ 100 millions de blogs.
.121
Chacun de ces billets peut également être considéré comme une pièce de contenu pouvant
fournir des informations sur les centres d’intérêt des internautes qui le lisent. Facebook peut
:196

aussi considérer chaque « J’aime » comme une information concernant les goûts des inter-
nautes, et s’en servir pour le ciblage publicitaire.
2
6149

Pour simplifier, supposons que nous voulions cibler une partie des internautes qui visitent
notre site avec une campagne publicitaire commandée par Luxhote, une chaîne hôtelière haut
:888

de gamme. L’objectif de Luxhote est d’inciter les clients à réserver des chambres. Nous avons
déjà lancé cette campagne auparavant en sélectionnant les clients de façon aléatoire. Cette
1051

fois, nous souhaitons affiner le ciblage dans le but de générer plus de réservations et ainsi de
mieux rentabiliser les coûts des objets publicitaires (ad impressions)1.
1064

Nous considérons donc un client comme une instance. Notre variable cible est alors : le client
a-t-il ou va-t-il réserver une chambre chez Luxhote dans la semaine suivant son exposition à
e:21

une publicité Luxhote ? Par la magie des cookies web2, nous pouvons surveiller les réserva-
tions de chambres, en collaboration avec Luxhote. Dans les données d’entraînement, la valeur
:Non

de la variable cible pour chaque client est de type binaire. Lors du déploiement, nous appli-
querons notre modèle pour estimer la probabilité qu’un client réserve une chambre après
x.com
larvo

1. Un objet publicitaire (ad impression) désigne l’espace d’une publicité n’importe où sur une page, qu’elle soit cliquée
ou non par l’internaute.
scho

2. Les navigateurs partagent de petites quantités d’information (appelées « cookies ») avec les sites web visités par les
internautes. Ils enregistrent des informations spécifiques à chaque site que ces derniers peuvent ensuite réutiliser.
univ.
Preuves et probabilités
227
CHAPITRE 9

avoir vu une publicité. Nous pourrons alors, en fonction de notre budget, cibler une partie des
clients dont les probabilités sont plus élevées.
Reste encore un problème à résoudre : quelles caractéristiques utiliserons-nous pour décrire les
internautes, de manière à pouvoir ensuite distinguer les potentiels futurs bons clients de Lux-
hote. Dans cet exemple, nous décrivons un client par l’ensemble des éléments de contenus qu’il
a consulté (ou likée), informations que nous pouvons extraire des cookies du navigateur ou
autrement. Les catégories de contenus sont très variées : finance, sports, loisirs, blogs de cuisine,
etc. Nous pourrions sélectionner plusieurs milliers d’éléments de contenu parmi les plus popu-
laires, ou plusieurs centaines de millions. Mais nous pensons que certains types de contenus
(tels que les blogs sur la finance) sont plus susceptibles d’être consultés par des clients potentiels
de Luxhote, par rapport à d’autres (par exemple, une page sur les amateurs de tir de tracteur).
Dans cet exemple, nous ne souhaitons pas nous baser sur ces hypothèses concernant les types

1704
de contenus, et nous n’avons pas les ressources nécessaires pour déterminer manuellement le
degré de pertinence de chaque élément de contenu. En outre, en tant qu’êtres humains, nous

3947
avons la capacité d’utiliser nos connaissances et notre raisonnement pour reconnaître les élé-
ments de contenus qui seraient pour ou contre, mais sans pouvoir estimer avec précision le
degré de fiabilité de chaque preuve. Nous utiliserons donc nos données historiques à la fois

5:16
pour déterminer le sens de la preuve et son degré de fiabilité. Nous décrirons ensuite une

.63.4
méthode d’évaluation très largement applicable, à la fois pour évaluer la preuve, et pour la
combiner avec les autres preuves disponibles afin d’estimer la probabilité d’appartenance à
une classe (en l’occurrence, la probabilité pour un client de réserver une chambre après avoir
.121
vu notre publicité).
:196

Beaucoup d’autres problèmes ressemblent à celui de notre exemple : des problèmes de classi-
fication ou d’estimation des probabilités des classes dans lesquels chaque instance est décrite
2

par un ensemble de preuves, qui appartiennent à un plus vaste ensemble de preuves exis-
6149

tantes. La classification de textes, par exemple, correspond exactement à ce type de problème


(nous en parlerons au chapitre 10). Chaque document est un ensemble de mots appartenant
:888

au vaste vocabulaire de la langue. Chaque mot peut constituer une preuve pour ou contre la
classification, et nous voulons combiner ces évidences. Les techniques que nous introduisons
1051

sont celles qui sont utilisées par les systèmes de détection des spams : chaque e-mail est une
instance, les classes cibles sont spam ou non-spam, et les caractéristiques sont les mots et
1064

symboles utilisés dans l’e-mail.


e:21

Combinaison probabiliste des caractéristiques


:Non
x.com

ATTENTION Plus de maths que d’habitude


Pour décrire la combinaison probabiliste des caractéristiques, nous aurons besoin de quelques notations
larvo

de probabilités. Aucun prérequis sur les probabilités n’est nécessaire : les notions introduites sont assez
intuitives et nous nous en tiendrons aux bases. Les notations nous permettront d’être plus précis dans
nos explications. Vous aurez peut-être l’impression que les paragraphes suivants contiennent trop de
scho

mathématiques, mais vous verrez que c’est en réalité très simple.


univ.
Data science pour l’entreprise
228

Les valeurs qui nous intéressent sont des quantités telles que la probabilité pour un client de
réserver une chambre après avoir vu une publicité. Pour être plus précis, s’agira-t-il d’un client
particulier ou de n’importe quel client ? Commençons par n’importe quel client : quelle est la
probabilité qu’un consommateur quelconque réserve une chambre après avoir vu une publicité ?
Puisqu’il s’agit de l’objectif de notre problème de classification, appelons cette valeur C. La pro-
babilité d’un événement C est notée (C). Si nous supposons que (C) = 0,0001, cela signifie
que si nous montrons notre publicité de manière aléatoire à des consommateurs, nous pouvons
espérer que 1 sur 10 000 d’entre eux réserveront une chambre3.
Nous souhaitons donc connaître la probabilité de C étant donnée une preuve E, par exemple
l’ensemble des sites visités par un certain internaute. Cette valeur est notée (C|E), « la pro-
babilité de C étant donné E » ou « la probabilité conditionnelle de C sachant E ». Nous avons
ici un exemple de probabilité conditionnelle, et le symbole | est parfois appelé la « barre de
condition ». La valeur de (C|E) serait différente pour différents ensembles de preuves , en

1704
l’occurrence différents ensembles de sites visités.

3947
Comme mentionné précédemment, nous aurons besoin de données étiquetées, par exemple
les données issues de notre campagne ciblée de façon aléatoire, pour calculer les probabilités
de différents ensembles de preuves . Et c’est là qu’un problème apparaît. Les données col-

5:16
lectées ne contiennent pas forcément de clients (instances) ayant visité exactement les

.63.4
ensembles dont nous voulons calculer les classes. Nous ne pouvons donc pas calculer la
probabilité d’appartenance à une classe de manière fiable. Il est même probable qu’aucun de
nos ensembles ne corresponde à l’une des instances de nos données ! Si l’un de nos
.121
ensembles contient des milliers de sites web différents, quelle est la probabilité que dans
:196

nos données d’entraînement, un consommateur ait exactement le même historique de naviga-


tion que l’un de nos futurs clients ? Elle est infinitésimale. La solution que nous adoptons
2

consiste à traiter individuellement chaque pièce de contenu, puis à les combiner. Voyons donc
6149

quelques détails techniques au sujet de la combinaison de probabilités.


:888

Probabilités jointes et indépendance


1051

Considérons deux événements A et B. Si nous connaissons (A) et p(B), comment pouvons-


nous calculer la probabilité que les événements A et B aient lieu en même temps ? C’est ce
1064

que nous appelons probabilité jointe.


Nous pouvons calculer cette probabilité jointe dans un cas seulement : lorsque les
e:21

événements A et B sont indépendants. Leur indépendance signifie que la probabilité de l’un


ne dit rien sur la probabilité de l’autre. L’exemple classique que l’on utilise pour illustrer
:Non

l’indépendance, en probabilité, est le lancer de dé non truqué : le résultat d’un lancer ne


permet pas de prédire le résultat du suivant. Si l’événement A est « le lancer n° 1 est six » et
x.com

l’événement B est « le lancer n° 2 est un six », alors (A) = 1/6 et (B) = 1/6. Et surtout,
même si l’on sait déjà que le lancer n° 1 était un 6, la valeur de (B) reste 1/6. Les événements
larvo

3. Ce taux de réponse n’est pas forcément réel pour tout type de publicité, il s’agit seulement d’un exemple illustra-
scho

tif. Les taux d’achat attribués à la publicité en ligne semblent généralement très modestes pour quiconque
n’appartient pas au secteur. Mais sachez que le coût de l’espace publicitaire est lui-même généralement très faible.
univ.
Preuves et probabilités
229
CHAPITRE 9

sont donc indépendants. Pour calculer la probabilité jointe de deux événements indépen-
dants, AB, on multiplie les probabilités individuelles de ces deux événements :
(AB) = (A) • (B). Dans notre exemple de lancer de dé, (AB) = 1/36.
Le calcul des probabilités jointes ne peut cependant pas toujours se faire selon cette formule.
Imaginez un lancer de dé truqué. J’ai dans ma poche six dés truqués qui contiennent chacun
sur leurs faces uniquement l’un des nombres de un à six, c’est-à-dire que toutes les faces de
chaque dé ont le même nombre. Je sors un dé au hasard de ma poche et le lance deux fois.
Dans ce cas, p(A) = p(B) = 1/6 (car j’aurais pu sortir n’importe lequel de mes six dés avec la
même probabilité). Mais cette fois, p(AB) = 1/6 également, car les deux événements sont
complètement dépendants ! Si le premier lancer est un six, alors le second le sera aussi.
La formule suivante permet de calculer les probabilités jointes en tenant compte des dépen-
dances entre événements.

1704
Équation 9–1 Calcul de la probabilité jointe en prenant en compte la probabilité conditionnelle
(AB) = (A) • (B|A)

3947
Ce qui se lit ainsi : la probabilité de A et B est égale à la probabilité de A multipliée par la pro-
babilité de B sachant A. Autrement dit, si nous connaissons A, comment peut-on calculer la

5:16
probabilité de B ? Prenez le temps de vous assurer que vous avez bien compris.

.63.4
Illustrons ce calcul avec nos deux exemples de lancer de dé. Dans l’exemple où les dés sont
indépendants, puisque la probabilité de A ne nous dit rien sur (B), alors (B|A) = (B). Et
.121
nous pouvons utiliser la formule précédente où nous multiplions simplement les deux proba-
bilités. En revanche, si les dés sont truqués, (B|A) = 1,0 : puisque le premier lancer était un
:196

six, alors le deuxième lancer sera sûrement un six. Donc, (AB) = (A) • 1,0 = (A) = 1/6,
exactement comme on pouvait s’y attendre.
2
6149

En général, les événements sont soit complètement indépendants, soit complètement dépen-
dants, soit entre les deux. Si les événements ne sont pas complètement indépendants, la pro-
babilité de l’un influence la probabilité de l’autre. Dans tous les cas, la formule (A) • (B|A)
:888

combine correctement les probabilités.


1051

La raison pour laquelle nous nous sommes attardés sur ces détails mathématiques est assez
importante : cette formule est la base de l’une des équations les plus célèbres en data science,
1064

et dans toutes les sciences en général.


e:21

Le théorème de Bayes
:Non

Dans (AB) = (A) • (B|A), l’ordre entre A et B peut vous sembler arbitraire et c’est le cas.
Nous aurions tout aussi bien pu écrire :
x.com

(AB) = (A) • (A|B)


Ainsi :
larvo

(A) • (B|A) = (AB) = (A) • (A|B)


Donc :
scho

(A) • (B|A) = (B) • (A|B)


univ.
Data science pour l’entreprise
230

Et si nous divisons les deux parties par p(A), nous obtenons :


(A B ) ‡ (B )
( B A ) = ------------------------------------
-
(A )
Considérons maintenant que B est une certaine hypothèse dont nous voulons estimer la vrai-
semblance, et que A est une preuve que nous avons observée. En les renommant H (hypo-
thèse) et P (preuve), nous obtenons :
(P H ) ‡ ( H)
(H P ) = ------------------------------------
-
(P )
Et c’est là le célèbre théorème de Bayes, du nom du Révérend Thomas Bayes, qui étudia un
cas particulier de cette règle au XVIIIe siècle. Le théorème de Bayes stipule que l’on calcule la
probabilité de notre hypothèse H étant donnée une preuve P, en utilisant la probabilité de la

1704
preuve étant donnée l’hypothèse, ainsi que les probabilités non conditionnelles de l’hypothèse
et de la preuve.

3947
REMARQUE Méthodes bayésiennes

5:16
Le théorème de Bayes ainsi que le principe d’indépendance conditionnelle sont les fondements de nom-
breuses techniques avancées de data science que nous aborderons dans ce livre, comme les réseaux

.63.4
bayésiens, les modèles de Markov cachés, les champs aléatoires de Markov, etc.
.121
En particulier, les trois dernières valeurs sont généralement plus faciles à calculer que la valeur
cible : p(H|P). Nous allons le démontrer avec un exemple (simplifié) de diagnostic médical.
:196

Imaginez que vous êtes médecin et qu’un patient vient vous voir avec des tâches rouges sur la
peau. Vous pensez (émettez l’hypothèse) que le patient a la rougeole. Nous voulons calculer la
2

probabilité de diagnostic hypothétique (H = rougeole), étant donnée la preuve (P = tâches


6149

rouges). Pour calculer directement p(rougeole|tâches rouges), nous serions obligés d’imaginer
toutes les raisons pour lesquelles une personne pourrait avoir des tâches rouges et dans quelle
:888

mesure cela pourrait être la rougeole. Même le plus savant des médecins en serait incapable.
1051

Imaginez qu’au lieu de cela nous estimons la quantité du côté droit du théorème de Bayes.
• (P|H) est la probabilité d’avoir des tâches rouges sachant que la personne a la rougeole.
1064

Un spécialiste en maladies infectieuses connaît forcément cette valeur ou peut l’estimer de


manière relativement précise.
e:21

• (H) est simplement la probabilité pour une personne d’avoir la rougeole, sans prendre en
compte aucune preuve. C’est donc simplement la fréquence des cas de rougeole dans la
:Non

population.
• (P) est la probabilité de la preuve : la probabilité pour une personne d’avoir des tâches
x.com

rouges, ou la fréquence des cas de tâches rouges dans la population. L’estimation de cette
probabilité ne nécessite pas de raisonnement complexe au sujet des différentes causes pos-
sibles, seulement de l’observation et un recensement.
larvo

Le théorème de Bayes permet de calculer (H|P) beaucoup plus facilement. Ce calcul néces-
scho

site trois valeurs différentes, mais celles-ci sont beaucoup plus faciles à estimer que (H|P).
univ.
Preuves et probabilités
231
CHAPITRE 9

Remarque
(P) peut être difficile à calculer. Mais souvent, cette valeur ne nécessite aucun calcul, car nous comparons
les probabilités de différentes hypothèses étant donnée la même preuve. Nous verrons cela plus loin.

Application du théorème de Bayes en data science


À ce stade, vous réalisez peut-être pourquoi le théorème de Bayes est fondamental en data
science. Une grande part des techniques de data science sont en effet basées sur des méthodes
bayésiennes, dont le raisonnement repose sur le théorème de Bayes. Une description com-
plète des méthodes bayésiennes dépasse la portée de ce livre. Nous en introduirons les con-
cepts fondamentaux, puis montrerons comment ils s’appliquent dans les techniques bayé-

1704
siennes les plus simples, couramment utilisées. Revenons encore une fois au théorème de
Bayes, mais cette fois pour un problème de classification. Pour souligner que nous utilisons le

3947
théorème dans un problème de classification, nous notons C = c l’événement selon lequel la
variable cible prend une certaine valeur c.

5:16
Équation 9–2 Le théorème de Bayes pour la classification

.63.4
(P C = c ) ‡ (C = c )
(C = c P ) = -----------------------------------------------------------
(P).121
L’équation 9-2 contient quatre valeurs différentes. La valeur que nous souhaitons calculer se
trouve du côté gauche. Dans un problème de classification, elle représente la probabilité que
:196

la variable cible C aura pour valeur la classe c étant donnée la preuve P (le vecteur contenant
les valeurs des caractéristiques). C’est ce que l’on appelle la probabilité a posteriori.
2
6149

Dans le théorème de Bayes, la probabilité a posteriori est décomposée en trois valeurs, celles
qui sont du côté droit de l’équation. Nous souhaitons calculer ces valeurs à partir des
:888

données :
1 (C = c) est la probabilité a priori de la classe, c’est-à-dire la probabilité de la classe sans
1051

prendre en compte aucune preuve. Dans un raisonnement bayésien, cette information


peut provenir de différentes sources. Cela pourrait être (i) une valeur a priori subjective,
1064

c’est-à-dire basée sur une idée d’un partenaire, provenant de ses connaissances, de son
expérience et de ses opinions, (ii) une idée a priori tirée d’applications précédentes du
e:21

théorème de Bayes avec d’autres preuves, ou (iii) une probabilité non conditionnelle
induite à partir des données. La méthode que nous présentons plus loin adopte l’approche
:Non

(iii), et la probabilité a priori de la classe est le taux de base de c : la fréquence de c dans la


population entière. On calcule cette dernière simplement comme le pourcentage de toutes
x.com

les instances de la classe c.


2 (P|C = c) est la vraisemblance de la preuve P – les caractéristiques de l’instance étant
classifiées – lorsque la classe C = c. On pourrait considérer cela comme une question
larvo

générative : si le monde (le processus de génération des données) génère une instance de
la classe c, quelle est la probabilité que cette instance ressemble à P ? Cette probabilité
scho
univ.
Data science pour l’entreprise
232

peut être calculée à partir des données comme le pourcentage d’instances de la classe c
dont le vecteur de caractéristiques est P.
3 Enfin, (P) est la vraisemblance de la preuve : quelle est la fréquence du vecteur de
caractéristiques P dans l’ensemble des instances ? Cette valeur peut également être calculée à
partir des données : c’est le pourcentage d’occurrences de P parmi toutes les instances.
Après avoir calculé ces trois valeurs à partir des données, nous pouvons faire une estimation
de la probabilité a posteriori (C = c|P) pour toute nouvelle instance à classer. Nous pouvons
ensuite l’utiliser directement comme une estimation de la probabilité de la classe, éventuelle-
ment en la combinant avec les coûts et bénéfices, comme nous l’avons vu au chapitre 7.
(C = c|P) peut aussi servir de notation pour ordonner les instances (par exemple, pour déter-
miner lesquelles sont les plus susceptibles de réagir favorablement à notre publicité). Nous
pouvons également utiliser la valeur maximale de (C = c|P), pour toutes les valeurs possibles

1704
de c, comme classification de l’instance décrite par le vecteur P.
Nous devons malheureusement revenir au problème mentionné précédemment qui nous

3947
empêche d’utiliser l’équation 9-2 directement en data mining. Prenons P comme notre vec-
teur habituel contenant les valeurs des attributs <p1, p2, …, pk>. Ce vecteur peut être long et

5:16
contient des attributs spécifiques. Pour lui appliquer directement l’équation 9-2, nous aurions
besoin de connaître (P|c), calculé comme (p1 ∧ p2 ∧ … ∧ pk|c)4. Cette valeur est trop spé-

.63.4
cifique et trop difficile à calculer. Il se peut qu’aucune instance de l’ensemble d’entraînement
ne corresponde au vecteur P tiré de notre ensemble de test. Et même si de telles instances
.121
existent, elles ne seront sûrement pas assez nombreuses pour nous permettre d’obtenir des
probabilités fiables.
:196

Pour résoudre ce problème, les méthodes bayésiennes de data science font des hypothèses
d’indépendance probabiliste. La méthode la plus couramment utilisée consiste à former
2
6149

l’hypothèse d’une indépendance totale.


:888

Indépendance conditionnelle et classifieur bayésien naïf


1051

Selon le principe d’indépendance mentionné dans les sections précédentes, deux événements
sont indépendants si le fait de connaître l’un n’influence pas la probabilité de l’autre. Nous
1064

allons développer un peu plus cette notion.


La notion d’indépendance conditionnelle est similaire, sauf qu’elle utilise les probabilités con-
e:21

ditionnelles. Dans notre exemple, nous considérerons la classe d’une instance comme condi-
tion (dans l’équation 9-2, nous cherchons à calculer la probabilité de la preuve sachant la
:Non

classe). La notion d’indépendance conditionnelle est directement liée à celle d’indépendance


non conditionnelle que nous avons vue plus haut. Plus précisément, sans hypothèse d’indé-
x.com

pendance, seule l’équation 9-1 nous permet de combiner des probabilités, en la complétant
avec la condition |C :
larvo

(AB | C) = (A | C) • (B | AC)
scho

4. L’opérateur ∧ signifie « et ».
univ.
Preuves et probabilités
233
CHAPITRE 9

Seulement, si nous supposons, comme précédemment, que A et B sont conditionnellement


indépendants sachant C 5, nous pouvons combiner les probabilités plus simplement :
(AB | C) = (A | C) • (B | C)
Le calcul des probabilités à partir des données est maintenant beaucoup plus simple. En par-
ticulier, pour la probabilité conditionnelle p(P|C = c) de l’équation 9-2, supposons que les
attributs sont conditionnellement indépendants, étant donnée la classe. Autrement dit, dans
(p1 ∧ p2 ∧ … ∧ pk|c), chaque pi est indépendant de tous les autres pj étant donnée la classe c.
Pour simplifier la présentation, nous remplaçons C = c par c, ce qui ne devrait pas prêter à
confusion.
(P | c) = (p1 ∧ p2 ∧ … ∧ pk | c)
= (p1 | c) • (p2 | c) … (pk | c)

1704
Chaque (pi|c) peut être calculé directement à partir des données. Il nous suffit en effet de
compter la proportion d’instances contenant la caractéristique pi parmi les instances de la

3947
classe c. Nous n’avons plus besoin de rechercher des instances décrites par un vecteur de
caractéristiques exactement identique. La caractéristique pi est probablement plus fréquente6.
En combinant cette équation avec l’équation 9-2, nous obtenons l’équation du modèle bayésien

5:16
naïf, présentée par l’équation 9-3 :

.63.4
Équation 9–3 L’équation du modèle bayésien naïf
( p 1 c ) ‡ ( p 2 c )… ( p k c ) ‡ ( c )
( c P ) = -----------------------------------------------------------------------------------------------
.121
(P)
Cette équation est à la base du classifieur bayésien naïf. Pour classifier une instance, ce classi-
:196

fieur estime sa probabilité d’appartenir à chaque classe, puis il lui assigne la classe de probabi-
2

lité supérieure.
6149

Dans les deux prochains paragraphes, nous allons traiter les détails techniques. À ce stade,
vous avez peut-être remarqué (P) comme dénominateur de l’équation 9-3, et vous vous êtes
:888

peut-être demandé si, selon toutes les explications qui précèdent, le calcul de (P|C) ne sera
pas au moins aussi difficile. Il s’avère que, généralement, (P) n’a même pas besoin d’être cal-
1051

culé, et cela pour deux raisons possibles.


• Si nous sommes dans un problème de classification, ce qui nous intéresse est de répondre
1064

à la question « De toutes les classes possibles c, laquelle a la probabilité (C|P) la plus


élevée ? » Dans un tel calcul, la preuve (P) est toujours la même, et nous n’avons plus
e:21

qu’à déterminer quel numérateur est le plus élevé.


• Si notre objectif est d’estimer les probabilités des classes, nous pouvons éviter le calcul de
:Non

(P) dans le dénominateur. Les classes sont en effet mutuellement exclusives et absolues :
chaque instance appartient à une et une seule classe. Dans l’exemple des hôtels Luxhote,
x.com
larvo

5. Cette hypothèse est plus faible que celle de l’indépendance non conditionnelle.
scho

6. Lorsque la caractéristique est rare dans les données, nous pouvons effectuer une correction statistique pour les
fréquences faibles (voir section « Estimation des probabilités » du chapitre 3, page 76.
univ.
Data science pour l’entreprise
234

soit un client réserve, soit il ne réserve pas. Autrement dit, la preuve P appartient soit à c0,
soit à c1. Et en termes mathématiques :
(P) = (P ∧ c0) + (P ∧ c1)
= (P | c0) • (c0) + (P | c1) • (c1)
Notre hypothèse d’indépendance nous autorise à l’écrire ainsi :
(P) = (p1 | c0) • (p2 | c0) … (pk | c0) • (c0)
+ (p1 | c1) • (p2 | c1) … (pk | c1) • (c1)
En combinant cette formule avec celle de l’équation 9-3, nous obtenons une version de
l’équation du modèle bayésien naïf qui nous permet de calculer plus facilement les probabi-
lités a posteriori à partir des données :
(p1 | c0) • (p2 | c0) … (pk | c0) • (c0)

1704
(c0 | P) =
(p1 | c0) • (p2 | c0) … (pk | c0) • (c0) + (p1 | c1) • (p2 | c1) … (pk | c1) • (c1)

3947
Les nombreux termes de cette équation sont soit le poids d’une preuve, une pièce de contenu
donnée, soit la probabilité a priori d’une classe.

5:16
.63.4
Avantages et inconvénients du classifieur bayésien naïf
Le classifieur bayésien naïf est un classifieur très simple qui prend en compte toutes les
.121
preuves des caractéristiques. Il est efficace en termes d’espace de stockage et de temps de
calcul. Sa phase d’entraînement consiste simplement à stocker les fréquences des classes et
:196

des caractéristiques au fur et à mesure qu’il parcourt les instances. Comme nous l’avons vu, le
2

calcul de (c) peut se faire en comptant la proportion d’instances appartenant à la classe c. Le


6149

calcul de (pi | c), quant à lui, s’effectue en comptant la proportion d’instances de la classe qui
contiennent la caractéristique pi.
:888

Malgré sa grande simplicité et les hypothèses d’indépendance strictes sur lesquelles il repose,
le classifieur bayésien naïf peut atteindre des performances étonnamment élevées dans un
1051

problème réel de classification. La raison à cela est simple : le non-respect de l’hypothèse


d’indépendance n’affecte pas les performances, et l’on peut comprendre intuitivement pour-
1064

quoi. Pour être plus précis, imaginez deux preuves fortement liées l’une à l’autre. Qu’est-ce
que cela signifie ? En bref, il est très probable que les deux preuves apparaissent simultané-
e:21

ment. Si nous les considérons comme indépendantes, à chaque fois que nous en rencontrons
une, nous penserons « voici une preuve de telle classe », et à chaque fois que nous rencontrons
:Non

l’autre, nous pensons « voici une preuve supplémentaire de telle classe ». Dans une certaine
mesure, nous compterons donc cette preuve en double. Mais, tant que la preuve pointe dans
x.com

la bonne direction, le double comptage ne gêne généralement pas la classification. Les proba-
bilités estimées pointeront bien évidemment plus fort dans la bonne direction : la probabilité
larvo

de la classe correcte est surestimée, et celle des autres classes sont sous-estimées. Pour la clas-
sification, nous choisissons la classe dont la probabilité estimée est la plus élevée. L’accentua-
scho

tion des probabilités dans la bonne direction n’est donc pas problématique.
univ.
Preuves et probabilités
235
CHAPITRE 9

Cet avantage devient un problème si nous utilisons les probabilités elles-mêmes, et le classi-
fieur bayésien naïf doit être utilisé avec précaution lorsqu’il contribue à une prise de décision
ayant une influence sur les coûts et les bénéfices, comme nous l’avons vu au chapitre 7. Le
classifieur bayésien naïf est parfois utilisé pour le classement (ranking) des instances, lorsque
les probabilités elles-mêmes sont moins pertinentes que leurs valeurs relatives dans les diffé-
rentes classes.
Le classifieur bayésien naïf a aussi l’avantage de pouvoir faire de l’apprentissage incrémental.
Il s’agit d’une technique d’induction selon laquelle un modèle peut se mettre à jour au fur et à
mesure qu’il enregistre les instances les unes après les autres. Le modèle ne nécessite pas un
ré-apprentissage des instances d’entraînement précédemment enregistrées lorsque de nou-
velles données d’entraînement deviennent disponibles.
L’apprentissage incrémental est particulièrement intéressant pour les systèmes dans lesquels

1704
les étiquettes des données d’entraînement sont fournies en même temps que son application :
le modèle doit prendre en compte les nouvelles informations dans un temps aussi court que

3947
possible. Imaginons, par exemple, que je souhaite mettre au point un classifieur d’e-mails
indésirables personnalisé. Chaque fois que je reçois un courrier indésirable, je peux cliquer sur
le bouton Courrier indésirable de mon navigateur. L’e-mail est alors supprimé de ma boîte de

5:16
réception et une instance est ajoutée aux données d’entraînement : une instance positive de

.63.4
courrier indésirable. L’idéal serait que le modèle puisse se mettre à jour instantanément, en
temps réel, et qu’il puisse alors classifier les e-mails similaires dans le courrier indésirable. Le
classifieur bayésien naïf est la base de nombreux systèmes personnalisés de détection des
.121
spams, dont celui de Mozilla Thunderbird.
:196

Le classifieur bayésien naïf est inclus dans pratiquement tous les paquetages d’outils de data
mining. Il est couramment utilisé comme classifieur baseline pour l’évaluation des performances
2

de méthodes plus complexes. L’exemple de classifieur bayésien naïf que nous avons vu était basé
6149

sur des données décrites par des attributs binaires. L’idée de base de cet exemple peut facilement
s’appliquer à des attributs catégoriques à valeurs multiples ou à des attributs numériques,
:888

comme vous pourrez le voir dans la littérature sur les algorithmes de data mining.
1051

Les variantes du classifieur bayésien naïf


1064

Plusieurs versions légèrement différentes du classifieur bayésien naïf existent. Ces différences sont infi-
mes et souvent ignorées (en dehors de cet encadré, nous les ignorons dans le reste de ce chapitre), mais
e:21

elles peuvent faire la différence.


Pour simplifier, le classifieur bayésien naïf (NB) est basé sur un modèle génératif, qui modélise le proces-
:Non

sus de création des données. Les différentes versions de NB sont basées sur différents modèles statisti-
ques génératifs qui reposent tous sur l’hypothèse principale de NB vue précédemment (les attributs sont
x.com

générés de manière conditionnelle et indépendante pour chaque classe). Nous ne nous attarderons pas
sur les différents modèles statistiques ici, mais une différence clé doit être prise en compte.
Vous avez probablement remarqué que dans notre exemple de modèle NB, la valeur de chaque caracté-
larvo

ristique est considérée comme une preuve pour ou contre chaque classe. Mais que se passe-t-il si nous
avons un nombre considérable de caractéristiques à traiter : disons chaque mot du langage, ou chaque
scho

page web qu’un internaute peut visiter ? Dans ces types de problèmes, les caractéristiques représentent
souvent la présence ou la fréquence de ces mots, pages, etc., mais la grande majorité des mots, pages
web, etc. n’apparaît dans aucune instance (document, client en ligne).
univ.
Data science pour l’entreprise
236

Les variantes du classifieur bayésien naïf (suite)


Dans le calcul des scores du classifieur bayésien naïf, il existe des astuces mathématiques qui permettent
de prendre en compte les preuves réellement présentes. Nous encourageons les lecteurs intéressés à se
renseigner sur ce sujet et sur les différents modèles bayésiens naïfs en général (McCallum & Nigam,
1998 ; Junqué de Fortuny et al., 2013). En conséquence, la pratique la plus courante, face à des données
aussi vastes et éparses, consiste à ne prendre en compte que les preuves qui sont présentes. Dans notre
problème de publicité ciblée, par exemple, nous ne nous intéressons le plus souvent qu’aux sites web que
l’internaute a effectivement visités, et nous ignorons tous ceux qu’il n’a pas visités. Ces derniers sont
implicitement pris en compte dans les calculs mathématiques et à travers des hypothèses sur le proces-
sus de création des données. De même, dans la suite de cet ouvrage, nous ne nous intéressons qu’aux
preuves fournies par les articles de Facebook qu’un internaute a likés, et nous ignorerons tout simple-
ment celles qui sont fournies par tous les autres articles qu’il n’a pas likés.

1704
Un modèle à base de lift de preuve

3947
À la section « Courbes cumulatives de réponse et courbes de lift » du chapitre 8, page 213,

5:16
nous avons introduit le lift comme une métrique d’évaluation d’un classifieur. Le lift compare
la prévalence de la classe positive dans un sous-ensemble sélectionné par rapport à sa préva-

.63.4
lence dans la population complète. Si la fréquence de réservation de chambres est de 0,01 %
dans un sous-ensemble aléatoirement ciblé de clients alors qu’il est de 0,02 % dans la popula-
.121
tion que nous avons sélectionnée, alors le classifieur lui attribue un lift de 2 : la population
sélectionnée a fait deux fois plus de réservations.
:196

Nous pouvons adapter l’équation du modèle bayésien naïf en la modifiant légèrement afin
2

qu’elle modélise le lift de chaque preuve. Une telle modification reposerait sur une hypothèse
6149

d’indépendance totale des attributs, plutôt que sur la faible hypothèse d’indépendance condi-
tionnelle généralement utilisée dans le classifieur bayésien naïf. Nous appelons ce nouveau
:888

modèle bayésien naïf-naïf, car ses hypothèses simplificatrices sont encore plus fortes. Avec
l’hypothèse d’indépendance totale des attributs, l’équation 9-3 devient :
1051

( p1 c ) ‡ ( p2 c )… ( pk c 0 ) ‡ ( c 0 )
(c P ) = ----------------------------------------------------------------------------------------------
1064

( p1 ) ‡ ( p2 )… ( pk )
Il est possible de réarranger les termes de cette équation pour obtenir l’équation 9-3.
e:21

Équation 9–4 La probabilité comme un produit de lifts de preuves


:Non

(c | P) = (c) • liftc(p1) • liftc(p2) …


où liftc(x) est défini ainsi :
x.com

(x c )
lift c ( x ) = ---------------
(x)
larvo

Voyons comment les lifts de preuves s’appliquent à une nouvelle instance P = <p1, p2, …, pk>.
Avec les probabilités a priori, chaque preuve (chaque caractéristique pi) augmente ou diminue la
scho

probabilité de la classe d’une valeur égale au lift de cette preuve (qui peut être inférieur à un).
univ.
Preuves et probabilités
237
CHAPITRE 9

Nous démarrons théoriquement avec un certain nombre, que nous nommons z, dont la valeur
est la probabilité a priori de la classe c. Nous parcourons les preuves pi de notre instance et au
fur et à mesure, nous multiplions z par liftc(pi). Si ce dernier est supérieur à 1, alors la
probabilité z augmente ; s’il est inférieur à 1, z diminue.
Dans notre exemple des hôtels Luxhote, z est la probabilité de réservation et elle est initia-
lisée à 0,0001 (la probabilité a priori, avant de vérifier les preuves, que le visiteur d’un site web
réservera une chambre). S’il a visité un site financier, la probabilité de réservation est multi-
pliée par deux. S’il a visité un site d’amateurs de tir de tracteurs, la probabilité de réservation
est multipliée par 0,25, et ainsi de suite. Une fois que toutes les preuves pi de P ont été trai-
tées, le produit obtenu (appelé zf) est la probabilité (preuve) finale que P est un membre de la
classe c, en l’occurrence, que le visiteur P réservera une chambre7.
Dans ce contexte, l’effet de l’hypothèse d’indépendance est plus clair. Chacune des preuves pi

1704
étant traitée indépendamment de toutes les autres, nous pouvons multiplier z par leur lift
individuel. Mais l’existence de dépendances entre les preuves conduit à une distorsion de la

3947
valeur finale, zf . Celle-ci sera soit supérieure, soit inférieure à sa valeur réelle. Ainsi, les lifts
de preuves et leur combinaison peuvent être utiles pour la compréhension des données et
pour comparer les notes des instances, mais la valeur finale de la probabilité est à considérer

5:16
avec précaution.

.63.4
Exemple : lifts de preuve à partir des « J’aime »
.121

sur Facebook
:1962

Nous allons à présent examiner des lifts de preuves basés sur des données réelles. Pour
6149

changer, nous allons nous intéresser à un tout nouveau domaine d’application. Les chercheurs
Michal Kosinski, David Stillwell et Thore Graepel ont publié d’étonnants résultats dans un
:888

article (Kosinski et al., 2013) paru dans les Proceedings of the National Academy of Sciences. Les
contenus likés sur le réseau social Facebook8 sont assez prédictifs sur différents traits de
1051

caractère qui ne sont généralement pas perceptibles :


• leurs scores aux tests d’intelligence ;
1064

• leurs scores aux tests psychométriques (par exemple, leurs degrés d’extraversion ou de
conscience de soi) ;
e:21
:Non

7. Techniquement, nous pourrions aussi prendre en compte les preuves provenant du fait que l’internaute n’a pas
visité d’autres sites, en recourant à certaines astuces mathématiques (voir encadré « Les variantes du classifieur
bayésien naïf », page 235.
x.com

8. Pour ceux d’entre vous qui ne connaissent pas le fonctionnement de Facebook, ce réseau social permet aux gens
de partager une grande variété d’informations concernant leurs centres d’intérêt et leurs activités, et de se connec-
ter avec des amis. Certaines pages Facebook sont dédiées à des contenus spécifiques tels que des séries TV, des
larvo

films, des groupes musicaux, des passions, etc. Ce qui compte ici, c’est que chaque page contient un bouton
J’aime (like) sur lequel les internautes peuvent cliquer pour indiquer qu’ils supportent la page. Les J’aime peuvent
scho

être vus par les amis de la personne. Et si vous likez une page, des messages au sujet de cette page apparaîtront
dans votre fil d’actualités.
univ.
Data science pour l’entreprise
238

• s’ils sont (ouvertement) gay ;


• s’ils consomment de l’alcool et fument ;
• leur religion et leurs opinions politiques ;
• et bien d’autres.
Nous vous encourageons à lire leur article afin de mieux comprendre leur expérience. Après
avoir lu ce livre, vous serez capable de comprendre la plupart de leurs résultats. Par exemple,
pour évaluer leurs performances de prédiction sur des caractéristiques binaires, ils utilisent
l’aire sous la courbe ROC, que vous êtes maintenant capable d’interpréter correctement.
L’objectif de notre expérience est de rechercher les J’aime qui indiquent un lift de preuve élevé
en faveur d’un « QI élevé », ou plus précisément qui indiquent des personnes qui ont des
scores élevés aux tests QI. Nous étudions un échantillon des utilisateurs Facebook, et notre
variable cible est la variable binaire QI > 130.

1704
Voyons donc les J’aime qui produisent les lifts de preuves les plus élevés9…

3947
Tableau 9–1 Des J’aime de différentes pages Facebook et les lifts correspondants
J’aime Lift J’aime Lift

5:16
Le Seigneur des Anneaux 1,69 Wikileaks 1,59

.63.4
One (manga) 1,57 Beethoven 1,52
Science 1,49 NPR .121 1,48
Psychologie 1,46 Le Voyage de Chihiro 1,45
The Big Bang Theory 1,43 Courir 1,41
:196

Paulo Coelho 1,41 Roger Federer 1,40


The Daily Show 1,40 Star Trek (le film) 1,39
2
6149

Lost 1,39 Philosophie 1,38


Lie to Me 1,37 L’Oignon 1,37
:888

How I Met Your Mother 1,35 The Colbert Report 1,35


Doctor Who 1,34 Star Trek 1,32
1051

Le Château ambulant 1,31 Sheldon Cooper 1,30


Tron 1,28 Fight Club 1,26
1064

Angry Birds 1,25 Inception 1,25


Le Parrain 1,23 Weeds 1,22
e:21

En reprenant l’équation 9-4 vue précédemment et les hypothèses d’indépendance, nous pou-
:Non

vons calculer le lift de la probabilité qu’une personne soit d’intelligence supérieure en nous
basant sur les contenus que cette personne like. Sur Facebook, la probabilité qu’une personne
x.com

à QI élevé like Sheldon Cooper est supérieure de 30 % par rapport à la population générale.
La probabilité qu’une personne à QI élevé like Le Seigneur des Anneaux est supérieure de 69 %
par rapport à la population générale.
larvo
scho

9. Merci à Wally Wang pour son aide généreuse à la génération de ces résultats.
univ.
Preuves et probabilités
239
CHAPITRE 9

Il existe bien évidemment des J’aime qui font diminuer la probabilité d’un QI élevé. Nous
n’allons pas les lister ici pour éviter de vous déprimer.
Cet exemple montre également la prudence avec laquelle nous devons observer les résultats,
compte tenu du processus de collecte des données. Ces résultats que nous venons de présenter
ne signifient pas que le fait d’aimer Le Seigneur des Anneaux est nécessairement indicateur d’un
QI élevé. Ils signifient simplement que cliquer sur le bouton J’aime de la page Facebook inti-
tulée « Le Seigneur des Anneaux » est un indicateur fort d’un QI élevé. La différence est
importante : l’action de cliquer sur le bouton J’aime d’une page est différent du simple fait
d’aimer cette page, et les données dont nous disposons décrivent la première et non la seconde.

Utiliser les preuves : le ciblage publicitaire

1704
Malgré toutes les formules mathématiques que vous avez vues dans ce chapitre, les calculs
sont assez simples à exécuter et peuvent être implémentés directement dans une feuille de
calcul. Plutôt que de présenter un exemple statique, nous avons donc préparé une feuille de

3947
calcul contenant un exemple numérique simple du modèle bayésien naïf et du lift de preuve
appliqué à un problème de ciblage marketing en ligne dans le secteur des jouets. Ces calculs

5:16
sont très simples à utiliser : ils consistent tout simplement à compter des choses, calculer des
proportions, multiplier et diviser.

Astuce .63.4
.121

Vous pouvez télécharger la feuille de calcul à l’adresse suivante : http://www.data-science-for-biz.com/


:196

NB-advertising.html
2
6149

La feuille de calcul contient le détail des preuves (les visites de sites web par différents inter-
nautes) ainsi que les calculs intermédiaires et les probabilités finales de réponse à une publi-
cité fictive. Vous pouvez tester la technique en ajustant les nombres et en ajoutant ou suppri-
:888

mant des internautes, afin d’observer comment les probabilités de réponse et le lift de preuve
1051

changent en conséquence.
1064

Résumé
e:21

Au cours des chapitres précédents, nous avons présenté des techniques de modélisation ayant
pour objectif de répondre à la question : « Quelle est la meilleure méthode pour distinguer les
:Non

différentes valeurs d’une cible ? » dans différents segments de l’ensemble des instances. Les
arbres de classification et les modèles linéaires créent des modèles permettant de répondre à
x.com

cette question, en essayant de minimiser la perte ou l’entropie, des fonctions indiquant leur
capacité de discrimination. C’est ce que nous appelons des méthodes discriminatives : leur
larvo

objectif est de distinguer directement différentes cibles.


Dans ce chapitre, nous avons introduit une nouvelle famille de méthodes qui inversent la ques-
scho

tion précédente pour répondre à celle-ci : « Comment différents sous-ensembles d’instances


univ.
Data science pour l’entreprise
240

produisent différentes valeurs de caractéristiques ? » L’objectif de ces méthodes est de modéliser


le processus de création des données. Lors de leur déploiement, pour classifier une nouvelle ins-
tance, les modèles tentent de répondre à la question : « Quelle classe a la plus grande probabilité
d’avoir produit cette instance ? » C’est pour cette raison que ces méthodes sont dites génératives.
Les méthodes populaires connues sous le nom de méthodes bayésiennes, car elles reposent forte-
ment sur le théorème de Bayes, sont généralement des méthodes génératives. La littérature sur
les méthodes bayésiennes couvre largement le sujet de manière approfondie et vous rencontrerez
très probablement ces méthodes dans vos projets de data science.
Dans ce chapitre, nous avons tout d’abord introduit une méthode bayésienne très simple mais
très utile appelée classifieur bayésien naïf. Ce classifieur est dit « naïf » car il modélise chaque
caractéristique indépendamment (pour chaque cible). Le classifieur compte donc doublement
les preuves lorsque des corrélations existent entre des caractéristiques. Ce classifieur, du fait
de sa grande simplicité, est à la fois rapide et efficace. Et malgré sa naïveté, il est étonnam-

1704
ment (presque honteusement) efficace. En data science, sa simplicité en a fait la méthode
baseline la plus courante : c’est l’une des premières méthodes que nous utilisons, quel que soit

3947
le problème à résoudre.
Nous avons également vu comment le raisonnement bayésien basé sur certaines hypothèses

5:16
d’indépendance permet de calculer des lifts de preuves et donc de traiter de vastes quantités

.63.4
de preuves possibles, en faveur ou non d’une conclusion. Pour illustrer ce point, nous avons
montré que la probabilité de liker Fight Club, Star Trek ou Sheldon Cooper sur Facebook est
environ 30 % supérieure chez les personnes à QI élevé que dans la population générale.
.121
:1962
6149
:888
1051
1064
e:21
:Non
x.com
larvo
scho
univ.
10
Représentation et

1704
exploration de textes

3947
5:16
.63.4
CONCEPTS FONDAMENTAUX : l’importance de construire des représentations de données aisément
.121
explorables ; représentation de textes pour le data mining.
:196

EXEMPLES DE TECHNIQUES : représentation par sacs de mots ; calcul du TFIDF ; n-grammes ;


racinisation ; extraction d’entités nommées ; modèles thématiques.
2
6149

Nous avons jusqu’ici ignoré ou fait l’impasse sur une phase importante du processus de data
mining : la préparation des données. Dans la réalité, les données ne sont jamais fournies sous
:888

la forme de vecteurs de caractéristiques, le format que la plupart des méthodes de data mining
1051

prennent en entrée. Les données sont présentées dans un format naturel selon les sources à
partir desquelles elles sont extraites. Pour leur appliquer nos nombreux outils de data mining,
nous devons soit traiter les données afin qu’elles correspondent au format d’entrée de nos
1064

outils, soit créer de nouveaux outils adaptés aux données. Les meilleurs data scientists savent
faire les deux. Il est généralement plus simple de tenter un traitement des données afin de les
e:21

adapter aux outils existants, ces derniers étant nombreux et bien connus.
:Non

Dans ce chapitre, nous nous intéressons à un type particulier de données qui s’est très large-
ment répandu à mesure que le Web est devenu un canal de communication omniprésent : les
x.com

données textuelles. L’étude des données textuelles nous permettra d’illustrer diverses com-
plexités du traitement des données, tout en nous familiarisant avec un important type de
données. Comme nous le verrons au chapitre 14, même si nous nous concentrons dans ce
larvo

chapitre sur les données textuelles, les principes fondamentaux s’appliquent à d’autres types
importants de données.
scho
univ.
Data science pour l’entreprise
242

Nous avons déjà abordé les données textuelles dans ce livre, dans l’exemple sur le partitionne-
ment (clustering) d’articles d’actualité concernant Apple Inc. (section « Exemple : clustering
des actualités des entreprises » du chapitre 6, page 169). Nous avions alors délibérément omis
de préciser comment les articles d’actualité avaient été traités afin de nous concentrer sur le
clustering, car la préparation des données aurait constitué une trop grande digression. Ce
chapitre est dédié aux difficultés et aux débouchés du traitement de textes.
En principe, le texte est un type de données comme un autre, et le traitement de textes est
juste un cas particulier de l’ingénierie des données. Mais dans la réalité, les textes nécessitent
des étapes supplémentaires de prétraitement, et parfois une expertise spécialisée de la part de
l’équipe de data science.
Le text mining fait l’objet de livres entiers et de conférences (des entreprises y sont également
dédiées). Dans ce chapitre, nous ne pourrons que survoler le sujet. L’objectif est de vous

1704
donner une vue d’ensemble des techniques et problèmes les plus couramment rencontrés en
entreprise.

3947
Commençons par voir pourquoi les textes sont si importants et si difficiles à traiter.

5:16
L’importance du texte
.63.4
Les textes sont partout. Beaucoup de systèmes hérités continuent de produire et de stocker des
.121
données textuelles. Les dossiers médicaux, archives de réclamations clients, demandes de pro-
duits et rapports de réparation sont encore aujourd’hui destinés à la communication entre per-
:196

sonnes, non entre machines, et sont donc toujours encodés au format textuel. L’exploitation de
ces vastes quantités de données nécessite de les convertir dans un format caractéristique.
2
6149

Même si le Web héberge tous les nouveaux médias, ces derniers sont encore en grande partie
publiés au même format que les médias classiques. Ces médias renferment des quantités
:888

considérables de textes sous la forme de pages web personnelles, flux Twitter, e-mails, mises à
jour de statuts Facebook, descriptions de produits, commentaires Reddit, billets de blogs, et
1051

bien d’autres. Le fonctionnement des moteurs de recherche (Google, Bing) que nous utili-
sons quotidiennement repose sur des quantités massives de techniques de data science orien-
1064

tées texte. La musique et les vidéos représentent une part importante de nos échanges sur
Internet, mais les communications entre internautes se font essentiellement au format tex-
tuel. Le Web 2.0 est d’ailleurs né de l’idée de permettre aux internautes d’utiliser les sites web
e:21

comme points d’interaction entre communautés, et ainsi de générer une grande partie des
:Non

contenus d’un site. Les contenus et interactions générés par les utilisateurs prennent le plus
souvent la forme de textes.
x.com

Comprendre les réactions des clients nécessite donc, pour une entreprise, de pouvoir analyser
des textes. Avouons que ce n’est pas toujours le cas : l’état d’esprit des clients est parfois repré-
senté explicitement comme des données ou peut être déduit de leur comportement, par
larvo

exemple à partir de leurs notations sur une échelle de cinq étoiles, de leurs habitudes de clics,
de leurs taux de conversion, etc. Nous pouvons aussi payer pour collecter des données quanti-
scho

fiées au travers de groupes témoins et de sondages en ligne. Mais le plus souvent, pour vrai-
univ.
Représentation et exploration de textes
243
CHAPITRE 10

ment écouter le client, nous devons lire ce que les internautes écrivent dans leurs critiques de
produits, formulaires d’avis clients, articles d’opinion et e-mails.

Les difficultés du traitement des textes


Les textes sont souvent décrits comme des données non structurées, car ils ne sont pas struc-
turés dans des formats de données habituels, tels que des tableaux d’enregistrements com-
posés de champs à contenu défini (autrement dit, des ensembles de vecteurs de caractéristi-
ques), avec des liens entre tableaux. Le texte est structuré, bien évidemment, mais sa structure
linguistique est destinée à la compréhension humaine, pas aux ordinateurs.
Les mots peuvent être de longueurs différentes et les champs textuels peuvent contenir diffé-
rents nombres de mots. Il arrive que l’ordre des mots soit important.

1704
En tant que données, les textes ne sont pas toujours propres. Les fautes de grammaire et

3947
d’orthographe, les mots collés entre eux, les abréviations imprévisibles et les mauvaises ponc-
tuations sont courants. Et même si les textes sont correctement rédigés, ils peuvent contenir
des synonymes (mots ayant le même sens) ou des homographes (mots de sens différents ayant

5:16
la même orthographe). La terminologie et les abréviations d’un domaine peuvent par ailleurs

.63.4
être complètement différentes dans un autre domaine. Par exemple, des archives médicales ou
des archives de maintenance informatique ne vont pas employer le même vocabulaire, et des
conflits de sens peuvent survenir.
.121

Le texte est un outil de communication entre personnes dans lequel le rôle du contexte est
:196

beaucoup plus essentiel que dans d’autres formats de données. Prenons par exemple cet
extrait d’une critique de film :
2
6149

« La première partie du film est bien meilleure que la seconde partie. Le jeu des acteurs est pauvre et
déraille complètement vers la fin, avec une violence exagérée et une fin invraisemblable. On prend
:888

malgré tout plaisir à regarder ce film. »


Pensez-vous que cette critique est pour ou contre le film ? Le mot invraisemblable a-t-il une
1051

connotation positive ou négative ici ? L’évaluation d’un mot, d’une expression particulière est
particulièrement difficile lorsqu’ils sont isolés de leur contexte.
1064

C’est pourquoi les textes doivent être soumis à de longs prétraitements avant d’arriver en
entrée des algorithmes de data mining. En général, plus la conversion des textes en ensembles
e:21

d’attributs (featurization) est complexe, plus les caractéristiques linguistiques peuvent être
prises en compte. Dans ce chapitre, nous introduisons les principales méthodes de prépara-
:Non

tion des textes pour le data mining. Les sous-sections suivantes décrivent ces différentes
étapes.
x.com

Représentation
larvo
scho

Maintenant que nous savons à quel point les textes peuvent être difficiles à traiter, nous allons
voir les principales étapes permettant de convertir un texte en un ensemble de données pou-
univ.
Data science pour l’entreprise
244

vant être traitées par un algorithme de data mining. La stratégie la plus courante, en text
mining, consiste à utiliser la technique la plus simple (la moins coûteuse) avec de bons résul-
tats. Ce sont les technologies-clés sous-jacentes des moteurs de recherche tels que Google et
Bing. Nous illustrerons plus loin nos explications avec un exemple d’extraction de requêtes.
Voyons tout d’abord la terminologie de base, en grande partie empruntée à l’extraction
d’information (EI, Information Retrieval en anglais). Un texte est appelé « document » quelle
que soit sa longueur. Un document peut être une seule phrase, un rapport de 100 pages ou
une longueur intermédiaire, comme un commentaire YouTube ou un billet de blog. Le texte
complet d’un document est traité comme un seul objet et est considéré comme tel lorsqu’il est
comparé ou classé. Un document est composé de tokens ou « termes ». Imaginez pour le
moment qu’un token est tout simplement un mot. Nous verrons plus loin que les tokens ne
correspondent pas toujours à ce que nous appelons communément « mots ». Un ensemble de
documents est un corpus1.

1704
3947
Sacs de mots
Il est important de toujours garder à l’esprit l’objectif final lors de la représentation des données.

5:16
Pour faire simple, nous prenons un ensemble de documents, chacun étant une séquence de mots
de forme relativement libre, et nous les convertissons en vecteurs de caractéristiques. Chaque

.63.4
document est une instance, mais ses caractéristiques ne peuvent être connues à l’avance.
.121
La première approche que nous allons introduire est celle des « sacs de mots ». Comme son
nom l’indique, elle consiste à traiter chaque document comme un simple ensemble de mots
:196

individuels. La grammaire, l’ordre des mots, la structure de la phrase et (généralement) la


ponctuation sont ignorés. Chaque mot apparaissant dans un document est considéré comme
2

un éventuel mot-clé important de ce document. Cette représentation est très simple, sa créa-
6149

tion est peu coûteuse et elle permet d’atteindre de bonnes performances dans de nombreuses
tâches de text mining.
:888

REMARQUE Ensembles et sacs


1051

Les termes « ensemble » et « sac » ont des significations spécifiques en mathématiques qui ne correspon-
1064

dent pas au sens dans lequel ils sont utilisés ici. Un ensemble ne peut contenir qu’une seule instance de
chaque objet, alors qu’ici nous prenons en compte la fréquence d’occurrence des mots. En mathématiques,
un sac est un multiensemble, dont les membres peuvent apparaître plus d’une fois. La représentation en
e:21

sacs de mots considère les documents comme des sacs (multiensembles) de mots et ignorent donc l’ordre
des mots et la structure linguistique. En général, la représentation en text mining est cependant plus com-
:Non

plexe qu’un simple décompte des fréquences d’occurrences, comme nous le verrons plus loin.
x.com

Si nous considérons chaque mot comme un potentiel attribut, quelles sont les valeurs des
attributs dans un document donné ? Cela dépend des approches. La plus simple consiste à
larvo

traiter chaque mot comme un token et chaque document est représenté par un 1 (si le mot est
scho

1. Le terme latin pour « corps ». Son pluriel est également corpus.


univ.
Représentation et exploration de textes
245
CHAPITRE 10

présent dans le document) ou un 0 (si le mot n’y est pas utilisé). Selon cette approche, un
document est donc réduit à l’ensemble des mots qu’il contient.

Fréquence du terme
Pour ajouter un peu de complexité, on remplace parfois les 0 et les 1 par les fréquences des mots
dans les documents. Les fréquences d’occurrence des mots nous permettent de les différencier.
Dans certaines applications, l’importance d’un terme dans un document est proportionnelle à sa
fréquence d’occurrence dans ce document. C’est la représentation par fréquence du terme (Term
Frequency). Considérons les trois phrases (documents) très simples du tableau 10-1.
Tableau 10–1 Trois documents simples
d1 jazz music has a swing rhythm

1704
d2 swing is hard to explain
d3 swing rhythm is a natural rhythm

3947
Chaque phrase est un document séparé. Une représentation par fréquence du terme produi-

5:16
rait le tableau 10-2.

.63.4
Tableau 10–2 Représentation par fréquence du terme
a explain hard has is jazz .121 music natural rhythm swing to
d1 1 0 0 1 0 1 1 0 1 1 0
d2 0 1 1 0 1 0 0 0 0 1 1
:196

d3 1 0 0 0 1 0 0 1 2 1 0
2
6149

Un prétraitement simple est habituellement appliqué aux mots avant leur insertion dans le
tableau. Prenons un exemple plus complexe de document :
:888

« Microsoft Corp and Skype Global today announced that they have entered into a definitive agree-
ment under which Microsoft will acquire Skype, the leading Internet communications company, for
1051

$8.5 billion in cash from the investor group led by Silver Lake. The agreement has been approved by
the boards of directors of both Microsoft and Skype. »
1064

Le tableau 10-3 est le résultat de la conversion de ce document dans une représentation par
fréquence du terme.
e:21

Tableau 10–3 Les mots après normalisation et racinisation, triés par ordre de fréquence
:Non

Mot Fréquence Mot Fréquence Mot Fréquence Mot Fréquence


skype 3 microsoft 3 agreement 2 global 1
x.com

approv 1 announc 1 acquir 1 lead 1


definit 1 lake 1 communic 1 internet 1
larvo

board 1 led 1 director 1 corp 1


compani 1 investor 1 Silver 1 billion 1
scho
univ.
Data science pour l’entreprise
246

Voici les différentes étapes nécessaires pour créer un tableau comme celui-ci à partir d’un
document.
• La casse a tout d’abord été normalisée afin que tous les mots soient en minuscules. Ainsi,
des mots comme Skype et SKYPE sont comptés ensemble. Les variations de casse sont
courantes (iPhone, iphone ou encore IPHONE) et la normalisation de la casse est une
étape obligatoire.
• Plusieurs mots ont ensuite été racinisés : leurs suffixes ont été supprimés. Ainsi, les verbes
announces, announced et announcing sont maintenant représentés par un seul terme :
« announc ». Par ailleurs, les pluriels des noms sont comptés avec leur singulier : directors
devient « director » dans la liste.
• Enfin, les stopwords ont été supprimés. Il s’agit des mots les plus courants d’une langue.
Par exemple, le, et, de et sur sont considérés comme des stopwords en français et sont sou-

1704
vent supprimés.
Vous remarquerez par ailleurs que $8.5 a également été supprimé. Pourquoi ? Parce que les

3947
nombres sont souvent considérés comme des détails sans importance pour le traitement d’un
texte, mais cette décision dépend de l’objectif final de l’application. On peut aisément ima-

5:16
giner des contextes où 4TB et 1Q13 seraient sans aucune signification, et d’autres dans les-
quels ils seraient essentiels.

REMARQUE Suppression irréfléchie des stopwords


.63.4
.121
En guise d’avertissement, disons que l’élimination des stopwords n’est pas toujours pertinente. Dans les
titres, par exemple, les mots courants peuvent être négligeables. La route, de McCarthy, qui raconte l’his-
:196

toire d’un père et de son fils tentant de survivre dans un monde post-apocalyptique, est différent de Sur
la route, le célèbre roman de Jack Kerouac. Après suppression des stopwords, les représentations de ces
2
6149

documents seraient identiques. Il en va de même pour le film Stoker, qui pourrait être confondu avec The
Stoker, la comédie datant de 1935a.
:888

a. Ces deux exemples sont apparus récemment dans les résultats de recherche d’un site de critique de films du très célè-
bre moteur de recherche. L’élimination des stopwords est parfois inconsidérée.
1051

Le tableau 10-3 contient les fréquences brutes des termes. Ces dernières sont parfois normali-
1064

sées par la longueur des documents. La fréquence des mots représente leur pertinence dans les
différents documents où ils apparaissent. Les documents longs contiennent bien évidemment
e:21

plus de mots, et donc plus d’occurrences, que les documents courts. Mais cela ne signifie pas
nécessairement que le document long est plus important ou plus pertinent que le document
:Non

court. Pour prendre en compte la longueur des documents, les fréquences brutes des mots sont
donc normalisées, par exemple en les divisant par le nombre total de mots dans le document.
x.com

Mesurer la dispersion des données : fréquence inverse de document (TF-IDF)


larvo

La fréquence d’un terme permet ainsi de mesurer sa prévalence dans un document. Cette fré-
quence peut aussi être pondérée par la fréquence de ce terme dans le corpus complet que nous
scho

traitons. Deux problèmes complètement opposés sont à prendre en compte.


univ.
Représentation et exploration de textes
247
CHAPITRE 10

Tout d’abord, un terme ne doit pas être trop rare. Imaginez, par exemple, qu’un mot peu courant
comme « préhensile » apparaît dans un seul document de notre corpus. Ce mot est-il important ?
Cela dépend du problème à résoudre. En extraction d’information, il peut être important si l’uti-
lisateur recherche exactement ce mot. En partitionnement, un terme qui n’a qu’une seule occur-
rence est inutile, aucun cluster significatif ne pouvant être créé à partir de ce mot. Les systèmes
de prétraitement des textes imposent généralement un seuil (arbitraire) d’occurrence déterminant
le nombre minimal de documents dans lesquels un mot doit apparaître.
Le problème opposé est celui des mots trop courants. Les termes qui apparaissent dans tous
les documents sont inutiles pour la classification (ils ne sont pas discriminatifs) et pour le
clustering (le corpus entier serait regroupé dans un cluster).
Les termes trop fréquents sont généralement supprimés. Pour cela, on fixe un seuil maximal déter-
minant le nombre (ou la proportion) de documents dans lesquels un document peut apparaître.

1704
En plus des seuils minimal et maximal de fréquence d’occurrence, la distribution des mots dans
le corpus complet est également prise en compte. Un terme qui est employé dans peu de docu-

3947
ments est plus significatif. La dispersion d’un terme t est couramment mesurée à l’aide de
l’équation 10-1, appelée « fréquence inverse de document » (IDF, en anglais Inverse Document

5:16
Frequency).
Équation 10–1 Fréquence inverse de document (IDF) d’un mot

.63.4
Nombre total de documents
IDF ( t ) = 1 + log ⎛ -----------------------------------------------------------------------------------⎞
⎝ Nombre de documents contenant t ⎠
.121
L’IDF peut être considéré comme un coup de pouce pour les termes les moins courants. La
:196

figure 10-1 représente une courbe de IDF(t) comme une fonction du nombre de documents
dans lesquels t apparaît, dans un corpus de 100 documents. Comme vous pouvez le voir,
2

l’IDF des termes les plus rares (tout à gauche) est assez élevé. Il diminue rapidement à mesure
6149

que t devient plus courant et devient asymptote à 1. Du fait de leur prévalence, la majorité des
stopwords ont un IDF proche de 1.
:888

Figure 10–1
1051

IDF d’un terme t dans un corpus


de 100 documents
1064
e:21
IDF(t)

:Non
x.com
larvo
scho

Nombre de documents contenant le terme t


univ.
Data science pour l’entreprise
248

Combiner les deux : TF-IDF


La représentation la plus couramment utilisée est le produit de Term Frequency (TF) et
Inverse Document Frequency (IDF), appelée TF-IDF. Le TF-IDF d’un terme t dans un
document d donné est donc :
TF-IDF(t, d) = TF(t, d) • IDF(t)
Vous remarquerez que la valeur de TF-IDF est spécifique à un document d, alors que l’IDF
dépend du corpus complet. Les systèmes s’appuyant sur une représentation en sacs de mots
impliquent souvent des étapes préalables de racinisation et de suppression des stopwords
avant de calculer les fréquences des termes. Le TF représente donc la fréquence des termes
dans chaque document, alors que l’IDF représente leur fréquence dans le corpus complet.
Chaque document est représenté comme un vecteur de caractéristiques, et le corpus est un

1704
ensemble de vecteurs de caractéristiques qui peut ensuite être traité par un algorithme de
classification, de clustering ou d’extraction d’information.

3947
Comme il existe un nombre considérable de mots pouvant être utilisés dans les représenta-
tions des textes, l’étape de sélection des attributs est souvent incontournable. L’approche uti-

5:16
lisée dépend des applications, que ce soit des seuils minimal et maximal de fréquence d’occur-
rence des mots, et/ou une mesure plus complexe comme le gain d’information2 qui permet

.63.4
d’éliminer les mots les moins informatifs.
Dans une représentation en sacs de mots, chaque mot d’un document est considéré comme
.121
un mot-clé (attribut) potentiel, indépendant de ce document, puis chaque document est
associé à une valeur représentant sa fréquence ou sa rareté. Le TF-IDF est très couramment
:196

utilisé comme valeur des mots, mais il n’est pas toujours optimal. L’exploration d’un corpus
de textes représentés comme des sacs de mots signifie que chaque mot est considéré comme
2
6149

un attribut. Les valeurs des mots peuvent être binaires, les fréquences des termes ou leur TF-
IDF, avec ou sans normalisation. Le data scientist doit faire appel à son intuition pour appré-
:888

hender un problème textuel particulier, mais le plus souvent, plusieurs représentations sont
testées pour choisir celle qui permet d’obtenir les meilleurs résultats.
1051

Exemple : les musiciens de jazz


1064
e:21

Pour illustrer ces concepts de base, nous utilisons un exemple concret : la description de musi-
ciens de jazz. Plus précisément, nous étudions un petit corpus de 15 musiciens de jazz célè-
:Non

bres composé d’extraits de leur biographie dans Wikipédia.


• Charlie Parker
x.com

« Charles “Charlie” Parker, Jr., was an American jazz saxophonist and composer. Miles Davis once
said, “ You can tell the history of jazz in four words: Louis Armstrong. Charlie Parker.” Parker
larvo

acquired the nickname “ Yardbird” early in his career and the shortened form, “Bird,” which conti-
nued to be used for the rest of his life, inspired the titles of a number of Parker compositions, […] »
scho

2. Voir « Exemple : sélection d’attributs avec le gain d’information » du chapitre 3, page 63.
univ.
Représentation et exploration de textes
249
CHAPITRE 10

• Duke Ellington
« Edward Kennedy “Duke” Ellington was an American composer, pianist, and bigband leader.
Ellington wrote over 1,000 compositions. In the opinion of Bob Blumenthal of The Boston Globe,
“in the century since his birth, there has been no greater composer, American or otherwise, than
Edward Kennedy Ellington.” A major figure in the history of jazz, Ellington’s music stretched into
various other genres, including blues, gospel, film scores, popular, and classical. […] »
• Miles Davis
« Miles Dewey Davis III was an American jazz musician, trumpeter, bandleader, and composer.
Widely considered one of the most influential musicians of the 20th century, Miles Davis was, with
his musical groups, at the forefront of several major developments in jazz music, including bebop,
cool jazz, hard bop, modal jazz, and jazz fusion. […] »
Même avec ce petit corpus de quinze documents, le corpus et son vocabulaire sont trop longs

1704
pour être détaillés ici (environ 2 000 attributs après racinisation et suppression des stop-
words). Nous ne pouvons donc en présenter qu’un petit échantillon. Prenons la phrase

3947
suivante : « Famous jazz saxophonist born in Kansas who played bebop and latin. » Cette phrase
pourrait être une requête dans un moteur de recherche. Comment serait-elle alors

5:16
représentée ? Elle serait traitée comme tout autre document, et donc soumise aux mêmes
étapes de prétraitement.

.63.4
Une simple racinisation est tout d’abord appliquée. Les méthodes de racinisation ne sont pas
toujours optimales et peuvent produire des racines telles que kanza ou famou à partir de
.121
« Kansas » et « famous ». Mais la correction de ces erreurs est inutile tant qu’elles sont cohé-
rentes dans tous les documents. Le résultat des prétraitements est présenté à la figure 10-2.
:1962

Figure 10–2 Valeurs des termes – stopwords inclus


6149

Représentation de la requête 1,0


« Famous jazz saxophonist born
in Kansas who played bebop
:888

and latin » après racinisation


0,8
1051
1064

0,6
valeur

e:21

0,4
:Non

0,2
x.com
larvo

0,0
scho
univ.
Data science pour l’entreprise
250

Les stopwords (in et and) sont ensuite supprimés, et les mots sont normalisés par la longueur
du document. Le résultat est présenté à la figure 10-3.

Figure 10–3 Valeurs des termes – simple fréquence des termes


Représentation de la requête 1,0
« Famous jazz saxophonist born
in Kansas who played bebop
and latin » après suppression
des stopwords et normalisation 0,8
des fréquences des termes

0,6
valeur

1704
0,4

3947
0,2

5:16
.63.4
0,0
.121
:196

À ce stade, les valeurs obtenues peuvent être considérées comme les valeurs typiques de la fré-
quence du terme. Au lieu de cela, nous générons une représentation par TF-IDF en multi-
2

pliant la valeur TF de chaque terme par la valeur de son IDF. Comme nous l’avons vu précé-
6149

demment, les mots les plus rares sont ainsi favorisés.


:888

Les mots jazz et play sont très courants dans ce corpus de biographies, leur poids n’est donc
pas favorisé par leur IDF. Ils se rapprochent même des stopwords, dans ce corpus.
1051

Les mots dont le TF-IDF est le plus élevé (latin, famous et kansas) sont les plus rares dans
le corpus. Ils ont donc les poids les plus forts dans la requête. Enfin, les termes sont à nou-
1064

veau normalisés pour obtenir leurs poids TF-IDF finaux, présentés à la figure 10-4. Le
résultat est le vecteur d’attributs représentant cet exemple de document (la requête).
e:21

Nous disposons maintenant d’une représentation pour ce court document que nous pouvons
utiliser en text mining. Nous avons vu au chapitre 6 comment extraire les plus proches voisins
:Non

à l’aide d’une métrique de distance. Nous avions alors utilisé cette technique pour extraire les
whiskies les plus similaires. Nous allons faire exactement la même chose ici. Imaginons que
x.com

l’exemple de phrase « Famous jazz saxophonist born in Kansas who played bebop and latin. »
est une requête de recherche entrée par un utilisateur et que nous voulons développer un
larvo

moteur de recherche simple. Comment ferions-nous ? Nous commencerions par traduire la


requête en une représentation TF-IDF (figure 10-4). Nous avons déjà créé les représenta-
scho

tions TF-IDF des biographies des musiciens de jazz. Il ne nous reste plus qu’à calculer la
similarité entre notre requête et chacune des biographies, puis à sélectionner la plus proche !
univ.
Représentation et exploration de textes
251
CHAPITRE 10

Figure 10–4
Représentation TF-IDF finale de la Valeurs des termes – TF-IDF
1,0
requête « Famous jazz saxophonist
born in Kansas who played bebop
and latin »
0,8

0,6

valeur 0,4

1704
0,2

3947
0,0

5:16
.63.4
Pour les calculs de similarité, nous utilisons la métrique du cosinus (équation 6-5) que nous
.121
avons vue à la section « * Autres fonctions de distance » du chapitre 6, page 156. Le cosinus
est couramment utilisé en classification de textes pour mesurer les distances entre documents.
:196

Tableau 10–4 Les similarités entre les biographies des musiciens et la requête « Famous jazz saxophonist
2
6149

born in Kansas who played bebop and latin », triées par ordre décroissant
Musicien Similarité Musicien Similarité
:888

Charlie Parker 0,135 Count Basie 0,119


Dizzy Gillepsie 0,086 John Coltrane 0,079
1051

Art Tatum 0,050 Miles Davis 0,050


Clark Terry 0,047 Sun Ra 0,030
1064

Dave Brubeck 0,027 Nina Simone 0,026


Thelonius Monk 0,025 Fats Waller 0,020
e:21

Charles Mingus 0,019 Duke Ellington 0,017


Benny Goodman 0,016 Louis Armstrong 0,012
:Non

Comme vous pouvez le voir, le document le plus similaire est Charlie Parker, qui est effecti-
x.com

vement un saxophoniste né dans le Kansas et qui jouait d’un style de jazz appelé bebop, qu’il
combinait parfois avec d’autres genres musicaux, tels que la musique latine. Ces faits sont
larvo

mentionnés dans sa biographie.


scho
univ.
Data science pour l’entreprise
252

* La relation entre IDF et entropie


ATTENTION Détails techniques
À la section « Sélection d’attributs informatifs » du chapitre 3, page 57, au début de notre propos sur la
modélisation prédictive, nous avons introduit la mesure de l’entropie. Les lecteurs curieux (et qui ont la
mémoire longue) ont peut-être remarqué que la fréquence inverse de document et l’entropie sont
similaires : elles mesurent toutes les deux la variabilité d’un ensemble par rapport à une certaine pro-
priété. Ces deux mesures sont-elles liées ? Sont-elles identiques ? Non, elles ne sont pas identiques, mais
elles sont liées, comme nous le montrerons dans cette section. Si cette section ne vous intéresse pas par-
ticulièrement, vous pouvez passer à la suite directement.

Les graphiques de la figure 10-5 représentent les deux équations en question. Pour com-

1704
mencer, considérons un terme t dans un ensemble de documents. Quelle est la probabilité
que ce terme apparaisse dans un ensemble de documents ? Nous pouvons la calculer ainsi :

3947
Nombre de documents t -
( t ) = -----------------------------------------------------------------
Nombre total de documents

5:16
Pour simplifier les choses, à partir de maintenant, nous désignerons (t) comme p. Comme
nous l’avons vu, l’IDF d’un terme t est défini ainsi :

.63.4
Nombre total de documents
IDF ( t ) = 1 + log ⎛⎝ ------------------------------------------------------------------⎞⎠
Nombre de documents t
.121

Le 1 est une constante que nous pouvons ignorer. IDF(t) est donc tout simplement log(1/p).
:196

Et de vos cours d’algèbre, vous savez peut-être que log(1/p) est égal à –log(p).
Considérons maintenant l’ensemble de documents du point de vue d’un terme t. Chaque docu-
2
6149

ment contient t (avec la probabilité p) ou ne le contient pas (avec la probabilité 1–p). Créons un
pseudo terme représentant l’inverse de t, non_t, qui par définition apparaît dans tous les docu-
:888

ments où t n’apparaît pas. Quelle est la valeur de l’IDF de ce nouveau terme ? C’est :
IDF(non_t) = log 1 / (1–p) = –log(1–p)
1051

Dans le graphique en haut à gauche de la figure 10-5, les deux courbes sont symétriques,
comme nous pouvions nous y attendre. Selon la définition de l’entropie de l’équation 3-1
1064

(page 59), pour un terme à valeur binaire où p2 = 1–p1, l’entropie devient :


entropy = –p1log(p1) – p2log(p2)
e:21

En l’occurrence, nous avons un terme binaire t qui apparaît (avec une probabilité p) ou
:Non

n’apparaît pas (avec probabilité 1–p) dans un document. Par conséquent, l’entropie d’un
ensemble partitionné par t est :
x.com

entropy(t) = –plog(p) – (1–p)log(1–p)


larvo
scho
univ.
Représentation et exploration de textes
253
CHAPITRE 10

Figure 10–5  
IDF(t) IDF(t) – IDF(non_t)
Graphiques de différentes valeurs
IDF(non_t) S‡>,') W ±,') QRQBW @
de IDF(t) et IDF(non_t)

5

-5


 
           

1704


3947


5:16


.63.4

.121

:196

S‡,') W  ±S ‡,') QRQBW



     
2
6149

En nous basant sur nos définitions d’IDF(t) et d’IDF(non_t), nous pouvons substituer et
simplifier (à titre de référence, plusieurs de ces sous-expressions sont représentées dans le gra-
:888

phique en haut à droite de la figure 10-5).


entropy(t) = –plog(p) – (1–p)log(1–p)
1051

= p • IDF(t) – (1–p)[–IDF(non_t)]
1064

= p • IDF(t) + (1–p)[IDF(non_t)]
Vous aurez peut-être remarqué que cette équation ressemble maintenant au calcul de la valeur
e:21

attendue ! L’entropie peut être formulée comme la valeur attendue d’IDF(t) et d’IDF(non_t),
basée sur la probabilité de son occurrence dans le corpus complet. Le graphique en bas à
:Non

gauche de la figure 10-5 ressemble en effet à la courbe d’entropie de la figure 3-3, page 59.
x.com

Au-delà des sacs de mots


larvo

La méthode des sacs des mots est relativement simple et a beaucoup d’avantages. Elle ne
nécessite aucune analyse grammaticale complexe ou autre analyse linguistique. Étonnam-
scho

ment, elle permet d’obtenir des résultats relativement bons, et constitue par conséquent le
premier choix pour tout data scientist qui est confronté à un problème de text mining.
univ.
Data science pour l’entreprise
254

Il existe cependant des problèmes pour lesquels la représentation par sacs de mots est insuffi-
sante, et qui nécessitent donc des techniques plus complexes. Dans les sous-sections sui-
vantes, nous en présentons brièvement quelques-unes.

Les séquences de n-grammes


Comme nous l’avons vu, la représentation par sacs de mots considère chaque mot comme un
terme et ignore complètement l’ordre des mots. Ce dernier est cependant important dans cer-
tains cas et doit donc être pris en compte dans la représentation des données. Le niveau de com-
plexité supérieur consiste à inclure des séquences de mots adjacents qui sont alors considérés
comme des termes. Nous pourrions par exemple utiliser des paires de mots adjacents, et le
document « The quick brown fox jumps. » serait représenté par l’ensemble de ses composantes
{quick, brown, fox, jumps} ainsi que par les tokens quick_brown, brown_fox et fox_jumps.

1704
C’est ce qu’on appelle l’approche n-grammes, et les paires de mots adjacents sont des bi-
grammes. Si un data scientist vous parle de la représentation d’un texte sous forme d’un « sac

3947
de n-grammes contenant jusqu’à trois éléments », vous comprendrez tout simplement que la
représentation de chaque document est composée des mots individuels, des paires de mots

5:16
adjacents et des triplets de mots adjacents.

.63.4
Les n-grammes sont utiles lorsque des expressions particulières sont plus significatives que les
mots qui les composent. Dans un article économique, l’apparition du tri-gramme
.121
exceed_analyst_expectation est plus significative que les mots analyst, expectation et
exceed apparaissant de manière isolée. Les n-grammes ont l’avantage d’être faciles à générer ;
:196

ils ne nécessitent aucune connaissance linguistique ou algorithme complexe d’analyse gram-


maticale.
2
6149

Cependant, leur principal inconvénient est qu’ils augmentent considérablement le nombre


d’attributs. Les paires et les triplets de mots adjacents sont très nombreux. Le nombre d’attri-
buts peut vite devenir incontrôlable, avec beaucoup d’attributs très rares qui n’apparaissent
:888

parfois qu’une seule fois dans le corpus. Les projets de data mining utilisant une représenta-
1051

tion en n-grammes impliquent toujours une étape de réduction du nombre d’attributs, telle
que la sélection d’attributs ou l’utilisation d’espaces de stockage spécifiques.
1064

L’extraction d’entités nommées


e:21

Certaines applications nécessitent des traitements encore plus complexes pour l’extraction
:Non

d’expressions. C’est le cas par exemple de la reconnaissance d’entités nommées dans les docu-
ments. Silicon Valley, New York Mets, Department of Interior et Game of Thrones sont des exem-
x.com

ples de syntagmes significatifs. Utilisés isolément, les mots qui les composent ont un sens dif-
férent. Mais utilisés en séquence, ils désignent des entités uniques dont l’identité peut être le
sujet de l’étude. La représentation en sacs de mots (voire en n-grammes) ne permet souvent
larvo

pas de prendre en compte ces expressions. Or, nous avons besoin d’un outil de prétraitement
qui soit capable de reconnaître ce type de séquence comme des noms propres.
scho

La majorité des paquetages de traitement de textes contiennent un extracteur d’entités nom-


mées. En général, ces outils sont capables de traiter des textes bruts et d’en extraire des
univ.
Représentation et exploration de textes
255
CHAPITRE 10

expressions qui sont alors étiquetées avec des termes tels que personne ou organisation. Une
étape de normalisation est parfois appliquée préalablement, afin que des expressions telles
que « HP », « H-P » et « Hewlett-Packard » soient toutes représentées par un même attribut
désignant l’entreprise Hewlett-Packard.
À la différence des sacs de mots et des n-grammes, qui reposent sur une segmentation des textes
basée sur les espaces et les ponctuations, les extracteurs d’entités nommées nécessitent des
connaissances plus avancées. Pour produire des résultats satisfaisants, ils sont soit entraînés sur
de larges corpus, soit encodés manuellement par des personnes possédant des connaissances
larges en matière d’entités nommées. En effet, aucun principe linguistique ne stipule que
l’expression « oakland raiders » désigne l’équipe de football professionnel des Oakland Raiders,
et non un groupe d’investisseurs agressifs de Californie. Ce sont des connaissances qui doivent
être apprises à partir d’un corpus ou encodées manuellement. La qualité de la reconnaissance
des entités nommées peut varier et certains outils peuvent être spécialisés dans des domaines

1704
spécifiques tels que l’industrie, les sciences politiques ou la culture populaire.

3947
Les modèles thématiques

5:16
Jusqu’ici, nous avons traité de modèles créés directement à partir des mots (ou entités nom-
mées) qui sont employés dans un document. Les modèles ainsi créés, quels qu’ils soient,

.63.4
représentent directement des mots. L’apprentissage de modèles aussi simples est relativement
efficace, mais pas toujours optimale. La complexité du langage et des documents requiert une
.121
couche de traitement supplémentaire pour passer du document au modèle. Dans le cas de
textes, c’est ce que l’on appelle la couche thématique (figure 10-6).
:1962

Figure 10–6 « Guerre de Corée », article de


6149

Modélisation des documents avec Wikipédia, l’encyclopédie libre


une couche thématique
Document
:888
1051

Corée Conflits armés


1064

Thèmes
e:21
:Non

Mots
x.com
larvo
scho
univ.
Data science pour l’entreprise
256

L’objectif principal de la couche thématique est avant tout de modéliser séparément l’ensemble
des thèmes d’un corpus. Comme précédemment, chaque document est une séquence de mots,
mais au lieu que les mots soient directement utilisés dans le classifieur final, ils sont associés à
un ou plusieurs thèmes. Les thèmes sont également appris à partir des données (souvent via
data mining non supervisé). Le classifieur final est construit à partir de ces thèmes intermé-
diaires et non à partir des mots simples. L’avantage de cette approche est que dans un moteur de
recherche, par exemple, une requête peut contenir des termes qui ne correspondent pas exacte-
ment aux mots d’un document. Mais s’ils correspondent au(x) thème(s) recherché(s), le docu-
ment sera tout de même considéré comme pertinent pour cette requête.
Les méthodes les plus courantes de création de modèles thématiques incluent des méthodes
de factorisation de matrices, telles que l’indexation sémantique latente, et des modèles thé-
matiques probabilistes, tels que l’allocation latente de Dirichlet. Les détails mathématiques
de ce sujet dépassent la portée de ce livre, mais vous pouvez considérer la couche thématique

1704
comme un clustering de mots. En modélisation thématique, les termes associés au thème et
tous les poids des termes sont appris par un système de modélisation thématique. Comme des

3947
clusters, les thèmes sont signalés par des régularités statistiques dans les données. Ils ne sont
donc pas toujours compréhensibles, et même s’ils ne correspondent pas le plus souvent à des

5:16
thèmes familiers, ce n’est pas toujours le cas.

.63.4
REMARQUE Les thèmes comme information latente
.121
Les modèles thématiques sont un type de modèle d’informations latentes, sujet que nous approfondirons
un peu davantage au chapitre 12 (avec un exemple de recommandation de films). Les informations latentes
:196

constituent une couche intermédiaire et non observable d’informations qui se situent entre les entrées et les
sorties. Les techniques utilisées pour découvrir des thèmes latents dans des textes sont les mêmes que cel-
2

les qui servent à rechercher des dimensions latentes de goûts des amateurs de films. Dans le cas des textes,
6149

les mots caractérisent des thèmes (non observables) et les thèmes caractérisent des documents. Un tel
modèle est donc plus complexe et plus coûteux en termes d’apprentissage, mais peut conduire à des perfor-
:888

mances supérieures. En outre, les informations latentes sont souvent intéressantes et utiles en elles-mêmes
(comme nous le verrons dans notre exemple de recommandation de films au chapitre 12).
1051
1064

Exemple : exploration des actualités pour prédire


le cours des actions
e:21
:Non

Pour illustrer certains des problèmes spécifiques au text mining, nous introduisons ici un
nouvel exemple de modélisation prédictive : nous allons tenter de prédire les fluctuations du
x.com

cours des actions à partir du contenu d’articles d’actualité. Nous allons donc prédire la bourse
en nous basant sur les articles publiés par les agences de presse. Ce projet implique plusieurs
éléments communs au traitement des textes et à la formulation des problèmes.
larvo
scho
univ.
Représentation et exploration de textes
257
CHAPITRE 10

L’objectif
Chaque jour de bourse apporte son lot d’activités boursières (fusions, nouveaux produits, pro-
jections financières, etc.) qui sont rapportées par les médias financiers. Les investisseurs, en
prenant connaissance de ces actualités, peuvent changer d’avis au sujet du potentiel des entre-
prises concernées et vendre des actions en conséquence. En résultent des changements dans le
cours des actions. Par exemple, les annonces d’acquisition, de profits, de modifications régle-
mentaires, etc., peuvent affecter le prix des actions. En effet, soit ils impactent directement
les profits potentiels, soit ils influencent les avis des traders sur le fait que d’autres traders
seraient prêts à payer pour les actions en question.
Il s’agit là d’un aperçu très simplifié des marchés financiers, bien sûr, mais cette présentation
est suffisante pour une tâche aussi simple. Notre objectif est de prédire les fluctuations du
cours des actions à partir des actualités financières. En fonction de l’objectif final, le problème

1704
pourrait être traité de différentes manières. Si, par exemple, nous voulons faire des échanges
en nous basant sur les actualités financières, l’idéal serait de prédire – avec précision – les fluc-

3947
tuations dans le cours des actions d’une entreprise, en fonction des informations trouvées
dans la presse. En réalité, les fluctuations du cours des actions sont dues à des facteurs très

5:16
complexes dont la plupart ne sont pas relayés dans les actualités.
Notre objectif ici, est un peu plus modeste : nous explorons les fils d’actualités à la recherche

.63.4
de recommandations financières. De ce point de vue, un énorme flux d’actualités des marchés
est publié, dont certaines sont intéressantes, d’autres moins. Nous voulons utiliser le text
.121
mining pour savoir lesquelles doivent retenir notre attention. Mais qu’est-ce qu’une actualité
intéressante ? Nous la définissons ici comme une information qui conduira probablement à un
:196

changement significatif du cours des actions.


2

Pour rendre le problème plus accessible, nous devons le simplifier un peu plus (cet exemple
6149

illustre d’ailleurs aussi bien la question de la formulation du problème que celui du text
mining). Voici quelques problèmes et leurs hypothèses simplificatrices :
:888

1 Prédire les effets des actualités est difficile. Les actions sont tellement nombreuses que les
nouvelles arrivent souvent et les marchés y répondent très vite. Prédire une semaine à
1051

l’avance le prix d’une action à partir d’un article publié aujourd’hui est, par exemple, irréa-
lisable. Nous tenterons donc de prédire l’effet qu’un article d’actualité aura le jour de sa
1064

publication.
2 Prédire exactement le prix d’une action est quasiment impossible. Nous nous contenterons
e:21

donc de la direction dans laquelle ce prix peut évoluer : augmenter, diminuer ou rester
inchangé. Et nous simplifierons même cela en distinguant seulement changé et inchangé.
:Non

Cela devrait suffire pour notre exemple d’application : recommander un article d’actualité s’il
semble pouvoir provoquer, ou indiquer, un changement conséquent dans le cours des actions.
x.com

3 Les fluctuations minimes du cours des actions sont plus difficiles à prédire que les fluctua-
tions relativement importantes. Moins d’événements seront rapportés mais les informations
larvo

seront plus claires. Nous ignorerons délibérément les subtilités des petites fluctuations.
4 Associer un article d’actualité spécifique avec un changement précis dans le cours des
scho

actions est trop compliqué. En théorie, n’importe quelle actualité peut affecter n’importe
univ.
Data science pour l’entreprise
258

quelle action. Si nous acceptons cette idée, un gros problème se poserait dans le domaine
des attributions de crédits : comment déterminer lesquelles des milliers d’actualités du
jour sont pertinentes ? Nous devons réduire le rayon causal.
Nous supposerons donc que seuls les articles d’actualité mentionnant une action spécifique
sont susceptibles d’affecter le cours de cette action. Cette hypothèse est inexacte, bien
évidemment : les entreprises sont influencées par les actions de leurs concurrents, de leurs
consommateurs et de leurs clients, et il arrive rarement qu’un article les mentionne tous. Mais
pour un premier test, cette hypothèse simplificatrice est acceptable.
Certains points restent encore à préciser. Pour le problème n° 3 par exemple : qu’est-ce qu’une
fluctuation relativement importante ? Nous pouvons (un peu arbitrairement) fixer un seuil de
5 %. Si le cours d’une action augmente de 5 % ou plus, nous considérerons cela comme une
flambée. Et à l’inverse, s’il diminue de 5 %, nous considérerons cela comme une chute. Mais

1704
qu’en est-il d’un changement dans le cours d’une action qui se situerait entre ces deux seuils ?
Nous pourrions le considérer comme un changement stable, mais ce serait trop imprécis, car un

3947
changement de 4,9 % et un changement de 5 % devraient être comptés dans la même classe.
Nous créons donc des zones grises afin d’obtenir des classes plus distinctes (figure 10-7). Seuls
les cours des actions qui changent de –2,5 % à +2,5 % seront considérés comme stables. Et pour

5:16
les changements entre 2,5 et 5 % et entre –2,5 et –5 %, nous ne les étiquetterons pas.

.63.4
Figure 10–7
Pourcentages de fluctuation des
.121
prix et étiquettes correspondantes
Flambée
:196

+5%
Indéterminé
2
6149

+2,5%
:888

0% Stable
1051
1064

-2,5%
Indéterminé
e:21

-5%
Chute
:Non
x.com

Pour notre exemple, nous créons un problème à deux classes en fusionnant la flambée et la
larvo

chute dans une seule classe, change, qui sera notre classe positive. Et stable (no change) sera
notre classe négative.
scho
univ.
Représentation et exploration de textes
259
CHAPITRE 10

Les données
Les données utilisées sont composées de deux séries temporelles : le flux d’actualités (des
documents textuels) et les fluctuations quotidiennes du cours des actions correspondantes. Le
Web contient de nombreuses sources de données financières, telles que Google Finance et
Yahoo! Finance. Pour prendre connaissance des actualités d’Apple Computer Inc., par
exemple, il suffit de consulter la page Yahoo! Finance dédiée (http://finance.yahoo.com/
q?s=AAPL). Yahoo! récolte des articles d’actualité de diverses sources telles que Reuters, PR
Web et Forbes. L’historique du cours des actions peut être extrait de différentes sources, telles
que Google Finance (https://www.google.com/finance).
Les données de notre problème sont des données historiques datant de 1999 et concernent des
actions listées à la Bourse de New York et au marché du NASDAQ. Ces données ont précédem-
ment servi pour l’étude de (Fawcett et Provost, 1999). Elles contiennent les prix d’ouverture et de

1704
fermeture des actions sur les principales bourses, ainsi qu’un large corpus de nouvelles financières
qui s’étalent sur l’année – environ 36 000 articles au total. Voici un échantillon du corpus :

3947
1999-03-30 14:45:00

5:16
WALTHAM, Mass.--(BUSINESS WIRE)--March 30, 1999--Summit Technology, Inc.
(NASDAQ:BEAM) and Autonomous Technologies Corporation (NASDAQ:ATCI)

.63.4
announced today that the Joint Proxy/Prospectus for Summit's acquisition of
Autonomous has been declared effective by the Securities and Exchange
Commission. Copies of the document have been mailed to stockholders of both
.121
companies. "We are pleased that these proxy materials have been declared
effective and look forward to the shareholder meetings scheduled for April
:196

29," said Robert Palmisano, Summit's Chief Executive Officer.


2

Comme c’est souvent le cas dans les documents textuels, ceux de notre corpus contiennent beau-
6149

coup d’informations diverses destinées aux lecteurs humains mais pas à l’analyse automatique (voir
encadré page suivante « Les nouvelles sont bruitées » pour plus de détails). Cet article contient par
:888

exemple la date et l’heure, la source de l’information (Reuters), des symboles boursiers et des liens
(NASDAQ:BEAM), ainsi que des informations contextuelles qui ne sont pas très pertinentes
1051

pour l’information recherchée. Chaque article a été étiqueté avec l’action qu’il mentionne.
1 Summit Tech announces revenues for the three months ended Dec 31, 1998 were
1064

$22.4 million, an increase of 13%.


2 Summit Tech and Autonomous Technologies Corporation announce that the Joint Proxy/
e:21

Prospectus for Summit’s acquisition of Autonomous has been declared effective by the SEC.
3 Summit Tech said that its procedure volume reached new levels in the first quarter and
:Non

that it had concluded its acquisition of Autonomous Technologies Corporation.


x.com

4 Announcement of annual shareholders meeting.


5 Summit Tech announces it has filed a registration statement with the SEC to sell
4,000,000 shares of its common stock.
larvo

6 A US FDA panel backs the use of a Summit Tech laser in LASIK procedures to correct
nearsightedness with or without astigmatism.
scho

7 Summit up 1-1/8 at 27-3/8.


univ.
Data science pour l’entreprise
260

Figure 10–8 Prix du jour de BEAM


Graphique du cours des actions
de Summit Technologies Inc.,
(NASDAQ:BEAM) annoté avec
des résumés d’articles d’actualité

Prix

1704
Date

3947
8 Summit Tech said today that its revenues for the three months ended June 30, 1999
increased 14%…

5:16
9 Summit Tech announces the public offering of 3,500,000 shares of its common stock pri-
ced at $16/share.

.63.4
10 Summit announces an agreement with Sterling Vision, Inc. for the purchase of up to six
of Summit’s state of the art, Apex Plus Laser Systems. .121
11 Preferred Capital Markets, Inc. initiates coverage of Summit Technology Inc. with a
Strong Buy rating and a 12-16 month price target of $22.50.
:1962

Les nouvelles sont bruitées


6149

Le corpus financier est en réalité beaucoup plus compliqué que cet exemple, pour diverses raisons.
:888

Tout d’abord, les actualités financières englobent une grande variété d’informations, dont des annonces de
profit, des estimations d’analystes (« We are reiterating our Buy rating on Apple »), des commentaires des
marchés (« Other stocks featured in this morning’s Market Movers include Lycos Inc. and Staples Inc. »), des
1051

dépôts à la SEC, des bilans financiers, etc. Les entreprises sont mentionnées dans les articles pour des raisons
très variées et un document (un article) peut contenir de courtes remarques concernant les nouvelles du jour.
1064

De plus, les articles ne sont pas tous au même format : certains sont des tableaux, d’autres contiennent
plusieurs paragraphes « les gros titres du jour », etc. Le sens est principalement révélé par le contexte.
e:21

Nos outils de traitement des textes ne supportent pas tous ces formats.
Enfin, l’étiquetage avec les noms des actions n’est pas parfait et tend à être trop souple, de telle sorte
:Non

que des articles sont inclus dans les nouvelles d’actions qu’ils ne mentionnent même pas. Par exemple,
un cas extrême, la blogueuse américaine Perez Hilton utilise l’expression « cray cray » dans le sens de
x.com

« fou » (crazy) ou « dégoûtant » et certains de ses billets de blog ont été inclus dans les nouvelles de
Cray Computer Corporation.
En bref, les associations entre noms d’actions et documents ne sont pas toujours compréhensibles à
larvo

moins de lire attentivement les articles. Une analyse grammaticale avancée (ou au moins une segmenta-
tion des documents) nous permettrait d’éliminer une partie du bruit, mais la représentation en sacs de
mots (et même l’extraction des entités nommées) ne permet pas de le supprimer complètement.
scho
univ.
Représentation et exploration de textes
261
CHAPITRE 10

La figure 10-8 illustre le type de données que nous traitons : deux séries historiques connec-
tées. Le haut de la figure montre une courbe d’évolution du cours des actions de Summit
Technologies Inc., un fabricant de systèmes laser à excimère destinés à un usage en correction
visuelle au laser. Certains points de la courbe sont annotés avec des numéros d’articles à la
date de leur publication. Les résumés de ces articles sont listés en dessous du graphique.

Prétraitement des données


Nous avons donc deux flux de données. Dans le premier, chaque action a un prix d’ouverture
et un prix de fermeture par jour, enregistrés à 9 h 30 et à 16 h, respectivement. À partir de ces
valeurs, nous pouvons aisément calculer leur pourcentage de fluctuation. Une petite compli-
cation apparaît ici. Notre objectif est de déterminer les articles qui influencent substantielle-
ment le cours d’une action. Et beaucoup d’événements ont lieu en dehors des heures de

1704
bourse, et les fluctuations qui ont lieu autour de l’heure d’ouverture de la bourse peuvent être
irrégulières. Nous avons donc décidé d’enregistrer le prix d’ouverture non pas à l’heure

3947
d’ouverture (9 h 30) mais à 10 h, et nous enregistrons également les différences de prix entre
16 h et 10 h. En divisant par le prix de l’action à la fermeture, nous obtenons le pourcentage

5:16
de fluctuation du jour.
Les articles d’actualité nécessitent un peu plus de travail. Ils sont pré-étiquetés avec les noms

.63.4
des actions de manière relativement précise (voir encadré précédent qui détaille les difficultés
de ce problème de text mining). Pratiquement tous les articles contiennent une date (ceux qui
.121
n’en contiennent pas sont supprimés), nous pouvons donc les aligner avec le jour et la période
de négociation correspondants. Afin que les liens entre un article et l’action ou les actions
:196

qu’il peut affecter soient les plus solides possibles, nous supprimons également tous les arti-
2

cles qui contiennent plusieurs noms d’actions. Nous éliminons ainsi un grand nombre d’arti-
6149

cles qui sont en réalité des résumés et des listes d’informations.


Les articles sont décrits à l’aide d’une représentation TF-IDF, pour laquelle nous avons suivi
:888

les étapes décrites à la section « Sacs de mots », page 244. La casse des mots a été normalisée,
puis les mots ont été racinisés et les stopwords supprimés. Nous avons ensuite créé des n-
1051

grammes jusqu’à deux éléments, chaque article est donc décrit par tous les mots individuels
qu’il contient et toutes les paires de termes adjacents.
1064

Nous avons ensuite attribué à chaque article une étiquette (change ou no change) basée sur
les fluctuations du cours des actions auxquelles il est associé (figure 10-7). Nous obtenons
e:21

ainsi environ 16 000 articles étiquetés. 75 % des articles appartiennent à la classe no change,
13 % à la classe flambée et 12 % à la classe chute. Les classes flambée et chute ont été
:Non

fusionnées en une seule classe, change. Ainsi, 25 % d’articles ont provoqué un changement
significatif dans le cours des actions, alors que les 75 % restants ont eu moins d’impact.
x.com
larvo
scho
univ.
Data science pour l’entreprise
262

Résultats
Avant de nous plonger dans les résultats, nous devons faire une petite digression.
Au cours des chapitres précédents (en particulier le chapitre 7), nous avons souligné l’impor-
tance de la définition du problème à résoudre afin que le choix des méthodes d’évaluation se
fasse de manière appropriée. Or, dans cet exemple, nous avons fait l’impasse sur cette étape. Si
l’objectif de notre application était de provoquer des échanges d’actions, nous aurions pu mettre
au point une stratégie de négociation impliquant des seuils, des limites de temps et des coûts de
transaction, et à partir de ces informations nous aurions produit une analyse coût-bénéfice com-
plète3. Mais notre objectif est simplement de pouvoir recommander des articles (nous répon-
dons à la question « Quels articles influencent le plus le cours des actions ? ») et la question reste
ouverte. Nous ne pourrons donc pas calculer de manière précise les coûts et bénéfices de nos
décisions, et les calculs de la valeur attendue et courbes de profit ne sont pas très appropriés ici.

1704
Figure 10–9 Courbes ROC – Classification d’articles d’actualité

3947
1,0
Courbes ROC de l’exemple
de classification des actualités
de la bourse

5:16
0,8

.63.4
Taux de vrais positifs

0,6 .121
:196

0,4
2
6149

Moyenne du classifieur bayésien naïf (aire = 0,75)


0,2
Moyenne arbre (aire = 0,64)
Moyenne régression logistique (aire = 0,75)
:888

Aléatoire
0,0
0,0 0,2 0,4 0,6 0,8 1,0
1051

Taux de faux positifs

Observons plutôt les performances de prédiction, pour voir dans quelle mesure ce problème
1064

peut être résolu. La figure 10-9 représente les courbes de ROC de classifieurs : une régression
logistique, un classifieur bayésien naïf, un arbre de classification et un classifieur aléatoire.
e:21

Ces courbes représentent la moyenne des résultats d’une validation croisée à dix échantillons,
avec change comme classe positive et no change comme classe négative. Plusieurs points sont
:Non

à noter ici. Tout d’abord, les courbes sont très bombées par rapport à la ligne diagonale (du
classifieur aléatoire), et les aires sous la courbe ROC (AUC) sont largement supérieures à 0,5.
x.com

Nous en déduisons que les articles contiennent bien des indicateurs de fluctuation du cours des
actions. Ensuite, les performances des modèles de régression logistique et des modèles bayé-
sien naïfs sont similaires et largement supérieures à celles de l’arbre de classification (Arbre).
larvo
scho

3. Quelques chercheurs ont mené une telle évaluation, en simulant des échanges d’actions et en calculant les retours
sur investissement. Voir, par exemple, les travaux de Schumaker & Chen (2010) sur AZFinText.
univ.
Représentation et exploration de textes
263
CHAPITRE 10

Enfin, les courbes ne contiennent aucune zone de supériorité (ou de déformation) nette. Les
bosses et les creux révèlent parfois des caractéristiques du problème ou des défauts dans la
représentation des données, nous n’en voyons aucun ici.
La figure 10-10 représente les courbes de lift de nos trois classifieurs, calculées également à
partir de la moyenne des résultats d’une validation croisée à dix échantillons. Nous avons
mentionné précédemment qu’un article sur quatre (25 %) est positif (influence significative-
ment le cours d’une action). Chaque courbe représente le lift de la précision4 que nous pour-
rions obtenir si nous utilisions le modèle pour attribuer des scores aux articles et ensuite les
trier. Considérons par exemple le point se situant à x = 0,2, où les lifts des modèles de régres-
sion logistique et des modèles bayésien naïfs sont à environ 2,0. Cela signifie que si nous
trions les articles en fonction de leur score et que nous sélectionnons les premiers 20 %
(x = 0,2), alors le niveau de précision de la prédiction des articles de la classe positive serait
deux fois supérieure (lift de deux) dans ce groupe, par rapport à leur prédiction dans

1704
l’ensemble des articles. Donc, parmi ces premiers 20 %, la moitié des articles sont pertinents.

3947
Figure 10–10 Lift des classifieurs – Classification des actualités financières
Courbes de lift de l’exemple

5:16
Modèle bayésien naïf
de classification des actualités 2,5 Arbre
de la bourse
Régression logistique

.63.4
Aléatoire
2,0
.121

1,5
:196
Lift

1,0
6149
:888

0,5
1051

0,0
0,2 0,4 0,6 0,8 1,0
Proportion d’instances de test (par ordre décroissant de leur score)
1064

Avant de conclure sur cet exemple, examinons quelques termes importants que nous avons pu
extraire. L’objectif de cet exemple n’était pas de créer des règles claires à partir des données,
e:21

mais d’autres études l’ont fait en utilisant le même corpus, telles que Macskassy et al. (2001).
Voici une liste des termes à gain d’information élevé5 fournie par leur étude. Les termes sont
:Non

soit des mots, soit des racines suivies de suffixes entre parenthèses :
x.com
larvo

4. Nous avons vu au chapitre 7 que la précision représente le pourcentage d’exemples positifs parmi ceux qui dépas-
scho

sent le seuil de classification, et que le lift est le taux de tels cas par rapport au nombre attendu.
5. Voir le chapitre 3.
univ.
Data science pour l’entreprise
264

alert(s,ed), architecture, auction(s,ed,ing,eers), average(s,d),


award(s,ed), bond(s), brokerage, climb(ed,s,ing), close(d,s),
comment(ator,ed,ing,s), commerce(s), corporate, crack(s,ed,ing), cumulative,
deal(s), dealing(s), deflect(ed,ing), delays, depart(s,ed), department(s),
design(ers,ing), economy, econtent, edesign, eoperate, esource, event(s),
exchange(s), extens(ion,ive), facilit(y,ies), gain(ed,s,ing), higher,
hit(s), imbalance(s), index, issue(s,d), late(ly), law(s,ful), lead(s,ing),
legal(ity,ly), lose, majority, merg(ing,ed,es), move(s,d), online,
outperform(s,ance,ed), partner(s), payments, percent, pharmaceutical(s),
price(d), primary, recover(ed,s), redirect(ed,ion), stakeholder(s),
stock(s), violat(ing,ion,ors)

La majorité de ces mots suggère des annonces importantes d’actualités, bonnes ou mauvaises,
concernant une entreprise et le prix de ses actions. Certains (econtent, edesign, eoperate) se

1704
réfèrent par ailleurs au Boom Internet des années 1990, période d’extraction de ce corpus,
lorsque le préfixe « e- » était en vogue.

3947
Cet exemple est l’un des plus complexes de ce livre, mais il repose sur une approche relative-
ment simple d’exploration des actualités financières. Ce projet pourrait être approfondi et

5:16
peaufiné de diverses manières. La représentation en sacs de mots est trop simple pour ce type
d’application. La reconnaissance des entités nommées permettrait d’extraire les noms

.63.4
d’entreprises et de personnes impliquées dans les événements. Mieux encore, une analyse évé-
nementielle améliorerait encore plus les résultats, puisque les articles rapportent des événe-
.121
ments et non des faits au sujet des entreprises. Les mots individuels ne permettent pas de dis-
tinguer les acteurs des événements de leur objet, et des modificateurs essentiels tels que not,
:196

despite et expect ne sont pas pris en compte dans les expressions qu’ils modifient. La représen-
tation en sacs de mots est donc inappropriée pour ce type de problème. Enfin, notre calcul
2

des différences de prix des actions ne prenait en compte que les prix d’ouverture et de ferme-
6149

ture quotidiens, et non leurs fluctuations par heure ou même instantanées (à la seconde). Les
marchés sont très réactifs aux actualités, et pour faire des échanges en nous basant sur ces der-
:888

nières, il nous faudrait des dates et heures plus détaillées et fiables, à la fois dans les prix des
actions et dans les articles.
1051
1064
e:21
:Non
x.com
larvo
scho
univ.
Représentation et exploration de textes
265
CHAPITRE 10

Précédentes expériences de prédiction du cours des actions à partir


des actualités financières
La mise en relation des actualités financières avec les activités des marchés a fait l’objet de plusieurs
expériences au cours des quinze dernières années. Nous-mêmes fûmes parmi les premiers à nous y
essayer (Fawcett & Provost, 1999). La plupart de ces expériences ont été publiées en dehors de la littéra-
ture sur le data mining, et la majorité de la communauté du data mining ignore ce problème et les tra-
vaux associés. Nous citons ici quelques articles, pour ceux qui seraient intéressés par le sujet.
Vous pouvez commencer par l’étude de Mittermayer et Knolmayer (2006), même si elle est un peu
ancienne. Vous y trouverez une vue d’ensemble des approches qui ont été testées jusqu’ici.
Les chercheurs traitent souvent le problème comme de la prédiction des cours des actions basée sur les
actualités. Dans ce chapitre, nous avons adopter une stratégie opposée, qui consistait à recommander
des articles d’actualité en fonction de leur potentielle influence sur les marchés boursiers. C’est ce que
Macskassy et al. (2001) appellent du triage d’information.

1704
Les premières expériences s’intéressaient uniquement à l’influence des actualités financières des grands
médias, alors que les travaux les plus récents prennent également en compte les opinions et sentiments

3947
d’autres sources sur Internet, comme les nouvelles de Twitter, les billets de blog et les tendances des
moteurs de recherche. Mao et al. (2011) ont analysé et comparé l’influence de ces sources additionnelles.
Enfin, citons l’article « Legislating Stock Prices » de Cohen, Diether et Malloy (2012), même si ce n’est

5:16
pas du text mining pur. Ces chercheurs ont étudié les liens entre les hommes politiques, la législation et
les entreprises affectées par la législation. Ces trois groupes sont bien évidemment interreliés et

.63.4
s’influencent mutuellement, mais étonnamment, ce lien n’avait pas été exploité par Wall Street. À partir
de données publiques, les chercheurs ont découvert un « impact direct mais non détecté précédemment
.121
sur le cours des actions des entreprises » qu’ils pensent pouvoir exploiter pour faire des échanges renta-
bles. Leur étude suggère donc que d’autres liens restent à découvrir et à exploiter.
:1962
6149

Résumé
:888

Les données que nous utilisons dans les problèmes réels ne sont pas toujours fournies sous la
forme d’une représentation propre en vecteurs de caractéristiques, que les méthodes de data
1051

mining prennent en entrée. Les problèmes réels impliquent souvent une étape de prétraite-
ment des données afin de pouvoir les exploiter. La stratégie la plus simple consiste générale-
1064

ment à adapter les données au format d’entrée d’outils existants. Les données composées de
textes, d’images, de sons, de vidéos et d’informations spatiales nécessitent des prétraitements
e:21

spéciaux, et parfois une expertise spécifique dans l’équipe de data science.


Dans ce chapitre, nous avons examiné un type important de données qui nécessite une étape
:Non

de prétraitement : le texte. La manière la plus simple de convertir des documents en vecteurs


de caractéristiques consiste à extraire les mots individuels qui les composent (c’est la repré-
x.com

sentation en sacs de mots), et à leur assigner une valeur selon la formule du TF-IDF. Cette
approche est relativement simple, peu coûteuse, applicable à de nombreux problèmes et
nécessite très peu de connaissances sur le domaine dans les premières phases du processus de
larvo

data mining. Malgré sa grande simplicité, cette approche produit des résultats étonnamment
bons pour différents types de problèmes. Nous examinerons à nouveau ces idées au
scho

chapitre 14, dans un contexte complètement différent et pour un problème non textuel.
univ.
univ.
scho
larvo
x.com
:Non
e:21
1064
1051
:888
6149
2:196
.121
.63.4
5:16
3947
1704
11
L’analyse décisionnelle II :

1704
vers l’ingénierie analytique

3947
5:16
.63.4
CONCEPTS FONDAMENTAUX : la résolution de problèmes d’entreprise par la data science commence par
.121
l’ingénierie analytique : concevoir une solution analytique basée sur les données, outils et
:196

techniques disponibles.
EXEMPLES DE TECHNIQUES : la valeur attendue comme concept de base pour l’évaluation de solutions de
2

data science.
6149

L’objectif ultime de la data science est d’extraire des informations ou des connaissances à
:888

partir des données, à l’aide de techniques reposant sur des principes fondamentaux. Comme
1051

nous l’avons vu jusqu’ici, les problèmes d’entreprise réels fournissent rarement des données
parfaitement adaptées à ces techniques, ou représentées de manière à pouvoir être directe-
ment traitées par ces techniques. Curieusement, cet état de fait est mieux accepté par les par-
1064

tenaires en entreprise (qui trouvent cela normal) que par les jeunes data scientists (les cours de
statistique, d’apprentissage automatique et de data mining fournissent généralement aux étu-
e:21

diants des données prêtes à être traitées par les outils présentés en cours).
:Non

Mais la réalité est moins ordonnée. Les problèmes d’entreprise sont rarement des problèmes
de classification, de régression ou de partitionnement. Ce sont simplement des problèmes
x.com

d’entreprise. Les premières étapes du processus de data mining, comme nous l’avons vu,
constituent une courte phase de compréhension du problème et des données. Au cours de ces
étapes, une solution doit être conçue ou créée pour résoudre le problème. Du côté de l’ingé-
larvo

nierie, les équipes de data science prennent en compte à la fois les besoins de l’entreprise et les
éventuels outils qui contribueront à la résolution du problème.
scho
univ.
Data science pour l’entreprise
268

Dans ce chapitre, nous illustrons cette phase d’ingénierie analytique avec deux exemples. Dans ces
deux études de cas, nous étudierons l’application des principes fondamentaux présentés tout au
long de ce livre ainsi que quelques techniques spécifiques que nous avons introduites. Le point
commun de ces deux études de cas est l’utilisation d’une méthode basée sur la valeur attendue
(vue au chapitre 7) pour décomposer les problèmes en sous-problèmes qui peuvent être appré-
hendés à l’aide de techniques éprouvées de data science. Toujours sur la base de la valeur
attendue, les résultats sont ensuite combinés afin d’obtenir une solution au problème initial.

Ciblage des meilleurs prospects pour un mailing


de collecte de dons

1704
Le marketing ciblé est un exemple classique d’application des principes et techniques de data
science à un problème d’entreprise. Le ciblage marketing est parfait comme exemple d’étude

3947
de cas pour deux raisons. Tout d’abord, beaucoup de problèmes d’entreprise ressemblent au
marketing ciblé, dont le traditionnel ciblage marketing (par bases de données), les bons de

5:16
réduction personnalisés, le ciblage publicitaire en ligne, etc. Ensuite, la structure fondamen-
tale de ce problème se retrouve dans beaucoup d’autres problèmes. C’est le cas par exemple de

.63.4
notre problème de prédiction de l’attrition client.
Pour cette première étude de cas, nous examinons un problème réel de marketing ciblé dont
.121
l’objectif est de cibler les prospects les plus enclins à donner. Les organisations de collecte de
fonds (dont celles des universités) doivent gérer à la fois leur budget et la patience des dona-
:196

teurs potentiels. L’idéal, pour eux, est de solliciter lors de chaque campagne le meilleur sous-
ensemble de donateurs possible. Ce dernier pourrait être un groupe large pour une campagne
2
6149

exceptionnelle et non coûteuse, ou un petit groupe pour une campagne spécifique avec des
cadeaux aux donateurs très coûteux.
:888

La méthode de la valeur attendue : décomposition d’un problème


1051

d’entreprise, puis recomposition de la solution


1064

Nous voulons mettre au point une solution analytique pour résoudre ce problème et nos con-
cepts fondamentaux nous serviront de structure de base. Tout d’abord, nous utilisons le pro-
e:21

cessus de data mining (voir chapitre 2) pour structurer l’analyse complète : nous commençons
par les étapes de compréhension du problème et des données. Nous devons plus précisément
:Non

nous intéresser à l’un de nos principes fondamentaux pour répondre à la question : « Quel est
exactement le problème d’entreprise que nous devons résoudre ? » (voir chapitre 7).
x.com

Précisons un peu les choses. Un data scientist pourrait répondre simplement : notre objectif
est de modéliser la probabilité pour chaque prospect, un potentiel donateur en l’occurrence,
larvo

de répondre à notre offre. Mais en examinant le problème de plus près, nous réalisons que
dans ce cas les réponses peuvent être très variées : certains peuvent donner 100 € alors que
scho

d’autres donneront 1 € seulement. Cet aspect doit être pris en compte.


univ.
L’analyse décisionnelle II : vers l’ingénierie analytique
269
CHAPITRE 11

Notre objectif est-il de maximiser le montant total des donations ? Le montant total peut
comprendre les dons de cette campagne ou ceux que les prospects feront tout au long de leur
vie ; disons que c’est le premier pour simplifier les choses. Pourrions-nous cibler un très grand
nombre de personnes, chacune donnant 1 € pour un coût de 1 €. Nos profits seraient prati-
quement nuls. Nous allons donc revoir notre stratégie.
En nous concentrant sur le problème à résoudre, nous avons peut-être la réponse à notre
question, qui peut sembler évidente pour toute personne versée dans les affaires : notre
objectif sera de maximiser les bénéfices des donations, c’est-à-dire le montant net après déduc-
tion des coûts. Nous disposons de méthodes nous permettant de prédire les probabilités de
réponse (et il s’agit là d’un cas simple d’estimation des probabilités des classes dans un pro-
blème à classe binaire), mais pas de méthodes pour estimer nos futurs bénéfices.
Ici encore, nos principes fondamentaux nous aident à structurer notre analyse et facilitent la

1704
conception d’une solution analytique. Nous utilisons un autre concept fondamental pour
structurer l’analyse : la valeur attendue. Nous appliquons les principes introduits au chapitre 7

3947
pour formuler notre problème : notre approche sera basée sur le concept de la valeur attendue.
Nous avons vu précédemment que le bénéfice (ou coût) attendu du ciblage d’un client x est
formulé ainsi :

5:16
Bénéfice attendu du ciblage = (R | x) • vR + [1 – (R | x)] • vNR

.63.4
où (R | x) est la probabilité de réponse du client x, vR est la valeur attendue d’une réponse et
vNR est la valeur attendue d’une non-réponse. Puisque tous les prospects soit répondent, soit
.121
ne répondent pas, la probabilité de non-réponse est tout simplement 1 – (R | x). Comme
nous l’avons vu au chapitre 7, nous pouvons calculer ces probabilités à partir des données his-
:196

toriques en utilisant l’une des nombreuses techniques abordées tout au long de ce livre.
2

Notre méthode basée sur la valeur attendue nous permet de réaliser que ce problème est légè-
6149

rement différent de tous ceux que nous avons étudiés jusqu’ici. En l’occurrence, la valeur dif-
fère d’un client à l’autre, et nous ne pouvons connaître les montants des dons qu’après que les
:888

prospects ont été ciblés ! Nous modifions donc la formulation de notre problème, qui est
maintenant :
1051

Bénéfice attendu du ciblage = (R | x) • vR(x) + [1 – (R | x)] • vNR(x)


1064

où vR(x) est la valeur d’une réponse du consommateur x et vNR(x) est la valeur de non-
réponse de ce consommateur. La valeur d’une réponse, vR(x), est égale au don du consomma-
teur moins le coût de sa sollicitation. La valeur de non-réponse, vNR(x), en l’occurrence,
e:21

serait égale à zéro moins le coût de la sollicitation. Pour que notre définition soit complète,
:Non

nous voulons également estimer le bénéfice du non-ciblage d’une personne et le comparer


ensuite au bénéfice de son ciblage, pour pourvoir décider de cibler ou non les personnes. Le
x.com

bénéfice attendu du non-ciblage est tout simplement égal à zéro, puisque dans notre applica-
tion, nous ne prévoyons pas que les consommateurs feront des dons spontanés sans être solli-
cités. Ce n’est pas toujours le cas bien sûr, mais nous supposons que c’est le cas ici.
larvo

Pourquoi la méthode de la valeur attendue est-elle adaptée à notre problème ? Parce que nous
pouvons calculer vR(x) et vNR(x) à partir des données à l’aide d’un modèle de régression logis-
scho

tique. En analysant les données historiques des consommateurs qui ont été ciblés par le passé,
univ.
Data science pour l’entreprise
270

nous pouvons utiliser un modèle de régression logistique pour estimer la probabilité qu’un con-
sommateur réponde. Le concept de valeur attendue nous aide à préciser les choses encore une
fois : vR(x) est la valeur que nous prévoyons d’obtenir si un consommateur répond, et nous la cal-
culons à l’aide d’un modèle entraîné uniquement sur les consommateurs qui ont répondu. For-
mulé ainsi, l’objectif est plus utile que si nous devions estimer les probabilités de réponse des
consommateurs en général, car dans notre cas, la grande majorité d’entre eux ne répond pas du
tout, et une modélisation par régression nécessiterait de pouvoir distinguer les cas à valeur nulle
pour non-réponse, des cas à valeur faible en raison des caractéristiques des consommateurs.
Avec le recul, cet exemple montre bien l’utilité de la méthode de la valeur attendue dans la
décomposition des problèmes d’entreprise : comme nous l’avons vu au chapitre 7, la valeur
attendue est un résumé des produits des probabilités et valeurs, et ces dernières peuvent être
estimées à l’aide de techniques de data science. Certaines quantités n’auront d’ailleurs même
pas besoin d’être estimées (telles que vNR(x), que nous pouvons considérer comme égale à

1704
zéro dans tous les cas), et une estimation exacte de ces valeurs n’est pas toujours tâche aisée.
En bref, l’analyse basée sur la valeur attendue facilite la décomposition de problèmes d’entre-

3947
prise en sous-problèmes plus faciles à résoudre, et la combinaison de leurs résultats pour
constituer la solution finale. Dans le cas de notre exemple (que nous avons choisi parce qu’il

5:16
peut s’appliquer directement à d’autres problèmes), la solution conduit à des résultats intuiti-
vement satisfaisants : elle consiste à cibler les personnes dont la donation dépassera le coût de

.63.4
leur sollicitation ! Du point de vue mathématique, nous recherchons les personnes dont le
bénéfice attendu est supérieur à zéro et nous simplifions l’inégalité algébrique. Notons dR(x)
.121
le don que le consommateur x fera s’il répond, et c le coût de sa sollicitation. Ainsi :
:196

Bénéfice attendu du ciblage = (R | x) • vR(x) + [1 – (R | x)] • vNR(x)


Et ce bénéfice doit toujours être supérieur à zéro, donc :
2
6149

(R | x) • (dR(x) – c) + [1 – (R | x)] • (–c) > 0


(R | x) • dR(x) – (R | x) • c – c + (R | x) • c > 0
:888

(R | x) • dR(x) > c
1051

Le don attendu (du côté gauche) doit être supérieur au coût de la sollicitation (du côté droit).
1064

Brève digression : le biais de sélection


e:21

Cet exemple nous amène à un problème important de data science dont la description
détaillée dépasse la portée de ce livre, mais que nous allons tout de même examiner briève-
:Non

ment. Pour la modélisation du don prédit, vous remarquez que les données peuvent être biai-
sées, c’est-à-dire qu’elles ne correspondent pas à une sélection aléatoire dans la population de
x.com

tous les donateurs. Pourquoi ? Parce que les données sont extraites de donations passées,
c’est-à-dire qu’elles décrivent des individus qui ont répondu par le passé. C’est le même pro-
blème que celui que nous avions rencontré lors de la modélisation des probabilités de rem-
larvo

boursement pour déterminer si un client méritait une attribution de crédit : nos données
représentaient des clients qui avaient reçu des crédits par le passé, donc qui avaient déjà été
scho

jugés dignes de recevoir un crédit ! Pour trouver les meilleurs prospects, nous devrons appli-
univ.
L’analyse décisionnelle II : vers l’ingénierie analytique
271
CHAPITRE 11

quer notre modèle à la population entière. Alors pourquoi les individus qui ont été sélec-
tionnés précédemment constitueraient-ils un échantillon représentatif à partir duquel nous
devrions modéliser la population entière ? C’est ce que l’on appelle le biais de sélection : les
données ne sont pas sélectionnées aléatoirement dans la population à laquelle nous voulons
appliquer le modèle, elles sont partialement sélectionnées (les individus qui ont fait des dons
dans le passé, ou ceux qui ont été ciblés par des méthodes précédemment développées ; les
clients qui ont reçu des crédits dans le passé).
Le data scientist est donc confronté à une question importante : cette méthode biaisée de
sélection des données aura-t-elle également une influence sur la valeur de la variable cible ?
Pour la modélisation des attributions de crédit, la réponse est absolument oui : les anciens
clients avaient été sélectionnés justement parce que le modèle leur prédisait une bonne proba-
bilité de remboursement de crédit. Dans le cas des donations, la réponse n’est pas aussi
simple, mais il est fort probable que les personnes qui donnent des sommes conséquentes font

1704
moins de dons. Alors que certaines personnes donnent 10 € chaque fois qu’elles sont sollici-
tées, d’autres donnent 100 € puis ignorent les collectes de fonds suivantes. Ainsi, ceux, dans

3947
les données, qui ont fait des dons lors des campagnes passées seront plus probablement des
individus qui ont donné moins.

5:16
Il existe heureusement des techniques de data science qui permettent de prendre en compte le

.63.4
biais de sélection. Ces techniques n’entrent pas dans le cadre de ce livre, mais les lecteurs intéressés
peuvent commencer par la lecture de Zadrozny & Elkan, 2001 et Zadrozny, 2004, qui illustrent
un cas de biais de sélection avec la même étude de cas de campagne de collecte de fonds.
.121
:196

Le problème d’attrition client : une solution


2
6149

encore plus complexe


:888

Revenons maintenant à notre problème d’attrition client. Dans cette section, nous examinons à
nouveau ce problème d’un point de vue data analytique. Lors de nos précédentes tentatives de
1051

résolution de ce problème, nous ne l’avons pas traité de manière suffisamment approfondie.


C’était volontaire, bien sûr, puisque nous n’avions pas encore vu toutes les notions nécessaires, et
1064

ces tentatives intermédiaires de résolution servaient d’illustration. Nous allons cette fois exa-
miner le problème en détail et appliquer les mêmes concepts fondamentaux de data science que
e:21

nous avons appliqués à notre problème précédent de sollicitation des donateurs.


:Non

Analyse d’un problème d’entreprise encore plus complexe


basé sur la valeur attendue
x.com

Voyons avant tout quelle est la définition exacte du problème à résoudre ? La situation est tou-
larvo

jours la même : notre branche téléphonie mobile fait face à un sérieux problème d’attrition client.
L’équipe de marketing a mis au point une offre spéciale de rétention. Notre mission consiste
scho

maintenant à envoyer cette offre de manière ciblée à un certain sous-ensemble de nos clients.
univ.
Data science pour l’entreprise
272

Nous avons au départ essayé de déterminer, à partir de nos données, quels clients sont les plus
susceptibles de nous quitter peu de temps après l’expiration de leur contrat. Nous nous inté-
resserons ici aussi à ces clients dont les contrats sont sur le point d’expirer car c’est là que
l’attrition a lieu. Mais pourquoi ciblons-nous les clients dont la probabilité de défection est la
plus élevée ?
La réponse à cette question est dans notre concept fondamental : quel est exactement le pro-
blème à résoudre ? Pourquoi l’attrition client pose-t-elle problème ? Parce qu’elle entraîne des
pertes financières. Donc le véritable problème de l’entreprise, ce sont les pertes financières. Si
un client nous causait plus de pertes que de bénéfices, sa défection ne serait pas un problème.
Notre objectif n’est donc pas seulement de garder nos clients, mais aussi de limiter nos pertes
financières. Par conséquent, comme dans le problème de sollicitation des donateurs, nous
devrons prendre en compte la valeur des clients. Notre analyse sera donc basée sur le concept
de la valeur attendue, comme dans l’étude de cas précédente. Et dans le cas de l’attrition, le

1704
calcul de la valeur des individus est plus simple : il s’agit de nos clients et leurs historiques de
facturation vont nous permettre de prédire facilement leur valeur future (à condition qu’ils

3947
restent fidèles à notre entreprise) en extrapolant leur valeur passée. À ce stade, notre pro-
blème n’est cependant pas encore complètement résolu, et le concept de la valeur attendue

5:16
nous permet de voir pourquoi.

.63.4
Nous commençons par les étapes de compréhension du problème et des données en nous
basant sur la valeur attendue. Pourquoi ne pourrions-nous pas traiter ce problème exactement
comme nous l’avons fait pour le problème de sollicitation des donateurs ? Comme dans
.121
l’étude de cas précédente, nous pourrions formuler le bénéfice attendu du ciblage d’un client
:196

avec notre offre ainsi :


Bénéfice attendu du ciblage = (R | x) • vR(x) + [1 – (R | x)] • vNR(x)
2
6149

où (R | x) est la probabilité que le client restera fidèle à l’entreprise après avoir été ciblé,
vR(x) est la valeur que nous gagnons si le client x reste fidèle à l’entreprise, et vNR(x) est la
:888

valeur que nous gagnons si le client x nous quitte.


Pourrions-nous cibler ainsi nos clients avec notre offre ? Toutes choses égales, cibler les
1051

clients qui ont la plus grande valeur équivaut simplement à cibler ceux qui ont la plus grande
probabilité de rester, et non ceux qui ont la plus grande probabilité de partir ! Pour nous en
1064

rendre compte, nous allons simplifier les choses en supposant que la valeur d’un client qui
nous quitte est égale à zéro. Notre valeur attendue devient alors :
e:21

Bénéfice attendu du ciblage = (R | x) • vR(x)


:Non

Cela ne correspond pas du tout à notre intuition selon laquelle nous devrions cibler les clients
qui ont la plus grande probabilité d’attrition. Pourquoi ? La valeur attendue nous le dit très
x.com

clairement : soyons plus prudents. Nous ne pouvons pas tout simplement appliquer notre
solution au problème de sollicitation des donateurs, réfléchissons plutôt à ce problème parti-
culier. Notre objectif n’est pas de cibler les clients qui ont la valeur la plus grande s’ils restent
larvo

fidèles à l’entreprise. Notre objectif est de cibler ceux qui nous causeraient les plus grandes
pertes s’ils nous quittaient. Le problème est un peu plus compliqué, mais notre méthode
scho

d’analyse basée sur la valeur attendue nous permet de l’appréhender de manière structurée. Et
univ.
L’analyse décisionnelle II : vers l’ingénierie analytique
273
CHAPITRE 11

comme nous le verrons, c’est elle qui nous guidera vers la solution. Vous vous souvenez peut-
être que dans notre étude de cas précédente, nous avions précisé que pour que notre défini-
tion soit complète, nous voulions également estimer le bénéfice du non-ciblage d’une per-
sonne et le comparer ensuite au bénéfice de son ciblage, pour pouvoir décider de cibler ou non
les personnes. Dans ce cas, nous nous étions permis d’ignorer ce point car nous avions sup-
posé que les consommateurs avaient très peu de chances de donner spontanément sans être
sollicités. Pendant l’étape de compréhension d’un problème, nous devons mettre au clair les
spécificités de ce dernier.
Voyons d’abord la question du non-ciblage dans le cadre du problème d’attrition client. La
valeur d’un non-ciblage est-elle égale à zéro ? Pas nécessairement. Si nous ne ciblons pas un
client mais qu’il reste tout de même fidèle à l’entreprise, alors sa valeur est encore plus grande
puisqu’il ne nous aura rien coûté en matière d’offre de fidélisation !

1704
Estimer l’influence de l’offre de fidélisation

3947
Nous allons approfondir notre étude en calculant les bénéfices apportés par le ciblage et par le
non-ciblage d’un client avec notre offre de fidélisation, ainsi que le coût de l’offre de fidélisa-

5:16
tion. Notons uR(x) le bénéfice du client x s’il reste, hors coût de l’offre, et uNR(x) le bénéfice
du client x s’il nous quitte, hors coût de l’offre. Pour simplifier, nous supposons que nous

.63.4
subirons le coût c que le client nous quitte ou non. .121
Remarque
:196

Dans un problème d’attrition, cette hypothèse n’est pas entièrement réaliste, car les offres de fidélisation
impliquent généralement des coûts importants qui sont conditionnés par le fait que le client reste, par
2

exemple en lui offrant un nouveau téléphone. La prise en compte de cette petite complication dans notre
6149

analyse serait assez simple, et les conclusions seraient les mêmes sur le plan qualitatif. Vous pouvez essayer.
:888

Nous allons donc calculer séparément le bénéfice attendu du ciblage et du non-ciblage. Au


passage, nous tenons à préciser que (dans l’idéal) les probabilités que le client reste ou qu’il
1051

nous quitte seront différentes selon que nous le ciblons ou non (autrement dit, nous espérons
que notre offre de fidélisation aura de l’effet). Pour cette raison, le calcul de la probabilité de
1064

rester est conditionné par deux possibilités (cibler, C, ou non cibler, nonC). Le bénéfice
attendu du ciblage est :
e:21

E BC(x) = (R | x, C) • (ur(x) – c) + [1 – (R | x, C)] • (uNR(x) – c)


:Non

Et le bénéfice attendu du non-ciblage est :


E BnonC(x) = (R | x, nonC) • (ur(x) – c) + [1 – (R | x, nonC)] • (uNR(x) – c)
x.com

Ainsi, pour que la formulation de notre problème soit complète, nous voulons cibler les
clients qui nous apportent le plus grand bénéfice si nous les ciblons. Plus précisément, il s’agit
larvo

des clients pour lesquels la valeur EBC(x) – EBnonC(x) est la plus élevée. Formulé ainsi, ce
problème est beaucoup plus complexe, mais notre méthode d’analyse est basée sur la valeur
scho
univ.
Data science pour l’entreprise
274

attendue, ce qui nous permet d’appréhender le problème de manière structurée et de conce-


voir une solution en restant concentrés sur cet objectif final.
L’analyse basée sur la valeur attendue nous permet par ailleurs de comprendre en quoi l’ana-
lyse de ce problème est différente de celle des problèmes que nous avons vus jusqu’ici. En par-
ticulier, nous devrons prendre en compte non seulement les cas de non-ciblage (en calculant à
la fois EBC et EBnonC), mais également l’influence réelle de notre offre de fidélisation (en cal-
culant la différence entre EBC et EBnonC)1.
Pour illustrer cette particularité, nous faisons à nouveau une digression. Considérons les scé-
narios dans lesquels cette valeur du ciblage, VC = EBC(x) – EBnonC(x), serait la plus élevée.
Nous développons l’équation de VC, tout en simplifiant le problème en supposant que la
valeur d’un client qui nous quitte est nulle.
Équation 11–1 Décomposition de VC

1704
VC = (R | x, C) • uR(x) – ( R | x, nonC) • uR(x) – c
= [ (R | x, C) – (R | x, nonC)] • uR(x) – c

3947
= (p) • uR(x) – c

5:16
où (p) est la différence entre les probabilités prédites qu’un client reste, selon qu’il est ciblé ou
non. Ici encore, le résultat est assez intuitif : nous voulons cibler les clients dont la probabilité

.63.4
de rester change le plus, pondérée par leur valeur s’ils restent ! Autrement dit, nous ciblons
ceux pour lesquels la probabilité de rester change le plus suite à leur ciblage. Dans notre scé-
.121
nario, la valeur de –c est la même pour tous les clients, nous ne l’incluons ici que pour nous
assurer que VC n’est pas une perte financière attendue.
:196

Pour ne pas nous perdre dans le processus, précisons ici que toutes ces analyses s’inscrivent
dans la phase de compréhension du problème. Nous allons voir dès maintenant leurs consé-
2
6149

quences sur le reste du processus de data mining.


:888

D’une décomposition par la valeur attendue à une solution de data science


1051

La section précédente et en particulier la décomposition soulignée à l’équation 11-1, nous


guidera tout au long des phases de compréhension des données, de représentation des don-
1064

nées, de modélisation et d’évaluation. La décomposition nous permet de voir clairement


quels modèles nous devrons construire. Nos modèles devront estimer les valeurs de (R | x,
e:21

C), la probabilité qu’un client reste s’il est ciblé, et (R | x, nonC), la probabilité qu’il reste
même s’il n’est pas ciblé. Contrairement à nos précédentes solutions de data mining, nous
:Non
x.com

1. C’est également un point de départ essentiel en analyse causale : imaginer un scénario inverse afin d’estimer la
différence en termes de valeur attendue entre deux scénarios identiques. Ces derniers sont souvent désignés
comme les cas « traités » et « non traités », par analogie avec l’inférence médicale, où l’on tente généralement de
larvo

détecter l’influence causale du traitement. Les nombreuses techniques d’analyse causale, que ce soit l’expérimen-
tation aléatoire, l’analyse causale par régression, ou des approches de modélisation causale plus modernes, repo-
scho

sent toutes sur cette différence entre les valeurs attendues. Nous traiterons plus en détail de l’analyse causale des
données au chapitre 12.
univ.
L’analyse décisionnelle II : vers l’ingénierie analytique
275
CHAPITRE 11

devrons donc construire deux modèles séparés d’estimation des probabilités. Nous pourrons
ensuite utiliser leurs résultats pour calculer la valeur attendue du ciblage.
La décomposition par la valeur attendue souligne également l’importance de la compréhen-
sion des données. Quelles données devons-nous utiliser pour construire nos modèles ? Dans
les deux cas, nous aurons besoin de données décrivant des clients dont les contrats ont expiré.
Les clients de nos données devront avoir largement dépassé la date d’expiration de leur con-
trat, afin que nous puissions conclure avec certitude qu’ils sont « restés » ou qu’ils sont
« partis ». Le premier modèle sera construit à partir de données de clients qui ont été ciblés
par notre offre de fidélisation. Et le second modèle sera construit sur des données de clients
qui n’ont pas été ciblés. De préférence, ces données devront être représentatives de la clientèle
générale à laquelle nous appliquerons ensuite nos modèles (voir plus haut au sujet du biais de
sélection, page 270). Pour approfondir un peu plus l’étape de compréhension des données,
nous allons examiner les données de chaque modèle séparément.

1704
Comment pourrons-nous acquérir des données sur les clients qui n’ont pas été ciblés ? Pour

3947
commencer, nous devrons nous convaincre qu’aucun changement substantiel n’a eu lieu dans
le secteur en question et que nous pouvons donc utiliser des données historiques pour la pré-
diction de l’attrition (par exemple, l’introduction de l’iPhone aux seuls clients d’AT&T cons-

5:16
tituerait un tel événement pour les autres entreprises de téléphonie mobile). En supposant

.63.4
qu’aucun événement de ce genre n’a eu lieu, la récolte des données requises devrait être assez
simple : les entreprises de téléphonie entreposent de larges quantités de données sur leurs
clients pendant plusieurs mois, pour la facturation, la détection des fraudes et bien d’autres
.121
usages. Et puisque cette offre de fidélisation est toute nouvelle, aucun des clients de l’entre-
:196

prise n’a pu être ciblé avec. Nous devrons tout de même vérifier qu’aucun des clients n’a pré-
cédemment reçu une quelconque offre qui influencerait sa probabilité d’attrition.
2

Le problème de la modélisation de (R | x, C) n’est pas exactement le même. Cette fois


6149

encore, il nous montre à quel point la méthode de la valeur attendue nous aide à rester con-
centrés sur l’objectif dès les premières étapes, en révélant les problèmes et défis auxquels nous
:888

serons confrontés. Quelle est la difficulté de notre problème ? Notre offre étant toute nou-
velle, personne ne l’a vue jusqu’ici. Nous n’avons donc pas les données nécessaires pour cons-
1051

truire un modèle permettant d’estimer (R | x, C) !


1064

Les contraintes de l’entreprise nous forcent cependant à agir. Nous devons réduire l’attrition
client, l’équipe marketing est confiante quant au potentiel de son offre, et nous avons sûre-
ment des données que nous pourrions utiliser d’une manière ou d’une autre. Il s’agit là d’une
e:21

situation courante en data mining d’entreprise. La décomposition basée sur la valeur attendue
:Non

nous mène souvent à une formulation complexe qui nous permet de mieux comprendre le
problème, mais nous ne sommes pas toujours équipés ou capables pour faire face à toute sa
x.com

complexité. Parfois nous ne disposons tout simplement pas des ressources requises (données,
humaines, informatiques). En l’occurrence, nous n’avons pas les données nécessaires.
Il arrive également que l’on considère que la complexité ajoutée par notre formulation com-
larvo

plète du problème n’aura pas d’effets substantiels sur l’efficacité de la solution. Nous pour-
rions par exemple conclure que « Oui, la formulation de l’équation 11-1 m’aide à comprendre
scho

comment agir, mais je pense que je peux faire au moins aussi bien avec une formulation plus
univ.
Data science pour l’entreprise
276

simple ou moins coûteuse. » Pourrions-nous par exemple supposer que tout client qui recevra
notre offre restera à coup sûr, ( (R | x, C) = 1) ? Il s’agit là bien évidemment d’une simplifi-
cation extrême, mais elle nous permettrait d’agir, et en entreprise il faut toujours être prêt à le
faire même sans informations optimales. À l’aide de l’équation 11-1, nous pouvons vérifier
qu’une telle hypothèse aurait pour seule conséquence de cibler les clients pour lesquels la
valeur (1 – (R | x, nonC)] • uR(x)) sera la plus grande : les clients dont la perte attendue est
la plus grande s’ils nous quittent. Un tel résultat est plutôt raisonnable, sachant que nous
n’avons pas les données nécessaires pour estimer l’effet différentiel de notre offre.
Considérons maintenant une approche différente pour un cas identique où les données néces-
saires pour modéliser une cible ne sont pas disponibles. Une solution alternative consisterait à
étiqueter les données en remplaçant la cible par un substitut. L’équipe marketing a peut-être
conçu une offre similaire, mais pas identique, par le passé. Si cette offre a été présentée à des
clients dans un scénario similaire (il convient ici de garder à l’esprit le sujet précédent sur le

1704
biais de sélection, page 270), nous pourrions construire un modèle en utilisant ce substitut
d’étiquette cible2.

3947
La décomposition par la valeur attendue suggère encore une autre option. De quoi avons-
nous besoin pour modéliser (R | x, C) ? Nous devons acquérir des données. Pour être précis,

5:16
nous devons collecter des données sur les clients qui sont ciblés, ce qui signifie que nous

.63.4
devons cibler des clients. Mais cela implique un coût. Que se passera-t-il si nous ciblons mal
les clients ? Si nous ciblons les clients dont la probabilité de réponse est la plus faible, l’entre-
prise subira des pertes financières. Cette situation nous ramène à notre tout premier principe
.121
fondamental de data science : les données doivent être considérées comme des actifs d’entre-
:196

prise. Nous devons non seulement tirer profit des ressources que nous possédons, mais aussi
tirer profit de l’investissement dans des données que nous pouvons substantiellement rentabi-
2

liser. À la section « Les données et les capacités de la data science comme atouts
6149

stratégiques » du chapitre 1, page 18, nous avons vu le problème auquel était confrontée la
Signet Bank. Ils ne disposaient pas de données différentielles sur les réponses des clients à
:888

plusieurs nouvelles offres qu’ils avaient conçues. Ils ont donc investi dans des données nou-
velles et ont subi des pertes en distribuant leurs offres très largement, mais les données ainsi
1051

acquises leur ont rapporté un formidable succès à la suite de quoi ils sont devenus la banque
Capital One. Notre situation n’est peut-être pas aussi extraordinaire, puisque nous avons une
1064

seule offre et que les pertes subies suite au ciblage ne seront pas aussi colossales que celles de
la Signet Bank lorsque ses clients ne remboursaient pas leur crédit. Mais la morale est la
e:21

même : si nous acceptons d’investir dans des données décrivant comment les clients répon-
dront à notre offre, nous pourrons alors cibler plus précisément les futurs clients avec cette
:Non

offre.
x.com

2. Dans certains cas, les substituts d’étiquette peuvent provenir d’événements complètement différents de celui sur
larvo

lequel est basée l’étiquette cible réelle. Par exemple, pour construire un modèle permettant de prédire qui fera un
achat après avoir été ciblé par une publicité, les données de conversion sont rares. Mais il s’avère que la visite du
scho

site web de la marque auteure de la campagne publicitaire est un substitut étonnamment efficace pour prédire les
achats (Dalessandro, Hook, Perlich et Provost, 2012).
univ.
L’analyse décisionnelle II : vers l’ingénierie analytique
277
CHAPITRE 11

Remarque
Nous tenons à souligner encore une fois l’importance de la phase de compréhension du problème. Selon
le contenu de l’offre, nos pertes peuvent être minimes si l’offre n’a pas d’effet et la formulation à laquelle
nous sommes arrivés peut être acceptable.

Un tel investissement dans les données peut se faire de manière efficace si nous appliquons
encore une fois les outils conceptuels développés tout au long de ce livre. Au chapitre 8, nous
avons abordé la visualisation des performances à travers les courbes d’apprentissage. La
courbe d’apprentissage permet de voir l’effet de la quantité de données utilisée (en l’occur-
rence, le montant de l’investissement passé dans les données) sur les performances de généra-
lisation. Cette notion de performance de généralisation peut aisément être étendue à l’amé-
lioration des performances par rapport à une baseline (et l’idée fondamentale ici est de choisir

1704
soigneusement le modèle de référence). La baseline peut être considérée comme notre
modèle alternatif, simple, de prédiction de l’attrition. Cela nous permet d’investir petit à petit

3947
dans des données, en vérifiant à chaque fois si l’augmentation de la taille des données impacte
les performances, et si l’extrapolation de la courbe permet de prédire que des investissements
supplémentaires sont à prévoir. Une telle analyse est interrompue dès qu’elle suggère qu’un

5:16
investissement supplémentaire est inutile.

.63.4
Il convient de noter que cela ne signifie pas que cet investissement était une perte. Nous
avons investi dans l’information, en l’occurrence, savoir si les données supplémentaires
.121
seraient rentables dans notre problème de réduction des coûts de l’attrition.
En outre, l’analyse du problème du point de vue de la valeur attendue permet d’étendre la for-
:196

mulation pour répondre de manière structurée à la question : « Quelle serait l’offre la plus
intéressante ? » Nous pouvons en effet étendre la formulation en incluant plusieurs offres pos-
2
6149

sibles et en calculant ensuite laquelle apporte le plus de valeur par client. Nous pouvons aussi
paramétrer les offres (par exemple avec différentes réductions possibles) et optimiser l’analyse
:888

afin de trouver la réduction qui apporterait la valeur attendue la plus grande. Cela implique-
rait probablement des investissements supplémentaires dans les données et des expériences
1051

pour déterminer les probabilités que les clients restent ou nous quittent en fonction des diffé-
rentes réductions possibles (ce qu’a fait la Signet Bank pour devenir Capital One).
1064

Résumé
e:21

L’analyse de ces deux études de cas, la sollicitation des donateurs et l’attrition client, nous
:Non

permet de voir comment la méthode de la valeur attendue aboutit à formuler un problème


d’entreprise réel, ainsi que le(s) rôle(s) du data mining dans la conception de la solution.
x.com

Nous pourrions analyser ces problèmes avec encore plus de détails pour y découvrir des com-
plications additionnelles (et des exigences supplémentaires quant à leur solution). Vous vous
demandez peut-être « Quand doit-on s’arrêter ? Pouvons-nous approfondir l’analyse
larvo

indéfiniment ? » En théorie, oui, mais la modélisation implique toujours d’adopter des hypo-
thèses simplificatrices afin que le problème reste abordable. En ingénierie analytique, nous
scho

arriverons toujours à un point où nous devons admettre que :


univ.
Data science pour l’entreprise
278

• nous ne pourrons pas acquérir des données sur cet événement ;


• une modélisation exacte de ce problème serait trop coûteuse ;
• cette éventualité est tellement improbable que nous pouvons l’ignorer ;
• cette formulation est suffisante pour le moment, et nous devrions nous y tenir.
L’objectif de l’ingénierie analytique n’est pas de concevoir des solutions complexes en prenant
en compte tous les cas de figure possibles. Son but est d’appréhender les problèmes d’un
point de vue data analytique afin que le rôle du data mining soit clair, que les contraintes de
l’entreprise, coûts et bénéfices soient pris en compte, et que toute hypothèse simplificatrice
soit adoptée en conscience et de manière catégorique. Les projets ont ainsi plus de chances de
réussir et les risques d’avoir des mauvaises surprises lors du déploiement sont limités.

1704
3947
5:16
.63.4
.121
:1962
6149
:888
1051
1064
e:21
:Non
x.com
larvo
scho
univ.
12
Autres problèmes

1704
et techniques de data science

3947
5:16
.63.4
CONCEPTS FONDAMENTAUX : les concepts fondamentaux comme base de nombreuses techniques de data
.121
science ; l’importance de se familiariser avec les composantes principales de la data science.
:196

EXEMPLES DE TECHNIQUES : associations et co-occurrences ; profilage comportemental ; prédiction de


liens ; réduction des données ; exploration d’informations latentes ; recommandation de films ;
2

décomposition biais-variance de l’erreur ; méthodes ensemblistes ; raisonnement causal à partir


6149

des données.
:888

Nous avons vu au chapitre précédent comment une équipe de data science peut appréhender
1051

un problème d’entreprise du point de vue de l’analyse des données lorsqu’elle est confrontée à
un problème d’ingénierie – il ne s’agit pas ici d’ingénierie mécanique ou même d’ingénierie
logicielle, mais d’ingénierie analytique. Le problème fournit lui-même l’objectif et les
1064

contraintes de sa solution. Les données et les connaissances du domaine fournissent les maté-
riaux de base. La data science fournit des méthodes pour décomposer le problème en plu-
e:21

sieurs sous-problèmes, ainsi que des outils et techniques pour les résoudre. Nous avons
examiné les concepts théoriques essentiels et certaines des principales composantes des solu-
:Non

tions. Mais la data science est un champ d’étude très vaste et des programmes d’études com-
plets y sont consacrés. Ce livre ne peut donc pas couvrir l’ensemble du sujet. Cependant, les
x.com

principes que nous avons étudiés sont le fondement de la majorité des méthodes et techni-
ques de data science.
larvo

Comme c’est souvent le cas en ingénierie, il est souvent plus efficace de décomposer un pro-
blème en plusieurs sous-problèmes grâce à des outils déjà existants, plutôt que de tenter de
scho

construire une nouvelle solution à partir de zéro. C’est également le cas en ingénierie
univ.
Data science pour l’entreprise
280

analytique : l’abondance des outils de data science nous permet de résoudre facilement des
problèmes courants particuliers. Nous avons donc illustré les concepts fondamentaux à l’aide
des outils les plus couramment utilisés, des méthodes pour trouver des corrélations, des attri-
buts informatifs ou des entités similaires, telles que la classification, l’estimation des probabi-
lités des classes, la régression et le clustering.
Ce sont là les problèmes de data science les plus courants, mais comme nous l’avons men-
tionné au chapitre 2, il en existe beaucoup d’autres. Les concepts fondamentaux qui sont à la
base des problèmes que nous avons utilisés en guise d’exemples sont également à la base des
problèmes d’autres sortes. Notre présentation des concepts fondamentaux étant maintenant
complète, nous pouvons maintenant étudier d’autres tâches et techniques.

Co-occurrences et associations : découverte de liens

1704
entre les objets

3947
Le groupement de co-occurrences ou découverte d’associations a pour objectif de trouver des liens

5:16
entre les objets à partir des transactions les faisant intervenir. Pourquoi recherchons-nous de
tels liens de co-occurrences ? Ces liens peuvent servir dans beaucoup d’applications. Imaginez

.63.4
un problème orienté client. Disons que nous possédons une boutique en ligne. À partir des
données des paniers d’achat, nous pouvons suggérer aux clients « Les clients qui ont acheté le
.121
nouveau eWatch ont également acheté le eBracelet Bluetooh Speaker Companion. » Si les
liens d’associations permettent effectivement de capturer les préférences des consommateurs,
:196

nous pourrions recourir à la vente croisée pour augmenter nos profits. Cela permettrait par
ailleurs d’améliorer l’expérience client (en leur permettant par exemple d’écouter leur
2
6149

musique en stéréo plutôt qu’en mono avec leur eWatch), et ainsi de tirer parti de notre actif
de données pour accroître la fidélité des clients.
:888

Considérons un problème opérationnel dans lequel nous expédions des produits aux clients
ayant commandé en ligne depuis plusieurs centres de distribution à travers le monde. Tous les
1051

centres de distribution n’ont pas tous les produits en stock. Les centres de distribution régio-
naux, plus petits, n’entreposent en effet que les produits les plus demandés. Nous avons ins-
1064

tallé ces centres de distribution régionaux pour réduire les frais d’expédition, mais nous réali-
sons que pour beaucoup de commandes nous finissons soit par expédier les produits à partir
e:21

d’un centre de distribution principal, soit par faire plusieurs envois. La raison est que les
clients qui commandent des produits fréquemment achetés incluent souvent dans leur com-
:Non

mande des produits moins demandés. Nous pouvons résoudre ce problème en explorant les
liens d’associations à partir de nos données. Si certains articles peu demandés sont souvent
x.com

commandés avec certains articles très demandés, ces articles peu demandés pourraient être
également stockés dans les centres de distribution régionaux, ce qui réduirait substantielle-
ment nos frais d’expédition.
larvo

Le groupement de co-occurrences est simplement une recherche, dans les données, de combi-
naisons d’articles dont les probabilités sont intéressantes. Le problème peut être formulé de dif-
scho

férentes manières, mais la co-occurrence reste la règle de base : « Si A se produit, alors B se pro-
univ.
Autres problèmes et techniques de data science
281
CHAPITRE 12

duira très probablement aussi. » A peut désigner la vente d’un eWatch, et B la vente d’un
eBracelet1. Les statistiques « intéressantes » suivent généralement nos principes fondamentaux.
Pour commencer, nous devons considérer les contrôles de complexité : nous trouverons sûre-
ment un nombre considérable de co-occurrences dont beaucoup seront simplement dues au
hasard, et non des régularités généralisables. Nous pouvons contrôler la complexité simple-
ment en imposant une contrainte sur les règles de co-occurrences exprimée sous la forme d’un
pourcentage minimal dans les données – disons que les co-occurrences doivent représenter au
moins 0,01 % des transactions. C’est ce que l’on appelle le critère de support de l’association.
La règle d’association implique également la notion de « très probablement ». Si un client
achète un eWatch, il achètera très probablement un eBracelet également. Ici aussi, nous
aurons besoin d’un certain degré minimal de vraisemblance des associations. Nous pouvons
ici aussi quantifier cette notion en utilisant des méthodes vues précédemment : la probabilité

1704
que B ait lieu lorsque A a lieu, (B | A), est le critère de confiance ou de conviction de la règle
d’association. Nous l’appellerons ici critère de conviction afin d’éviter la confusion avec la

3947
confiance statistique. Nous pouvons ainsi dire que la conviction d’une association doit être
supérieure à un certain seuil, par exemple 5 % (dans 5 % des cas ou plus, un acheteur de A
achète également B).

5:16
.63.4
Mesure de la surprise : lift et leverage .121
Nous aimerions enfin que les liens d’associations découverts soient inattendus. Différentes
notions de surprise ont été traitées en data mining, mais la plupart impliquent la mise en cor-
:196

respondance des connaissances découvertes avec nos connaissances personnelles, nos intui-
tions et notre bon sens. Autrement dit, un lien d’association est inattendu s’il contredit des
2

connaissances ou des suppositions préalables. De nombreux chercheurs étudient ces connais-


6149

sances difficiles à codifier, mais il n’est pas courant qu’elles soient traitées à l’aide de méthodes
automatiques. Les data scientists et partenaires en entreprise parcourent plus souvent de lon-
:888

gues listes d’associations pour éliminer les moins inattendues.


1051

Il existe cependant une notion plus faible mais tout aussi intuitive de la surprise que nous
pouvons calculer à partir des données et que nous avons rencontrée dans d’autres contextes :
le lift. Dans quelle mesure cette co-occurrence se produit-elle plus souvent que prévu ? Si les
1064

co-occurrences dans les données des paniers d’achat révèlent que le pain et le lait sont souvent
achetés ensemble, nous pourrions dire : « Évidemment ! » Beaucoup de gens achètent du lait
e:21

et beaucoup de gens achètent du pain. On peut donc s’attendre à ce qu’ils co-occurrent fré-
quemment par pur hasard. Nous serions bien plus surpris si nous découvrions des co-occur-
:Non

rences qui ont lieu beaucoup moins souvent que l’on pourrait s’y attendre. Le calcul du lift fait
appel à des notions de bases de probabilité.
x.com
larvo
scho

1. A et B pourraient également désigner plusieurs articles. Nous supposons pour le moment qu’ils désignent un seul
article. Et dans notre exemple sur les J’aime de Facebook, plus loin, nous généraliserons à plusieurs articles.
univ.
Data science pour l’entreprise
282

Équation 12–1 Le lift

(A, B)
lift ( A , B) = -----------------------
(A ) ( B )
En français, le lift de la co-occurrence de A et B est leur probabilité réelle d’avoir lieu
ensemble comparée à la probabilité qu’ils aient lieu ensemble s’ils étaient non reliés (indépen-
dants). Comme nous l’avons vu précédemment, un lift supérieur à 1 indique que l’occurrence
de A accroît la vraisemblance que B ait lieu également.
C’est là une méthode possible parmi d’autres pour estimer dans quelle mesure un lien d’asso-
ciation découvert n’est pas le fruit du hasard. Une méthode alternative consisterait à calculer
la différence entre ces quantités plutôt que leur rapport. C’est ce qu’on appelle le leverage, qui
signifie la « puissance ».
Équation 12–2 Le leverage

1704
leverage(A, B) = (A, B) – (A) (B)

3947
Prenez le temps de vous assurer que l’une est plus appropriée pour les liens d’associations qui
ont très peu de chance d’être dus au hasard, alors que l’autre est meilleure pour les liens
d’associations qui sont vraisemblablement dus au hasard.

5:16
.63.4
Exemple : de la bière et des tickets de loterie .121
Comme nous le montre l’exemple des eWatch et eBracelet, la découverte d’associations est
souvent utilisée pour l’analyse de paniers d’achat dans le but de trouver et d’analyser les co-
:196

occurrences de produits achetés. Nous allons en voir un exemple concret.


Nous possédons une petite boutique de proximité dans laquelle nous vendons des produits
2
6149

alimentaires, de l’alcool, des tickets de loterie, etc. Nous avons analysé l’ensemble de nos
transactions sur une année complète et nous avons découvert que les clients achètent souvent
de la bière et des tickets de loterie en même temps. Nous savons cependant que, dans notre
:888

boutique, la bière se vend beaucoup et les tickets de loterie se vendent beaucoup également.
1051

Disons que 30 % de nos transactions contiennent de la bière et que 20 % de nos transactions


contiennent à la fois de la bière et des tickets de loterie ! Cette co-occurrence est-elle
intéressante ? Ou est-elle simplement due au fait que ces deux achats sont ordinairement
1064

fréquents ? Les statistiques d’associations vont nous répondre.


e:21

Pour commencer, nous posons une règle d’association représentant notre intuition : « Les
clients qui achètent de la bière sont susceptibles d’acheter également des tickets de loterie. »
:Non

Ceci revient à « bière => tickets de loterie ». Nous calculons ensuite le lift de cette règle
d’association. Pour cela, nous connaissons déjà l’une des valeurs dont nous aurons besoin :
x.com

(bière) = 0,3. Disons que les ventes de tickets de loterie sont également très fréquentes :
(tickets de loterie) = 0,4. Si aucune relation n’existait entre ces deux produits (ils sont com-
plètement indépendants), la probabilité qu’ils soient achetés ensemble serait égale au produit
larvo

de leurs probabilités individuelles : (bière) × (tickets de loterie) = 0,12.


Nous connaissons par ailleurs la probabilité (fréquence dans les données) que ces deux articles
scho

soient achetés ensemble, (tickets de loterie, bière), que nous avons obtenue en épluchant les
univ.
Autres problèmes et techniques de data science
283
CHAPITRE 12

données des tickets de caisse à la recherche des transactions qui incluaient à la fois de la bière
et des tickets de loterie. Comme nous l’avons dit auparavant, 20 % des transactions incluaient
les deux, donc (tickets de loterie, bière) = 0,2. Le lift de notre règle d’association est donc
égal à 0,2 / 0,12, ce qui revient à 1,67. Cela signifie que les achats simultanés de tickets de
loterie et de bière ont 1 fois plus de chances d’avoir lieu que par pur hasard. Nous pourrions
en conclure qu’il existe une relation forte entre ces deux produits, mais leur co-occurrence est
également due au fait qu’ils sont tous deux très fréquemment achetés.
Qu’en est-il du leverage ? Il est égal à (tickets de loterie, bière) – (tickets de
loterie) × (bière), c’est-à-dire 0,2 – 0,12, soit 0,08. La cause de cette co-occurrence conduit
ainsi à une augmentation de 8 % de la probabilité qu’ils soient achetés ensemble par rapport à
leur probabilité si leur co-occurrence était seulement due à leur grande fréquence d’achat.
Il nous reste encore deux autres mesures statistiques à calculer : le support et la conviction.

1704
L’indice de support est simplement la fréquence, d’après les données, à laquelle les deux pro-
duits sont achetés ensemble, c’est-à-dire 20 %. L’indice de conviction est défini par leur pro-

3947
babilité conditionnelle, (tickets de loterie | bière), qui est égale à 67 %.

5:16
Liens d’associations entre les mentions J’aime sur Facebook

.63.4
La recherche de liens d’associations est le plus souvent utilisée pour l’analyse de paniers
d’achat – elle est même parfois appelée analyse de paniers d’achat – mais son application est
.121
beaucoup plus générale. Reprenons notre analyse des J’aime sur Facebook (exemple du
chapitre 9) pour l’illustrer. Nous disposions alors de données décrivant les contenus likés par
:196

un vaste ensemble d’utilisateurs de Facebook (Kosinski, Stillwell & Graepel, 2013). Par ana-
logie avec les données des paniers d’achat, nous pouvons regrouper tous les J’aime de chaque
2

utilisateur et considérer que chacun a un panier de J’aime. Nous voulons ensuite savoir si cer-
6149

tains J’aime co-occurrent plus fréquemment que par simple chance. Nous utilisons cet
exemple pour illustrer la recherche d’associations, mais ce processus pourrait déboucher sur
:888

d’intéressantes applications en entreprise. Si, par exemple, en tant que vendeur, vous voulez
comprendre les clients d’un marché particulier, vous pourriez rechercher des régularités dans
1051

les contenus qu’ils ont likés sur Facebook. En analysant le problème d’un point de vue data
analytique, vous pourriez recourir au même type d’analyse que celles que nous avons vues
1064

dans ce chapitre : en recherchant les co-occurrences qui ont lieu plus fréquemment que par le
simple fait du hasard.
e:21

Avant de passer à l’exploration des données, nous allons introduire un nouveau concept sur la
recherche d’associations. Nous avons décidé de procéder par analogie avec l’analyse de paniers
:Non

d’achat, nous devons donc définir ce que nous désignerons comme des produits. Pouvons-
nous insérer dans notre panier n’importe quel élément avec lequel nous recherchons des liens
x.com

d’associations ? Par exemple, avec la localisation d’un utilisateur, nous pourrions rechercher
des liens entre les J’aime et les positions géographiques. En analyse des paniers d’achat, ces
larvo

éléments sont parfois appelés produits virtuels, pour les distinguer des produits réels que les
clients insèrent dans leur panier. Dans nos données Facebook, nous avions mentionné que
scho

nous pourrions acquérir des données psychométriques, telles que leur degré d’extraversion ou
univ.
Data science pour l’entreprise
284

leur gentillesse, ou leur score aux tests de QI. Une recherche d’associations incluant les carac-
téristiques psychométriques des utilisateurs serait d’autant plus intéressante.

REMARQUE Supervisé ou non supervisé ?


Il convient ici de garder à l’esprit la distinction entre data mining supervisé et non supervisé. Si notre
objectif est de découvrir ce qui est lié à la gentillesse ou au fait de liker notre marque, alors nous devrons
formuler notre problème avec une méthode supervisée, avec la variable cible correspondante. C’est ce
que nous avions fait au chapitre 9 lorsque nous avions examiné le lift des preuves, et dans tout le reste
de ce livre dans nos discussions sur la segmentation supervisée. Si, en revanche, nous souhaitons explo-
rer les données sans objectif spécifique, alors la recherche d’associations sera plus appropriée. Vous pou-
vez retourner au chapitre 6 pour un rappel sur les différences entre data mining supervisé et non super-
visé, que nous avions alors présentées dans le contexte du clustering. Les mêmes concepts
fondamentaux s’appliquent à la recherche d’associations.

1704
Voyons maintenant quels liens d’associations nous pouvons trouver dans les J’aime sur Face-

3947
book2. Nous avons extrait ces associations en utilisant le très populaire système de data
mining Magnus Opus3. Ce système permet de rechercher les associations qui ont le lift ou le

5:16
leverage le plus élevé, tout en éliminant celles qui sont trop peu fréquentes pour être intéres-
santes. La liste suivante détaille certaines des associations entre les mentions J’aime qui ont le

.63.4
plus grand lift et qui impliquent au minimum 1 % des utilisateurs de notre ensemble de don-
nées. Ces liens d’associations sont-ils significatifs ? Sont-ils représentatifs des liens entre les
.121
goûts des utilisateurs ? Vous remarquerez que les lifts sont tous supérieurs à 20, c’est-à-dire
que toutes ces associations sont 20 fois plus probables que par le fait du hasard :
:196

Family Guy & The Daily Show -> The Colbert Report
2

Support=0.010; Strength=0.793; Lift=31.32; Leverage=0.0099


6149

Spirited Away -> Howl's Moving Castle


:888

Support=0.011; Strength=0.556; Lift=30.57; Leverage=0.0108

Selena Gomez -> Demi Lovato


1051

Support=0.010; Strength=0.419; Lift=27.59; Leverage=0.0100


1064

I really hate slow computers & Random laughter when remembering something ->
Finding Money In Your Pocket
Support=0.010; Strength=0.726; Lift=25.80; Leverage=0.0099
e:21

Skittles & Glowsticks -> Being Hyper!


:Non

Support=0.011; Strength=0.529; Lift=25.53; Leverage=0.0106


x.com

Linkin Park & Disturbed & System of a Down & Korn -> Slipknot
Support=0.011; Strength=0.862; Lift=25.50; Leverage=0.0107
larvo
scho

2. Merci à Wally Wang pour son aide sur ce problème.


3. Voir cette page : http://www.giwebb.com/
univ.
Autres problèmes et techniques de data science
285
CHAPITRE 12

Lil Wayne & Rihanna -> Drake


Support=0.011; Strength=0.619; Lift=25.33; Leverage=0.0104

Skittles & Mountain Dew -> Gatorade


Support=0.010; Strength=0.519; Lift=25.23; Leverage=0.0100

SpongeBob SquarePants & Converse -> Patrick Star


Support=0.010; Strength=0.654; Lift=24.94; Leverage=0.0097

Rihanna & Taylor Swift -> Miley Cyrus


Support=0.010; Strength=0.490; Lift=24.90; Leverage=0.0100

Disturbed & Three Days Grace -> Breaking Benjamin


Support=0.012; Strength=0.701; Lift=24.64; Leverage=0.0117

1704
Eminem & Lil Wayne -> Drake
Support=0.014; Strength=0.594; Lift=24.30; Leverage=0.0131

3947
Adam Sandler & System of a Down & Korn -> Slipknot
Support=0.010; Strength=0.819; Lift=24.23; Leverage=0.0097

5:16
Pink Floyd & Slipknot & System of a Down -> Korn

.63.4
Support=0.010; Strength=0.810; Lift=24.05; Leverage=0.0097

Music & Anime -> Manga


.121
Support=0.011; Strength=0.675; Lift=23.99; Leverage=0.0110
:196

Medium IQ & Sour Gummy Worms -> I Love Cookie Dough


Support=0.012; Strength=0.568; Lift=23.86; Leverage=0.0118
2
6149

Rihanna & Drake -> Lil Wayne


Support=0.011; Strength=0.849; Lift=23.55; Leverage=0.0104
:888

I Love Cookie Dough -> Sour Gummy Worms


Support=0.014; Strength=0.569; Lift=23.28; Leverage=0.0130
1051

Laughing until it hurts and you can't breathe! & I really hate slow computers
1064

-> Finding Money In Your Pocket


Support=0.010; Strength=0.651; Lift=23.12; Leverage=0.0098
e:21

Evanescence & Three Days Grace -> Breaking Benjamin


Support=0.012; Strength=0.656; Lift=23.06; Leverage=0.0117
:Non

Disney & Disneyland -> Walt Disney World


Support=0.011; Strength=0.615; Lift=22.95; Leverage=0.0103
x.com

i finally stop laughing... look back over at you and start all over again ->
That awkward moment when you glance at someone staring at you.
larvo

Support=0.011; Strength=0.451; Lift=22.92; Leverage=0.0104


scho

Selena Gomez -> Miley Cyrus


Support=0.011; Strength=0.443; Lift=22.54; Leverage=0.0105
univ.
Data science pour l’entreprise
286

Reese's & Starburst -> Kelloggs Pop-Tarts


Support=0.011; Strength=0.493; Lift=22.52; Leverage=0.0102

Skittles & SpongeBob SquarePants -> Patrick Star


Support=0.012; Strength=0.590; Lift=22.49; Leverage=0.0112

Disney & DORY & Toy Story -> Finding Nemo


Support=0.011; Strength=0.777; Lift=22.47; Leverage=0.0104

Katy Perry & Taylor Swift -> Miley Cyrus


Support=0.011; Strength=0.441; Lift=22.43; Leverage=0.0101

AKON & Black Eyed Peas -> Usher


Support=0.010; Strength=0.731; Lift=22.42; Leverage=0.0097

1704
Eminem & Drake -> Lil Wayne
Support=0.014; Strength=0.807; Lift=22.39; Leverage=0.0131

3947
Les exemples de recherche d’associations utilisent souvent des domaines (tels que les J’aime
de Facebook) avec lesquels les lecteurs sont familiers. La raison est que l’évaluation d’une

5:16
méthode non supervisée repose beaucoup plus sur des connaissances du domaine (voir la dis-
cussion du chapitre 6), car aucune technique spécifique ne permet d’effectuer une évaluation

.63.4
objective. La recherche d’associations est cependant un outil très intéressant pour la compré-
hension des données. Imaginez que vous intégrez un nouveau poste. L’exploration des don-
.121
nées de transactions clients de l’entreprise et la recherche des relations de co-occurrence
fortes vous permettrait d’acquérir une vue d’ensemble des rapports entre les goûts des clients.
:196

En partant de ce principe, nous pouvons reprendre notre exemple des co-occurrences entre
2

les J’aime de Facebook, en prétendant que ce domaine n’appartient pas à la culture populaire :
6149

l’exploration de ces types de co-occurrences (et les liens d’associations de ce type sont vastes
et variés) vous offre une vue d’ensemble des rapports entre les goûts des clients.
:888
1051

Profilage : recherche de comportements typiques


1064

L’objectif du profilage est de caractériser le comportement typique d’un individu, d’un groupe
ou d’une population. Un exemple de question de profilage serait : « Quelle est l’utilisation
e:21

typique d’une carte de crédit par les clients de ce segment ? » La réponse pourrait être une
simple moyenne de dépenses, mais une telle description ne serait pas très représentative pour
:Non

notre problème. Les systèmes de détection des fraudes par exemple, recourent au profilage pour
caractériser les comportements normaux, puis recherchent les instances qui en dévient substan-
x.com

tiellement – en particulier, celles qui présentent des caractéristiques précédemment définies


comme révélatrices des fraudes (Fawcett & Provost, 1997 ; Bolton & Hand, 2002). Le profilage
d’utilisateurs de cartes de crédit pour détecter des fraudes repose sur une description détaillée
larvo

des moyennes des dépenses en semaine et le week-end, d’utilisation à l’international, chez les
commerçants et à travers différentes catégories de produits, d’utilisation chez des commerçants
scho

douteux, etc. La description des comportements peut généralement couvrir une population
univ.
Autres problèmes et techniques de data science
287
CHAPITRE 12

entière, par petits groupes, voire par individu. Chaque utilisateur de carte de crédit peut par
exemple être caractérisé en termes de dépenses à l’international, afin d’éviter le déclenchement
de fausses alarmes pour les clients qui voyagent fréquemment.
Les systèmes de profilage reposent sur les concepts que nous avons vus précédemment. Ils
peuvent impliquer du clustering si la population est composée de sous-groupes de comporte-
ments distincts. La plupart des systèmes de profilage semblent complexes à première vue,
alors qu’ils sont essentiellement structurés selon le concept fondamental du chapitre 4 :
définir une fonction numérique avec certains paramètres, définir un but ou un objectif final,
et trouver les paramètres qui optimisent cet objectif.
Nous allons dès maintenant introduire un exemple de profilage appliqué à la gestion des opé-
rations commerciales. Les entreprises souhaitent utiliser les données pour estimer la qualité
de l’assistance offerte à leurs clients par leurs centres d’appels4. Une manière de bien aider les

1704
clients consiste à ne pas les laisser en attente trop longtemps. Alors comment caractériser le
temps d’attente typique des clients qui souhaitent joindre nos centres d’appels ? Nous pour-

3947
rions calculer la moyenne et l’écart-type des temps d’attente.
C’est exactement ce qu’un manager avec des connaissances élémentaires en statistiques ferait

5:16
– c’est en réalité un exemple très simple de modélisation. Voici pourquoi. Supposons que les
temps d’attente suivent une distribution normale ou gaussienne. Une personne non habituée

.63.4
aux mathématiques peut éprouver quelque appréhension en lisant ces termes, mais cela
signifie simplement que la distribution suit une courbe en forme de cloche, avec quelques
.121
propriétés particulières. Et surtout, elle représente un profil des temps d’attente qui (en
l’occurrence) comprend uniquement deux paramètres importants : la moyenne et l’écart-type.
:196

En les calculant, nous déterminons le meilleur profil ou modèle de temps d’attente en suppo-
sant qu’il est normalement distribué. Dans ce cas, le « meilleur » correspond à la notion que
2

nous avions évoquée pour la régression logistique, par exemple, la moyenne calculée à partir
6149

des dépenses nous donne la moyenne de la distribution gaussienne la plus susceptible de


générer les données (le modèle du maximum de vraisemblance).
:888

Cet exemple montre pourquoi un point de vue orienté data science peut nous aider même
1051

dans les scénarios les plus simples : nous comprenons mieux ce que nous faisons en calculant
les moyennes et écarts-types, mêmes lorsque nos cours de statistiques sont un peu trop loin-
1064

tains. Il convient aussi de garder à l’esprit nos principes fondamentaux introduits au


chapitre 4 et développés au chapitre 7 : nous devons définir précisément ce que sont nos
objectifs en utilisant la data science. En l’occurrence, nous souhaitons déterminer le temps
e:21

d’attente normal de nos clients. La représentation graphique des données nous permet alors
:Non

de voir si elle ressemble à une distribution gaussienne (une courbe symétrique en forme de
cloche qui atteint très vite zéro aux extrémités). Si ce n’est pas le cas, nous devrons trouver
x.com

autre chose que les simples mesures de la moyenne et de l’écart-type. Le calcul de la médiane,
qui n’est pas très sensible au biais, est une option ; ou encore mieux, modéliser une distribu-
tion différente (peut-être en ayant préalablement consulté un data scientist familier des statis-
larvo

tiques pour savoir quelle mesure est la plus parlante).


scho

4. Le lecteur intéressé pourra se référer à Brown et al. (2005) pour les détails techniques et au sujet de l’application.
univ.

Vous aimerez peut-être aussi