All posts by Arthur Charpentier

Arthur Charpentier, professor in Montréal, in Actuarial Science. Former professor-assistant at ENSAE Paristech, associate professor at Ecole Polytechnique and assistant professor in Economics at Université de Rennes 1.  Graduated from ENSAE, Master in Mathematical Economics (Paris Dauphine), PhD in Mathematics (KU Leuven), and Fellow of the French Institute of Actuaries.

Déclarer ou révéler, retour sur les sondages

Voilà une semaine, je mettais en ligne un court billet “les sondages et le bruit” sur les sondages, et leur biais, en préparation pour une intervention en milieu de semaine, sur Paris. Mais cette semaine, je voulais continuer à assembler mes notes de lecture…

  • Déclarer ou révéler

Bon, on va commencer par enfoncer des portes ouvertes, mais il est toujours bon de relire “l’opinion publique n’existe pas” de Bourdieu.

Toute enquête d’opinion suppose que tout le monde peut avoir une opinion ; ou, autrement dit, que la production d’une opinion est à la portée de tous. Quitte à heurter un sentiment naïvement démocratique, je contesterai ce premier postulat. Deuxième postulat : on suppose que toutes les opinions se valent. Je pense que l’on peut démontrer qu’il n’en est rien et que le fait de cumuler des opinions qui n’ont pas du tout la même force réelle conduit à produire des artefacts dépourvus de sens. Troisième postulat implicite : dans le simple fait de poser la même question à tout le monde se trouve impliquée l’hypothèse qu’il y a un consensus sur les problèmes, autrement dit qu’il y a un accord sur les questions qui méritent d’être posées. Ces trois postulats impliquent, me semble-t-il, toute une série de distorsions qui s’observent lors même que toutes les conditions de la rigueur méthodologique sont remplies dans la recollection et l’analyse des données.

Cela dit, j’irais probablement plus loin, en disant que le sondage crée une opinion, au sens où la personne interrogée se force à chercher la réponse à une question qu’elle ne s’était peut être jamais posée. Ou pas encore posée, dans le cas des sondages électoraux. Mais c’est le principe même des sondages, les personnes interrogée devant déclarer pour qui elles comptent voter le jour de l’élection (avec toutes sortes d’autres questions).

D’ailleurs, un des problèmes de cette “déclaration” est le biais de “désirabilité sociale“: les personnes interrogées aimer se présenter sous un jour favorable à l’enquêteur. Le vote pour Trump a été comme le vote pour le Front National (historiquement), quelquechose d’inavouable. Le soucis, c’est qu’il est difficile d’estimer ce biais. En France, une correction était possible, en tenant compte de la différence entre les sondages, et les résultats sur des élections passées. Mais aux Etats-Unis, il n’y avait pas de précédant.

Et si on va plus loin, on peut se demander s’il est pertinent d’utiliser des enquêtes sur les intentions de votes comme outils de prévision électorale. Ne pourrait-on pas y voir pour les personnes interrogées, de “mini-élection”, avec moins d’impact? Ne peut-on pas imaginer l’électeur socialiste, qui se dirait “et si je disais que je vais voter pour Jean-Luc Mélanchon, ça permettra peut être de tirer un peu plus vers la gauche, même si le jour J je voterais probablement pour Benoît Hamon” (le fameux vote “utile”). Compte tenu de l’importance des sondages pour les journalistes politiques, ne peut-on imaginer que les personnes interrogées jouent un jeu un peu plus subtile que juste réponse à une question sur leurs intentions de vote ? C’est un biais bien connu en économie expérimentale, lorsque l’on cherche à connaître les préférences des agents, entre les préférences déclarées et celles qui sont révelées.

  • Les sondeurs sont ils (vraiment) si mauvais ?

Les erreurs sont souvent bien connues. On peut penser aux élections en Angleterre de juin 1970, lorsque Harold Wilson perdit face à Edward Heathà la surprise générale (la légende prétend qu’il avait même vendu sa maison, tellement il était certain de rester au 10 Downing Street). En France, le choc d’avril 2002 reste dans la mémoire collective. Comment les instituts de sondages n’avaient pas vu venir le second tour entre Jacques Chirac et Jean-Marie Le Pen? C’est le repproche qui avait été fait, à l’époque, où les sondeurs ont été tenu pour responsable. Etrangement, retrospectivement, le risque était présent. Mais personne n’ausait l’admettre. Plus récement, en juin 2016, c’était le choc du Brexit, et en décembre 2016, c’était l’élection de Donald Trump. Si beaucoup on critiqué les sondages suite à son élection, il convient de relire certains articles publiés à cette époque. Par exemple, mi-octobre, “pourquoi des sondages donnent encore Trump gagnant ?“, parmi tant d’autres (oui, nous avons une mémoire très sélective).

Ce qui semble être reproché aux instituts de sondages, c’est leur opacité, et leur manipulation des chiffres. Mais il faut leur donner raison. Comme le dit la loi, “les listes électorales peuvent être consultées par tout électeur (même inscrit sur une autre commune) à condition de ne pas les utiliser à des fins commerciales“. Autrement dit, les instituts de sondages ne peuvent pas les utiliser pour constituer un plan de sondage. Ne pouvant faire de vrai sondage aléatoire, il faut donc ruser, et on va échantillonner par quotas. C’est ce qu’on appelle du redressement. Pour faire simple, on applique des poids pour se rapprocher de la “population de base”. Qu’on ne connait pas. Idéalement, on aimerait bien connaître ces gens inscrits sur les listes. Mieux encore, connaître ceux qui iront effectivement voter (car ce sont vraiment ces personnes qui nous intéressent). Si aucun homme ne va voter, le jour J, il conviendrait de faire un échantillon de sondage avec uniquement des femmes. Encore une fois, comprendre l’abstention est essentiel.

Pour faire les quotas, on utilise des données géographiques, mais aussi d’âge, de genre, et de catégorie soci-professionnelle. En fait, cette dernière est (malheuresement) seulement une catégorie profesionnelle. On pensera à cette merveilleuse catégorie des “inactifs” qui correspond à des réalités très différentes. On utilise très peu les données de niveau d’étude par exemple, comme le rappelle Avner dans les sondages sont-ils devenus fous, les personnes faiblement diplômées sont faiblement présentes dans les sondages,

Il devient nécessaire de faire des redressements. Mais ces derniers n’ont de sens que s’il bien faits. Certains préconisent d’ailleurs des catégories “socio-affinitaires“, et non plus socio-professionnelles.

  • On veut des chiffres !

Allez, quelques chiffres, que j’ai découvert dans l’article les sondages sont-ils devenus fous d’Avner Bar-Hen, qui permettent d’avoir un ordre de grandeur intéressant. Pour faire une enquête, on peut avoir envie d’avoir 5000 personnes qui répondent à une liste de questions. Mais combien de personnes faut-il solliciter, par téléphone, pour avoir 5000 réponses. La réponse est simple, plus de 15 fois plus : pour avoir 5240 réponses, il a été nécessaire de composer 84000 coups de fils,

  • Des intensions de vote à une probabilité de gagner

Les sondages reposent sur la théorie de l’échantillonnsages, et il y a une part (importante) d’incertitude, comme on le voyait la dernière fois. Et comme le savent les statisticiens, il est possible de mal faire son travail, mais d’avoir de la chance, et de faire une bonne prévision, mais aussi de faire son travail correctement, et de se tromper lourdement.

Ce qui m’a intéressé lors des dernières élections américaines, c’est qu’on ne regarde pas le nombre de voix (prédit), mais la probabilité de gagner, pour tel ou telle candidat. Ce qui a du sens quand on pense au mode de scrutin. Mais traduit dans un contexte plus français (où on se place entre les deux tours), la probabilité de gagner est une information sur l’incertitude du sondage.

> simu=function(i){
+ n=1+2000
+ vote=sample(c("A","B"),size=n,
+ replace=TRUE,prob=c(.515,.485))
+ france1=mean(vote=="A")
+ n=1+200
+ vote=sample(c("A","B"),size=n,
+ replace=TRUE,prob=c(.515,.485))
+ france2=mean(vote=="A")
+ prop=c(france1,france2)
+ names(prop)=c("FR1","FR2")
+ return(prop)
+ }
> Sbi=Vectorize(simu)(1:1e4)
> plot(density(Sbi[1,]))

Ici, le candidat rouge a 15% de chances de gagner, contre 85% pour le candidat bleu. Avec 2000 personnes interrogées. Mais si on a seulement 200 personnes interrogées, on passe à 40% de chances de gagner pour A.

> plot(density(Sbi[2,]))

Autrement dit, la probabilité de gagner est, à mon sens, essentiellement une information liée à l’incertitude qui entoure le scrutin.

  • Quid du… “big data” ?

Allez, mettons enfin les pieds dans le plat… pourquoi pas utiliser “le big data”? Oui, le “big data” peut tout, je pense qu’il peut même assurer le retour de l’être aimé, alors il doit bien pouvoir prédire qui va gagner une élection…

Il y a 15 ans, internet n’était pas considéré comme un média. Personne n’osait trop faire des sondages en ligne*. Cette époque est révolue*. Au point que bon nombre se sentent aujourd’hui observés, et adoptent des stratégies, des comportements, qu’il convient de décoder en prenant des précautions.

L’écoute de la toile permet d’éviter l’écueil du déclaratif, pour observer, et induire des tendances, des comportements. Il serait intéressant de voir ce qu’en pensent les data scientists de chez Facebook par exemple. Comme le notait Stéphane Rozès, “si la France est une grande consommatrice de sondages, l’idée même qu’un statisticien puisse annoncer en amont le résultat de l’élection est baroque et attentatoire à l’imaginaire politique français.C’était en 2013. Depuis, comme le montre the pulse of the people, l’analyse des tweets (par exemple) permet d’observer beaucoup de choses. La difficulté est que si une équipe électorale sait ce qui est observé, il est aisé de créer des robots pour manipuler l’analyse. Le jeu du chat et de la souris peut commencer.

Mais il n’en reste pas moins que l’analyse des traces laisses sur la toile est importante, et les instituts de sondages le savent. Un “like” est une information intéressante, de même que savoir les pages vues, et les liens partagés. Cela dit, si on pousse un peu le raisonnement, comme le faisait Andrew Gelman dans un article paru au début du mois dans Science, si on était capable de prédire parfaitement le résultat d’une élection, cette dernière devient superflue, non ?

* ce qui est intéressant, c’est que dans le cas du Brexit, ce sont justement les sondages en ligne qui avaient “prévu” la victoire du leave, contrairement aux sondages téléphoniques qui donnaient le remain en tête….

Genre et tarification assurantielle: corrélation ou causalité?

L’article La tarification par genre en assurance, corrélation ou causalité ?, coécrit avec Katrien Antonio, devrait paraître dans les jours à venir dans Risques.

La segmentation en matière d’assurance évoque la classification qu’un assureur opère, selon différents critères, en vue de fixer la cotisation, de telle sorte qu’elle reflète, du mieux possible, le risque représenté par chaque assuré. On parlera ainsi de « segmentation tarifaire ». Et classiquement, les modèles économétriques de régression permettent de capturer les variables les plus corrélées avec la fréquence des sinistres, ou leur coût. Mais, comme le notait Davet [2015], « si la corrélation globale entre âge et coût du risque santé est indéniable, les relations de causalité sont moins simples qu’il n’y paraît ». La corrélation, pourtant importante, entre sinistralité et genre en assurance automobile ne peut plus être évoquée pour créer une discrimination tarifaire depuis décembre 2012*. Mais comme nous allons le voir, les objets connectés permettent de récupérer les vraies variables tarifaires (causales) dont le genre n’était alors qu’un proxy.

L’article reprend plusieurs de éléments Unraveling the Predictive Power of Telematics Data in Car Insurance Pricing, de Roel Verbelen, Katrien Antonio et Gerda Claeskens.

Actuarial Pricing Game, with Reinsurance

