Skip to content
Snippets Groups Projects
Commit 997dbfdd authored by Jean-Luc Parouty's avatar Jean-Luc Parouty
Browse files

Update README

parent a61c2dec
No related branches found
No related tags found
No related merge requests found
Showing with 22 additions and 3311 deletions
This diff is collapsed.
This diff is collapsed.
source diff could not be displayed: it is too large. Options to address this: view the blob.
This diff is collapsed.
source diff could not be displayed: it is too large. Options to address this: view the blob.
%% Cell type:code id:7b719e4f tags:
%% Cell type:code id:b1c7f34f tags:
``` python
from IPython.display import display,Markdown
display(Markdown(open('README.md', 'r').read()))
#
# This README is visible under Jupiter LAb ! :-)
```
%% Output
<a name="top"></a>
[<img width="600px" src="fidle/img/00-Fidle-titre-01.svg"></img>](#top)
<!-- --------------------------------------------------- -->
<!-- To correctly view this README under Jupyter Lab -->
<!-- Open the notebook: README.ipynb! -->
<!-- --------------------------------------------------- -->
## About Fidle
This repository contains all the documents and links of the **Fidle Training** .
Fidle (for Formation Introduction au Deep Learning) is a 2-day training session
co-organized by the Formation Permanente CNRS and the Resinfo/SARI and DevLOG CNRS networks.
The objectives of this training are :
- Understanding the **bases of Deep Learning** neural networks
- Develop a **first experience** through simple and representative examples
- Understanding **Tensorflow/Keras** and **Jupyter lab** technologies
- Apprehend the **academic computing environments** Tier-2 or Tier-1 with powerfull GPU
For more information, see **https://fidle.cnrs.fr** :
- **[Fidle site](https://fidle.cnrs.fr)**
- **[Presentation of the training](https://fidle.cnrs.fr/presentation)**
- **[Program 2021/2022](https://fidle.cnrs.fr/programme)**
- [Subscribe to the list](https://fidle.cnrs.fr/listeinfo), to stay informed !
- [Find us on youtube](https://fidle.cnrs.fr/youtube)
For more information, you can contact us at :
[<img width="200px" style="vertical-align:middle" src="fidle/img/00-Mail_contact.svg"></img>](#top)
Current Version : <!-- VERSION_BEGIN -->
**2.0.28**
**2.0.29**
<!-- VERSION_END -->
## Course materials
| | | |
|:--:|:--:|:--:|
| **[<img width="50px" src="fidle/img/00-Fidle-pdf.svg"></img><br>Course slides](https://fidle.cnrs.fr/supports)**<br>The course in pdf format<br>(12 Mo)| **[<img width="50px" src="fidle/img/00-Notebooks.svg"></img><br>Notebooks](https://fidle.cnrs.fr/notebooks)**<br> &nbsp;&nbsp;&nbsp;&nbsp;Get a Zip or clone this repository &nbsp;&nbsp;&nbsp;&nbsp;<br>(40 Mo)| **[<img width="50px" src="fidle/img/00-Datasets-tar.svg"></img><br>Datasets](https://fidle.cnrs.fr/fidle-datasets.tar)**<br>All the needed datasets<br>(1.2 Go)|
| | | | |
|:--:|:--:|:--:|:--:|
| **[<img width="50px" src="fidle/img/00-Fidle-pdf.svg"></img><br>Course slides](https://fidle.cnrs.fr/supports)**<br>The course in pdf format<br>(12 Mo)| **[<img width="50px" src="fidle/img/00-Notebooks.svg"></img><br>Notebooks](https://fidle.cnrs.fr/notebooks)**<br> &nbsp;&nbsp;&nbsp;&nbsp;Get a Zip or clone this repository &nbsp;&nbsp;&nbsp;&nbsp;<br>(40 Mo)| **[<img width="50px" src="fidle/img/00-Datasets-tar.svg"></img><br>Datasets](https://fidle.cnrs.fr/fidle-datasets.tar)**<br>All the needed datasets<br>(1.2 Go)|**[<img width="50px" src="fidle/img/00-Videos.svg"></img><br>Videos](https://fidle.cnrs.fr/youtube)**<br>&nbsp;&nbsp;&nbsp;&nbsp;Our Youtube channel&nbsp;&nbsp;&nbsp;&nbsp;<br>&nbsp;|
Have a look about **[How to get and install](https://fidle.cnrs.fr/installation)** these notebooks and datasets.
## Jupyter notebooks
<!-- INDEX_BEGIN -->
### Linear and logistic regression
- **[LINR1](LinearReg/01-Linear-Regression.ipynb)** - [Linear regression with direct resolution](LinearReg/01-Linear-Regression.ipynb)
Low-level implementation, using numpy, of a direct resolution for a linear regression
- **[GRAD1](LinearReg/02-Gradient-descent.ipynb)** - [Linear regression with gradient descent](LinearReg/02-Gradient-descent.ipynb)
Low level implementation of a solution by gradient descent. Basic and stochastic approach.
- **[POLR1](LinearReg/03-Polynomial-Regression.ipynb)** - [Complexity Syndrome](LinearReg/03-Polynomial-Regression.ipynb)
Illustration of the problem of complexity with the polynomial regression
- **[LOGR1](LinearReg/04-Logistic-Regression.ipynb)** - [Logistic regression](LinearReg/04-Logistic-Regression.ipynb)
Simple example of logistic regression with a sklearn solution
### Perceptron Model 1957
- **[PER57](IRIS/01-Simple-Perceptron.ipynb)** - [Perceptron Model 1957](IRIS/01-Simple-Perceptron.ipynb)
Example of use of a Perceptron, with sklearn and IRIS dataset of 1936 !
### Basic regression using DNN
- **[BHPD1](BHPD/01-DNN-Regression.ipynb)** - [Regression with a Dense Network (DNN)](BHPD/01-DNN-Regression.ipynb)
Simple example of a regression with the dataset Boston Housing Prices Dataset (BHPD)
- **[BHPD2](BHPD/02-DNN-Regression-Premium.ipynb)** - [Regression with a Dense Network (DNN) - Advanced code](BHPD/02-DNN-Regression-Premium.ipynb)
A more advanced implementation of the precedent example
### Basic classification using a DNN
- **[MNIST1](MNIST/01-DNN-MNIST.ipynb)** - [Simple classification with DNN](MNIST/01-DNN-MNIST.ipynb)
An example of classification using a dense neural network for the famous MNIST dataset
- **[MNIST2](MNIST/02-CNN-MNIST.ipynb)** - [Simple classification with CNN](MNIST/02-CNN-MNIST.ipynb)
An example of classification using a convolutional neural network for the famous MNIST dataset
### Images classification with Convolutional Neural Networks (CNN)
- **[GTSRB1](GTSRB/01-Preparation-of-data.ipynb)** - [Dataset analysis and preparation](GTSRB/01-Preparation-of-data.ipynb)
Episode 1 : Analysis of the GTSRB dataset and creation of an enhanced dataset
- **[GTSRB2](GTSRB/02-First-convolutions.ipynb)** - [First convolutions](GTSRB/02-First-convolutions.ipynb)
Episode 2 : First convolutions and first classification of our traffic signs
- **[GTSRB3](GTSRB/03-Tracking-and-visualizing.ipynb)** - [Training monitoring](GTSRB/03-Tracking-and-visualizing.ipynb)
Episode 3 : Monitoring, analysis and check points during a training session
- **[GTSRB4](GTSRB/04-Data-augmentation.ipynb)** - [Data augmentation ](GTSRB/04-Data-augmentation.ipynb)
Episode 4 : Adding data by data augmentation when we lack it, to improve our results
- **[GTSRB5](GTSRB/05-Full-convolutions.ipynb)** - [Full convolutions](GTSRB/05-Full-convolutions.ipynb)
Episode 5 : A lot of models, a lot of datasets and a lot of results.
- **[GTSRB6](GTSRB/06-Notebook-as-a-batch.ipynb)** - [Full convolutions as a batch](GTSRB/06-Notebook-as-a-batch.ipynb)
Episode 6 : To compute bigger, use your notebook in batch mode
- **[GTSRB7](GTSRB/07-Show-report.ipynb)** - [Batch reports](GTSRB/07-Show-report.ipynb)
Episode 7 : Displaying our jobs report, and the winner is...
- **[GTSRB10](GTSRB/batch_oar.sh)** - [OAR batch script submission](GTSRB/batch_oar.sh)
Bash script for an OAR batch submission of an ipython code
- **[GTSRB11](GTSRB/batch_slurm.sh)** - [SLURM batch script](GTSRB/batch_slurm.sh)
Bash script for a Slurm batch submission of an ipython code
### Sentiment analysis with word embedding
- **[IMDB1](IMDB/01-One-hot-encoding.ipynb)** - [Sentiment analysis with hot-one encoding](IMDB/01-One-hot-encoding.ipynb)
A basic example of sentiment analysis with sparse encoding, using a dataset from Internet Movie Database (IMDB)
- **[IMDB2](IMDB/02-Keras-embedding.ipynb)** - [Sentiment analysis with text embedding](IMDB/02-Keras-embedding.ipynb)
A very classical example of word embedding with a dataset from Internet Movie Database (IMDB)
- **[IMDB3](IMDB/03-Prediction.ipynb)** - [Reload and reuse a saved model](IMDB/03-Prediction.ipynb)
Retrieving a saved model to perform a sentiment analysis (movie review)
- **[IMDB4](IMDB/04-Show-vectors.ipynb)** - [Reload embedded vectors](IMDB/04-Show-vectors.ipynb)
Retrieving embedded vectors from our trained model
- **[IMDB5](IMDB/05-LSTM-Keras.ipynb)** - [Sentiment analysis with a RNN network](IMDB/05-LSTM-Keras.ipynb)
Still the same problem, but with a network combining embedding and RNN
### Time series with Recurrent Neural Network (RNN)
- **[LADYB1](SYNOP/LADYB1-Ladybug.ipynb)** - [Prediction of a 2D trajectory via RNN](SYNOP/LADYB1-Ladybug.ipynb)
Artificial dataset generation and prediction attempt via a recurrent network
- **[SYNOP1](SYNOP/SYNOP1-Preparation-of-data.ipynb)** - [Preparation of data](SYNOP/SYNOP1-Preparation-of-data.ipynb)
Episode 1 : Data analysis and preparation of a usuable meteorological dataset (SYNOP)
- **[SYNOP2](SYNOP/SYNOP2-First-predictions.ipynb)** - [First predictions at 3h](SYNOP/SYNOP2-First-predictions.ipynb)
Episode 2 : RNN training session for weather prediction attempt at 3h
- **[SYNOP3](SYNOP/SYNOP3-12h-predictions.ipynb)** - [12h predictions](SYNOP/SYNOP3-12h-predictions.ipynb)
Episode 3: Attempt to predict in a more longer term
### Unsupervised learning with an autoencoder neural network (AE)
- **[AE1](AE/01-Prepare-MNIST-dataset.ipynb)** - [Prepare a noisy MNIST dataset](AE/01-Prepare-MNIST-dataset.ipynb)
Episode 1: Preparation of a noisy MNIST dataset
- **[AE2](AE/02-AE-with-MNIST.ipynb)** - [Building and training an AE denoiser model](AE/02-AE-with-MNIST.ipynb)
Episode 1 : Construction of a denoising autoencoder and training of it with a noisy MNIST dataset.
- **[AE3](AE/03-AE-with-MNIST-post.ipynb)** - [Playing with our denoiser model](AE/03-AE-with-MNIST-post.ipynb)
Episode 2 : Using the previously trained autoencoder to denoise data
- **[AE4](AE/04-ExtAE-with-MNIST.ipynb)** - [Denoiser and classifier model](AE/04-ExtAE-with-MNIST.ipynb)
Episode 4 : Construction of a denoiser and classifier model
- **[AE5](AE/05-ExtAE-with-MNIST.ipynb)** - [Advanced denoiser and classifier model](AE/05-ExtAE-with-MNIST.ipynb)
Episode 5 : Construction of an advanced denoiser and classifier model
### Generative network with Variational Autoencoder (VAE)
- **[VAE1](VAE/01-VAE-with-MNIST.ipynb)** - [First VAE, using functional API (MNIST dataset)](VAE/01-VAE-with-MNIST.ipynb)
Construction and training of a VAE, using functional APPI, with a latent space of small dimension.
- **[VAE2](VAE/02-VAE-with-MNIST.ipynb)** - [VAE, using a custom model class (MNIST dataset)](VAE/02-VAE-with-MNIST.ipynb)
Construction and training of a VAE, using model subclass, with a latent space of small dimension.
- **[VAE3](VAE/03-VAE-with-MNIST-post.ipynb)** - [Analysis of the VAE's latent space of MNIST dataset](VAE/03-VAE-with-MNIST-post.ipynb)
Visualization and analysis of the VAE's latent space of the dataset MNIST
- **[VAE5](VAE/05-About-CelebA.ipynb)** - [Another game play : About the CelebA dataset](VAE/05-About-CelebA.ipynb)
Episode 1 : Presentation of the CelebA dataset and problems related to its size
- **[VAE6](VAE/06-Prepare-CelebA-datasets.ipynb)** - [Generation of a clustered dataset](VAE/06-Prepare-CelebA-datasets.ipynb)
Episode 2 : Analysis of the CelebA dataset and creation of an clustered and usable dataset
- **[VAE7](VAE/07-Check-CelebA.ipynb)** - [Checking the clustered dataset](VAE/07-Check-CelebA.ipynb)
Episode : 3 Clustered dataset verification and testing of our datagenerator
- **[VAE8](VAE/08-VAE-with-CelebA.ipynb)** - [Training session for our VAE](VAE/08-VAE-with-CelebA.ipynb)
Episode 4 : Training with our clustered datasets in notebook or batch mode
- **[VAE9](VAE/09-VAE-with-CelebA-post.ipynb)** - [Data generation from latent space](VAE/09-VAE-with-CelebA-post.ipynb)
Episode 5 : Exploring latent space to generate new data
- **[VAE10](VAE/batch_slurm.sh)** - [SLURM batch script](VAE/batch_slurm.sh)
Bash script for SLURM batch submission of VAE8 notebooks
### Generative Adversarial Networks (GANs)
- **[DCGAN01](DCGAN/01-DCGAN-Draw-me-a-sheep.ipynb)** - [A first DCGAN to Draw a Sheep](DCGAN/01-DCGAN-Draw-me-a-sheep.ipynb)
Episode 1 : Draw me a sheep, revisited with a DCGAN
### Miscellaneous
- **[ACTF1](Misc/Activation-Functions.ipynb)** - [Activation functions](Misc/Activation-Functions.ipynb)
Some activation functions, with their derivatives.
- **[NP1](Misc/Numpy.ipynb)** - [A short introduction to Numpy](Misc/Numpy.ipynb)
Numpy is an essential tool for the Scientific Python.
- **[SCRATCH1](Misc/Scratchbook.ipynb)** - [Scratchbook](Misc/Scratchbook.ipynb)
A scratchbook for small examples
- **[TSB1](Misc/Using-Tensorboard.ipynb)** - [Tensorboard with/from Jupyter ](Misc/Using-Tensorboard.ipynb)
4 ways to use Tensorboard from the Jupyter environment
<!-- INDEX_END -->
## Installation
Have a look about **[How to get and install](https://fidle.cnrs.fr/installation)** these notebooks and datasets.
## Licence
[<img width="100px" src="fidle/img/00-fidle-CC BY-NC-SA.svg"></img>](https://creativecommons.org/licenses/by-nc-sa/4.0/)
\[en\] Attribution - NonCommercial - ShareAlike 4.0 International (CC BY-NC-SA 4.0)
\[Fr\] Attribution - Pas d’Utilisation Commerciale - Partage dans les Mêmes Conditions 4.0 International
See [License](https://creativecommons.org/licenses/by-nc-sa/4.0/legalcode).
See [Disclaimer](https://creativecommons.org/licenses/by-nc-sa/4.0/#).
----
[<img width="80px" src="fidle/img/00-Fidle-logo-01.svg"></img>](#top)
......
......@@ -20,24 +20,25 @@ The objectives of this training are :
- Apprehend the **academic computing environments** Tier-2 or Tier-1 with powerfull GPU
For more information, see **https://fidle.cnrs.fr** :
- **[Fidle site](https://fidle.cnrs.fr)**
- **[Presentation of the training](https://fidle.cnrs.fr/presentation)**
- **[Program 2021/2022](https://fidle.cnrs.fr/programme)**
- [Subscribe to the list](https://fidle.cnrs.fr/listeinfo), to stay informed !
- [Find us on youtube](https://fidle.cnrs.fr/youtube)
For more information, you can contact us at :
For more information, you can contact us at :
[<img width="200px" style="vertical-align:middle" src="fidle/img/00-Mail_contact.svg"></img>](#top)
Current Version : <!-- VERSION_BEGIN -->
**2.0.28**
**2.0.29**
<!-- VERSION_END -->
## Course materials
| | | |
|:--:|:--:|:--:|
| **[<img width="50px" src="fidle/img/00-Fidle-pdf.svg"></img><br>Course slides](https://fidle.cnrs.fr/supports)**<br>The course in pdf format<br>(12 Mo)| **[<img width="50px" src="fidle/img/00-Notebooks.svg"></img><br>Notebooks](https://fidle.cnrs.fr/notebooks)**<br> &nbsp;&nbsp;&nbsp;&nbsp;Get a Zip or clone this repository &nbsp;&nbsp;&nbsp;&nbsp;<br>(40 Mo)| **[<img width="50px" src="fidle/img/00-Datasets-tar.svg"></img><br>Datasets](https://fidle.cnrs.fr/fidle-datasets.tar)**<br>All the needed datasets<br>(1.2 Go)|
| | | | |
|:--:|:--:|:--:|:--:|
| **[<img width="50px" src="fidle/img/00-Fidle-pdf.svg"></img><br>Course slides](https://fidle.cnrs.fr/supports)**<br>The course in pdf format<br>(12 Mo)| **[<img width="50px" src="fidle/img/00-Notebooks.svg"></img><br>Notebooks](https://fidle.cnrs.fr/notebooks)**<br> &nbsp;&nbsp;&nbsp;&nbsp;Get a Zip or clone this repository &nbsp;&nbsp;&nbsp;&nbsp;<br>(40 Mo)| **[<img width="50px" src="fidle/img/00-Datasets-tar.svg"></img><br>Datasets](https://fidle.cnrs.fr/fidle-datasets.tar)**<br>All the needed datasets<br>(1.2 Go)|**[<img width="50px" src="fidle/img/00-Videos.svg"></img><br>Videos](https://fidle.cnrs.fr/youtube)**<br>&nbsp;&nbsp;&nbsp;&nbsp;Our Youtube channel&nbsp;&nbsp;&nbsp;&nbsp;<br>&nbsp;|
Have a look about **[How to get and install](https://fidle.cnrs.fr/installation)** these notebooks and datasets.
......
%% Cell type:markdown id: tags:
<img width="800px" src="../fidle/img/00-Fidle-header-01.svg"></img>
# Gestion des tests d'intégration continue
**La liste des notebooks a éxécuter** et de leurs paramètres (override) est définie dans un **profile**.\
Un **rapport d'éxécution** est généré durant l'éxécution des tests.
## Step 1 - Init
%% Cell type:code id: tags:
```
import cookci
import os
import pwk
datasets_dir = pwk.init('RUNCI')
```
%% Cell type:markdown id: tags:
## Step 2 - Profile and parameters
`profile_name`: ci profile name - see en ./ci
`reset`: reset or not the catalog of results
`filters`: regex to define witch notebook will be run, examples :
- `.*`
- `Nb_GTSRB.*|Nb_AE.*`
- `Nb_VAE3`
%% Cell type:code id: tags:
```
profile_name = './ci/small_cpu.yml'
reset = False
filter = 'Nb_LINR1'
reset = True
filter = '.*'
pwk.override('profile_name', 'reset', 'filter')
```
%% Cell type:markdown id: tags:
## Step 3 - Run it
%% Cell type:code id: tags:
```
cookci.run_profile(profile_name, reset, filter)
cookci.build_ci_report(profile_name)
```
%% Cell type:code id: tags:
```
%%bash
# tree ./run/ci
# find .. -name "*==ci==.*" -ls | sort -k11
# rm $(find .. -name "*==ci==.ipynb")
# rm $(find .. -name "*==ci==.html")
```
%% Cell type:markdown id: tags:
---
<img width="80px" src="../fidle/img/00-Fidle-logo-01.svg"></img>
......
......@@ -14,7 +14,7 @@
# ---- Version -----------------------------------------------------
#
VERSION = '2.0.28'
VERSION = '2.0.29'
# ---- Default notebook name ---------------------------------------
#
......
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 37.5373 34.8434"><path d="M19.8236,8.3758V.9771H9.6132A3.2082,3.2082,0,0,0,6.4144,4.1759V27.6783a3.2081,3.2081,0,0,0,3.1988,3.1988H27.1747a3.2082,3.2082,0,0,0,3.1988-3.1988V11.5746H23.0224A3.2082,3.2082,0,0,1,19.8236,8.3758Z" style="fill:#fff;stroke:#000;stroke-linejoin:round;stroke-width:1.95428428707763px"/><line x1="19.8236" y1="0.9771" x2="30.3973" y2="11.5508" style="fill:#fff;stroke:#000;stroke-linejoin:round;stroke-width:1.95428428707763px"/><path d="M28.3957,30.3053H20.6325a1.1822,1.1822,0,0,1-1.1807-1.1806V22.9171a1.184,1.184,0,0,1,1.1753-1.1811l7.7686-.0352V18.298l8.5854,7.6367-8.5854,8.0435Z" style="fill:#e12229"/><path d="M28.7705,19.1336l7.6544,6.8084-7.6544,7.1711V29.93H20.6327a.8057.8057,0,0,1-.8058-.8056V22.9169a.8057.8057,0,0,1,.8021-.8057l8.1415-.0367V19.1336m-.75-1.6709v3.8652l-7.3949.0333a1.5589,1.5589,0,0,0-1.5487,1.5557v6.2078A1.5575,1.5575,0,0,0,20.6327,30.68h7.3878v4.1631l1.2628-1.183,7.6544-7.171.6-.5618-.6139-.546L29.269,18.5731l-1.2485-1.11Z" style="fill:#fff"/><rect x="5.252" y="9.659" width="7.0866" height="7.0866" style="fill:#fff"/><path d="M8.9294,20.0123a30.3254,30.3254,0,0,1-4.9673-.4189C1.8185,19.1344.5,17.7316.5,15.9279V10.3771C.5,8.5739,1.8073,7.18,3.9108,6.7394a30.3865,30.3865,0,0,1,9.9863-.0039c2.107.3872,3.4629,1.8193,3.4629,3.6494v5.5513a3.82,3.82,0,0,1-3.436,3.6631,30.501,30.501,0,0,1-4.9937.413Zm-1.482-4.5947,3.6187-2.2036.06-.0449-3.6787-2.207Z" style="fill:#ed1c24"/><path d="M8.9142,6.8244a29.8856,29.8856,0,0,1,4.9008.4044A3.323,3.323,0,0,1,16.86,10.385v5.5511a3.3355,3.3355,0,0,1-3.0293,3.172,29.9807,29.9807,0,0,1-4.9008.4044A29.6913,29.6913,0,0,1,4.0452,19.1C2.1578,18.6957,1,17.5142,1,15.9281v-5.551c0-1.5623,1.1578-2.76,3.0134-3.1483a29.8874,29.8874,0,0,1,4.9008-.4044M7.3518,15.96a.3812.3812,0,0,0,.1985-.0557l3.965-2.379v-.0238a.4046.4046,0,0,0,0-.682L7.55,10.44a.43.43,0,0,0-.4045,0,.4127.4127,0,0,0-.1982.349v4.7581a.4126.4126,0,0,0,.1982.3648.4548.4548,0,0,0,.1983.0476l.0077,0M8.9142,5.8244A30.9912,30.9912,0,0,0,3.85,6.2423C1.4949,6.7344,0,8.3544,0,10.3771v5.551c0,2.0528,1.47,3.6428,3.8356,4.15a30.8109,30.8109,0,0,0,5.0929.4346,31.0686,31.0686,0,0,0,5.0661-.418c2.3571-.4467,3.8656-2.0774,3.8656-4.1584V10.385c0-2.0833-1.5169-3.7082-3.8644-4.14a31.02,31.02,0,0,0-5.0816-.4209ZM7.9472,14.5l0-2.656L10.16,13.1723,7.9472,14.5Z" style="fill:#fff"/></svg>
\ No newline at end of file
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 280.2979 16.1665"><title>00-fidle-header-02</title><g id="Calque_2" data-name="Calque 2"><g id="Calque_4" data-name="Calque 4"><path d="M1.26,2.8882h5.874v1.26H2.751V8.1943H6.8145V9.4365H2.751v5.4126H1.26Z" transform="translate(-1.2598 -2.3384)"/><path d="M15.5967,10.5015c0,3.2119-2.0059,4.5249-3.8506,4.5249-2.0947,0-3.7275-1.6148-3.7275-4.4185,0-2.9458,1.7568-4.5254,3.8515-4.5254C14.0527,6.0825,15.5967,7.7686,15.5967,10.5015Zm-6.0518.0708c0,1.7392.834,3.3183,2.2715,3.3183,1.4024,0,2.2539-1.5971,2.2539-3.354,0-1.4194-.5859-3.3-2.2539-3.3C10.1836,7.2363,9.5449,9.0283,9.5449,10.5723Z" transform="translate(-1.2598 -2.3384)"/><path d="M17.4209,8.7979c0-.9229-.0352-1.775-.07-2.5376h1.33l.0537,1.5791h.0537a2.4525,2.4525,0,0,1,2.2178-1.7569,2.6819,2.6819,0,0,1,.3906.0357v1.455a1.8752,1.8752,0,0,0-.4619-.0356,2.0647,2.0647,0,0,0-1.9522,1.9346,3.2524,3.2524,0,0,0-.07.7451v4.6318H17.4209Z" transform="translate(-1.2598 -2.3384)"/><path d="M22.7969,8.5493c0-.9228-.0362-1.58-.0713-2.289h1.3135l.0888,1.2954h.0352A2.6976,2.6976,0,0,1,26.63,6.0825,2.313,2.313,0,0,1,28.8662,7.68h.0352a3.1007,3.1007,0,0,1,.94-1.065,2.5755,2.5755,0,0,1,1.668-.5322c1.1533,0,2.6084.7808,2.6084,3.5137v5.2529H32.6455V9.8447c0-1.5083-.4785-2.52-1.668-2.52A1.8255,1.8255,0,0,0,29.31,8.6914a2.6672,2.6672,0,0,0-.1065.7808v5.3769H27.7305V9.561c0-1.2422-.4795-2.2363-1.6153-2.2363A1.9176,1.9176,0,0,0,24.376,8.833a2.6355,2.6355,0,0,0-.1065.7632v5.2529H22.7969Z" transform="translate(-1.2598 -2.3384)"/><path d="M40.8223,14.8491,40.6982,13.82h-.0537a2.7816,2.7816,0,0,1-2.36,1.2066A2.3594,2.3594,0,0,1,35.8359,12.56c0-2.0943,1.81-3.1768,4.72-3.1592V9.188c0-.834-.23-1.9873-1.792-1.97a3.6244,3.6244,0,0,0-1.9873.5859L36.44,6.7749A5.0212,5.0212,0,0,1,39.03,6.0825c2.36,0,3.0166,1.5972,3.0166,3.39v3.354a14.2009,14.2009,0,0,0,.124,2.0229Zm-.2481-4.4009c-1.3847-.018-3.23.23-3.23,1.9522a1.3141,1.3141,0,0,0,1.331,1.49,1.8725,1.8725,0,0,0,1.8457-1.3838,1.57,1.57,0,0,0,.0537-.497Z" transform="translate(-1.2598 -2.3384)"/><path d="M46.1074,3.8467V6.26H48.166V7.4136H46.1074v4.7558c0,1.0826.32,1.5972,1.083,1.5972a3.0043,3.0043,0,0,0,.7989-.0889l.07,1.1358a3.3042,3.3042,0,0,1-1.2774.1953,2.0434,2.0434,0,0,1-1.5791-.6211,3.175,3.175,0,0,1-.5859-2.2007V7.4136H43.375V6.26h1.2422V4.2549Z" transform="translate(-1.2598 -2.3384)"/><path d="M51.4121,3.9a.8937.8937,0,0,1-.94.94.8713.8713,0,0,1-.8867-.94.9139.9139,0,1,1,1.8271,0Zm-1.668,10.9492V6.26h1.5088v8.5888Z" transform="translate(-1.2598 -2.3384)"/><path d="M60.6563,10.5015c0,3.2119-2.0049,4.5249-3.8506,4.5249-2.0938,0-3.7266-1.6148-3.7266-4.4185,0-2.9458,1.7568-4.5254,3.8506-4.5254C59.1123,6.0825,60.6563,7.7686,60.6563,10.5015Zm-6.0508.0708c0,1.7392.834,3.3183,2.2715,3.3183,1.4013,0,2.2539-1.5971,2.2539-3.354,0-1.4194-.586-3.3-2.2539-3.3C55.2441,7.2363,54.6055,9.0283,54.6055,10.5723Z" transform="translate(-1.2598 -2.3384)"/><path d="M62.4814,8.5493c0-.9228-.0351-1.58-.07-2.289h1.33l.0713,1.2954h.0537A2.8831,2.8831,0,0,1,66.44,6.0825c1.1884,0,2.7324.7632,2.7324,3.46v5.3061h-1.49V9.7207c0-1.2778-.4257-2.396-1.7392-2.396a1.9924,1.9924,0,0,0-1.8633,1.544,2.936,2.936,0,0,0-.0889.7456v5.2348H62.4814Z" transform="translate(-1.2598 -2.3384)"/><path d="M76.5674,2.8882V14.8491h-1.49V2.8882Z" transform="translate(-1.2598 -2.3384)"/><path d="M79.1572,8.5493c0-.9228-.0361-1.58-.0713-2.289H80.417l.0713,1.2954h.0527a2.8843,2.8843,0,0,1,2.5733-1.4732c1.1894,0,2.7334.7632,2.7334,3.46v5.3061H84.3564V9.7207c0-1.2778-.4257-2.396-1.7392-2.396a1.9942,1.9942,0,0,0-1.8633,1.544,2.982,2.982,0,0,0-.0889.7456v5.2348H79.1572Z" transform="translate(-1.2598 -2.3384)"/><path d="M89.9609,3.8467V6.26H92.02V7.4136H89.9609v4.7558c0,1.0826.32,1.5972,1.083,1.5972a3.0037,3.0037,0,0,0,.7989-.0889l.07,1.1358a3.3042,3.3042,0,0,1-1.2774.1953,2.0434,2.0434,0,0,1-1.5791-.6211,3.175,3.175,0,0,1-.5859-2.2007V7.4136H87.2285V6.26h1.2422V4.2549Z" transform="translate(-1.2598 -2.3384)"/><path d="M93.5977,8.7979c0-.9229-.0352-1.775-.07-2.5376h1.33l.0537,1.5791h.0537a2.4525,2.4525,0,0,1,2.2178-1.7569,2.6819,2.6819,0,0,1,.3906.0357v1.455a1.8744,1.8744,0,0,0-.4619-.0356,2.0645,2.0645,0,0,0-1.9521,1.9346,3.2468,3.2468,0,0,0-.07.7451v4.6318H93.5977Z" transform="translate(-1.2598 -2.3384)"/><path d="M105.8057,10.5015c0,3.2119-2.0059,4.5249-3.8506,4.5249-2.0947,0-3.7276-1.6148-3.7276-4.4185,0-2.9458,1.7569-4.5254,3.8516-4.5254C104.2617,6.0825,105.8057,7.7686,105.8057,10.5015Zm-6.0518.0708c0,1.7392.834,3.3183,2.2715,3.3183,1.4023,0,2.2539-1.5971,2.2539-3.354,0-1.4194-.5859-3.3-2.2539-3.3C100.3926,7.2363,99.7539,9.0283,99.7539,10.5723Z" transform="translate(-1.2598 -2.3384)"/><path d="M114.374,2.3384V12.6841c0,.71.0352,1.5972.0713,2.165h-1.331l-.0713-1.3662H112.99a2.7763,2.7763,0,0,1-2.5732,1.5435c-1.8994,0-3.3369-1.7036-3.3369-4.3653,0-2.9282,1.6328-4.5786,3.4785-4.5786a2.4963,2.4963,0,0,1,2.2891,1.2246h.0361V2.3384Zm-1.49,7.3467a4.09,4.09,0,0,0-.0537-.6387A2.066,2.066,0,0,0,110.86,7.29c-1.4727,0-2.254,1.4726-2.254,3.3007,0,1.7744.7452,3.2119,2.2188,3.2119a2.07,2.07,0,0,0,1.9873-1.7392,2.454,2.454,0,0,0,.0713-.6387Z" transform="translate(-1.2598 -2.3384)"/><path d="M123.3154,12.5068c0,.9048.0352,1.668.0713,2.3423h-1.3135l-.0888-1.26h-.0352a2.8975,2.8975,0,0,1-2.5381,1.437c-1.4023,0-2.6972-.8692-2.6972-3.62V6.26h1.49v4.8974c0,1.544.4258,2.6265,1.6865,2.6265a1.9726,1.9726,0,0,0,1.81-1.3487,2.6793,2.6793,0,0,0,.124-.7983V6.26h1.4912Z" transform="translate(-1.2598 -2.3384)"/><path d="M131.2627,14.5649a5.0916,5.0916,0,0,1-2.165.4439c-2.36,0-3.94-1.686-3.94-4.3652a4.2058,4.2058,0,0,1,4.26-4.543,4.4554,4.4554,0,0,1,1.8809.39l-.337,1.1714a3.42,3.42,0,0,0-1.5615-.355c-1.793,0-2.7158,1.5259-2.7158,3.2652,0,2.0053,1.1182,3.2119,2.6973,3.2119a3.8423,3.8423,0,0,0,1.6328-.355Z" transform="translate(-1.2598 -2.3384)"/><path d="M134.9512,3.8467V6.26H137.01V7.4136h-2.0586v4.7558c0,1.0826.3193,1.5972,1.082,1.5972a2.9974,2.9974,0,0,0,.7988-.0889l.0713,1.1358a3.3107,3.3107,0,0,1-1.2773.1953,2.0457,2.0457,0,0,1-1.58-.6211,3.1753,3.1753,0,0,1-.585-2.2007V7.4136h-1.2421V6.26h1.2421V4.2549Z" transform="translate(-1.2598 -2.3384)"/><path d="M140.2549,3.9a.8937.8937,0,0,1-.94.94.8713.8713,0,0,1-.8868-.94.914.914,0,1,1,1.8272,0Zm-1.668,10.9492V6.26h1.5088v8.5888Z" transform="translate(-1.2598 -2.3384)"/><path d="M149.499,10.5015c0,3.2119-2.0049,4.5249-3.8506,4.5249-2.0937,0-3.7265-1.6148-3.7265-4.4185,0-2.9458,1.7568-4.5254,3.8506-4.5254C147.9551,6.0825,149.499,7.7686,149.499,10.5015Zm-6.0508.0708c0,1.7392.834,3.3183,2.2715,3.3183,1.4014,0,2.2539-1.5971,2.2539-3.354,0-1.4194-.5859-3.3-2.2539-3.3C144.0869,7.2363,143.4482,9.0283,143.4482,10.5723Z" transform="translate(-1.2598 -2.3384)"/><path d="M151.3242,8.5493c0-.9228-.0351-1.58-.07-2.289h1.33l.0713,1.2954h.0537a2.8831,2.8831,0,0,1,2.5732-1.4732c1.1885,0,2.7324.7632,2.7324,3.46v5.3061h-1.49V9.7207c0-1.2778-.4258-2.396-1.7392-2.396a1.9924,1.9924,0,0,0-1.8633,1.544,2.936,2.936,0,0,0-.0889.7456v5.2348h-1.5088Z" transform="translate(-1.2598 -2.3384)"/><path d="M168.2148,14.8491l-.124-1.0293h-.0537a2.7816,2.7816,0,0,1-2.36,1.2066,2.3594,2.3594,0,0,1-2.4483-2.4663c0-2.0943,1.81-3.1768,4.72-3.1592V9.188c0-.834-.23-1.9873-1.7919-1.97a3.625,3.625,0,0,0-1.9874.5859l-.3369-1.0293a5.0216,5.0216,0,0,1,2.5909-.6924c2.36,0,3.0166,1.5972,3.0166,3.39v3.354a14.2009,14.2009,0,0,0,.124,2.0229Zm-.248-4.4009c-1.3848-.018-3.2305.23-3.2305,1.9522a1.3142,1.3142,0,0,0,1.3311,1.49,1.8726,1.8726,0,0,0,1.8457-1.3838,1.57,1.57,0,0,0,.0537-.497Z" transform="translate(-1.2598 -2.3384)"/><path d="M178.3447,12.5068c0,.9048.0362,1.668.0713,2.3423h-1.3135l-.0888-1.26h-.0352a2.8946,2.8946,0,0,1-2.5371,1.437c-1.4023,0-2.6982-.8692-2.6982-3.62V6.26h1.4912v4.8974c0,1.544.4258,2.6265,1.6855,2.6265a1.9729,1.9729,0,0,0,1.8106-1.3487,2.7118,2.7118,0,0,0,.124-.7983V6.26h1.49Z" transform="translate(-1.2598 -2.3384)"/><path d="M184.2861,3.0479A16.83,16.83,0,0,1,187.1436,2.8,5.9363,5.9363,0,0,1,191.3672,4.13a5.6506,5.6506,0,0,1,1.668,4.4546,6.55,6.55,0,0,1-1.6329,4.7734,6.4655,6.4655,0,0,1-4.6845,1.58,19.1994,19.1994,0,0,1-2.4317-.1245Zm1.49,10.6123a8.7068,8.7068,0,0,0,1.2422.0708c2.7685,0,4.455-1.6148,4.455-5.0928.0176-2.8926-1.3847-4.6319-4.2422-4.6319a7.517,7.517,0,0,0-1.455.1241Z" transform="translate(-1.2598 -2.3384)"/><path d="M195.835,10.7852c.0351,2.2714,1.2773,3.0522,2.6621,3.0522a5.0467,5.0467,0,0,0,2.0937-.4082l.2666,1.0825a6.2338,6.2338,0,0,1-2.5732.4971c-2.4668,0-3.9043-1.7393-3.9043-4.33,0-2.644,1.4375-4.5962,3.709-4.5962,2.4843,0,3.1943,2.2715,3.1943,3.9575a6.9054,6.9054,0,0,1-.0361.7452Zm4.0107-1.0826c.0176-1.2065-.48-2.52-1.8994-2.52-1.3838,0-1.9873,1.4019-2.0938,2.52Z" transform="translate(-1.2598 -2.3384)"/><path d="M203.9961,10.7852c.0352,2.2714,1.2773,3.0522,2.6611,3.0522a5.0492,5.0492,0,0,0,2.0948-.4082l.2656,1.0825a6.2339,6.2339,0,0,1-2.5733.4971c-2.4668,0-3.9043-1.7393-3.9043-4.33,0-2.644,1.4375-4.5962,3.709-4.5962,2.4844,0,3.1944,2.2715,3.1944,3.9575a7.2036,7.2036,0,0,1-.0352.7452Zm4.01-1.0826c.0185-1.2065-.4786-2.52-1.8985-2.52-1.3838,0-1.9873,1.4019-2.0937,2.52Z" transform="translate(-1.2598 -2.3384)"/><path d="M211.251,9.0283c0-1.1709-.0362-2.0229-.0713-2.768h1.3486L212.6,7.6089h.0352a2.9648,2.9648,0,0,1,2.68-1.5264c1.8994,0,3.3007,1.7036,3.3007,4.3833,0,3.1236-1.7216,4.5606-3.5312,4.5606a2.5779,2.5779,0,0,1-2.3067-1.2422h-.0361v4.5429h-1.49Zm1.49,2.4312a2.5494,2.5494,0,0,0,.0713.6567,2.0815,2.0815,0,0,0,2.0049,1.7212c1.5088,0,2.2715-1.4194,2.2715-3.3184,0-1.7392-.7451-3.2119-2.2354-3.2119a2.2072,2.2072,0,0,0-2.0234,1.81,2.66,2.66,0,0,0-.0889.6387Z" transform="translate(-1.2598 -2.3384)"/><path d="M223.9883,2.8882h1.49V13.5894h4.5967v1.26h-6.0869Z" transform="translate(-1.2598 -2.3384)"/><path d="M232.2559,10.7852c.0351,2.2714,1.2773,3.0522,2.6621,3.0522a5.0471,5.0471,0,0,0,2.0937-.4082l.2666,1.0825a6.2338,6.2338,0,0,1-2.5732.4971c-2.4668,0-3.9043-1.7393-3.9043-4.33,0-2.644,1.4375-4.5962,3.709-4.5962,2.4843,0,3.1943,2.2715,3.1943,3.9575a6.9054,6.9054,0,0,1-.0361.7452Zm4.0107-1.0826c.0176-1.2065-.48-2.52-1.8994-2.52-1.3838,0-1.9873,1.4019-2.0938,2.52Z" transform="translate(-1.2598 -2.3384)"/><path d="M243.877,14.8491l-.125-1.0293h-.0528a2.7829,2.7829,0,0,1-2.36,1.2066A2.36,2.36,0,0,1,238.89,12.56c0-2.0943,1.8106-3.1768,4.7208-3.1592V9.188c0-.834-.2305-1.9873-1.792-1.97a3.63,3.63,0,0,0-1.9883.5859l-.3369-1.0293a5.024,5.024,0,0,1,2.5908-.6924c2.36,0,3.0166,1.5972,3.0166,3.39v3.354a14.1932,14.1932,0,0,0,.125,2.0229Zm-.2491-4.4009c-1.3838-.018-3.23.23-3.23,1.9522a1.3137,1.3137,0,0,0,1.3311,1.49,1.8742,1.8742,0,0,0,1.8457-1.3838,1.5985,1.5985,0,0,0,.0527-.497Z" transform="translate(-1.2598 -2.3384)"/><path d="M247.44,8.7979c0-.9229-.0351-1.775-.07-2.5376h1.33l.0537,1.5791h.0537a2.4525,2.4525,0,0,1,2.2178-1.7569,2.6819,2.6819,0,0,1,.3906.0357v1.455a1.8752,1.8752,0,0,0-.4619-.0356,2.0645,2.0645,0,0,0-1.9521,1.9346,3.2465,3.2465,0,0,0-.07.7451v4.6318H247.44Z" transform="translate(-1.2598 -2.3384)"/><path d="M252.8164,8.5493c0-.9228-.0361-1.58-.0713-2.289h1.3311l.0713,1.2954H254.2a2.8843,2.8843,0,0,1,2.5732-1.4732c1.19,0,2.7334.7632,2.7334,3.46v5.3061h-1.4912V9.7207c0-1.2778-.4258-2.396-1.7392-2.396a1.9941,1.9941,0,0,0-1.8633,1.544,2.982,2.982,0,0,0-.0889.7456v5.2348h-1.5078Z" transform="translate(-1.2598 -2.3384)"/><path d="M263.5313,3.9a.8937.8937,0,0,1-.94.94.8713.8713,0,0,1-.8867-.94.914.914,0,1,1,1.8272,0Zm-1.668,10.9492V6.26h1.5088v8.5888Z" transform="translate(-1.2598 -2.3384)"/><path d="M265.749,8.5493c0-.9228-.0361-1.58-.0713-2.289h1.3311l.0713,1.2954h.0527a2.8843,2.8843,0,0,1,2.5733-1.4732c1.1894,0,2.7334.7632,2.7334,3.46v5.3061h-1.4913V9.7207c0-1.2778-.4257-2.396-1.7392-2.396a1.9942,1.9942,0,0,0-1.8633,1.544,2.982,2.982,0,0,0-.0889.7456v5.2348H265.749Z" transform="translate(-1.2598 -2.3384)"/><path d="M281.5576,6.26c-.0361.603-.0713,1.33-.0713,2.4487v4.9336c0,2.0762-.373,3.1587-1.1006,3.8686a4.0953,4.0953,0,0,1-2.874.9937,4.9748,4.9748,0,0,1-2.5732-.6211l.3545-1.1538a4.4993,4.4993,0,0,0,2.2539.5859c1.4375,0,2.4668-.7807,2.4668-2.8926v-.9228h-.0362a2.65,2.65,0,0,1-2.413,1.313c-1.9522,0-3.3184-1.7744-3.3184-4.2056,0-2.9814,1.7568-4.5254,3.5312-4.5254a2.553,2.553,0,0,1,2.36,1.3667h.0352l.0537-1.1889Zm-1.5615,3.2475a2.839,2.839,0,0,0-.0713-.6748,2.0058,2.0058,0,0,0-1.917-1.5434c-1.331,0-2.2353,1.2773-2.2353,3.247,0,1.8281.7978,3.1236,2.2177,3.1236a1.98,1.98,0,0,0,1.8994-1.5083,3.1157,3.1157,0,0,0,.1065-.7989Z" transform="translate(-1.2598 -2.3384)"/></g></g></svg>
\ No newline at end of file
fidle/img/00-logos-reseaux.png

66.2 KiB

fidle/img/AE2-noisy.png

7.84 KiB

fidle/img/AE2-predict.png

5.83 KiB

fidle/img/VAE.jpg

19.4 KiB

<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="109" height="20"><linearGradient id="b" x2="0" y2="100%"><stop offset="0" stop-color="#bbb" stop-opacity=".1"/><stop offset="1" stop-opacity=".1"/></linearGradient><clipPath id="a"><rect width="109" height="20" rx="3" fill="#fff"/></clipPath><g clip-path="url(#a)"><path fill="#555" d="M0 0h64v20H0z"/><path fill="#579aca" d="M64 0h45v20H64z"/><path fill="url(#b)" d="M0 0h109v20H0z"/></g><g fill="#fff" text-anchor="middle" font-family="DejaVu Sans,Verdana,Geneva,sans-serif" font-size="110"><image x="5" y="3" width="14" height="14" xlink:href="data:image/png;base64,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"/> <text x="415" y="150" fill="#010101" fill-opacity=".3" transform="scale(.1)" textLength="370">launch</text><text x="415" y="140" transform="scale(.1)" textLength="370">launch</text><text x="855" y="150" fill="#010101" fill-opacity=".3" transform="scale(.1)" textLength="350">binder</text><text x="855" y="140" transform="scale(.1)" textLength="350">binder</text></g> </svg>
\ No newline at end of file
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment