J'ai effectué une évaluation informatisée des différentes méthodes d'ajustement d'un type particulier de modèle utilisé dans les sciences paléo. J'avais un ensemble d'entraînement de grande taille et j'ai donc mis au hasard (échantillonnage aléatoire stratifié) un ensemble de tests de côté. J'ai adapté différentes méthodes aux échantillons de l'ensemble d'apprentissage et en utilisant les m modèles résultants, j'ai prédit la réponse pour les échantillons de l'ensemble de test et calculé un RMSEP sur les échantillons de l'ensemble de test. Il s'agit d'une seule exécution .
J'ai ensuite répété ce processus un grand nombre de fois, chaque fois que j'ai choisi un ensemble d'entraînement différent en échantillonnant au hasard un nouvel ensemble de tests.
Cela fait, je veux rechercher si l'une des méthodes a des performances RMSEP meilleures ou pires. Je voudrais également faire plusieurs comparaisons des méthodes par paires.
Mon approche a consisté à adapter un modèle à effets mixtes linéaires (LME), avec un seul effet aléatoire pour Run . J'ai utilisé à lmer()
partir du package lme4 pour adapter mon modèle et les fonctions du package multcomp pour effectuer les comparaisons multiples. Mon modèle était essentiellement
lmer(RMSEP ~ method + (1 | Run), data = FOO)
où method
est un facteur indiquant quelle méthode a été utilisée pour générer les prédictions du modèle pour l'ensemble de test et Run
est un indicateur pour chaque cycle particulier de mon "expérience".
Ma question concerne les résidus du LME. Compte tenu de l'effet aléatoire pour Run je suppose que les valeurs de RMSEP pour cette course sont corrélées à un certain degré , mais ne sont pas corrélés entre les courses, sur la base de la corrélation induite par les effets de PROCURE de hasard.
Cette hypothèse d'indépendance entre les courses est-elle valable? Sinon, existe-t-il un moyen de tenir compte de cela dans le modèle LME ou devrais-je chercher à utiliser un autre type d'analyse statique pour répondre à ma question?
la source
Réponses:
Vous effectuez essentiellement une certaine forme de validation croisée ici pour chacune de vos méthodes m et souhaitez ensuite voir quelle méthode fonctionne mieux. Les résultats entre les courses seront certainement dépendants, car ils sont basés sur les mêmes données et vous avez un chevauchement entre vos trains / ensembles de tests. La question est de savoir si cela devrait être important lorsque vous comparez les méthodes.
Supposons que vous effectuiez une seule exécution et que vous trouviez qu'une méthode est meilleure que les autres. Vous vous poseriez alors la question - est-ce simplement dû au choix spécifique de l'ensemble de test? C'est pourquoi vous répétez votre test pour de nombreux trains / ensembles de tests différents. Ainsi, afin de déterminer qu'une méthode est meilleure que d'autres méthodes, vous l'exécutez plusieurs fois et à chaque exécution, vous la comparez aux autres méthodes (vous avez différentes options pour regarder l'erreur / le rang / etc.). Maintenant, si vous trouvez qu'une méthode fait mieux sur la plupart des exécutions, le résultat est ce qu'il est. Je ne suis pas sûr qu'il soit utile de donner une valeur de p à cela. Ou, si vous voulez donner une valeur de p, demandez-vous quel est le modèle d'arrière-plan ici?
la source
Peut ne pas vraiment comprendre ce que vous avez fait, mais
Oui, cela reflète la difficulté de l'ensemble de test lors de cette exécution
Non, étant donné la façon dont vous avez échantillonné les ensembles de tests, certains seront plus chevauchés que d'autres (certainement pas des réplications indépendantes)
Vous devrez en quelque sorte modéliser la dépendance en fonction du chevauchement ou concevoir l'évaluation de sorte que les exécutions soient indépendantes. Je lirais la littérature statistique sur la validation croisée ;-)
la source