The Third Actuarial Pricing Game is still open, the deadline for submission is still February 25th. As mentioned in the instructions, for those willing to play in a market where reinsurance is available, here are the prices offered by some reinsurance company.

As mentioned in the description, the price is per insurance policy, per year. Players should send me their premiums in a csv file, gross of reinsurance, and mention in the email that they want to purchase treaty (A) – for instance (and mention explicitly in the object of the email that they want to play in this specific market, where reinsurance is available).

Les sondages et le bruit

Après les sondages pour les présidentielles l’été passé, on commence à crouler sous les sondages, en France, pour la prochaine élection présentielle. Avec les questions que ça induit. Et loin de moi l’idée de faire un billet sur les sondeurs sont des gros nuls, parce que c’est quand même plus compliqué que ça. Et il est normal de faire des erreurs, comme le rappelait  Ranganathan (2014). Et comme on m’a convié dans deux semaines à une table ronde sur les sondages, je me suis dit qu’il serait temps que je travaille un peu.

Même si ça semble être des banalités, les élections américaines et les élections en France sont très différentes.

Premier point, les 538 grands électeurs, contre un vote direct en France. Quand on estime la probabilité de gagner on obtient des choses très différentes.

On peut faire des simulations pour s’en rendre compte

simu=function(i){
n=1+2000
vote=sample(c("A","B"),size=n,replace=TRUE,prob=c(.51,.49))
region=sample(1:50,size=n,replace=TRUE)
france=mean(vote=="A")
us=aggregate(vote,by=list(region),function(x) mean(x=="A"))$x
prop=c(france,mean(us>1/2))
names(prop)=c("FR","US")
return(prop)
}
S=Vectorize(simu)(1:1e4)
plot(density(S[1,]))

En France, en interrogeant 2000 personnes, on a une très faible incertitude sur probabilités réelles, et dans 82% des scénarios, le candidats qui a 51% d’intention de vote est déclaré vainqueur.

> mean(S[1,]<.5)
[1] 0.1841

Aux Etats-Unis (ou disons une simulation d’une élection avec un collège électoral, avec ici 50 grands électeurs), c’est une autre histoire.

plot(density(S[2,]))

Dans un tiers des cas, on se trompe sur le vainqueur.

> mean(S[2,]<.5)
[1] 0.3319

Et la distribution de la couleur des grands électeurs peut être très volatile… allant de 30% à 70% pour A, alors la moitié du peuple a voté pour lui.

Deviner qui va gagner est un exercice manifestement compliqué aux Etats-Unis, à cause de ces grands électeurs. Et je ne parle pas du fait qu’estimer une probabilité très finement ne présage en rien du résultat final, comme  je l’avais dit dans un précédant billet.

Deuxième point, le nombre de candidats dans la course. Un simplifiant un peu, ils sont deux aux Etats-Unis, avec (quasiment) un vote en un tour, alors qu’en France, ils sont plus nombreux, avec un vote en deux tours, et une règle qui dit que seuls les deux premiers accèdent au second tour.

Commençons par le cas simple, avec quatre candidats, et une élection à un tour (à la majorité)

simu=function(i){
n=1+2000
vote=sample(c("A","B","C","D"),size=n,replace=TRUE,prob=c(.27,.26,.24,.23))
tb=table(vote)
return(names(which.max(tb)))
}
S=Vectorize(simu)(1:1e4)
barplot(table(S))

Pour passer au second tour, on imagine qu’il faut comprendre comment se passe le report des voix. On va supposer qu’il existe une espèce d’ordre, entre les candidats, A, B, C et D. Si son candidat ne passe pas le prochain tour, on vote pour un voisin. Autrement dit, A ne votera jamais pour C, ni pour D.  Mais si B est candidat, il votera pour lui. Par contre, si B a le choix entre A et C, on va supposer que l’électorat se partage en deux, entre A et C. Par contre, il ne votera jamais pour D.

simu=function(i){
n=1+2000
probabilite=c(.27,.26,.24,.23)
vote=sample(c("A","B","C","D"),size=n,replace=TRUE,prob=probabilite)
tb=table(vote)+rnorm(4)/1000
perdants=LETTERS[1:4][(rank(tb)%in%1:2)]
if(("A"%in%perdants)&("B"%in%perdants)) prob2=c(0,0,probabilite[2]+probabilite[3],probabilite[4])
if(("A"%in%perdants)&("C"%in%perdants)) prob2=c(0,probabilite[2]+probabilite[1]+probabilite[3]/2,0,probabilite[4]+probabilite[3]/2)
if(("A"%in%perdants)&("D"%in%perdants)) prob2=c(0,probabilite[2]+probabilite[1],probabilite[4]+probabilite[3],0)
if(("B"%in%perdants)&("C"%in%perdants)) prob2=c(probabilite[2]+probabilite[1],0,0,probabilite[4]+probabilite[3])
if(("B"%in%perdants)&("D"%in%perdants)) prob2=c(probabilite[1]+probabilite[2]/2,0,probabilite[3]+probabilite[2]/2+probabilite[4],0)
if(("C"%in%perdants)&("D"%in%perdants)) prob2=c(probabilite[1],probabilite[2]+probabilite[3],0,0)
vote=sample(c("A","B","C","D"),size=n,replace=TRUE,prob=prob2)
tb=table(vote)
return(LETTERS[which.max(tb)])
}
S=Vectorize(simu)(1:1e4)
barplot(table(S))

Le résultat est vraiment différent. Et la clé est le report des voix, entre les deux tours. Aussi, deviner qui va gagner est un exercice manifestement compliqué en France, à cause de ces deux tours.

Au delà des systèmes de votes, il existe quand même des similitudes, quand on parle d’incertitude dans les sondages. Classiquement, on pense au biais d’estimation. Parce qu’il correspond à ce que toute personne ayant fait un peu de statistiques (ce qui représentera bientôt la majorité des français, si j’en crois les réformes du programme du lycée) doit savoir (je n’ai pas dit compris). C’est le fameux « le sondage IFOP publié jeudi dans France-Soir a, quant à lui, été mené auprès de 1 046 personnes, soit une marge d’erreur d’environ 2,5 % » . Il s’agit de la marge d’erreur.

Mais ce n’est pas la seule source d’erreur, loin de là ! La base des sondages, c’est d’avoir un échantillon aléatoire de votants (au sens de personnes qui iront voter), et d’extrapoler ensuite sur la population entière, éventuellement en pondérant les réponses. Les poids sont là pour corriger de différences observables entre la population entière, et la population interrogée. Classiquement, on va utiliser des variables démographiques (âge, genre, profession, région, etc) dans la population des électeurs. Par exemple, si sur les listes électorales on a 50% d’hommes et 50% de femmes, mais que dans notre échantillon, il y a deux fois plus d’hommes que de femmes, on va généralement attribuer un poids de 2 pour les femmes, et de 1 pour les hommes afin de corriger. Malgré tout, on peut observer une différence entre les votes estimés, et la réalité le jour du vote. Une des raisons est que la population des votants peut être différente de celle des populations inscrites sur listes électorales. Si les hommes s’abstiennent beaucoup plus que les femmes, la correction utilisée ne suffira pas. C’est ce qu’on pourrait appeler une erreur de framing. Cette dernière correspond à l’erreur que l’on fait quand la population réelle et la population de l’échantillon diffère. L’exemple classique était lié à l’utilisation du téléphone pour constituer des listes de sondés. Avec cette méthode, les personnes sans téléphone (ou sur liste rouge) étaient systématiquement exclues.

Le second problème est le traitement des non-réponses. Si la non-réponse est un phénomène purement aléatoire, imprévisible, dans ce cas, ça va juste augmenter la variance. C’est ce qu’on observe sur l’exemple ci-dessous. Si tout le monde répond, on a

simu=function(i){
n=2000
vote=sample(c("A","B"),size=n,replace=TRUE,prob=c(.51,.49))
return(mean(vote=="A"))
}
S=Vectorize(simu)(1:1e4)

Supposons maintenant que 50% des gens ne répondent pas

simu=function(i){
n=2000
vote=sample(c("A","B",NA),size=n,replace=TRUE,prob=c(.51/2,.49/2,.5))
return(mean(vote[!is.na(vote)]=="A"))
}
S=Vectorize(simu)(1:1e4)

On a davantage de dispersion, mais on n’a pas de biais. Autrement dit, le nombre de cas où A est effectivement en tête sur le sondage est du même ordre de grandeur, avec ou sans non-réponse.

Par contre, si les électeurs de A ont davantage tendance à ne pas répondre, c’est une toute autre histoire

simu=function(i){
n=2000
vote=sample(c("A",NA,"B",NA),size=n,replace=TRUE,prob=c(.51*.8,.51*.2,.49*.9,.49*.1))
return(mean(vote[!is.na(vote)]=="A"))
}
S=Vectorize(simu)(1:1e4)

Autrement dit, si la non-réponse est liée au vote, on a un biais causé par la non-réponse. C’est le cas lorsque les personnes votant pour un des candidats n’osent pas révéler. C’est ce que montre très bien Fuchs, Bossert & Stukowski (2013).

Un autre exemple connu en sondage est lié à l’ordre des questions, comme le soulignait McFarland (1981), ou même les mots utilisés, pour reprendre Smith (1987). On peut rapprocher ce biais au biais dit de spécification, lorsqu’il y a une mauvaise compréhension de la question.

Enfin (et je m’arrêterais là), il reste un biais important, qui est un biais d’indécision, pour personnes indécises ou qui pourraient juste changer d’avis entre deux dates.

Compte tenu de tous ces biais, on voit qu’il est compliqué d’estimer l’erreur associée à un sondage. En tous cas, on se doute que le fameux « Le sondage IFOP publié jeudi dans France-Soir a, quant à lui, été mené auprès de 1 046 personnes, soit une marge d’erreur d’environ 2,5 % » implique une (forte) sous-estimation de l’incertitude. En fait, si on en croit Shirani-Mehr et al. (2016), la marge d’erreur pourrait être deux fois supérieure, avec un RMSE de ±7% sur l’intervalle de confiance et non pas ±3%. J’aurais donc tendance à croire que les sondages rajoutent essentiellement une information très bruitée dans le climat pré-élections.

Prédire ou Prévoir, réflexions (probablement) personnelles

Il y a quelques années, j’avais fait un billet où je m’énervais contre une phrase que j’avais entendu (“l’homme qui avait prédit la crise). Le point de départ était surtout un énervement lié au fait que beaucoup de journalistes vivent avec des oeillères (par exemple en associant “économiste” à “type à la télé qui parle d’économie“), et ne connaissent pas la diversité de la communauté des économistes (surtout que la pluralité n’est pas vraiment une vertue présente dans les grands médias, la manière dont sont présentés les différents candidats à la future élection présidentielle peut en être une illustration). Mais je m’écarte…. en fait, un de mes points portait sur l’utilisation du terme “prédit“.

Avec un peu de recul, je ne sais pas si la langue française à changé depuis, mais j’aurais envie de revenir sur ma distinction entre “prévoir” et “prédire“. Prévoir et prédire ont deux racines latines distinctes, prévoir venant du latin praevidere, et prédire de praedicere. Beaucoup notent que “prédire” a longtemps eu le sens de “prophétiser“, où l’annonce (de ce qui doit arriver) est souvent d’inspiration divine. En anglais, c’est presque plus compliqué (car il y a plus de synonymes) mais la même confusion existe. On peut retrouver “foretell” construit sur “fore” et “tell” (qui est à relier à une notion de prémonition), “forespell” construit sur “fore” et “spell” (on retroue la notion de sort, proche du néerlandais “voorspellen”), “foresee” construit sur “fore” et “see”, ou encore  “forecast“, dont on reparlera très bientôt. A côté de ces mots, construits sur le préfixe “fore”, il existe le mot “predict“, tiré du latin praedicere, construit sur “prae” ‎(avant, que l’on retrouvé dans “pré” en français) et “dicere” ‎(dire). Comme le note le dictionnaire, “predicted” a un sens proche de “foretold” mais “without the mystical flavour”. Bref, “prédit” a longtemps eu une connotation mystique, divine.

