Document ID: /fineweb-2-swissfilter-quality_10-filterrobots/filtered/06924.jsonl.gz/247

Slides
Les slides avec plein de références sont disponibles sur ma page.
Contexte
La reproductibilité des expériences et des analyses est l'un des fondements de la science moderne. Pourtant, la description des protocoles expérimentaux (en particulier dans les articles d'informatique) sont très souvent lacunaires et ne permettent que très rarement de reproduire une expérience. Ce genre d'imprécision n'était que peu gênant il y a 20 ans lorsque le
matériel et les systèmes d'exploitations étaient relativement simple. Mais les plates-formes de calcul actuelles résultent de l'agrégation d'un grand nombre de composants hétérogènes et d'une architecture logicielle (OS, compilateur, bibliothèques, machines virtuelles, …) qu'il est devenu impossible de maîtriser parfaitement. Les phénomènes observés par certains deviennent donc de plus en plus difficile à reproduire par des tiers et à expliquer en l'absence d'informations suffisantes. Si ces systèmes sont théoriquement déterministes, l'explosion de leur espace d'état et le manque de maîtrise de l'état impose de les considérer plutôt comme des systèmes stochastiques, ce à quoi les informaticiens sont peu habitués.
Cependant, les analyses de systèmes non déterministes sont plus complexes et les courbes fournies dans un article sont souvent insuffisantes pour conclure. Si elles illustrent le point de vue de l'auteur, elles ne comportent que rarement les informations sur la variabilité du système permettant d'évaluer quelle confiance avoir en la résultats présentés.
La recherche reproductible est l'idée selon laquelle le produit de la recherche académique n'est pas uniquement un article classique mais également l'ensemble des logiciels et des données ayant permit d'aboutir au résultat annoncé.
An article about computational science in a scientific publication is not the scholarship itself, it is merely advertising of the scholarship. The actual scholarship is the complete software development environment and the complete set of instructions which generated the figures.
– Jonathan Buckheit and David Donoho
Suite à l'apparition croissante de fraudes scientifiques et aux rétractations de plus en plus fréquentes d'articles erronnés, la communauté scientifique dans son ensemble commence à se doter d'outils et de pratiques permettant de limiter ces problèmes.
Programme
L'objectif de ce tutoriel est de sensibiliser au problème de la reproductibilité des expériences et des analyses en informatique. J'y présenterai des outils permettant d'apporter une réponse concrète au problème de l'analyse et je permettrai aux participants de faire leurs premiers pas en levant les difficultés techniques qui pourraient survenir.
All supporting material will be in English; the talk will be given in French if all participants are confortable with that language, and in English on need
Plus précisément, je présenterai les différents outils:
- R et ggplot2 qui permettent un traitement standardisé, efficace et flexible des données et de la production de graphes. Si R est de prime abord un langage assez déroutant pour les informaticiens, il se révèle rapidement un atout en terme de productivité.
- knitR qui permet d'intégrer du R à un document en LaTeX ou en Markdown. Cet outil permet donc d'automatiser complètement le post-traitement des données et la production des figures en les intégrant à un article. Au delà de la simplification en terme de mise en page ou de la garantie d'uniformité des traitements faits aux données, la mise à disposition des sources du document permet à quiconque de vérifier ce qui a été fait et potentiellement d'améliorer les graphes ou l'analyse.
- J'illustrerai l'utilisation de ces outils à l'aide de Rstudio, un IDE pour R multi-plate-forme et facile à prendre en main. Par exemple, en utilisant R+Markdown (Rmd files) in Rstudio, il est alors très facile de les exporter vers Rpubs et ainsi de mettre à disposition à peu près n'importe quoi… :).
Prérequis
Ce tutoriel ne suppose pas de prérequis particuliers en terme de connaissances mais afin de ne pas perdre de temps, il est indispensable que les participants aient au préalable installé R, Rstudio et ggplot2 sur leur machine.
Voici comment procéder sur une distribution debian
sudo apt-get install r-base r-cran-ggplot2 r-cran-reshape
Rstudio and knitr are unfortunately not packaged within debian so the easiest is to download the corresponding debian package on the Rstudio webpage and then to install it manually.
wget http://download1.rstudio.org/rstudio-0.98.490-amd64.deb sudo dpkg -i rstudio-0.98.490-amd64.deb sudo apt-get -f install # to fix possibly missing dependencies
You will also need to install knitr. To this end, you should simply run R (or Rstudio) and use the following command (you'll have to answer yes to the first question about installing in
your home and then you'll have to select a mirror).
install.packages("knitr")
If
r-cran-ggplot2 or
r-cran-reshape could not be installed for
some reason, you can also install them through R by doing:
install.packages("ggplot2") install.packages("reshape")
Those of you who whould like to play with org-mode should install emacs, org-mode and ess:
sudo apt-get install emacs org-mode ess
Ressources
- Même, s'il ne parle pas de recherche reproductible, il est interdit à un doctorant de ne pas connaître ses classiques:
Jain, The Art of Computer Systems Performance Analysis:
Techniques for Experimental Design, Measurement, Simulation, and Modeling, Wiley- Interscience, New York, NY, April 1991. À lire absolument si vous ne l'avez pas encore fait!
- Pour une introduction rapide à R, vous pouvez regarder R for Beginners (Version française).
- Une approche probablement moins rébarbative consiste à suivre un bon cours en ligne introduisant R et l'analyse de données tel que https://www.coursera.org/course/compdata.
- L'atelier d'évaluation de performance animé par Jean-Marc Vincent et moi-même en M2R et qui présente des notions d'analyse de données ainsi que le minimum vital de l'expérimentateur (intervalle de confiance, régression linéaire et introduction aux plans d'expérience).
- La documentation de ggplot2 qui avec un peu d'expérience vous permettra de forger la représentation graphique qui
convient.
- http://www.r-bloggers.com/ qui est une façon ludique de voir tout un tas de représentations graphiques ou d'analyses venant de domaines variés.