-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathindex.Rmd
More file actions
executable file
·252 lines (166 loc) · 22.4 KB
/
Copy pathindex.Rmd
File metadata and controls
executable file
·252 lines (166 loc) · 22.4 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
---
title: "Science des données biologiques III"
author: "Philippe Grosjean & Guyliann Engels"
date: "`r Sys.Date()`"
site: bookdown::bookdown_site
output:
bookdown::gitbook:
info: yes
includes:
in_header: header.html
after_body: footer.html
documentclass: book
bibliography: [book.bib, packages.bib]
biblio-style: apalike
link-citations: yes
github-repo: "`r !'BioDataScience-Course/sdd-umons3-{YYYY}'`"
url: 'https\://wp.sciviews.org/sdd-umons3/'
description: "Cours interactif pour la science des données avec R & SciViews-R III."
cover-image: "images/front-cover.png"
---
# Préambule {#preambule .unnumbered}
```{r setup, include=FALSE, cache=FALSE}
knitr::write_bib(c(.packages(), 'bookdown', 'knitr', 'rmarkdown'), 'packages.bib')
```
`r learnitdown::clean_ex_toc()` `r learnitdown::diagnose_login(lang = "fr")`
Cet ouvrage est conçu pour être utilisé de manière interactive en ligne. En effet, vous y trouverez des vidéos, des démonstrations interactives et des exercices sous forme de questionnaires interactifs. **Ces différents éléments ne sont, bien évidemment, utilisables qu'en ligne.**

------------------------------------------------------------------------
*Le matériel dans cet ouvrage est distribué sous licence [CC BY-NC-SA 4.0](https://creativecommons.org/licenses/by-nc-sa/4.0/deed.fr).*
------------------------------------------------------------------------
<details>
<summary>Informations système</summary>
```{r, class.source='hidden-code'}
sessioninfo::session_info()
```
</details>
## Vue générale des cours {#vuegenerale .unnumbered}
Cet ouvrage interactif est le troisième volume d'une série de trois ouvrages traitant de la science des données biologiques. L'écriture de cette suite de livres a débuté au cours de l'année académique 2018-2019. Pour l'année académique `r !'{acad_year}'`, ceci est le support des cours suivants :
- `r !'[Science des données III : exploration et prédiction](https://webcontent.umons.ac.be/web/fr/pde/{acad_year}/ue/US-M1-BIOL60-004-M.htm)'` (SDD III) aux premiers Masters BBMC (Biochimie, Biologie Moléculaire et Cellulaire) et BOE (Biologie des Organismes et Écologie) en Faculté des Sciences de l'Université de Mons, et dont le responsable est Philippe Grosjean
- [Science des données III](https://www.ulb.be/fr/programme/binf-y402) (SDD III) aux premiers Masters BBMC (Biochimie, Biologie Moléculaire et Cellulaire) en Faculté des Sciences de l'Université Libre de Bruxelles sur le campus de Charleroi, et dont le responsable est Philippe Grosjean
- `r !'[Science des données IV : recherche reproductible](https://webcontent.umons.ac.be/web/fr/pde/{acad_year}/ue/US-M2-BIOEFA-015-M.htm)'` (SDD IV) cours à option donné aux deuxièmes années des mêmes Masters, et dont le responsable est également Philippe Grosjean
La matière est divisée en cinq modules de six heures chacun en présentiel pour SDD III, et cinq modules également pour SDD IV. Chaque module nécessite environ dix heures (variable, en fonction de votre rythme et de votre technique d'apprentissage entre huit et douze heures) de travail à domicile. **Cette matière fait suite aux deux premiers cours dont les contenus sont considérés comme assimilés (voir [cours SDD I](https://wp.sciviews.org/sdd-umons){target="top"} et [cours SDD II](https://wp.sciviews.org/sdd-umons2){target="top"}).**
### SDD III : exploration et prédiction {.unnumbered}
Les trois premiers modules de ce cours se concentrent sur les techniques de classification supervisée, encore appelées apprentissage machine (*machine learning* en anglais) qui prennent de plus en plus d'importance de nos jours dans tous les domaines, y compris la biologie. Ces techniques utilisent des algorithmes d'apprentissage à la base de l'intelligence artificielle et du "deep learning".
Ensuite, deux modules sont consacrés à des données particulières avec des dépendances temporelles (les séries dites "spatio-temporelles" ou chronologiques). L'étude de phénomènes qui évoluent dans le temps est courante en biologie, et l'analyse de telles données nécessite l'utilisation de techniques statistiques adaptées que nous aborderons dans cette partie.
### SDD IV : recherche reproductible {.unnumbered}
Ce cours à option vient terminer la formation en science de données biologiques en approfondissant la gestion du code et des projets et en s'intéressant à un "écosystème logiciel" plus large avec les bases de données et le calcul sur le cloud. Le premier module est consacré à une initiation à l'analyse de données spatialisées et à la réalisation de cartes avec R. Il s'agit d'un aspect important pour beaucoup de biologistes, en particulier ceux qui travaillent sur le terrain. Le second module permet de se familiariser avec des données particulières comme les dates, les données circulaires et le texte (y compris les expressions régulières). Le troisième module vise à s'organiser pour gérer au mieux un gros projet. Les deux modules suivants abordent successivement la modularisation du code, son optimisation et son test, la gestion de bases de données, et enfin, l'utilisation de packages R, de calcul en parallèle et sur le cloud. Un projet mettant en œuvre ces techniques plus avancées est également réalisé par les étudiants qui ont choisi de suivre ce cours.
## Matériel pédagogique {#pedagogie .unnumbered}
Le matériel pédagogique, rassemblé dans ce syllabus interactif, est aussi varié que possible. Vous pourrez ainsi piocher dans l'offre en fonction de vos envies et de votre profil d'apprenant pour optimiser votre travail. Vous trouverez :
- le présent ouvrage en ligne,
- des [exercices H5P](http://www.h5p.org) en ligne repérables par le logo [](https://wp.sciviews.org/h5p/){target="top"} sur lequel vous pouvez cliquer pour avoir plus d'infos sur leur utilisation,
- des [applications Shiny](https://shiny.rstudio.com/) qui sont des véritables petits programmes avec interface Web écrits en R. Ils vous démontrent "en live" certains concepts. Ces applications doivent être lancées en cliquant sur l'image contenant le logo [](https://wp.sciviews.org/shiny_app/){target="top"} et elles doivent être quittées avec le bouton `Quit` ou `Savz & Quit` si l'enregistrement est activé. Vous soumettez une réponse avec le bouton `Submit` et une notification vous indique le niveau de réussite de l'exercice. Votre activité n'est prise en compte que si vous cliquez ensuite sur `Save & Quit`. Si le serveur distant est trop lent ou indisponible, il est aussi possible de lancer ces applications Shiny directement dans RStudio (voir le message en italique qui apparaît en dessous de l'application),
- des [tutoriels interactifs learnr](https://rstudio.github.io/learnr/). Vous pourrez exécuter ces tutoriels directement sur votre ordinateur dans RStudio, et vous aurez alors accès à des pages Web réactives contenant des explications, des exercices et des quiz en ligne dans votre environnement de travail habituel. Ces tutoriels sont repérables dans l'ouvrage par l'icône suivante [](https://wp.sciviews.org/tutorial/){target="top"},
- des [dépôts GitHub Classroom](https://classroom.github.com/) dans la section [BioDataScience-Course](https://www.github.com/BioDataScience-Course) pour réaliser et documenter vos travaux personnels. Les liens vers ces dépôts sont repérables par l'icône GitHub [](https://wp.sciviews.org/github_assignation/){target="top"},
- des renvois vers des documents externes en ligne, des vidéos [Youtube](https://www.youtube.com/) ou [Vimeo](https://vimeo.com/), des ouvrages en ligne en anglais ou en français, des blogs, des tutoriels, des questions sur des sites comme [Stackoverflow](https://stackoverflow.com/) ou dans des [mailing lists R](https://www.r-project.org/mail.html), de [X (ex Twitter)](https://twitter.com/)...
- des diapositives de présentations distribuées via le dépôt `r !'[sdd_lessons sur BioDataScience-Course](https://github.com/BioDataScience-Course/sdd_lessons/tree/{acad_year})'`.
```{block, type='info'}
::: {.nocourse}
Tout ce matériel est accessible à partir du [site Web du cours](https://wp.sciviews.org){target='top'}, et du présent syllabus interactif.
:::
::: {.S-BIOG-025 .S-BIOG-077}
Tout ce matériel est accessible à partir du [site Web du cours](https://wp.sciviews.org){target='top'}, du présent syllabus interactif et de Moodle pour les étudiants de l'UMONS.
Les travaux personnels seront à réaliser dans une machine virtuelle préconfigurée, la **'SciViews Box'**, que nous installerons ensemble durant la séance introductive. **Nous installerons une nouvelle version de la SciViews Box** et vous aurez différentes manipulations à réaliser dans Saturn Cloud pour pouvoir utiliser le matériel du cours. Il est donc très important que vous soyez présent•e durant cette première séance !
Vous pourrez poser vos questions par mail à l'adresse [sdd@sciviews.org](mailto:sdd@sciviews.org) ou dans les "issues" du dépôt GitHub de ce cours. L'accès à ce dépôt vous sera donné au début du cours.
Un **outil d'annotation** et de surlignage est intégré dans le cours en ligne. Il vous permet :
- de personnaliser votre cours en écrivant dedans comme vous le feriez avec un syllabus papier (annotations privées... tout ce qui vous passe par la tête).
- d'échanger des informations complémentaires entre vous (par exemple, trucs et astuces supplémentaires, liens utiles, etc.) ou avec vos enseignants (passages moins clairs ou lacunes éventuelles). Soyez constructif dans vos commentaires publics et réservez vos questions pour les "issues". Nous tiendrons compte de vos remarques pour améliorer le cours pour les années suivantes.
Pour annoter ou surligner, vous sélectionnez du texte et vous cliquez sur l'un des deux boutons `Annotate` ou `Highlight` qui apparaissent. Vous devez vous créer un compte (gratuit) sur [hypothes.is](https://hypothes.is) auparavant. Vos annotations publiques sont à poster dans le groupe **BioDataScience-Course**. Vous devez [vous y abonner en cliquant sur ce lien](https://hypothes.is/groups/miAKPpWy/biodatascience-course) et ensuite sélectionner ce groupe dans la barre d'outils en haut du panneau d'annotation **avant d'ajouter vos commentaires, qu'ils soient personnels ou de groupe**.
:::
```
## Approche pédagogique {#approchepedagogique .unnumbered}
Ce livre en ligne ainsi que tout le matériel pédagogique cité plus haut a été développé pour être employé en pédagogie active en classe inversée. On peut résumer cette approche en deux phases. Vous apprenez d'abord à la maison, nous appliquons *ensuite* en présentiel.
### Classe inversée & pédagogie active {.unnumbered}
Dans la plus grande partie de vos cours, vous avez suivi **passivement** un cours *ex cathedra* suivi par une séance d'exercice ou de travaux pratiques.
On peut schématiser ce mode d'apprentissage comme cela :

À la fin, un examen est indispensable pour valider l'acquisition des concepts.
Les cours de science des données utilisent une autre approche et se donnent en **classe inversée**. Le schéma ci-dessous vous illustre l'organisation d'un module du cours. Vous devrez donc préparer en distanciel la matière avant les séances en présentiel. Lors de chaque heure de travail lié à ce cours, vous serez donc **actif**.

Une présentation des changements introduits par rapport à l'année précédente vous est faite durant la première séance introductive. La présentation correspondante est disponible au format PDF `r !'[ici](https://github.com/BioDataScience-Course/sdd_lessons/raw/{acad_year}/C00/presentations/C00Pa_intro.pdf)'`.
### Quatre niveaux d'exercices {.unnumbered}
Quatre niveaux d'exercices de difficultés croissantes vous seront proposés.
- niveau I : découverte des notions dans des exercices rapides et ciblés intégrés au sein du cours en ligne.
- niveau II : appliquer les notions vues dans des exercices sous la forme de tutoriel très cadré
- niveau III : transférer les notions dans des projets individuels guidés sur des données biologiques
- niveau IV : Créer/réaliser des analyses sur des projets de groupe libre sur des données biologiques nouvelles grâce aux notions vues
Chaque type d'exercice est associé à un outil présenté dans le matériel pédagogique.

Toutes vos réponses sont collectées et utilisées afin de construire la note finale. Il n'est donc plus nécessaire de passer un examen classique en session d'examen. Tous ces exercices permettent de déterminer si vous maîtrisez les acquis d'apprentissage de ce cours. Cependant, vous aurez des **interrogations** classiques régulières sur la matière vue jusque là.
Un rapport de progression dans les exercices est mis à votre disposition à la fin de chaque module. En outre, un rapport de progression global est accessible depuis Moodle.
```{block, type='warning'}
Les notes des exercices plus faciles de niveau 1, 2 et 3 sont comptabilisées séparément des exercices plus difficiles de niveau 4, des challenges et des interrogations, avec une pondération également en faveur de ces derniers. **Votre objectif est donc de bien vous préparer et de réussir vos projets, challenges et interrogations en présentiel.** Les exercices faciles vous aident à bien vous préparer. **Faites les sérieusement, c'est dans votre intérêt.**
L'évaluation est **continue** tout au long de l'année. Il n'y a pas d'examen en fin d'année et il n'y a pas moyen non plus de repasser un examen en seconde session. La présence aux séances est **obligatoire** pour cette raison et toute absence injustifiée vous coûtera un zéro pour la matière concernée.
```
### Plan du cours {#plancours .unnumbered}
Le plan du cours est une forme de contrat entre l'étudiant et les enseignants. Ce document structure les attentes de vos encadrants. Veuillez consulter ce document attentivement.
- `r !'[Plan du cours de Science des données biologiques III : années {acad_year}](https://github.com/BioDataScience-Course/BioDataScience-Common/tree/{acad_year}/docs/plan_de_cours/sdd3_plan_cours_{acad_year}.pdf)'`
## Issues {#issues .unnumbered}
Toutes les questions relatives aux exercices sont à poser dans les **"issues" GitHub** dédiées à ces cours.
```{r assign_C00Qa_issues, echo=FALSE, results='asis'}
if (exists("assignment2"))
assignment2("C00Qa_issues", part = NULL, clone = FALSE,
url = "https://github.com/BioDataScience-Course/C00Qa_25M_issues-c25",
course.ids = c(
'S-BIOG-025' = !"C00Qa_{YY}M_issues"),
course.urls = c(
'S-BIOG-025' = !"{assign_url$C00Qa_issues}"),
course.starts = c(
'S-BIOG-025' = !"{course_start} 08:00:00"),
course.ends = c(
'S-BIOG-025' = !"{course_end} 23:59:59"),
term = "", level = 0,
toc = "Poser ses questions dans une issue.", n = 100,
texts = learnitdown::assignment2_fr(
title = "Pour SDD III, rejoignez le projet",
course = "[Projet GitHub Classroom d\u00e9di\u00e9e aux issues pour les \u00e9tudiants inscrits au cours de {course_name}]({course_url}){{target=\"_blank\"}}",
alt = "Les issues ne sont pas accessibles aux \u00e9tudiants externes."))
```
```{r assign_D00Qa_issues, echo=FALSE, results='asis'}
if (exists("assignment2"))
assignment2("D00Qa_issues", part = NULL, clone = FALSE,
url = "https://github.com/BioDataScience-Course/D00Qa_25M_issues-d25",
course.ids = c(
'S-BIOG-077' = !"D00Ga_{YY}C_issues"),
course.urls = c(
'S-BIOG-077' = !"{assign_url$D00Qa_issues}"),
course.starts = c(
'S-BIOG-006' = !"{course_start} 08:00:00"),
course.ends = c(
'S-BIOG-006' = !"{course_end} 23:59:59"),
term = "", level = 0,
toc = "Poser ses questions dans une issue.", n = 100,
texts = learnitdown::assignment2_fr(
title = "Pour SDD IV, rejoignez le projet",
course = "[Projet GitHub Classroom d\u00e9di\u00e9e aux issues pour les \u00e9tudiants inscrits au cours de {course_name}]({course_url}){{target=\"_blank\"}}",
alt = "Les issues ne sont pas accessibles aux \u00e9tudiants externes."))
```
*Note : vos enseignants sont également accessibles par mail via [sdd\@sciviews.org](mailto:sdd@sciviews.org){.email}, mais uniquement si vos questions nécessitent un échange en privé, sinon, vous devez utiliser les issues.*
Une fois que vous avez rejoint l'équipe **`r !"c{YY}"`** ou **`r !"d{YY}"`**, il n'est plus nécessaire d'utiliser le lien GitHub Classroom vers ces issues. Vous pouvez retrouver directement les issues liées à ce dépôt depuis la bannière du site.

Vous pouvez aussi directement créer une issue depuis RStudio. Voyez le fichier `README.md` dans le dépôt des issues pour les explications.
Enfin, vous avez à disposition un learnr de "feedback" qui vous permet de faire des suggestions sur le contenu de ce cours, module par module, ou de manière générale :
`r learnr("C99La_feedback", title = "Learnr de feedback", toc = NULL, text = "Utilisez le document suivant pour vos suggestions sur le cours :")`
## Planning des séances {#planning .unnumbered}
Ceci est le planning des séances pour SDD III. Pour SDD IV, le planning est plus souple et défini de commun accord avec les étudiants qui se sont inscrits à cette UE pour s'adapter au mieux à leurs contraintes (stages, mémoire...)
| Module | Préparation pour le ... | Fin N1-N3 | Projet N4 | Challenge | Interrogation |
|:-------------------|:------------------------|:---------------------|:----------------------------|:--------------------------------|:---------------------------|
| **Quadri 1** | | | | | |
| *(install party)* | `r !"{mod$start[1]}"` | `r !"{mod$N3[1]}"` | `r !"{mod$N4[1]}"` | **`r !"{mod$challenge[1]}"`** | **`r !"{mod$test[1]}"`** |
| 1 Classif. I | `r !"{mod$start[2]}"` | `r !"{mod$N3[2]}"` | `r !"{mod$N4[2]}"` | **`r !"{mod$challenge[2]}"`** | **`r !"{mod$test[2]}"`** |
| 2 Classif. II | `r !"{mod$start[3]}"` | `r !"{mod$N3[3]}"` | `r !"{mod$N4[3]}"` | **`r !"{mod$challenge[3]}"`** | **`r !"{mod$test[3]}"`** |
| 3 Classif. III | `r !"{mod$start[4]}"` | `r !"{mod$N3[4]}"` | **fin `r !"{mod$N4[4]}"`** | **`r !"{mod$challenge[4]}"`** | **`r !"{mod$test[4]}"`** |
| 4 Chrono. I | `r !"{mod$start[5]}"` | `r !"{mod$N3[5]}"` | `r !"{mod$N4[5]}"` | **`r !"{mod$challenge[5]}"`** | **`r !"{mod$test[5]}"`** |
| 5 Chrono. II | `r !"{mod$start[6]}"` | `r !"{mod$N3[6]}"` | **fin `r !"{mod$N4[6]}"`** | **`r !"{mod$challenge[6]}"`** | **`r !"{mod$test[6]}"`** |
: Dates importantes pour les activités de science des données biologiques III (à 23:59:59 pour les fins de projets N3 ou N4, à l'heure de la séance en présentiel pour les autres dates).
- La colonne **préparation pour le...** indique la date pour laquelle vous devez avoir préparé[^index-1] la *totalité* du chapitre correspondant du cours en ligne, y compris les exercices de niveaux 1 et 2 (H5P, learnr, shiny).
- Les **projets individuels** **de niveau 3** sont réalisés en présentiel. Vous ne pourrez les compléter efficacement que si vous avez bien préparé la matière. La date indiquée dans cette colonne correspond à la clôture des projets. Logiquement, vous devez avoir aussi terminé les exercices de niveaux 1 et 2 à ce moment-là.
- Les **projets de groupe** **de niveau 4** se font sur une plus longue durée et à cheval sur plusieurs modules. Étalez et répartissez le travail entre vous. Prévoyez le temps nécessaire pour *terminer* vos rapports avant la date de fin.
- Les **challenges** sont des exercices qui se font obligatoirement en séance sous forme de jeux, type compétition entre vous ou contre la montre. *Ils nécessitent d'être au point dans la manipulation du logiciel pour l'analyse de données biologiques en pratique.*
- Les **interrogations** sont des contrôles classiques en présentiel sur feuille de papier ou sur ordinateur et limités à 30, 45 ou 60 minutes. *Réussir implique que vous ayez assimilé toute la matière vue jusque là.* Prévoyez entre une demi et une journée et demie pour la révision avant cette date, selon votre rythme de travail.
- Les **séances en présentiel** sont généralement réparties sur une semaine avec **deux heures le lundi et quatre heures le jeudi ou le vendredi**, sauf quand l'horaire impose une autre configuration.
* La **première séance de deux heures du lundi** est consacrée aux questions/réponses sur la matière et aux courtes explications en classe. Le projet individuel de niveau 1 est débuté. *Les étudiants doivent étudier la matière pour l'interrogation ou le challenge* et préparer leur seconde série de questions pour la séance suivante.
* Les **deux premières heures de la seconde séance de fin de semaine** sont consacrées à la poursuite du projet de niveau 1 qui doit normalement se terminer à ce moment-là, ou presque. Une nouvelle séance de **questions/réponses** et de discussion sur la matière est également prévue. Elle vise à vous préparer au mieux à l'interrogation ou au challenge. Ensuite, après une courte interruption, **une interrogation écrite** a lieu durant environ une demi-heure, sauf autres directives (parfois 45 minutes ou même une heure).
* Les **deux dernières heures de la seconde séance** sont consacrées au travail sur le **projet de groupe**. *À l'issue de ces deux séances, les étudiants terminent leurs exercices de niveaux 1-3 chez eux*, généralement pour le lundi suivant.
[^index-1]: Préparer la matière en classe inversée signifie que vous avez **étudié** ce que vous comprenez par vous-même et que vous avez **noté** vos questions relatives à ce que vous ne comprenez pas pour les poser en séance. Il ne s'agit pas *juste* de lire de manière distraite le syllabus !
*Notez les dates clés dans vos agendas. Les informations ci-dessus sont données à titre indicatif pour vous permettre de planifier votre travail. Elles pourraient toutefois légèrement évoluer au cours de l'année académique en fonction des impondérables.*