Pourtant, les deux semblent parfois être interchangeables. Au point que fin 2006, Le Devoir écrivait « parce que cette administration n’a pas su prévoir ce qui était prévisible, nous en sommes rendus à siéger à 6 h un lundi matin! ». “prévoir ce qui était prévisible” vaste programme, non ?

Si on reste sur l’anglais, on peut tenter une distinction. Par exemple “forecast“, c’est à dire “prévoir“, est associé aux ouvrages suivants, sur amazon.com

Autrement dit, “forecast” (ou “prévision“) correspond à un aspect temporel. On cherche à prévoir, à un instant donné https://latex.codecogs.com/gif.latex?t la valeur d’une variable https://latex.codecogs.com/gif.latex?x à une date ultérieur, disons https://latex.codecogs.com/gif.latex?t+h. Classiquement, on cherche (et ça sera notre “prévision”)

https://latex.codecogs.com/gif.latex?\mathbb{E}_t[X_{t+h}]=\mathbb{E}[X_{t+h}|x_t,x_{t-1},\cdots]

C’est pour cela que bon nombre de cours de séries temporelles, ou séries chronologiques sont des cours de “modèles de prévision“.

Mais on commence à voir arriver des ouvrages de “méthodes prédictives“, “predictive modeling“, proposant des “prédictions

Si on regarde de plus près, ces techniques sont utilisées non pas dans un contexte de séries temporelles, mais de données individuelles. Ici, on cherche à prévoir une variable d’intérêt https://latex.codecogs.com/gif.latex?y à l’aide de covariables (variables dites explicatives https://latex.codecogs.com/gif.latex?x_1,\cdots,x_k. La prédiction sera classiquement

https://latex.codecogs.com/gif.latex?\mathbb{E}_{\boldsymbol{x}}[Y]=\mathbb{E}[Y|x_1,\cdots,x_k]

Sur le graphique du taux d’imposition, en France

Voilà plusieurs années (en 2011) Landais, Piketty et Saez publiaient le graphique suivant, présentant le sytème fiscal, en France, avec l’évolution du taux global d’imposition, en fonction du revenu.

https://freakonometrics.hypotheses.org/files/2017/02/revol-fiscale.png

Il y a deux ans, Yves Guiard critiquait ce graphique (rappelant que “la conversion numérique/graphique obéit à certaines règles“) et proposait une version “correcte“, sous la forme

J’ai déjà dit – voilà plusieurs semaines – que cette vision dogmatique des règles de représentation graphique ne me plaisait pas. Mais le plus simple est peut être de reprendre la réponse de Thomas Piketty, sur cette critique (je me retrouve totalement dans le propos),

(je suis désolé de découvrir cette discussion aussi tard, Béatrice m’a posté un commentaire ce matin, qui pointait vers ces deux articles)

Mais essayons de regarder un peu plus en détails. Oui, si on utilise la représentation standard de la courbe, on retrouve le graphique suivant

avec les plus pauvres à gauche, et les plus riches à droites. On a ici un graphique où le même pas sur l’axe des abscisses correspond au même nombre d’individus. Les 10% les plus pauvres (bande verticale la plus à gauche) ont un taux moyen d’imposition de 40.46% alors qu’il est de 48.09% pour les 10% qui sont juste au dessus du salaire médian (bande juste à droite de 50%). Je ne reviendrais pas sur le débat de commencer le graphique à 0% (ce débat aurait du sens, j’en conviens, mais commencer à 0% et mettre du texte entre l’axe des abscisses et la courbe, c’est un peu tricher), mais si on respecte cette règle, on obtient

Mais ce n’est pas cette visualisation qui est retenue dans le livre de Landais, Piketty et Saez, mais plutôt quelque chose qui ressemble au graphique ci-dessous (je commence à 30% pour éviter d’avoir un billet trop long)

Ce graphique est (je pense) plus intéressant que le premier. Bon, bien sûr, il se rapproche de la courbe parfaite que tout statisticien qui se respecte essaye reproduire

