Les posteurs les plus actifs de la semaine
Aucun utilisateur |
Sujets les plus vus
Validation d'un modèle
3 participants
Page 1 sur 1
Validation d'un modèle
Bonjour à tous,
je dois appliquer un modèle ordinal sur un échantillon de 98 individus et 10 variables mixtes quali et quanti,j'ai des questions prière de m'aider:
1/Est ce que la taille de mon échantillon me permet tout d'abord d'appliquer une régression
2/J'ai pas compris comment je peux valider mon modèle?En fait j'ai lu qu'il y a 3 méthodes,soit je divise ma base sur 2:apprentissage et test,j'applique le modèle sur le premier et je valide sur le second,(pour cette méthode c'est bon).Mais j'ai trouvé qu'il y a 2 autres méthodes:leave one out et k-cross,alors j'ai pas compris comment je procède?est ce que j'applique mon modèle sur tout l'éch puis j'utilise l'une de ces méthodes et je le ré-applique sur toute la base pour valider?
3/Dans mon cas:1 variable quali à 4 niveaux ordonnés et 10 variables mixtes avec un éch de 98 ind,laquelle de ces méthode me conseiller vous d'appliquer pour valider mon modèle?Et pourquoi?
4/Est ce que la sélection des variables par stepwise par exemple est appliquée avant ou après l'utilisation de ces méthodes pour la validation?
5/pour un modèle ordinal,avez vous une idée comment je peut construire la matrice de confusion?et est ce que je peux la construire quelle que soit la méthode de validation utilisée parmi ces 3 méthodes?
Merci bcp d'avance!!
je dois appliquer un modèle ordinal sur un échantillon de 98 individus et 10 variables mixtes quali et quanti,j'ai des questions prière de m'aider:
1/Est ce que la taille de mon échantillon me permet tout d'abord d'appliquer une régression
2/J'ai pas compris comment je peux valider mon modèle?En fait j'ai lu qu'il y a 3 méthodes,soit je divise ma base sur 2:apprentissage et test,j'applique le modèle sur le premier et je valide sur le second,(pour cette méthode c'est bon).Mais j'ai trouvé qu'il y a 2 autres méthodes:leave one out et k-cross,alors j'ai pas compris comment je procède?est ce que j'applique mon modèle sur tout l'éch puis j'utilise l'une de ces méthodes et je le ré-applique sur toute la base pour valider?
3/Dans mon cas:1 variable quali à 4 niveaux ordonnés et 10 variables mixtes avec un éch de 98 ind,laquelle de ces méthode me conseiller vous d'appliquer pour valider mon modèle?Et pourquoi?
4/Est ce que la sélection des variables par stepwise par exemple est appliquée avant ou après l'utilisation de ces méthodes pour la validation?
5/pour un modèle ordinal,avez vous une idée comment je peut construire la matrice de confusion?et est ce que je peux la construire quelle que soit la méthode de validation utilisée parmi ces 3 méthodes?
Merci bcp d'avance!!
statisticienne- Nombre de messages : 125
Date d'inscription : 15/06/2014
Re: Validation d'un modèle
Bonjour
Oui, mais par contre tu as beaucoup de variables explicatives par rapport aux nombres d'individus... tu trouveras plusieurs chiffres dans la littérature : entre 20 et 200 individus par variables indépendantes.
Le principe est le même sur ces deux autres méthodes. La taille de l'échantillon de validation est plus petite mais est répétée plus de fois en contre partie...
tu trouveras quelques explications ici par exemple :
https://fr.wikipedia.org/wiki/Validation_crois%C3%A9ehttps://fr.wikipedia.org/wiki/Validation_crois%C3%A9e
La méthode de validation va te permettre de comparer les performances de différentes modèles que tu vas tester (stepwise, backward, etc.)
Niaboc
statisticienne a écrit:
1/Est ce que la taille de mon échantillon me permet tout d'abord d'appliquer une régression
Oui, mais par contre tu as beaucoup de variables explicatives par rapport aux nombres d'individus... tu trouveras plusieurs chiffres dans la littérature : entre 20 et 200 individus par variables indépendantes.
statisticienne a écrit:
2/leave one out et k-cross,alors j'ai pas compris comment je procède?est ce que j'applique mon modèle sur tout l'éch puis j'utilise l'une de ces méthodes et je le ré-applique sur toute la base pour valider?
Le principe est le même sur ces deux autres méthodes. La taille de l'échantillon de validation est plus petite mais est répétée plus de fois en contre partie...
tu trouveras quelques explications ici par exemple :
https://fr.wikipedia.org/wiki/Validation_crois%C3%A9ehttps://fr.wikipedia.org/wiki/Validation_crois%C3%A9e
Tu n'as pas beaucoup d'individus. Le leave-one-out peut-être?statisticienne a écrit:
3/Dans mon cas:1 variable quali à 4 niveaux ordonnés et 10 variables mixtes avec un éch de 98 ind,laquelle de ces méthode me conseiller vous d'appliquer pour valider mon modèle?Et pourquoi?
La méthode stepwise est faite lors de la construction du modèle et donc avant la méthode de validation.statisticienne a écrit:
4/Est ce que la sélection des variables par stepwise par exemple est appliquée avant ou après l'utilisation de ces méthodes pour la validation?
La méthode de validation va te permettre de comparer les performances de différentes modèles que tu vas tester (stepwise, backward, etc.)
Oui tu peux la construire pareil à partir du classement des individus des différents échantillons tests.statisticienne a écrit:
5/pour un modèle ordinal,avez vous une idée comment je peut construire la matrice de confusion?et est ce que je peux la construire quelle que soit la méthode de validation utilisée parmi ces 3 méthodes?
statisticienne a écrit:
Merci bcp d'avance!!
Niaboc
niaboc- Nombre de messages : 1001
Age : 37
Localisation : Paris
Date d'inscription : 05/05/2008
Re: Validation d'un modèle
Merci beaucoup !!!
statisticienne- Nombre de messages : 125
Date d'inscription : 15/06/2014
Re: Validation d'un modèle
Avez vous une idée sur quelle code R utiliser pour exécuter un leave one out si j'ai utilisé polr pour la construction de mon modèle?
statisticienne- Nombre de messages : 125
Date d'inscription : 15/06/2014
Re: Validation d'un modèle
statisticienne a écrit:Avez vous une idée sur quelle code R utiliser pour exécuter un leave one out si j'ai utilisé polr pour la construction de mon modèle?
Mais j'imagine que Nik, joyeux_lapinou, zezima ou encore Eric Wajnberk pourront t'aider là-dessus.
Niaboc
niaboc- Nombre de messages : 1001
Age : 37
Localisation : Paris
Date d'inscription : 05/05/2008
Re: Validation d'un modèle
Merci pour votre aide,c'est très gentil!
statisticienne- Nombre de messages : 125
Date d'inscription : 15/06/2014
Re: Validation d'un modèle
statisticienne a écrit:Merci pour votre aide,c'est très gentil!
Je sais
niaboc- Nombre de messages : 1001
Age : 37
Localisation : Paris
Date d'inscription : 05/05/2008
Re: Validation d'un modèle
Pour faire un p'tit LOOCV sous R, faut pondre un code de ce genre:
Ca sent le mec jaloux par rapport au coeur de la dernière fois tout ça.
- Code:
# En supposant Y ta variable réponse/à discriminer
n = dim(DATA)[1]
prediction = as.matrix(0,n,1)
for (i in 1:n) {
DATA.L = DATA[-i,]
DATA.T = DATA[i,]
model.L = fonction correctement appelée sur DATA.L
prediction[i] = appel de la fonction predict avec pour paramètres model.L et DATA.T en choisissant si tu veux retourner la classe de prédiction [pour la matrice de confusion par exemple] ou la probabilité [pour l'AUC par exemple]
}
confusion = table(prediction,Y)
niaboc a écrit:statisticienne a écrit:Merci pour votre aide,c'est très gentil!
Je sais
Ca sent le mec jaloux par rapport au coeur de la dernière fois tout ça.
Re: Validation d'un modèle
Bonjour voila un coeur pour chacun d'entre vous
Bon j'ai pas bien compris ou je dois mettre ce code
Bon voila ce que j'ai fais,prière de me corriger s'il y a une faute d'ordre dans les commandes,et de me corriger selon le leave one out:
require(foreign)
require(ggplot2)
require(MASS)
require(Hmisc)
require(reshape2)
#importation de la base
base=read.table("C:/Documents and Settings/Administrateur/Bureau/base.finale.csv",header=T,sep=";",dec=",")
#division en éch d'app et éch test
ind<-sample(2,nrow(base),replace=TRUE,prob=c(0.7, 0.3))
train<-base[ind==1,]
View(train)
test<-base[ind==2,]
View(test)
##modélisation sur l'apprentissage
#seulement cst
m0<-polr(formula=appreciation~1, data=train,Hess=TRUE)
summary(m0)
#avec toutes les var
m1<-polr(formula=appreciation~bruit+intersection+terminaison+contraste+épaisseur+Cp+Cr+BCC+OCC+E,data=train,Hess=TRUE)
summary(m1)
#(on regarde la stat du rapport de vraisemblance=Dev~1-Dev~ttes les var et on trouve le p-value,il doit etre <0.05)
#stepwise(on peut utiliser aussi direction="backward"ou direction="Forward")
m2<-stepAIC(m1,direction="both")
summary(m2)
#calcul des p-value
ctable <- coef(summary(m2))
ctable
p <- pnorm(abs(ctable[, "t value"]), lower.tail = FALSE) * 2
ctable<-cbind(ctable, "p value" = p)
ctable
#confidence intervals
CI<-confint(m2)
CI
Bon j'ai pas bien compris ou je dois mettre ce code
Bon voila ce que j'ai fais,prière de me corriger s'il y a une faute d'ordre dans les commandes,et de me corriger selon le leave one out:
require(foreign)
require(ggplot2)
require(MASS)
require(Hmisc)
require(reshape2)
#importation de la base
base=read.table("C:/Documents and Settings/Administrateur/Bureau/base.finale.csv",header=T,sep=";",dec=",")
#division en éch d'app et éch test
ind<-sample(2,nrow(base),replace=TRUE,prob=c(0.7, 0.3))
train<-base[ind==1,]
View(train)
test<-base[ind==2,]
View(test)
##modélisation sur l'apprentissage
#seulement cst
m0<-polr(formula=appreciation~1, data=train,Hess=TRUE)
summary(m0)
#avec toutes les var
m1<-polr(formula=appreciation~bruit+intersection+terminaison+contraste+épaisseur+Cp+Cr+BCC+OCC+E,data=train,Hess=TRUE)
summary(m1)
#(on regarde la stat du rapport de vraisemblance=Dev~1-Dev~ttes les var et on trouve le p-value,il doit etre <0.05)
#stepwise(on peut utiliser aussi direction="backward"ou direction="Forward")
m2<-stepAIC(m1,direction="both")
summary(m2)
#calcul des p-value
ctable <- coef(summary(m2))
ctable
p <- pnorm(abs(ctable[, "t value"]), lower.tail = FALSE) * 2
ctable<-cbind(ctable, "p value" = p)
ctable
#confidence intervals
CI<-confint(m2)
CI
statisticienne- Nombre de messages : 125
Date d'inscription : 15/06/2014
Re: Validation d'un modèle
Le code que je t'ai mis se suffit à lui même à condition de remplacer les zones flous par la bonne syntaxe.
Re: Validation d'un modèle
- Code:
> n = dim(base)[1]
> prediction = as.matrix(0,n,1)
> for (i in 1:n) {
+ DATA.L = base[-i,]
+ DATA.T = base[i,]
+ model.L = m1<-polr(formula=appreciation~bruit+intersection+terminaison+contraste+épaisseur+Cp+Cr+BCC+OCC+E,data=DATA.L,Hess=TRUE)
+
+ prediction[i] = predict(model.L,DATA.T,type = "probs")
+ }
There were 50 or more warnings (use warnings() to see the first 50)
> confusion=table(prediction,appreciation)
Error in table(prediction, appreciation) :
object 'appreciation' not found
what's the problem?
statisticienne- Nombre de messages : 125
Date d'inscription : 15/06/2014
Re: Validation d'un modèle
- Code:
> warnings()
Warning messages:
1: In prediction[i] = predict(model.L, data = DATA.T, type = "probs") :
number of items to replace is not a multiple of replacement length
2: In prediction[i] = predict(model.L, data = DATA.T, type = "probs") :
number of items to replace is not a multiple of replacement length
3: In prediction[i] = predict(model.L, data = DATA.T, type = "probs") :
statisticienne- Nombre de messages : 125
Date d'inscription : 15/06/2014
Re: Validation d'un modèle
Présenté tel quel j'aurais tendance à dire que le résultat de l'appel à la fonction prédict n'est pas de taille 1x1 comme il le faut pour pouvoir le mettre à la cellule i du vecteur prediction. As-tu regardé ce que te renvoie l'objet predict(model.L,DATA.T,type = "probs")?
Re: Validation d'un modèle
Désolée j'ai pas bien saisie votre réponse
statisticienne- Nombre de messages : 125
Date d'inscription : 15/06/2014
Re: Validation d'un modèle
Predict() doit renvoyer un seul élément pour pouvoir l'insérer dans le vecteur prediction qui est de taille 1xn.
Re: Validation d'un modèle
Bon, envoie moi en mp tes données (anonymisées si nécessaire) et dés que j'ai un moment je regarde ça.
Re: Validation d'un modèle
Bonjour,
Merci pour votre aide,je travaille jusqu'à présent sur une base illustrative,dès que j'aurai ma base je vous l'envoie.Merci bcp
Merci pour votre aide,je travaille jusqu'à présent sur une base illustrative,dès que j'aurai ma base je vous l'envoie.Merci bcp
statisticienne- Nombre de messages : 125
Date d'inscription : 15/06/2014
Sujets similaires
» validation régression linéaire multiple
» Validation de reproductibilité
» validation soudure et loi binomiale
» validation croisée - variance MSE
» Recherche de l'échantillon > validation d'essais
» Validation de reproductibilité
» validation soudure et loi binomiale
» validation croisée - variance MSE
» Recherche de l'échantillon > validation d'essais
Page 1 sur 1
Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum