Projet Data Science
Projet Data Science
Projet Data Science
EN ACTUARIAT
31 Mai 2019
1
Table des matières
INTRODUCTION .................................................................................................................. 3
1. CHARGEMENT ET SIGNIFICATION DU JEU DE DONNEES.............................. 3
2. : STATISTIQUES DESCRIPTIVES UNIVARIEES ET BIVARIEES....................... 4
3. : MODELISATION PAR ARBRE DE DECISION ..................................................... 5
a- Explication des différents arguments de rpart et les valeurs retournées ............................ 6
b -1. Construction d’Arbre ...............................................................................................7
c-1. Elagage de l’arbre maximal :....................................................................................7
d-1. Etablissement Des Prévisions ......................................................................................8
b-2.Arbre Maximal .............................................................................................................8
c-2.Elagage .........................................................................................................................8
d-2 La prédiction du coût est donnée par la variable « pred_sev ». ......................................9
4-MODELISATION PAR FORET ALEATOIRE .................................................................. 9
a-Explication des arguments de randomForest ....................................................................9
CONCLUSION .................................................................................................................... 10
ANNEXE............................................................................................................................. 10
2
INTRODUCTION
Dans le cadre d’une mission à l’Ecole Nationale Supérieure de Statistique et d’Economie Appliquée, il
nous a été soumis un projet dont le but est de mettre en pratique les connaissances théoriques acquises
en cours sur des thématiques données dans le domaine de l’assurance. C’est aussi l’occasion de se
familiariser avec des logiciels de statistiques tels que R, qui est très utilisé dans le monde scientifique
en général, et particulièrement en finance et en assurance car complet, performant et libre. Nous
aborderons dans ce projet des notions générales et importantes de certaines méthodes statistiques et de
leurs applications à la vie courante. Ce sont : les statistiques descriptives univariées et bivariées,
l’implémentation d’algorithmes d’apprentissage statistique en R : « Arbres Cart et RandomForest » qui
nous initie à l’utilisation des méthodes non paramétrique pour l’explication et la prévision, et enfin une
modélisation par réseaux de neurones.
Dans un premier temps, il s’agira pour nous de charger le jeu de données « norauto » disponible dans la
librairie CASdatasets. Ensuite nous allons procéder à l’explication des différentes variables que contient
notre jeu de données.
Ce jeu comprend 183999 observations de pertes sur polices d'assurance automobile sur une période d'un
an. Il provient d'un assureur norvégien inconnu et est composé de 7 variables qui sont: Male, Young,
Dislimit , Georegion ,Expo , claimAmount , Nbclaim.
Male : Elle représente le sexe du preneur d’assurance, elle vaut 1 s'il s'agit d'un homme et 0
sinon.
Young : Elle représente l'âge du preneur d’assurance. Nous fixé ici l’âge maximale des jeunes
à 25 ans. Ainsi notre variable vaut 1 si l’âge du preneur d’assurance est inférieur ou égal à 25 et
0 sinon.
Dislimit : Elle représente la distance limite indiquée dans le contrat d'assurance autrement dit
la distance maximale parcourue par le preneur d'assurance qui lui garantirait une indemnité en
cas de sinistre. Elle se mesure en kilomètres et comprend les modalités suivantes : 8000, 12000,
16000, 25000-30000, aucune limite.
3
Georegion : Elle représente la densité de la région géographique dans laquelle se situe
le preneur d’assurance. Elle part de la plus forte à la moins forte et contient les modalités
suivantes : "Haut+», Haut-, Moyen, "bas+", "bas-».
Expo : C'est la variable temps (en année) qui indique la durée de présence du contrat
dans le portefeuille.
ClaimAmount : Cette variable permet d'estimer le coût d'un sinistre, elle vaut 0 s'il n’y
a eu aucune réclamation du preneur d'assurance ou le montant moyen de la demande si
le nombre de réclamations est supérieur à 0
Nbclaim : Elle représente le nombre de réclamations faites pour un preneur d'assurance.
Les Valeurs Aberrantes
Selon la littérature, lorsqu’on est en présence d’une base telle que la nôtre, il est judicieux de distinguer
les sinistres moins graves des sinistres extrêmement graves. On suppose donc que notre base est
constituée de deux catégories de sinistres : les sinistres extrêmement graves (claimAmount >50000) et
les sinistres moins graves (claimAmount<=50000). Une première approche pour détecter les valeurs
aberrantes est d'inspecter la boite à moustache de la variable ClaimAmount. Notre première approche
consistait à inspecter le nuage de points et ensuite la boîte à moustache. Nous avons représenté le coût
moyen des sinistres matérialisé par la variable claimAmount en fonction des individus ayant souscrit au
contrat d’assurance.
L’analyse du nuage de points a révèle près d’une dizaine d’individus s’écartant du nuage
L’analyse de la boîte à moustache quant à elle révèle 3 variables qui s’écartent complètement
des autres. Les valeurs aberrantes caractérisent les preneurs d’assurance qui sont jeunes (moins
de 26 ans) mais qui ont souscrit au contrat d’assurance depuis plus d’une dizaine d’années.
Nous en avons détecté six (06) au total que nous allons supprimer du fait des exigences du TP
4
L'objectif de la statistique descriptive étant de décrire, résumer ou représenter, par des statistiques, les
données disponibles quand elles sont nombreuses ; nous allons procéder à la description de notre jeu de
données en faisant recours aux méthodes statistiques univariées et bivariées.
-Statistiques descriptives
Interprétation : Au vue de ces résultats on peut dire que plus de 75% des preneurs d’assurance ont plus
de 26 ans avec 97% d’hommes. La plupart des preneurs sont situées dans la région High- et les moins
nombreux se trouvent dans la région Low-. Ces résultats pourraient s’expliquer par le fait que la zone
Low- comporte moins de risque de sinistre.
A l’issue des différents tests statistiques réalisées notamment le test de student (qui permet de
tester si les moyennes des deux sous populations peuvent être différents), le test non paramétrique de
Wilcox(qui est un test de normalité qui ne fait pas d’hypothèses sur les lois de distribution des variables
testées) et le calcul du coefficient de corrélation de Pearson en ce qui concerne les variables quantitatives
(Expo, ClaimAmount, NbClaim), il ressort de nos statistiques bivariées qu’au seuil de 5%, il n’y a pas
de liaison véritable entre les différentes variables. Cependant les variables les moins indépendantes du
coût des sinistres sont Expo et NbClaim. Les résultats de ces tests sont disponibles en annexe.
C’est une approche qui est souvent utilisée pour construire des règles qui permettront de classer les
observations anciennes ou nouvelles avec une exactitude maximale. Dans notre cas il s’agit de
construire un arbre qui classe le risque de sinistre.
5
a- Explication des différents arguments de rpart et les valeurs retournées
Formula : prend en compte la formule qui spécifie le modèle,
data : pour préciser le jeu de données concerné,
weight : précise le poids de la variable,
subset : précise le domaine sur lequel le modèle doit être estimé,
na.action : précise ce qu’il faut faire en présence de valeurs manquantes.
method :ici on précise le type d'arbre qu'on fera : il s’agira d’un arbre de régression avec la méthode
Anova si la variable réponse est quantitative, un arbre de classification avec la méthode class si la
variable réponse est qualitative.
Model : garde en mémoire une copie du modèle généré lors de la création de l'arbre
x : représente la matrice des variables explicatives
y = représente le vecteur de la variable expliquée
parms : spécifie les paramètres pour la fonction de séparation des feuilles.
rpart.control : prend en compte les différents contrôles de la fonction. Elle prend en entrée
minsplit : nombre minimum d'observations que doit contenir un nœud
minbucket : nombre minimum d'observations que doit contenir une feuille(nœud terminal)
cp : paramètre de complexité du modèle, il prend en compte la complexité du modèle, c'est-à-dire
l'importance de la dimension du modèle.
maxcompete : le nombre de variables concurrentes dans la division proposée, pour savoir aussi a une
division non pas seulement quelle variable est arrivée première mais aussi celle qui étaient en seconde
et troisième position
surrogates = substituts : ils permettent de savoir ce qu'on fait à un nœud lorsque pour une observation
précise la valeur de la variable en question est "manquante", en somme qu'est-ce qu'on fait ou du moins
ou envoie-t-on une observation si au nœud ou elle se trouve, la variable intervenante est manquante
maxsurrogate : le nombre de scissions de substitutions conservées dans le modèle sortie proposée
usesurrogate : cela définit comme on utilise, les substituts. Il y a trois options :
0 : signifie ne pas les utiliser, si la valeur de l'observation est vide, elle n'est pas classée pour la suite de
l'arbre
1 : signifie utiliser les substituts s'il y en a
2 : l'option 2 intervient lorsque pour tous les substituts utilisés, l'observation a des valeurs
manquantes, l'observation est captée dans la direction majoritaire
xval : nombre de validation croisée
surrogatestyle : spécifie le choix de la variable de substitut :
0 : c'est le nombre total de classification correcte qui sera utilisée pour sélectionner la meilleure
variable de substitution
6
1 : C'est le pourcentage de classification correcte qui est utilisée, calculée sur les observations
validées
maxdepth = définit le nombre de niveau de l'arbre
Pour la variable NbClaim
b -1. Construction d’Arbre
Notre arbre maximal contient 8256 feuilles avec une erreur de 58,56%. La variables la plus
discriminante est Expo. Les résultats sont disponibles en annexe.
Arbre maximal
7
Le pourcentage de la variable expliquée de l’arbre est de 0,99
b-2.Arbre Maximal
L’arbre maximal ici contient 42 feuilles avec 97,95% d’erreur. La variable la plus
discriminante est Expo.
Arbre maximal
c-2.Elagage
Le paramètre de Tuning est le paramètre de complexité cp.
8
d-2 La prédiction du coût est donnée par la variable « pred_sev ».
9
b)Nous avons rencontré des difficultés dans la résolution de cette question. Ce qui nous a empêché de
progresser comme il se doit. Ces difficultés sont probablement dues au fait que nos machines ne sont
pas assez performantes pour faire tourner le modèle. Ainsi à partir de cette question nous présenterons
les codes sans toutefois les compiler pour afficher des résultats.
CONCLUSION
Nous sommes arrivés à la fin de notre projet, nous espérons avoir répondu aux exigences du TP dans la
mesure du possible. Cependant nous avons été confronté à certaines difficultés, principalement le
manque de temps pour pouvoir mieux approfondir nos recherches et fournir des codes plus adaptées
mais aussi le manque de performance de nos ordinateurs. Toutefois nous sommes satisfaits des
connaissances à travers ce cours de Data science en Actuariat et du TP. Pour finir, nous adressons nos
sincères remerciements à M. Xavier MILHAUD qui nous a enseigné les rudiments indispensables à la
réalisation de ce projet.
ANNEXE
Graphiques
10
Figure 2
11
12
Résultats
- Codes statistiques bivariées
13
14
15