Il y a presque 20 ans, Paul-André Rosental, Gilles Postel-Vinay, Akiko Suwa-Eisenmann et Jérôme Bourdieu publiaient Migrations et transmissions inter-générationnelles dans la France
du XIXe et du début du XXe siècle qui présentait le graphique ci-dessous,
On est tombé sur ce graphique avec Ewen Gallic en écrivant notre article Using Collaborative Genealogy Data to Study Migration (qui paraîtra très bientôt dans le journal The History of the Family). Classiquement dans un article académique, on a besoin de se positionner par rapport à la littérature existante. Avec nos propres données, et nous avions construit l’histogramme suivant
histoire de montrer que nous retrouvions cette forme bimodale. Depuis le début, je suis pas très confortable avec ce graphique, mais on l’a laissé non pas pour ses vertus sémiologiques, mais parce qu’il valide notre approche, en obtenant des résultats comparables à d’autres, déjà établis dans la littérature.
Je repensais à tout ça avant hier, en mentionnant sur twitter le graphique suivant
qui contient quelque chose de similaire, à savoir une espèce d’histogramme en bleu, sauf que la largeur des bandes décroit ici de manière logarithmique…
Je suis très mal à l’aise face à ces graphiques, parce que je ne sais pas comment les interpréter. Mais peut-être faut-il revenir à la base, pour comprendre ce qu’on fait.
On a un échantillon \{x_1,\cdots,x_n\} disons de montant d’impôt payé. On a un échantillon comme on dit en statistique descriptive. En statistique mathématique, on suppose que les x_i sont des réalisations de variables aléatoires. On pourrait ainsi dire que x_i=X(\omega_i) où X est une variable aléatoire définie sur un espace probabilisé (\Omega,\mathcal{A},\mathbb{P}). Pour rappel, \Omega, c’est l’univers, une espèce d’espace fondamental abstrait. Sur le site les-mathématiques, on nous dit que \Omega est l’espace des observables, ce qui me déplait assez car pour moi, justement \Omega est un espace abstrait. En théorie de la décision, si on reprend par exemple Probability and Uncertainty in Economic Modeling, on parle d’états de la nature (c’est aussi la terminologie que l’on retrouve dans States of Nature and the Nature of States). Et assez souvent, on oublie cet espace, grâce au théorème de transfert : en effet, si on a une variable aléatoire réelle, X:\Omega \rightarrow \mathbb {R} , alors {\displaystyle \mathbb {E} \left[\varphi (X)\right]=\int _{\Omega }\varphi {\big (}X(\omega ){\big )}\mathbb {P} (\mathrm {d} \omega )=\int _{\mathbb {R} }\varphi (x)\mathbb {P} _{X}(\mathrm {d} x)} ce qui veut dire, de manière polie, qu’on ne se place jamais sur ces espace fondamental, mais on regarde juste leur “transfert” sur la droite réelle (ici, je vais me contenter du cas unidimensionnel), c’est à dire la “valeur” prise par la variable aléatoire (je reviendrai tout à l’heure sur ces écritures sous forme intégrales). C’est un abus de langage que l’on fait quand on dit que pour un lancer de dé, l’univers est \Omega = \{1, 2, 3, 4, 5, 6\}, correspondant aux valeurs des faces du dé. En fait, l’espace fondamental, des “états de la nature” peut être plus compliqué que ça, mais pour mieux comprendre, on va le “transférer” sur l’espace comptable \{1, 2, 3, 4, 5, 6\}. Mais je commence à m’écarter du sujet, surtout que je m’étais promis que je ne ferais pas (trop) de théorie de la mesure. L’autre raison est que je pense que ce n’est pas exactement la formalisation qu’on utilise en statistique. Je pense que x_i=X_i(\omega) où les variables X_1,\cdots,X_n sont des variables aléatoires indépendantes, et de même loi. Pourquoi ? Avec les notations précédentes, on dispose de l’échantillon suivant
que l’on peut voir comme une réalisation des variables aléatoires suivantes
Une statistique sera alors une fonction construit sur notre échantillon, \hat{\theta}=h(x_1,\cdots,x_n) , par exemple la moyenne (empirique)
qui est alors un nombre. Mais ça peut être aussi une variable aléatoire, \hat{\theta}=h(X_1,\cdots,X_n) , soit ici, pour la moyenne
La principale difficulté est qu’en statistique mathématique, on utilise la même notation, \widehat{\theta} pour deux objets de nature très différentes. Et donc avoir des abus de langage, en pouvait dire en cours “ici la moyenne vaut 37.5%” et ensuite demander de “calculer la variance de la moyenne”. Mais là encore, je m’écarte. Revenons à notre variable aléatoire X. Souvent, on va essayer de décrire sa loi de probabilité.
Le plus simple est de passer par la fonction de répartition, définie sans ambiguïté par F(x) = \mathbb{P}[\{\omega\in\Omega:X(\omega)\leq x\}] (ce qui a du sens cas la mesure de probabilité \mathbb{P} est effectivement définie sur l’espace des états de la nature \Omega. Mais par abus de langage, on se contentera de noter F(x) = \mathbb{P}[X\leq x] . Supposons maintenant que notre variable X est absolument continue. Alors dans ce cas – ça correspond je pense au premier théorème de l’analyse – F(x)=\int _{-\infty}^{x}f(t) dt, où f est alors la densité de la variable aléatoire. Le point un peu subtile ici est que l’intégrale est ici définie par rapport à la mesure de Lebesgue (ce qui permet de définir proprement ce qu’est ce dt à la fin de l’intégrale). Mais oublions ce point un instant.
On arrive enfin au premier point auquel je voulais arriver : pour les variables (absolument) continue, on peut “représenter” leur loi par leur densité. C’est le dessin ci-dessus, si X est une variable qui suit une loi lognormale
u=seq(0,1000,length=251) v=dlnorm(u,5,1) plot(u,v,type="l",xlab="",ylab="") |
L’interprétation est simple : comme la probabilité \mathbb {P} (a<X\leq b) se calcule alors par la relation suivante : \mathbb {P} \left(a<X\leq b\right)=\int _{a}^{b}f(t)dtla probabilité \mathbb {P} (a<X\leq b) se lit comme l’aire sous la courbe sur l’intervalle [a, b].
Parmi les estimateurs usuels de la densité, on peut utiliser un histogramme. Même si c’est un objet que tout le monde manipule depuis ses cours au secondaire, la construction formelle de cet objet est un peu technique. En effet, le premier point est qu’il faut découper l’ensemble des valeurs prises par les observations x_i – disons (a,b] – en une partition, c’est à dire un ensemble d’intervalles disjoints qui vont recouvrir (a,b], I_1,\cdots,I_k. Le plus simple est d’avoir une partition régulière, I_1=(a,a+(b-a)/k], I_2=(a+(b-a)/k,a+2(b-a)/k], etc. Généralement, I_j=(a+(b-a)(j-1)/k,a+(b-a)j/k]. Et classiquement, on construit un histogramme en comptant le nombre d’observations dans chacun des intervalles,
x=rlnorm(500,5,1) hist(x,xlim=c(0,1000),breaks=seq(0,10000,by=100)) |
C’est l’histogramme classique, avec un pas de 100.
hist(x,xlim=c(0,1000),breaks=seq(0,10000,by=100),probability=TRUE,ylim=c(0,.005)) lines(u,v,col="red") |
Pour avoir une densité (i.e. une “fonction en escalier qui va s’intégrer à 1”) il faut normaliser la hauteur (en divisant par le pas). On peut d’ailleurs superposer la densité de la loi lognormale.
Dans les graphiques que je présentais, on utilise en échelle logarithmique en abscisse. On peut le faire avec R en demandant
plot(u,v,log="x",type="l") |
ce qui correspond aux graphiques précédant. On peut aussi, à la main, dire qu’on veut non plus voir \{x,f(x)\} mais \{\log(x),f(x)\}.
plot(log(u),v,type="l") |
L’aire précédente devient alors
Visuellement, on raisonne par comparaison. Quand on dit que la densité est une aire sous la courbe, en réalité, c’est la proportion de l’aire sous la courbe (par rapport à l’aire totale) qui nous parle. Mais autant le faire avec deux aires, pour mieux comprendre. A droite, en rouge, on a la probabilité d’avoir une valeur entre 200 et 600, soit ici environ 30%.
plnorm(600,5,1)-plnorm(200,5,1) [1] 0.3015131 |
et en bleu, on a la probabilité d’être entre 92 et 200, qui vaut là aussi environ 30%
plnorm(200,5,1)-plnorm(92,5,1) [1] 0.3010197 |
Ici les deux aires sont égales. On notera que ce n’est pas forcément évident, au premier coup d’œil, et l’asymétrie (vers la droite) laisse à croire que l’aire rouge est peut-être plus grande. Mais passons.
Considérons maintenant notre échelle logarithmique, en abscisse,
ou alors la version sur le logarithme des abscisses,
Comme on le notait auparavant, on aime ce graphique car on reconnait une forme de densité de “loi normale” (ce qui pourrait faire du sens, car on obtient une loi lognormale justement en prenant l’exponentielle d’une loi normale…). Cela dit, on a clairement un problème d’échelle ici, car l’aire totale sous la courbe vaut moins de 1%… autrement dit, on est loin de 1. Mais on peut quand même retrouver une loi normale,
lines(u2,dnorm(u2,4,1)/90,col="blue") |
(on pourra noter d’ailleurs que non seulement, il a fallu diviser par 90, mais la moyenne est ici 4, et pas 5). Comme on a la densité d’une loi normale (à une transformation près), on peut facilement faire des calculs, en particulier, calculer les deux aires, rouges et bleues
range(log(c(u[I],rev(u[I])))) [1] 5.300315 6.396263 pnorm(range(log(c(u[I],rev(u[I])))),4,1) [1] 0.9032535 0.9917184 diff(pnorm(range(log(c(u[I],rev(u[I])))),4,1)) [1] 0.08846485 diff(pnorm(range(log(c(u[I2],rev(u[I2])))),4,1)) [1] 0.2019666 |
Aussi, l’aire bleue vaut ici plus du double de l’aire rouge. Autrement dit, si on interprète la courbe comme une densité sur le graphique ci-dessous
on a intuitivement envie de dire qu’il y a 2 fois plus de chance d’avoir une valeur entre 92 et 200 qu’entre 200 et 600. Ce qui est faux.
Si on essaye de comprendre un peu mieux, je vais revenir sur deux points… La première c’est que, aussi étrange que ça puisse paraître, c’est presque un coup de chance qu’en prenant une échelle logarithmique, on obtient une densité lognormale. On avait écrit un article avec Emmanuel Flachaire (Log-Transform Kernel Density Estimation of Income Distribution) qui revenait sur l’importance de cette transformation logarithmique. Mais ici, c’est un peu différent. On a en effet deux graphiques : le premier c’est \{x,f(x)\} alors le second c’est \{\log(x),f(x)\}, soit, en faisant un changement de variable y=\log(x) (ou x=e^y), c’est \{y,f(e^y)\}. Or dans le premier cas, on avait une loi lognormale, autrement dit f(x )=\frac {1}{x\sigma {\sqrt {2\pi }}}\exp \left(-\frac {(\log x-\mu )^{2}}{2\sigma ^{2}}\right)={\frac {1}{x}}\phi(\log(x);\mu ,\sigma^2 )où \phi est la densité de la loi normale centrée réduite. Si on regarde le second graphique, \{y,f(e^y)\}, on représente alors \{y,e^{-y}\phi(y;\mu ,\sigma^2 )\}. La magie va opérer parce qu’on peut rentrer le e^{-y} dans la densité de la loi normale, ce qui donnera deux choses (1) une translation de la moyenne, (2) un facteur multiplicatif sur la densité. Ce sont les deux phénomème que nous avions observé ici. Si on détaille un peu e^{-y}\exp \left(-\frac {(y-\mu )^{2}}{2\sigma ^{2}}\right)=\exp \left(-\frac {(y-[\mu-\sigma^2] )^{2}}{2\sigma ^{2}}+\star\right)où on retrouve la translation de 1 de moyenne (centrée sur 4 et non plus sur 5, mais c’est logique puisqu’on avait pris \sigma^2 ayant pour valeur 1. Je laisse les plus courageux calculer le \star qui va donner le facteur multiplicatif. Le second point est un peu plus technique, il est lié à un problème de mesure. Dans le premier cas, quand on faisait un calcul d’intégrale, on avait un dx et dans le second cas, on calcule des aires avec un dy, mais ce n’est pas la bonne transformation. En effet, si y=\log(x) (ou x=e^x) alors dx=e^ydy. Plus formellement, dans le premier cas, quand on calculait \mathbb{P}[X\in[a,b]] on calculait l’intégrale \int _{a}^{b}f(x) dx. Dans le second cas, on calcule \int _{\alpha}^{\beta}f(e^y) dy puisqu’on visualise la courbe \{y,f(e^y)\}. Mais si on fait un changement de variable propre \int _{\alpha}^{\beta}f(e^y) dy=\int _{a}^{b}f(x) \frac{dx}{x}qui n’est plus du tout l’intégrale qu’on cherche à calculer. Je pense que cette histoire de dy correspondant à x^{-1}dx pourrait avoir une interprétation en terme de changement de mesure (la mesure de référence n’est plus la mesure de Lebesgue, qui nous donne une relative uniformité sur l’axe des abscisses, et permet de faire un lien avec l’intégrale “classique” – au sens de Rieman).
Bref, cette histoire de mettre une échelle logarithmique en abscisse pour visualiser une densité est très perturbant. L’intuition que l’on peut en avoir est biaisée, et l’objet mathématique que l’on créé est complexe…