• Aucun résultat trouvé

Assembler la diversité des modèles classiques et «deep learning» pour développer un pipeline de calibration SPIR performant et générique

N/A
N/A
Protected

Academic year: 2021

Partager "Assembler la diversité des modèles classiques et «deep learning» pour développer un pipeline de calibration SPIR performant et générique"

Copied!
22
0
0

Texte intégral

(1)

HAL Id: hal-02958421

https://hal.inrae.fr/hal-02958421

Submitted on 5 Oct 2020

HAL is a multi-disciplinary open access archive for the deposit and dissemination of sci- entific research documents, whether they are pub- lished or not. The documents may come from teaching and research institutions in France or abroad, or from public or private research centers.

L’archive ouverte pluridisciplinaire HAL, est destinée au dépôt et à la diffusion de documents scientifiques de niveau recherche, publiés ou non, émanant des établissements d’enseignement et de recherche français ou étrangers, des laboratoires publics ou privés.

Assembler la diversité des modèles classiques et “deep learning” pour développer un pipeline de calibration

SPIR performant et générique

Denis Cornet, Lucienne Desfontaines, Fabien Cormier, Carine Marie-Magdeleine, Gemma Arnau, Karima Meghar, Fabrice Davrieux,

Gregory Beurier

To cite this version:

Denis Cornet, Lucienne Desfontaines, Fabien Cormier, Carine Marie-Magdeleine, Gemma Arnau, et al.. Assembler la diversité des modèles classiques et “deep learning” pour développer un pipeline de calibration SPIR performant et générique. Rencontres HélioSPIR Session 5, Association HelioSPIR, Oct 2019, Montpellier, France. �hal-02958421�

(2)

Assembler la diversité des modèles classiques et «deep learning» pour développer un pipeline de calibration

SPIR performant et générique .

Cornet D, Beurier G, Cormier F, Meghar K, Davrieux F, Arnau G (Cirad) Desfontaines L, Marie-Magdeleine C (INRA) Rencontres HelioSPIR, Session 5 - Place aux « jeunes » !

15 octobre 2019

(3)

Contenu

• Justification des choix méthodologique

• Apprentissage automatisé

• Pipeline générique

• Assemblage de modèle

• Assemblage de modèles

• Analysis pipeline under development

• Perspectives

(4)

Pourquoi l’apprentissage automatisé ?

• calibration SPIR = développement du meilleur modèle prédictif

• Pas/peu d’intérêt de comprendre pourquoi et comment cela fonctionne

• > 1000 variables explicatives et taille échantillon << variables explicatives

• Relations non linéaires

 l’apprentissage automatisé se révèle plus performant

Computation

Traditional programming

Input data (e.g. spectra) Set of rules

(e.g. PLS regression)

Results

(e.g. starch content)

(5)

Pourquoi l’apprentissage automatisé ?

Computation

Machine learning

Input data (e.g. spectra) Set of rules

(e.g. RNN)

Results

(e.g. starch content)

• calibration SPIR = développement du meilleur modèle prédictif

• Pas/peu d’intérêt de comprendre pourquoi et comment cela fonctionne

• > 1000 variables explicatives et taille échantillon << variables explicatives

• Relations non linéaires

 l’apprentissage automatisé se révèle plus performant

(6)

Filter (i.e. kernel)

Feature maps

Convolutional layer

Hidden layers fully connected Activation

function

https://towardsdatascience.com

Output layer

Exemple d’application

Convolutional network

(7)

Raw spectra

Savistky-Golay first derivative

Convolutional preprocessed Source: adapted from Cui et Fearn 2018

Exemple d’application

Convolutional network

(8)

Convolution 1D Convolution 1D Convolution 1D Convolution 1D 1D Convolution

12

Convolution 1D Convolution 1D 1D Convolution

6

Normalization Normalization Flatten Dense

KFold – 5 Fold 4 Repeats

1500 epochs – No Hyperparametrization 40 % Dropout on convolutions

Deep 1D Convolutional

Cooking Time

Validation Set MAE 19.49 % ± 2.77%

Global Set MAE 10.92 % ±0.82%

Texture

Validation Set MAE 13.39 % ± 2.91%

Global Set MAE 7.67 % ± 1.74%

Convolution 1D Convolution 1D Convolution 1D Convolution 1D LSTM

32

Normalization

KFold – 5 Fold 4 Repeats

800 epochs – No Hyperparametrization 50 % Dropout on input

Bidirectional Long Short Term Memory

Cooking Time

Validation Set MAE 20.32 % ± 1.85%

Global Set MAE 20.74 % ± 2.26%

Texture

Validation Set MAE 10.31 % ± 0.60%

Global Set MAE 11.93 % ± 2.14%

Convolution 1D Convolution 1D Convolution 1D Convolution 1D LSTM

HaarSavgol-Gaussian

8

Dense

Exemple d’application : texture et caisson du manioc

(9)

Etude préliminaire avec plusieurs machines

KFold – 5 Fold 4 Repeats

1500 epochs – No Hyperparametrization 40 % Dropout on convolutions

Training Set CNN

Spectro 1

CNN

Spectro 2

BiLSTM Spectro 1

BiLSTM Spectro 2 Spectro 1

&

Spectro 2

7.57% ±0.19% 13.74% ±0.45% 7.95% ±0.49% 9.95% ±0.66%

Spectro 1

only 7.16% ±1.05% 25.81% ±1.51% 6.30% ±0.73% 26.68% ±2.76%

Spectro 2

only 17.40% ±0.44 % 2.93% ±0.20% 13.28% ±0.37% 4.44% ±0.12%

Spectro 1 then Spectro 2

7.28% ±0.40% 4.45% ±0.39% 6.64% ±1.27% 3.87% ±0.36%

Spectrums Auto-Encoding

then Spectro

12.28% ±1.48% 16.57% ±1.03%

(10)

Pourquoi un pipeline générique ?

• Démocratisation/vulgarisation de la SPIR apporte de + en + d’utilisateurs naïfs

• La majorité des publications s’attachent à démontrer la supériorité d’une méthode

• Applique 1 stratégie de modélisation

• Utilise 1 combinaison spécifique de prétraitement

• Optimise la calibration pour 1 analyte

• L’utilisateur

• Dispose souvent de plusieurs analytes (e.g. sucre, amidon, protéine)

• Se heurte à un mur grandissant de possibiliés de combinaisons de prétraitements/modèles

• Si la combinaison optimale différe d’une étude à l’autre, la

manière de l’identifier peut être généralisé

(11)

Pourquoi un pipeline générique ?

Construction : les prétreatements

• Noise correction (additive and multiplicative effects)

Multi scatter correction (remove some physical effects like particle size or Shining Light Reflection)

Savitsky-Golay smoothing and derivative

• Enhance contrast

Discret Wavelet Transform: Haar transform

SD feature selection

• Baseline correction

Detrend

Continuum removal (albedo normalization)

Derivatives

 616 combinations of 7 pretreatments

(12)

Traditional programming

Partial least squares regression (PLS)

Principal component regression (PCR)

Non negative least squares (NNLS)

Machine learning

Regularization

Lasso regression (least absolute shrinkage and selection operator, LASS)

Elastic net regularization (ENET)

Bayesian

Gaussian process (GP)

Support vector machine

Linear support vector regression (SVMl)

Radial support vector regression (SVMr)

Neural networks

Neural network (NNET)

LSTM, RNN…

Hyperparameter tuning:

• Grid selection

• Random selection

Pourquoi un pipeline générique ?

Construction : les modèles

(13)

Pipeline d’analyse en cours de construction

Stacking avec R, python, keras et tensorflow

Test DatasetTraining Dataset

Descrete wavelet transform (Haar 1)

Savitsky-Golay smoothing/deriv.

Detrend

Derivative

Continuum

removal MSC 2

featuresSD selection

615 Datasets615 Datasets

LEVEL 1: Featuressets diversity

Detrend Derivative

Descrete wavelet transform (Haar 5)

LEVEL 3: Model diversity

SVM NN

GP

Continuum

removal

PLS ENET NNLS

AE Lasso

LEVEL 4 : Hyperparameterdiversity Gridsearchon hyperparameters LEVEL 2: Training data diversitydiversity 5-fold cross-validation

(14)

Pourquoi l’assemblage de modèles ?

• Diversité des combinaisons de prétraitements/modèles/analytes

• A un seul modèle

Ne bénéficie pas de toute l’information générée pour le sélectionner

Risque de s’adjuster au bruit lorsque très/trop spécifique

• Dans le monde singulier des competitions de données (kaggle), l’immense majorité des équipes gagnantes utilise une

combinaison de modèle plutôt qu’un modèle optimal

• L’assemblage de modèles de base au sein d’un métamodèle s’appellee l’assemblage de modèle

• Utilisé pour la première fois en 1992 par Wolpert mais il faut attendre 2007 pour avoir une démonstrtion mathématique de son avantage (van de Laar et al.)

(15)

Techniques d’assemblage

Moyenne

• Simple

• Weighted

Neural Network

Pred SVM + Pred RF + Pred NN

( ) / 3

Pred SVM + Pred RF + Pred NN

0,15 0,5 0,35

Input space Feature space

Φ

Support Vector Machine

(16)

Techniques d’assemblage

Bagging

Bagging (bootstrap aggregation, e.g. randomforest)

Training dataset

….

Bag n

Aggregation (mean…) Prediction Bag 1

Bag 2

Learning model 1

Learning model 2

Learning model n Bootstrap

samples

Training

Training

Training

https://towardsdatascience.com

(17)

Techniques d’assemblage

Boosting

Train a 1st weak learner

Train a 2nd

weak learner nth iteration

Iteration 1 Iteration 2 Iteration 3

(18)

Technique d’assemblage

Stacking

Initial training dataset

4 folds cross-validated

training and prediction datasets

Base learners

.…

SVM

GP PLS ENET

NNLS NN

AE

Metalearner GBM Predictions

(19)

Pipeline d’analyse en cours de construction

Stacking avec R, python, keras et tensorflow

Test DatasetTraining Dataset

Descrete wavelet transform (Haar 1)

Savitsky-Golay smoothing/deriv.

Detrend

Derivative

Continuum

removal MSC 2

featuresSD selection

615 Datasets615 Datasets

LEVEL 1: Featuressets diversity

Detrend Derivative

Descrete wavelet transform (Haar 5)

LEVEL 3: Model diversity

SVM NN

GP

Continuum

removal

PLS ENET NNLS

AE Lasso

LEVEL 4 : Hyperparameterdiversity Gridsearchon hyperparameters

Stacked ensemble

with RF or GBM

LEVEL 2: Training data diversitydiversity 5-fold cross-validation

(20)

• Conditions

• Performant

Strong learners (MAE<1)

Steady learners (low variation between cross validated samples MAE)

• Diverse

Correlation: Pearson < 0.9

Distribution: Kolmogorov-Smirnov

> 0.1

• 6150 models  8 base learners

Analysis pipeline under development

Base model choice

(21)

Perspectives

• Finaliser la construction du pipeline

• Jouer avec les résultats d’analyse (performance relative, analyse de sensibilité….)

• Tester la généricité du pipeline (produits, des tailles de jeux de données, specromètres…) => projet RTBfoods

• Tester la plus-value de travailler sur un vecteur d’analytes plutôt qu’un seul analyte à la fois (meilleure gestion des outliers, …)

• Tester la nouvelle generation d’algorithmes d’apprentissage profond

(e.g. RNN, CNN, LSTM, attention based NN)

(22)

Merci

Références

Documents relatifs

La connaissance et la pratique interdialectales nous permettent de nous placer dans la perspective d’ipséité de Ricœur, celle qui nous dit que nous sommes à la fois

Problème : pour des textes comprenant des millions de mots, il y a des milliards, voire des billons de relations possibles Deep learning : le terme symbolise la grande

En ce qui concerne l’aspect dynamique des modèles S-Edit propose les notions d’action action action action et de propriété propriété propriété propriété. La

Il nous a semblé qu’en introduisant cette notion de « classique », nous engagions ces corpus nouveaux ou revisités, dans une perception plus nuancée et, par

Generally worse than unsupervised pre-training but better than ordinary training of a deep neural network (Bengio et al... Supervised Fine-Tuning

Fast PCD: two sets of weights, one with a large learning rate only used for negative phase, quickly exploring modes. Herding: (see Max Welling’s ICML, UAI and ICML

Fast PCD: two sets of weights, one with a large learning rate only used for negative phase, quickly exploring modes. Herding (see Max Welling’s ICML, UAI and

Two levels suffice to represent any function Shallow &amp; local learning works for simpler problems : insufficient for AI-type tasks Up to 2006, failure of attempts to train