-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathplankton_notebook.qmd
More file actions
234 lines (167 loc) · 15 KB
/
plankton_notebook.qmd
File metadata and controls
234 lines (167 loc) · 15 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
---
title: "Analyse du plancton avec le ZooScan"
author: "___"
date: "`r Sys.Date()`"
format:
html:
code-fold: true
code-tools: true
toc: true
editor: visual
lang: fr
editor_options:
chunk_output_type: inline
bibliography: bibliography/references.bib
---
# Introduction et but
L'automatisation du dénombrement de plancton dans des échantillons est recherchée étant donné la quantité de travail qu'un traitement manuel nécessite. ZooScanNet est une série d’images de plancton numérisé à l’aide d’un appareil spécialisé, le ZooScan, qui sert de référence pour comparer les méthodes de classification automatisée de plancton. Les organismes planctoniques ont été échantillonnés dans les différents océans. Les images obtenues sont découpées afin d’en extraire des particules d’intérêt. Ces particules sont ensuite analysées automatiquement (techniques classiques d’analyse d’image) pour en extraire des informations quantitatives telles que la taille, la forme ou la transparence.
L'objectif est d'étudier la distribution de trois groupes d'intérêt de plancton (nauplies de crustacés, calanidés et chétognathes), par rapport à ces variables obtenues par analyse d'image (que l'on appelle des "attributs" en classification).
# Matériel et méthodes
Le set ZooScanNet est constitué de 1.443.278 images découpées, analysées et labélisées en 93 groupes taxonomiques [@elineau2018]. Il est distribué sous licence CC-BY-NC avec le DOI [10.17882/55741](https://doi.org/10.17882/55741). Nous traiterons des 200 premiers individus des trois groupes cibles pour neuf attributs répartis en deux groupes :
- Des attributs de taille et de forme comme la surface de la particule à l'image `area`, sa circularité `circ.`, son `elongation`, sa complexité relative mesurée comme son périmètre divisé par son axe majeur `perimmajor`.
- Des attributs de transparence avec le niveau de gris `median`, la distribution des niveaux de gris à travers l'asymétrie de la distribution `skew` ou son aplatissement `kurt` en comparaison à une distribution normale, ainsi que la plage des niveaux de gris `range`.
L'analyse est réalisée avec le logiciel R (`r R.version.string`) et en particulier le package {exploreit} version `r packageVersion("exploreit")` dans la [SciViews Box 2025](https://www.sciviews.org/software/svbox/). [Saturn Cloud](https://saturncloud.io/) (Linux Ubuntu 22.04) est utilisé pour exécuter le code et compiler la version HTML de ce bloc-notes.
```{r setup, include=FALSE}
# Ceci est nécessaire pour les tests SDD, ne pas utiliser dans un "vrai" projet
if (!"tools:tests" %in% search())
source(here::here("tests/tools_tests.R"), attach(NULL, name = "tools:tests"))
# Configure Knitr pour utiliser AGG comme périphérique graphique
knitr::opts_chunk$set(dev = "ragg_png")
# Configuration de l'environnement SciViews::R
SciViews::R("___", lang = "fr")
```
<!--% Spécifiez si vous avez employé l'intelligence artificielle dans votre projet. -->
```{r ai_comment, output='asis'}
select_answer(r"-{
[] - Ce document a été rédigé en étant assisté par l'Intelligence Artificielle.
[] - Ce document a été rédigé sans recours à l'Intelligence Artificielle.}-")
```
<!-- Précisez ci-dessous l'utilisation que vous avez faite de l'IA. Citez le modèle utilisé. -->
# Résultats
## Description des données
La réduction du jeu de données initial est réalisée dans le script `R/import_tidy.R`. Voici les caractéristiques principales des données réduites.
<!--% Importez le tableau de données `zsn_sub.rds` que vous avez généré avec le script `R/import_tidy.R` dans `plancton` et décrivez les données à l'aide de la fonction `skimr::skim()`. -->
```{r import, record='RODFS', object='plancton'}
plancton <- ___
___
```
Les corrélations entre les attributs sont présentées ci-dessous :
<!--% Réalisez un graphique des corrélations entre les variables numériques. -->
```{r corrplot, record='ROA', object='plancton_corr', arg='dimnames,method,class'}
plancton_corr <- ___
___(plancton_corr)
```
<!--% Interprétez vos tableaux et votre graphique des corrélations ci-dessous. -->
```{r desccomment, output='asis'}
select_answer(r"-{
[] - Ce jeu de données ne contient aucune valeur manquante.
[] - Certaines valeurs sont manquantes dans ce jeu de données.
[] - Ce tableau inclut uniquement des variables numériques, réparties en deux ensembles : l’un pour les variables de taille et de forme et l’autre pour les variables de transparence.
[] - Le tableau comporte une colonne relative aux groupes taxonomiques, ainsi que deux ensembles de variables : l’un pour les variables de taille et de forme et l’autre pour les variables de transparence.
[] - Les valeurs médianes sont similaires entre les variables numériques.
[] - Les valeurs médianes diffèrent considérablement entre les variables numériques.
[] - Les coefficients de corrélation de Pearson entre les variables quantitatives sont très faibles, parfois positifs, parfois négatifs.
[] - Les coefficients de corrélation de Pearson entre les attributs sont élevés. Certains sont positifs, d'autres négatifs.
[] - Les coefficients de corrélation de Pearson entre les variables quantitatives sont très variables et tantôt positifs, tantôt négatifs.
[] - La corrélation la plus forte est entre `skew` et `kurt`.
[] - La corrélation la plus forte est inverse entre `skew` et `kurt`.}-")
```
## Ordination
Nous réalisons une MFA avec les deux groupes d'attributs nommés "taille_forme" et "transparence". Les taxons sont ajoutés en variable supplémentaire.
<!--% Réalisez votre AFM et placez-là dans `plancton_mfa`. Ensuite, affichez le résumé de votre analyse. Utilisez `taxon` comme variable supplémentaire. Nommez vos groupes de variables "taille_forme", "transparence" et "taxon". -->
```{r mfa, record='ROP', object='plancton_mfa', arg='eig'}
plancton_mfa <- ___
___
```
<!--% Tracez le graphique des éboulis de votre AFM. -->
```{r screemfa, record='RNP', arg='labels'}
___
```
<!--% Interprétez le résumé de l'AFM et de son graphique des éboulis. -->
```{r screemfacomment, output='asis'}
select_answer(r"-{
[] - Le premier axe de l'AFM représente la quasi totalité de la variance. Il y a un effet saturant marqué.
[] - Le premier axe de l'AFM reprend presque la moitié de la variance.
[] - Le second axe de l'AFM couvre un quart la variance.
[] - Le second axe de l'AFM couvre 70% de la variance.
[] - Le premier plan de l'AFC reprend 70% de la variance totale, mais cela est totalement insuffisant.
[] - Le premier plan de l'AFM reprend 70% de la variance totale, ce qui est acceptable pour notre analyse.
[] - Le premier plan de l'AFC reprend 70% de la variance totale, et nous nous en contenterons.}-")
```
Nous conservons le premier plan de notre AFM avec un peu plus de 70% de la variance totale reprise dans ce plan. L'étude des variables initiales et leur corrélation avec ce premier plan de l'AFM est réalisée ci-dessous.
<!--% Réalisez le graphique des variables dans le premier plan de l'AFM. -->
```{r loadingsmfa, record='RNP', arg='labels'}
___
```
<!--% Interprétez ce graphique. -->
```{r loadingsmfacomment, output='asis'}
select_answer(r"-{
[] - Toutes les variables sont bien représentées dans le plan de l’AFM.
[] - Quelques variables sont mal représentées dans le plan de l’AFM.
[] - Pour la taille et la forme, la surface (`area`) et l'élongation sont corrélées entre elles, ainsi qu'avec le premier axe de l'AFM. `perimmajor` et la circularité ne sont ni corrélées entre elles, ni avec les deux premiers axes de l'AFM.
[] - Pour la taille et la forme, la surface (`area`) et l'élongation sont corrélées entre elles, ainsi qu'avec le premier axe de l'AFM. `perimmajor` n'est pas corrélé avec les deux premiers, mais bien avec le second axe de l'AFM. Enfin, la circularité est entre les deux premiers axes de l'AFM.
[] - Pour la taille et la forme, la surface (`area`) et l'élongation sont corrélées entre elles, ainsi qu'avec le premier axe de l'AFM. `perimmajor` n'est pas corrélé avec les deux premiers, mais bien avec le second axe de l'AFM. Enfin, la circularité est plutôt inversément corrélée avec `perimmajor`ainsi que le second axe de l'AFM.
[] - Pour la transparence, `kurt` et `skew` sont inversément corrélées et sont également directement et inversément corrélés, respectivement, avec le premier axe de l'AFM. `median` et `range` sont orthogonaux et non corrélés avec les deux premiers axes de l'AFM.
[] - Pour la transparence, `kurt` et les niveaux de gris médians sont corrélés entre eux et avec le premier axe de l'AFM alors que `skew` est invesément corrélée avec ces variables et le premier axe. `range` est orthogonal et plutôt corrélé avec le second axe de l'AFM.
[] - Pour la transparence, `kurt` et `median`sont corrélés avec le premeir axe de l'AFM et inversément corrélés avec `skew`. `range` n'est corrélés avec aucune autre variable et aucun des deux premiers axes de l'AFM.
[] - Globalement, le premier axe de l'AFM est liée à une taille croissance et une modification de l'histogramme des niveaux de gris tandis que le seoncd axe est moins nettement lié aux variables initiales.
[] - Globalement, le premier axe de l'AFM exprime la taille importante, ainsi que l'applatissement de l'histogramme des niveaux de gris vers la droite. Le second axe contraste des particules aux formes plus complexes en haut avec des objets plus circulaires en bas.
[] - Globalement, le premier axe de l'AFM capture la taille des particules à droite, ainsi que les déviations de l'histogramme de niveaux de gris. Le second axe est lié à la complexité de la forme de la particule `perimmajor` et l'étalement des niveaux de gris `range`.
}-")
```
<!--% Produisez maintenant le graphique qui représente les axes des ACP par groupes par rapport à l'AFM. -->
```{r acpsmfa, record='RNP', arg='labels'}
___
```
<!--% Réalisez ci-dessous le graphique qui montre l'association globale des différents groupes avec l'AFM. -->
```{r bygroupsmfa, record='RNP', arg='labels'}
___
```
<!--% Interprétez les deux graphiques précédents. -->
```{r bygroupsmfacomment, output='asis'}
select_answer(r"-{
[] - Les premiers axes des deux groupes taille_forme et transparence sont globalement corrélés avec le premier axe de l'AFM tandis que le premier axes des taxons lui est inversément corrélé.
[] - Les premiers axes des deux groupes taille_forme et transparence sont globalement corrélés avec le premier axe de l'AFM tandis que le second axes des taxons lui est inversément corrélé.
[] - Seul le second axe de taille_forme est (inversément) corrélé avec le second axe de l'AFM.
[] - Le seocnd axe de transparence est corrélée directement avec le second axes de l'AFM et celui de taille_forme l'est inversément.
[] - Le seocnd axe de transparence est corrélée directement avec le second axes de l'AFM et celui de taille_forme l'est inversément. Le premier axe de taxons est également corrélé avec ce second axe de l'AFM.
[] - Par conséquent, les taxons sont aussi bien expliqués par la taille_forme et par la transparence.
[] - Les taxons sont plutôt expliqués par le groupe taille_forme que par la transparence, bien que ce dernier joue également un rôle.
[] - Les taxons sont expliqués par le groupe taille_forme et pas par la transparence.}-")
```
À présent que nous avons explicité ce que représente le premier plan de notre AFM, voyons comment les particules planctoniques des trois taxons ciblés se distribuent dans ce plan.
<!--% Tracez le graphique des individus pour le premier plan de votre AFM. Vous n'utiliserez pas de labels pour les individus (argument `lab.ind = FALSE`), mais vous colorerez les points avec la variable supplémentaire taxon (`habillage = "taxon"`). -->
```{r indmfa, record='RNP', arg='labels'}
___
```
<!--% Interprétez ce dernier graphique. -->
```{r indmfacomment, output='asis'}
select_answer(r"-{
[] - Les trois taxons ne sont pas séparés dans le premier plan de l'AFM. C'est mauvais signe pour une classification automatisée de ce plancton.
[] - Les trois taxons ne sont pas séparés dans le premier plan de l'AFM, mais nous ne pouvons pas conclure concernant la classification automatisée de ce plancton car l'AFM ne vise pas une telle séparation des groupes.
[] - Les trois taxons sont bien séparés dans le premier plan de l'AFM. C'est bon signe pour une classification automatisée de ce plancton.
[] - Les trois taxons sont bien séparés dans le premier plan de l'AFM, mais nous ne pouvons pas conclure concernant la classification automatisée de ce plancton car l'AFM ne vise pas une telle séparation des groupes.
[] - Les trois taxons sont parfaitement séparés dans le premier plan de l'AFM. La classification automatisée de ces trois taxons devrait se faire sans problème.
[] - Les trois taxons sont parfaitement séparés dans le premier plan de l'AFM, mais nous ne pouvons pas conclure concernant la classification automatisée de ce plancton car l'AFM ne vise pas une telle séparation des groupes.}-")
```
# Discussion et conclusions
<!--% Concluez votre travail en indiquant si vous considérez que l'AFM est utile ici par rapport à l'objectif fixé. -->
```{r conclu_comment, output='asis'}
select_answer(r"-{
[] - L’AFM permet de synthétiser efficacement l’information issue des attributs de taille/forme et de transparence, en structurant la variance principalement sur les deux premiers axes.
[] - L’AFM ne résume pas correctement la variance et ne semble pas adaptée à ces données.
[] - L’AFM se révèle difficile à interpréter en raison d’une mauvaise représentation des variables.
[] - Le premier axe exprime surtout la taille des particules et la structure générale de l’histogramme des niveaux de gris.
[] - Le premier axe est dominé par les différences de transparence uniquement.
[] - Le premier axe ne montre aucune structuration interprétable.
[] - Le second axe oppose des objets plus complexes ou allongés à des objets plus circulaires.
[] - Le second axe est principalement lié aux taxons, indépendamment des attributs.
[] - Le second axe n’apporte aucune information claire sur les variations morphologiques.
[] - Les trois taxons ciblés montrent une séparation nette dans le premier plan de l’AFM, ce qui est encourageant pour une classification automatisée.
[] - Les trois taxons ne sont pas séparés dans le premier plan, ce n'est pas encourageant pour une classification automatisée.
[] - La réduction du jeu de données opérée dans `R/import_tidy.R` est adaptée à l’objectif et pertinents pour l’ordination et l’exploration.
[] - La réduction du jeu de données opérée dans `R/import_tidy.R` retire trop d’information pour une interprétation correcte de l’AFM.
[] - La réduction du jeu de données n’a pas d’impact notable sur la qualité de l’AFM.}-")
```
# Référence
<!--% Ne rien indiquer ici. La référence bibliographique se placera automatiquement ici.-->