mais surtout, il permet de tenir compte de l’hétérogénéité qui existe dans ce dernier décile. Histoire d’illustrer mon propos, je voudrais proposer une représentation alternative de celle de Landais, Piketty et Saez. Pour se faire, on va utiliser une information complémentaire (en ligne sur le site) à savoir le revenu moyen, par centile, dans la population (voire plus fin dans le centile le plus élevé)

L’idée sera d’utiliser en abscisse non pas un pourcentage de personnes, mais un pourcentage de richesse (un peu comme avec la courbe de Lorenz),

Par exemple sur le graphique ci dessus, la bande la plus à gauche ne représente pas 10% des français, mais la fraction de français les plus pauvres, qui totalisent 10% de la richesse totale. La bande la plus à droite, ce sont les français les plus riches, qui accumulent 10% de la richesse totale. On peut d’ailleurs être un peu plus éclairant (je pense) en mettant des bandes non pas tous les 10% du revenu cumulé, mais faire l’équivalent du premier graphique, avec 10% des français. Bien entendu, les 10% les plus pauvres possède un très faible pourcentage de la richesse totale. En fait, les 30% les plus pauvres possèdent, tous ensemble, 5% de la richesse totale. Alors que les 10% les plus riches possèdent un tiers de la richesse. C’est ce qu’on peut voir sur le graphique ci-dessous

Ce graphique est – je pense – juste, au sens des normes sémiologiques, et permet de faire passer le message du graphique initial.

Après, on peut tenter une vision qui irait encore plus loin, avec non plus un taux en abscisse, mais un niveau de richesse. Aussi, le taux d’imposition, en fonction du revenu brut mensuel (sur une échelle logarithmique) ressemble au graphique ci-dessous

Install R Packages on the Ubuntu Virtual Machine

For the (Advanced) R Crash Course of the Data Science for Actuaries program, we will use the Ubuntu virtual machine. There might be some issues when installing some packages… One trick can be to open a terminal

and then to use the sudo command, to install some packages,

(after entering the password). Just type (or copy/paste)

sudo apt-get install libcurl4-openssl-dev
sudo apt-get install libxml2-dev
sudo apt-get install openjdk-7-*
update-alternatives --config java
sudo apt-get install aptitude
sudo aptitude install libgdal-dev
sudo aptitude install libproj-dev
sudo apt-get install curl
sudo apt-get build-dep r-cran-rgl
sudo apt-get install r-cran-plyr r-cran-xml r-cran-reshape r-cran-reshape2 r-cran-rmysql
sudo apt-get install r-cran-rjava

Then, in RStudio, enter

install.packages("RCurl")
install.packages("xml")
install.packages("rJava")
install.packages("rgdal")
install.packages("xlsx")

It should be fine…

Material for the Course on Inequality

Here is the video that we discussed during the first course,

References for the course are the following,

For similar course lectures notes, see Emmanuel Flachaire’s ECON-473 webpage, as well as Michel Lubrano’s notes.

For the project, some references in French,

and in English

There is also the following report (one can focus only on a chapter of the report)

 

Graduate Course on Advanced Methods in Econometrics

I will give a short graduate course for PhD students, in Rennes, on Thurday mornings, in March (2nd, 9th, 23rd and 30th). The agenda will be

  1. Nonlinear Regression Models and Smoothing Techniques

  2. Bootstrapping and Regression

  3. Penalized Regression Models and LASSO

  4. Quantile Regression and Expectiles

There will be slides available by the end of February.

 

Third Actuarial Pricing Game

With the support of ACTINFO Chair and the (French) Institute of Actuaries, our Third Actuarial Pricing Game starts today ! There is a toolbox file available online, with

  • a description of the game : the rules, the dates, and a description of the datasets
  • 3 datasets : one underwriting and one claims databases, for year 0 (training data) and one underwriting dataset to enter the game

Anyone can play. Students from various programs around the world, as well as practitioners are welcome to play. It can be by teams, and there are no limit on the size. And there is no registration: to start playing, teams have to submit a dataset before the deadline (end of February), to pricing-game@univ-rennes1.fr.