Projet Cancer BASELINE

publicité
Projet Cancer BASELINE
Thibaut BIDEAULT - Linh DO NGOC
19 avril 2016
1
TABLE DES MATIÈRES
2
Table des matières
1 Introduction
3
2 Présentation des données
4
3 Présentation des modèles
3.1 Les modèles linéaires . . . . . . . . . . . . .
3.2 Les modèles linéaires généralisés . . . . . .
3.3 Les modèles CART . . . . . . . . . . . . . .
3.4 Les forêts aléatoires . . . . . . . . . . . . .
3.5 Moyennes des modèles linéaires et des forêts
. . . . . .
. . . . . .
. . . . . .
. . . . . .
aléatoires
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
5
5
7
8
9
10
4 Conclusion
11
5 Annexe
12
1
1
INTRODUCTION
3
Introduction
Le projet BASELINE a été créé suite au challenge lancé par EPIDEMIUM. Le challenge est
le suivant :
Les déterminants épidémiologiques du cancer sont complexes, nombreux, parfois difficiles à
dissocier et précieux en ce que, une fois connus, ils permettent d’agir le plus en amont sur la maladie, avant qu’elle ne survienne. Avec le but de réduire drastiquement le nombre de morts évitables,
le champ de la cancérologie préventive, voire prédictive, fondée sur une meilleure connaissance
épidémiologique des facteurs promoteurs ou protecteurs des cancers, est une des potentialités les
plus prometteuses de la médecine contemporaine.
Si certains liens de causalité entre facteurs d’exposition, comportementale, environnementale,
socio-économique, et la survenue de cancer sont établis avec une grande fiabilité, par exemple
le lien entre consommation tabagique et survenue du cancer du poumon, la part attribuable à
de très nombreux autres facteurs reste à ce jour obscure. Comprendre et maîtriser le rôle de ces
déterminants dans la genèse du cancer sont donc des éléments décisifs de la lutte contre le cancer.
Le challenge “Facteurs de risques et Facteurs protecteurs du cancer” consiste à proposer
une solution data-analytique originale permettant de rapporter des données comportementales,
alimentaires, environnementales ou socio-démographiques à la survenue d’un cancer. La part
imputable à un facteur d’exposition dépendra autant de la force de l’association entre facteur
de risque et survenue d’un cancer que de la prévalence de l’exposition. Dit autrement, cette
part imputable peut être importante même si le risque est faible, pourvu que l’exposition soit
importante.
Le projet BASELINE a décidé de suivre l’approche suivante :
1. A partir des jeux de données ayant en commun la région, l’âge et le sexe, nous modéliserons
l’incidence de cancers et la mortalité par cancer selon de nombreuses variables (suivant les données
disponibles, travail de listing de données ici) : c’est la "baseline" (analyse multivariée, par machine
learning ou plus classique : travail de modélisation)
2. Application directe : "quid du saucisson sec ?" La baseline suggèrera notamment l’effet de
variables improbables, autres choses étant égales par ailleurs (travail d’interprétation, littérature
et santé publique)
3. Application indirecte : "quid du club bavarois anti-saucisse ?" Nous comparerons les incidences de cancers de jeux de données locaux à la baseline, pour tenter de découvrir d’autres
effets que ceux modélisés (travail de listing de données, travail de statistiques).
4. En automatisant l’approche, nous pourrons lister et trier les facteurs de risques et de protection très divers (travail d’automatisation/développement d’outil ; important pour la pérennité)
5. Puis le très important "so what ?" : passer en revue les points majeurs qui se dégagent de
2
PRÉSENTATION DES DONNÉES
4
cette approche très vaste ; interpréter les résultats obtenus, chercher des mesures de prévention
potentielles. Des mesures de prévention inédites ? Les données nous le diront !
2
Présentation des données
La collecte de données effectuée de décembre 2015 à février 2016 a permis de disposer d’une
matrice composée de 6820 lignes et 304 colonnes. Parmi les 304 colonnes, il y a 32 types de cancer
et 229 facteurs de risque du cancer.
Cependant, la difficulté à trouver toutes les données de ces facteurs de risque a pour conséquence que la matrice est gravement lacunaire.
Pour remédier à ce problème, nous avons décidé de trier ces données. La première hypothèse
a porté sur les types de cancer : nous avons uniquement conservé les lignes où 50% des données
sur les types de cancer étaient présentes. Ce qui a réduit la matrice à 2978 lignes.
La même hypothèse a été appliquée pour les facteurs de risque du cancer : nous avons uniquement gardé les facteurs de risque où 50% des données étaient présentes. Ainsi, l’étude a été
établie à partir de 12 facteurs : le pourcentage de population de plus de 60 ans (Pop60, 0% de
données manquantes), le sexe (Gender, 0% de données manquantes ), le pourcentage de population urbaine (UrbanPop, 7.69% de données manquantes), le pourcentage du SIDA pour les 15
à 49 ans (HIV1549, 19.51% de données manquantes), le pourcentage de vaccin pour la diphtérie
(DiphVacc, 8.36% de données manquantes), le pourcentage de vaccin pour l’haemophilus (HibVacc, 49.06% de données manquantes), le pourcentage de vaccin pour la rougeole (MeaslesVacc,
8.36% de données manquantes), le score BMI (BMI, 20.32% de données manquantes), le revenu
(Inc, 43.05% de données manquantes), l’argent dépensé par le gouvernement par personne (GovHealth, 32.24% de données manquantes), la tension et le cholestérol dans le sang (PresSang et
CholesSang, 20.32% de données manquantes pour les deux).
Par la suite, nous considérons les appellations suivantes pour les différents types de cancer :
Type 1 : Tous les cancers (0.34% de données manquantes)
Type 2 : Tous les cancers sauf celui du poumon (0.34% de données manquantes)
Type 3 : Cancer de la vessie (2.22% de données manquantes)
Type 4 : Cancer du système nerveux central (9.27% de données manquantes)
Type 5 : Cancer du sein (50.34% de données manquantes)
Type 6 : Cancer du col de l’utérus (50.37% de données manquantes)
Type 7 : Cancer du colon (4% de données manquantes)
Type 8 : Cancer du colon, du rectum et de l’anus (0% de données manquantes)
Type 9 : Cancer du corps de l’utérus (58.16% de données manquantes)
Type 10 : Cancer de la vésicule biliaire (15.08% de données manquantes)
Type 11 : Lymphome de Hodgkin (17.56% de données manquantes)
Type 12 : Cancer de l’intestin (11.28% de données manquantes)
Type 13 : Cancer du rein (21.86% de données manquantes)
Type 14 : Cancer du larynx (3.79% de données manquantes)
Type 15 : Leucémie (0.13% de données manquantes)
Type 16 : Cancer des lèvres, de la bouche et du pharynx (0.74% de données manquantes)
Type 17 : Cancer des lèvres, de la bouche, du pharynx, du larynx et de l’oesophage (0.34%
de données manquantes)
Type 18 : Cancer du foie (12.46% de données manquantes)
Type 19 : Cancer du poumon (0% de données manquantes)
3
PRÉSENTATION DES MODÈLES
Type
Type
Type
Type
Type
Type
Type
Type
Type
Type
Type
Type
Type
3
20
21
22
23
24
25
26
27
28
29
30
31
32
:
:
:
:
:
:
:
:
:
:
:
:
:
5
Cancer de la peau (6.88% de données manquantes)
Mésothéliome (51.85% de données manquantes)
Myélome multiple (11.85% de données manquantes)
Cancer du Nasopharynx (22.46% de données manquantes)
Lymphome non hodgkinien (9.37% de données manquantes)
Cancer de l’oesophage (1.01% de données manquantes)
Cancer des ovaires (61.08% de données manquantes)
Cancer du pancreas (7.25% de données manquantes)
Cancer de la prostate (49.66% de données manquantes)
Cancer du rectum et de l’anus (5.04% de données manquantes)
Cancer de l’estomac (0.03% de données manquantes)
Cancer des testicules (58.6% de données manquantes)
Cancer de la thyroïde (16.82% de données manquantes)
Présentation des modèles
Différentes approches peuvent être utilisées afin de modéliser l’incidence des cancers :
1. Un modèle linéaire
2. Un modèle linéaire généralisé
3. Un modèle CART
4. Une forêt aléatoire
70% des données ont été utilisées pour calibrer nos modèles et 30% pour les tester. Et chaque
modélisation repose sur le modèle composé de tous les facteurs de risque du cancer, soit le modèle
suivant :
Y = Intercept + Pop60 + Gender + UrbanPop + HIV1549 + DiphVacc + HibVacc +
MeaslesVacc + BMI + Inc + GovHealth + PresSang + CholesSang
Nous utilisons ensuite la fonction StepAIC de R afin de trouver le modèle optimal pour chaque
type de cancer.
3.1
Les modèles linéaires
La figure 1 montre que les variables Pop60 et Gender sont toujours présentent dans les
modèles. Ce qui était prévisible car nous possédons toutes les données pour ces variables. Viennent
ensuite les variables CholesSang, Inc et PresSang présentes respectivement dans 27, 26, et 24
modèles. Les autres variables sont quant à elles moins présentes.
3
PRÉSENTATION DES MODÈLES
6
Figure 1 – Coefficients des modèles linéaires
Les modèles suivent correctement les moyennes de l’échantillon test (cf. figure 2) avec un
écart toujours inférieur à 2%.
Figure 2 – Ecart entre les moyennes des modèles linéaires et celles de l’échantillon test
Cependant, les variances obtenues sur la figure 3 diffèrent sensiblement des variances de
l’échantillon test.
Figure 3 – Ecart entre les variances des modèles linéaires et celles de l’échantillon test
Malgré des moyennes très convenables obtenues par nos modèles, les variances y sont sousestimées. De ce fait, il est difficile de dire si ces modèles sont convenables. De plus, les erreurs
quadratiques moyennes représentées sur la figure 4, sont importantes.
3
PRÉSENTATION DES MODÈLES
7
Figure 4 – Erreurs quadratiques moyennes des modèles linéaires
3.2
Les modèles linéaires généralisés
Les variables Pop60 et Gender sont encore les plus présentes dans nos modèles GLM (figure
5). De façon générale, les formules des GLM ont plus de variables significantes que les modèles
linéaires. En effet, chaque variable explicative apparait au minimum dans 23 modèles.
Figure 5 – Coefficients des GLM
Ci-dessous les moyennes obtenues avec nos GLM comparées aux moyennes de l’échantillon :
Figure 6 – Ecart entre les moyennes des GLM et celles de l’échantillon test
Les écarts entre les moyennes des GLM et les moyennes de l’échantillon de test sont plus
importants que ceux observés avec les modèles linéaires. Par exemple, pour le cancer de type 18,
il y a un écart de plus de 30%. Mais dans la majorité des cas, l’écart est acceptable. De manière
générale, les GLM ont tendance à minimiser les moyennes.
En ce qui concerne les variances obtenues par nos GLM (cf. figure 7), l’écart entre elles et les
3
PRÉSENTATION DES MODÈLES
8
variances de l’échantillon test est conséquent dans la plupart des cas.
Figure 7 – Ecart entre les variances des modèles linéaires et celles de l’échantillon test
Encore une fois, les variances obtenues ne sont pas convenables et ne permettent pas d’avoir
un avis tranché sur la qualité du modèle. De plus, les erreurs quadratiques moyennes (figure 8)
sont légèremment supérieures à celles des modèles linéaires.
Figure 8 – Erreurs quadratiques moyennes des GLM
3.3
Les modèles CART
Les arbres optimaux obtenus (cf. annexe) montrent que les modèles CART sont mal adaptés
pour modéliser l’incidence des cancers étudiés. En effet, dix arbres sont uniquement composés
d’un seul noeud et d’aucune branche, et au maximum les arbres sont composés de deux noeuds,
soit trois branches.
Les moyennes de la figure 9 sont dans la plupart des cas convenables.
Figure 9 – Ecart entre les moyennes des modèles CART et celles de l’échantillon test
Cependant, ces moyennes sont composées au mieux de 3 valeurs et au pire d’une seule valeur.
Nous ne pouvons donc pas tirer de conclusions à partir de ces moyennes.
3
PRÉSENTATION DES MODÈLES
9
De même, il n’est pas possible de tirer de conclusion à partir des variances (cf. figure 10). Par
exemple, dix variances sont nulles du fait des arbres composés de seulement un noeud.
Figure 10 – Ecart entre les variances des modèles CART et celles de l’échantillon test
Les erreurs quadratiques moyennes sont du même ordre de grandeur que les autres modèles
(cf. figure 11).
Figure 11 – Erreurs quadratiques moyennes des modèles CART
Les arbres obtenus par les modèles CART ne sont pas satisfaisants. De ce fait, il est difficile de
tirer des conclusions des résultats obtenus et très peu recommandé d’utiliser des modèles CART
dans notre cas.
3.4
Les forêts aléatoires
Les moyennes obtenues (cf. figure 12) par les forêts aléatoires sont très bonnes, comme celles
des modèles linéaires, et même meilleures pour certaines.
Figure 12 – Ecart entre les moyennes des forêts aléatoires et celles de l’échantillon test
Dans la majorité des cas, la variance obtenue par les forêts aléatoires est meilleure que celle
des modèles linéaires. Mais ce modèle sous-estime encore une fois les variances de l’échantillon
test.
3
PRÉSENTATION DES MODÈLES
10
Figure 13 – Variances des forêts aléatoires vs variances des données
Les erreurs quadratiques moyennes sont légèrement inférieures à celles des modèles linéaires.
Figure 14 – Erreurs quadratiques moyennes des forêts aléatoires
Les résultats obtenus avec les forêts aléatoires sont très satisfaisants par rapport aux autres
modèles. Nous avons maintenant deux modèles intéressants : les modèles linéaires et les forêts
aléatoires.
3.5
Moyennes des modèles linéaires et des forêts aléatoires
Les modèles linéaires et les forêts aléatoires étant les plus appropriés nous avons procédé
à leur moyenne afin de conserver leurs avantages respectifs : les bonnes moyennes des modèles
linéaires et les variances plus convenables des forêts aléatoires.
Les moyennes obtenues avec cette méthode sont les suivantes :
Figure 15 – Ecart entre les moyennes de la prévision moyenne et celles de l’échantillon de test
On s’aperçoit que les moyennes ont légèrement augmenté comparées à celles des deux modèles
mais restent toujours convenables.
Cependant, l’écart des variances obtenu n’est pas satisfaisant. En effet, il est dans la plupart
des cas supérieur à celui observé par les forêts aléatoires et par les modèles linéaires (cf. figure
16).
En revanche, le point positif de ce modèle est que les erreurs quadratiques moyennes sont les
plus faibles de tous les modèles.
4
CONCLUSION
11
Figure 16 – Ecart entre les variances de la prévision moyenne et celles de l’échantillon de test
Figure 17 – Erreurs quadratiques moyennes de la prévision moyenne
4
Conclusion
Cette étude présente une lacune de taille : le manque de données. Ce qui impacte de manière conséquente la modélisation des incidences de cancer. En effet, les variances et les erreurs
quadratiques moyennes obtenues par les modèles ne sont pas suffisamment concluantes.
Toutefois, les résultats montrent que les modèles linéaires et les forêts aléatoires restent les
plus adaptés.Et qu’il est préférable d’utiliser les forêts aléatoires plutôt que les modèles linéaires
afin de modéliser les incidences de cancer. Car, si les moyennes obtenues par les deux modèles sont
satisfaisantes, les forêts aléatoires rendent mieux compte des variances et génèrent des meilleurs
erreurs quadratiques moyennes.
Afin d’obtenir de meilleurs résultats, il faudrait réussir à récolter davantage de données dans
le but de mieux calibrer les modèles. Par ailleurs il pourrait être intéressant d’utiliser un réseau de neurone ou une machine à vecteurs de support (SVM) qui sont deux autres méthodes
d’apprentissage de type probabiliste.
5
5
ANNEXE
12
Annexe
Arbre des modèles CART
Figure 18 – Arbre cancer type 1
Figure 19 – Arbre cancer type 2
Figure 20 – Arbre cancer type 3
Figure 21 – Arbre cancer type 4
5
ANNEXE
13
Figure 22 – Arbre cancer type 5
Figure 23 – Arbre cancer type 6
Figure 24 – Arbre cancer type 7
Figure 25 – Arbre cancer type 8
Figure 26 – Arbre cancer type 9
Figure 27 – Arbre cancer type 10
5
ANNEXE
14
Figure 28 – Arbre cancer type 11
Figure 29 – Arbre cancer type 12
Figure 30 – Arbre cancer type 13
Figure 31 – Arbre cancer type 14
Figure 32 – Arbre cancer type 15
Figure 33 – Arbre cancer type 16
5
ANNEXE
15
Figure 34 – Arbre cancer type 17
Figure 35 – Arbre cancer type 18
Figure 36 – Arbre cancer type 19
Figure 37 – Arbre cancer type 20
Figure 38 – Arbre cancer type 21
Figure 39 – Arbre cancer type 22
5
ANNEXE
16
Figure 40 – Arbre cancer type 23
Figure 41 – Arbre cancer type 24
Figure 42 – Arbre cancer type 25
Figure 43 – Arbre cancer type 26
Figure 44 – Arbre cancer type 27
Figure 45 – Arbre cancer type 28
5
ANNEXE
17
Figure 46 – Arbre cancer type 29
Figure 47 – Arbre cancer type 30
Figure 48 – Arbre cancer type 31
Figure 49 – Arbre cancer type 32
5
ANNEXE
18
Code
mydata=read.csv("C:/Users/Thibaut/Desktop/ProjetBaseline/matrixop.csv",header=TRUE,sep=";"
,dec=",",stringsAsFactors=FALSE);
library(MASS)
library(rpart)
library(rpart.plot)
library(randomForest)
## 1 à 32 : cancers, 33 pays, 34 pop, 35 à 48 variables
mydata[,34]=as.numeric(mydata[,34])
mydata[,36]=as.numeric(mydata[,36])
mydata[,45]=as.numeric(mydata[,45])
set.seed(1)
n <- nrow(mydata)
K <- 2
blocksize <- n %/% K
set.seed(1)
values <- runif(n)
rang <- rank(values)
block <- (rang-1) %/% blocksize + 1
block <- as.factor(block)
learning.sample <- mydata[block != K , ]
validation.sample <- mydata[block == K, ]
dim(learning.sample)
dim(validation.sample)
##Définition variables explicatives
Pays=learning.sample[,33]
Pop=learning.sample[,34]
Pop60=learning.sample[,35]
Gender=learning.sample[,36]
UrbanPop=learning.sample[,37]
HIV1549=learning.sample[,38]
DiphVacc=learning.sample[,39]
HibVacc=learning.sample[,40]
MeaslesVacc=learning.sample[,41]
BMI=learning.sample[,42]
Inc=learning.sample[,43]
GovHealth=learning.sample[,44]
PresSang=learning.sample[,45]
CholesSang=learning.sample[,46]
se.LM<-c()
se.GLM<-c()
5
ANNEXE
19
se.GAM<-c()
se.CART<-c()
se.RF<-c()
se.prevMoy<-c()
MoyCART<-c()
VarCART<-c()
MoyLM<-c()
VarLM<-c()
MoyGLM<-c()
VarGLM<-c()
MoyRF<-c()
VarRF<-c()
MoyPrevMoy<-c()
VarPrevMoy<-c()
for (i in 1:32)
{
##Définition formule
formula= learning.sample[,i] ~ Pop60 + Gender + UrbanPop + HIV1549 + DiphVacc
+ HibVacc + MeaslesVacc + BMI + Inc + GovHealth + PresSang + CholesSang
##modèle lm
model.lm <- lm(as.formula(formula))
##Opti du modèle lm
model.lm.backward <- stepAIC(model.lm, direction="backward",trace = FALSE)
##Prédiction à partir du modèle lm
lm.predictions <- predict(model.lm.backward, newdata = validation.sample,
type="response")
MoyLM[i]=mean(lm.predictions)
VarLM[i]=var(lm.predictions)
## erreur globale de prevision:
se.LM[i] <- sum((lm.predictions - validation.sample[,i])^2)/32
## MODELE GLM
model.glm <- glm(as.formula(formula), family="gaussian" ,weights = Pop)
##Opti du modèle glm
model.glm.backward <- stepAIC(model.glm, direction="backward",trace = FALSE)
print(model.glm.backward)
##Prédiction à partir du modèle glm
5
ANNEXE
20
glm.predictions <- predict(model.glm.backward, newdata = validation.sample,
type="response")
MoyGLM[i]=mean(glm.predictions)
VarGLM[i]=var(glm.predictions)
## erreur globale de prevision:
se.GLM[i] <- sum((glm.predictions - validation.sample[,i])^2)/32
## MODELE CART
model.cart <- rpart(as.formula(formula), method="anova" ,weights = Pop,
control=rpart.control(cp=0))
min(model.cart$cptable[,4])
##Opti du modèle cart
best.model.cart <- rpart(as.formula(formula), method="anova" ,weights = Pop,
control=rpart.control(cp=min(model.cart$cptable[,4])))
prp(best.model.cart)
##Prédiction à partir du modèle cart
cart.predictions <- predict(best.model.cart, newdata = validation.sample, type="vector")
MoyCART[i]=mean(cart.predictions)
VarCART[i]=var(cart.predictions)
## erreur globale de prevision:
se.CART[i] <- sum((cart.predictions - validation.sample[,i])^2)/32
##modèle Random Forest
model.RF=randomForest(as.formula(formula) , ntree=200, importance=TRUE)
RF.predictions<-predict(model.RF, newdata = validation.sample, type="response")
getTree(model.RF)
MoyRF[i]=mean(RF.predictions)
VarRF[i]=var(RF.predictions)
se.RF[i]<-sum((RF.predictions - validation.sample[,i])^2)/32
##Prévision moyenne
previsions.moyennees <- (1/2) * ( lm.predictions + RF.predictions)
MoyPrevMoy[i]=mean(previsions.moyennees)
VarPrevMoy[i]=var(previsions.moyennees)
se.prevMoy[i] <- sum((previsions.moyennees - validation.sample[,i])^2)/32
}
se.CART
se.GLM
se.LM
se.RF
se.prevMoy
#Moyennes et variances des données
MoyCancer<-c()
5
ANNEXE
VarCancer<-c()
for (i in 1:32)
{
MoyCancer[i]=mean(learning.sample[,i])
VarCancer[i]=var(learning.sample[,i])
}
##Moyennes et variances des modèles
MoyCART
MoyLM
MoyGLM
MoyRF
MoyPrevMoy
MoyCancer
VarCART
VarLM
VarGLM
VarRF
VarPrevMoy
VarCancer
21
Téléchargement