From 05bf6e1f94d62e60a191fc0c98e4fc68eabd31c4 Mon Sep 17 00:00:00 2001 From: Arnaud Legrand Date: Mon, 24 Sep 2018 09:12:35 +0200 Subject: [PATCH] =?UTF-8?q?G=C3=A9nerate=20HTML=20(should=20be=20propagate?= =?UTF-8?q?d=20to=20FUN)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- module4/ressources/exo1.html | 135 +++++++++++++++++++++++++++++++++++ module4/ressources/exo2.html | 40 +++++++++++ module4/ressources/exo3.html | 35 +++++++++ 3 files changed, 210 insertions(+) create mode 100644 module4/ressources/exo1.html create mode 100644 module4/ressources/exo2.html create mode 100644 module4/ressources/exo3.html diff --git a/module4/ressources/exo1.html b/module4/ressources/exo1.html new file mode 100644 index 0000000..796a4ab --- /dev/null +++ b/module4/ressources/exo1.html @@ -0,0 +1,135 @@ +
+ + +
+

Exercice 1: Ré-exécuter n'est pas répliquer…

+
+

+Même si la terminologie peut varier d'un auteur ou d'une communauté à +l'autre, il est important de comprendre que l'on peut distinguer +différent niveau de "réplication" selon que l'on s'est contenté de +vérifier que l'on pouvait ré-exécuter le code et obtenir exactement les +mêmes résultats ou bien que l'on arrivait à reproduire des résultats +similaires en suivant une approche similaire (éventuellement avec un +autre langage, une autre méthode de calcul, etc.). À Ce sujet, vous +pourrez vouloir par exemple lire https://arxiv.org/abs/1708.08205. +

+ +

+Le diable se cache souvent dans des endroits auxquels on ne penserait +jamais et nous sommes nous-mêmes allés de surprise en surprise en +préparant ce MOOC, notamment avec l'exercice du module 2 sur +Challenger. C'est pourquoi nous vous proposons dans cet exercice, de +refaire une partie de l'analyse des données de Challenger, comme l'ont +fait Siddhartha Dallal et ses co-auteurs il y a presque 30 ans dans +leur article Risk Analysis of the Space Shuttle: Pre-Challenger +Prediction of Failure et publié dans le Journal of the American +Statistical Association (Vol. 84, No. 408, Déc., 1989), mais dans +dans un autre langage de votre choix (Python, R, Julia, SAS, +…). +

+ +

+Nous savons d'expérience que si les estimations de pente et +d'intercept sont généralement les mêmes, on peut avoir des différences +lorsque l'on regarde un peu plus dans les détails les estimateurs de +variance et le R2. Il peut également y avoir des surprises dans le +graphique final selon les versions de bibliothèques utilisées. +

+ +

+L'ensemble des calculs à effectuer est décrit ici: +https://app-learninglab.inria.fr/gitlab/moocrr-session1/moocrr-reproducibility-study/ +

+ +

+Vous y trouverez notre réplication des calculs de Dallal et al. (en +R), une mise en œuvre en python et une en R (très similaires à ce que +vous avez pu utiliser dans le module 2). Cet exercice peut donc se +faire à deux niveaux: +

+
    +
  1. un niveau facile pour ceux qui repartiront du code dans le langage +qu'ils n'auront initialement pas utilisé et se contenteront de le +ré-exécuter. Pour cela, nul besoin de maîtriser la régression +logistique, il suffit de bien inspecter les sorties produites et de +vérifier qu'elles correspondent bien aux valeurs attendues. Pour +ceux qui ré-exécuteraient le notebook Python dans l'environnement +Jupyter du MOOC, n'hésitez pas à consulter les ressources de la +section 4A du module 2 qui expliquent comment y importer un +notebook.
  2. +
  3. un niveau plus difficile pour ceux qui souhaiteront le réécrire +complètement (éventuellement dans un autre langage que R ou python, +l'expérience peut être d'autant plus intéressante que nous n'avons +pas testé ces variations). Là, si les fonctions de calcul d'une +régression logistique ne sont pas présente, il y a par contre +intérêt à en savoir un minimum pour pouvoir les +implémenter. L'exercice en est d'autant plus instructif.
  4. +
+ +

+Vous pourrez alors discuter sur le forum des succès et des échecs que +vous avez pu rencontrer. Pour cela: +

+
    +
  • Vous publierez auparavant dans votre dépôt les différents notebooks +en prenant bien soin d'enrichir votre document des informations +(numéros de version, etc.) sur votre système et sur les +bibliothèques installées.
  • +
  • Vous indiquerez votre résultat (que ça soit un succès ou échec à +obtenir les mêmes résultats) en remplissant le tableau dans ce même +dépôt (vous avez les droits d'édition donc il vous suffit d'éditer +les fichiers via l'interface GitLab). Vous vérifierez les valeurs +obtenues pour +
      +
    1. les coefficients de la pente et de l'intercept
    2. +
    3. les estimations d'erreur de ces coefficients
    4. +
    5. le goodness of fit
    6. +
    7. la figure
    8. +
    9. la zone de confiance
    10. +
  • +
  • +Pour chacun vous indiquerez si le résultat est: +

    +
      +
    • identique
    • +
    • proche à moins de trois décimales
    • +
    • très différent
    • +
    • non fonctionnel (pas de résultat obtenu)
    • +
    +

    +Vous indiquerez également dans ce tableau: +

    +
      +
    • Un lien vers votre espace gitlab contenant les différents notebooks
    • +
    • Le nom du système d'exploitation utilisé
    • +
    • Le langage utilisé et son numéro de version
    • +
    • Les numéros des principales bibliothèques utilisées +
        +
      • Python: numpy, pandas, matplotlib, statsmodels, …
      • +
      • R: BLAS, ggplot, dplyr si chargées
      • +
    • +
  • +
+ +

+Ne vous inquiétez pas si ces consignes vous semblent peu claires sur l'instant, +elles sont rappelées en haut du tableau et vous vous rendrez vite +compte s'il vous manque quelque chose quand vous essaierez de remplir +ce tableau. +

+ +

+Nous effectuerons une synthèse illustrant les principales divergences +observées et nous vous l'enverrons à la fin du MOOC. +

+
+
+
diff --git a/module4/ressources/exo2.html b/module4/ressources/exo2.html new file mode 100644 index 0000000..bb9e600 --- /dev/null +++ b/module4/ressources/exo2.html @@ -0,0 +1,40 @@ +
+
+

Table of Contents

+ +
+ +
+

Exercice 2: L'importance de l'environnement

+
+

+Dans cet exercice, nous vous proposons de reprendre l'exercice +précédent mais en mettant à jour l'environnement de calcul. En effet, +nous avons rencontré des surprises en préparant ce MOOC puisqu'il nous +est arrivé d'avoir des résultats différents entre nos machines et +l'environnement jupyter que nous avions mis en place pour le MOOC. Ça +sera peut-être également votre cas! +

+ +
    +
  1. Pour ceux qui ont suivi le parcours jupyter, recréer +l'environnement du MOOC sur votre propre machine en suivant les +instructions données +dans les ressources de la section 4A du module 2.
  2. +
  3. Vérifier si vous obtenez bien les même résultats que ceux +attendus.
  4. +
  5. Mettre à jour (vers le haut ou vers la bas) cet environnement et +vérifier si vous obtenez les mêmes résultats
  6. +
+ +

+Comme précédemment, vous mettrez à jour le tableau et vous discuterez +sur le forum des succès et des échec que vous aurez rencontrés. +

+
+
+
diff --git a/module4/ressources/exo3.html b/module4/ressources/exo3.html new file mode 100644 index 0000000..a4c8e0d --- /dev/null +++ b/module4/ressources/exo3.html @@ -0,0 +1,35 @@ +
+
+

Table of Contents

+ +
+ +
+

Exercice 3: Répliquer un papier de Rescience

+
+

+Rescience (http://rescience.github.io/) est un journal de sciences +computationnelles entièrement ouvert dont l'objectif est d'encourager +la réplication de travaux déjà publiés en s'assurant que l'ensemble du +code et des données soit disponible. Pour chacun des articles publiés +dans Rescience, nous avons la garantie qu'au moins trois chercheurs +indépendants ont réussi à suivre les indications, à ré-exécuter le +code et à ré-obtenir les mêmes résultats que ceux décrits par les +auteurs. Cela ne veut pas dire que cela soit parfaitement automatique +pour autant et il peut être intéressant de voir comment ils ont +procédé. +

+ +

+Nous vous proposons donc de choisir l'un de ces articles (celui avec +lequel vous avez le plus d'affinité) et d'essayer de réexécuter les +codes et les calculs décrits dans l'article. N'hésitez pas à indiquer +vos difficultés éventuelles sur le forum où nous répondrons à vos questions. +

+
+
+
-- 2.18.1