IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

R Discussion :

Cross validation sous R


Sujet :

R

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Nouveau candidat au Club
    Femme Profil pro
    Data Analyst
    Inscrit en
    Décembre 2017
    Messages
    1
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Data Analyst

    Informations forums :
    Inscription : Décembre 2017
    Messages : 1
    Par défaut Cross validation sous R
    Bonjour à tous,

    Je travaille actuellement sur un projet et suite à l'analyse exploratoire de mes données, j'ai proposé plusieurs modèles. Je cherche à savoir quel est le meilleur, assez classiquement.

    Pour cela, je cherche à couper l’échantillon d’apprentissage en deux jeux de données train_train et train_test et à mesurer la pertinence des modèles en compétition par cross validation à l’aide du critère RMSLE, comme demandé dans le devoir. Afin de m’assurer de la stabilité des résultats , je cherche à réaliser 10 cross- validation. Le tout pour ces deux modèles, pour voir quel est le plus performant.

    Vous trouverez ci-dessous le code que j'implémente pour cela (exemple sur un modèle en particulier), je cherche ainsi à :
    > Je mélange de manière aléatoire la table des observations et je conserve uniquement une sous table contenant 1/9e des lignes
    > Je crée à partir de cette table une table d'apprentissage et une table de test (train_train et train_test)
    > On fait la régression sur le set d'apprentissage et stocke les coefficients dans la matrice résultats_reg
    > Je vérifie les performances prédictives sur le jeu test et stocke les résultats RMSE dans perf_pred

    Malheureusement, R m'annonce : "Erreur : unexpected input in:
    " perf_pred[1,i]=mean((log(p+1)-log(train_test$len+1))^2)^0.5"

    Je ne comprends pas d'où vient le problème dans mon code. Pouvez-vous svp m'aider à comprendre comment réaliser cette cross validation et corriger mon code ?

    Merci pour votre aide !

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    reg=survreg(Surv(len, censure)~CALL_TYPE+wday+hour+d_st+d_end+distance+angle_diff+hour*CALL_TYPE+wday*CALL_TYPE,data=train,dist="exponential")
     
    results_reg = matrix(0,length(reg$coefficients),1)
    results_pred = matrix(0,n,1)
    perf_pred = matrix(0,1,10)
     
    for (i in 1:10){
      k = sample(n,0.9*n) 
      train_train = train[k,] 
      train_test = train[-k,]
      reg=survreg(Surv(len, censure)~CALL_TYPE+wday+hour+d_st+d_end+distance+angle_diff+hour*CALL_TYPE+wday*CALL_TYPE, data=train_train,dist="exponential")
      results_reg=cbind(results_reg,reg$coefficients)
      p=predict(reg, new=train_test,type="quantile", p=0.5) 
      perf_pred[1,i]=mean((log(p+1)-log(train_test$len+1))^2)^0.5}
     
    results_reg = results_reg[,-1]
    results_pred = results_pred[,-1]
    perf_pred

  2. #2
    Membre émérite
    Homme Profil pro
    Chercheur
    Inscrit en
    Décembre 2015
    Messages
    327
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Chercheur
    Secteur : Enseignement

    Informations forums :
    Inscription : Décembre 2015
    Messages : 327
    Par défaut
    Que représente le caractère bizarre avant l'accolade fermante de la boucle for ? Si ce caractère existe dans le code initial, il peut expliquer le message d'erreur.

    Remarque importante : indépendamment du message d'erreur, le code de validation croisée n'est pas exact. Pour les bases des principales méthodes, cf. la page Wikipedia en anglais https://en.wikipedia.org/wiki/Cross-...n_(statistics)

Discussions similaires

  1. Sous matrice Cross Validation
    Par magictol53 dans le forum MATLAB
    Réponses: 9
    Dernier message: 31/05/2012, 17h35
  2. [Validator] Validation sous condition !
    Par Arcann dans le forum Struts 1
    Réponses: 2
    Dernier message: 29/06/2009, 19h24
  3. Fichiers de police non valide sous vista
    Par schkrumble dans le forum Windows Vista
    Réponses: 1
    Dernier message: 07/12/2008, 11h27
  4. Cross compilation sous Debian
    Par willycat dans le forum Autres éditeurs
    Réponses: 0
    Dernier message: 25/06/2008, 11h08
  5. Application C++ WinCe non valide sous XP & Vista
    Par hubertfl dans le forum Autres Logiciels
    Réponses: 1
    Dernier message: 10/06/2008, 10h21

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo