défense 100% colombian coffee
DESCRIPTION
Défense du projet de bachelor 2013 en Informatique. Sujet : Analyse de données issues de la résonance magnétique nucléaire grâce à des systèmes bio-inspirésTRANSCRIPT
+100% Colombian
Coffee : analyse de données issues de la
résonance magnétique
nucléaire
Projet de Bachelor 2013Yannick Müller4 Septembre 2013
Professeur : Prof Carlos Andrés Peña-ReyesExpert : Julien Rebetez
PDB 2013, Yannick Müller
2+Sommaire
1. Sujet1. Problématique du café Colombien2. Travail et méthodes utilisées actuellement
2. Approche et résolution du problème1. Déroulement et préparation2. Recherches théoriques3. Extraction de caractéristiques4. Modélisation5. Résultats
3. Conclusions du projet
PDB 2013, Yannick Müller 3
+Problématique du café Colombien
+
PDB 2013, Yannick Müller
4
Contexte
Café colombien, gage de qualité (selon tests de goûts)
Attise la convoitise de producteurs de pays voisins
Protection du savoir-faire
Production de preuves en cas de fraude
+
PDB 2013, Yannick Müller
5
Résonance magnétique nucléaire
Phénomène apparaissant lorsqu’un atome est mis dans un champ magnétique
Permet de tirer un signal pour un échantillon reflétant les molécules présentes
Chaque (ensemble de) piques représente une molécule
PDB 2013, Yannick Müller
6+Travail et méthodes de DARMN
Metabonomique et classification
Collection
Préparation
Extraction (RMN)
Validation
Chemométrie (PLS-DA)
PDB 2013, Yannick Müller
7+Travail et méthodes
PCA / PLS-DA
PDB 2013, Yannick Müller
8+Cadre du travail
Analyse des données fournies par l’Universidad del Valle ;
Exploration des sujets nécessaires a la réalisation du projet : Résonance magnétique nucléaire et spécificité des données géné- rées par elle ; Méthodes de modélisation bio-inspirées pour la classification et la modélisation
prédictive ; Méthodes d’extraction de caractéristiques
Proposition d’un catalogue de caractéristiques et application sur les données recues ;
Application de plusieurs méthodes de modélisation sur un problème simplifié (détermination du pays ou de l’espèce) a effets de les comparer systématiquement.
Sélection de la meilleure approche et application sur des problèmes de complexité croissante afin de l’adapter ou l’enrichir selon les besoins.
Rédaction d’un rapport permettant de comprendre l’approche utilisée et de l’exploiter dans le futur.
PDB 2013, Yannick Müller 9
+Approche et résolution du problème
+
PDB 2013, Yannick Müller
10
Chronologie du projet
Réception des données
Recherches théoriques
Extraction de caractéristiques
Evaluation
Recherche de modèles
Durant le semestre
6 semaines
+
PDB 2013, Yannick Müller
11
Réception des données
Faits 3 espèces de café
(arabica, robusta, mixé) 3 possibilités de
provenance (Colombie, autres, inconnu)
Format MATLAB La matrice de données a
de très hautes dimensions (200 x 80500)
Justification du choix de R : Plus facile a appréhender Paquetage fugeR DARMN travaille
essentiellement sous R Open-source Très grosse communauté
PDB 2013, Yannick Müller
12+Recherches théoriques (1)Processus de modélisation
Modélisation Raffinement
Algorithmes
Paramètres
Extraction
Sélection
Evaluation
Sélection
Pré-modélisation
+
PDB 2013, Yannick Müller
13
Recherches théoriques (2)Systèmes bio-inspirés
Evolution Cerveau humain
PDB 2013, Yannick Müller
14+Recherches théoriques (3)Validation
Problème : entraîner un algorithme de ces types peut amener a ce que le réseau soit surentraîné (overfitting).
Objectif : garantir qu’un modèle puisse généraliser
Solution : Cross-Validation Pour la recherche de paramètres Pour l’entraînement de modèles
+ 15
Recherches théoriques (4)Evaluation
Comment évaluer les modèles ?
Comment évaluer les caractéristiques ?
PDB 2013, Yannick Müller
Réalité
Prédiction
Autres Colombie
Autres Vrais positifs
Faux positifs
Colombie Faux négatifs
Vrais négatifsSensibilité Spécificité
PPV
NPV
+
PDB 2013, Yannick Müller
16
Extraction de caractéristiques (1)Pourquoi?
Les données (de base) présentent un grand nombre de dimensions
La présentation naïve a l’algorithme k-nearest-neighbour (k=2) donne des résultats médiocres
+
PDB 2013, Yannick Müller
17
Extraction de caractéristiques (2)Catalogue
Caractéristiques issues des piques (baisse de résolution) Position et intensité des
piques Sélection des piques les plus
présents Caractéristiques indépendantes
Aires sur des portions
+
PDB 2013, Yannick Müller
18
Extraction de caractéristiques (3)Comparaisons
Kohonen (SOM) permet de faire une représentation graphique interprétable aisément sans apprentissage
KNN permet de tirer des critères de performances objectifs
+
PDB 2013, Yannick Müller
19
Extraction de caractéristiques (4)Résultats
Dans Arabica-Robusta, toutes les caractéristiques ont 100% de bonne classification avec KNN
Mais, le binning de DARMN est choisi car : Meilleurs résultats sur KNN pour la classification Colombien-Autres Permettra de faire une comparaison 1:1 avec les techniques déja
utilisées
+
PDB 2013, Yannick Müller
20
Modélisation (1)Paramètres
SIF évolutionniste [fugeR] Réseaux de neurones, perceptron [RSNNS]
Générations Générations
Nombre de règles Nombre de neurones
Nombre de variables Fonction d’initialisation (p. défaut)
Fonction d’apprentissage
+
PDB 2013, Yannick Müller
21
1.Prise de connaissance avec le paquetage
2.Méthode du test-set 70/30
3.Méthode du 5-Fold
4.Mise en cascade
Modélisation (2)Méthodologie
+
PDB 2013, Yannick Müller
22
Grillé / Vert
Arabica / Robusta
Colombien / Autres
Arabica / Robusta
Colombien / Autres
Modélisation (3)Mise en cascade
DARMNPDB
Arabica / RobustaColombien / Autres
+
PDB 2013, Yannick Müller
23
Modélisation (4)Logging et interprétation
Markdown et le paquetage knitr permettent de générer des fichiers HTML contenant les outputs et les graphes générés par R
+ 24
Modélisation (5)Recherche de paramètres
Algorithme final :Pour chaque combinaison de paramètres
Pour chaque fold <- 1 à 5
Entraîner le système avec (n-fold)
Tester le système
Calculer la sensibilité et spécificité
Loguer les résultats
Fin pour (folds)
Fin pour (combinaison)
PDB 2013, Yannick Müller
for (size in sizes) { # K-Fold for (i in 1:k) { indatas <- nn.splitFolds(datas, i) indatas <- normTrainingAndTestSet(indatas) model <- mlp(indatas$inputsTrain, indatas$targetsTrain, size = 10, learnFuncParams = c(0.1), maxit = 120, inputsTest = indatas$inputsTest, targetsTest = indatas$targetsTest) # Valeurs de prédiction sur le test set predictions <- predict.rsnns(model, indatas$inputsTest) # Matrice de confusion confusion <- confusionMatrix(indatas$targetsTest, predictions) # Predictions sur le train set predictions <- predict(model, indatas$inputsTrain) confusion <- confusionMatrix(indatas$targetsTrain, predictions) train.sensi <- c(train.sensi, sensitivity(confusion)) train.speci <- c(train.speci, specificity(confusion)) sizelog <- c(sizelog, size) foldlog <- c(foldlog, i) }}
+
PDB 2013, Yannick Müller
25
Modélisation (6)Systèmes d’inférence flou évolutionniste
Discrimination arabica-robusta : La spécificité et la sensibilité convergent très vite vers 1
Discrimination colombien-autres : Il a fallu beaucoup d’itérations pour converger
Conclusion Le nombre de générations est un point critique Le temps de calcul croit exponentiellement
500 + 100 * NbRules * NbVar
+
PDB 2013, Yannick Müller
26
ModélisationSystèmes d’inférence flou évolutionniste
Règles Variables
4 2
Spécificité 1
Sensibilité 1
Meilleures performances sur 5-Fold pour le problème arabica-robusta
+
PDB 2013, Yannick Müller
27
ModélisationSystèmes d’inférence flou évolutionniste
Règles Variables Règles Variables
5,7,10 5,7,10 17 2,3,4
Spécificité 0.7973016 0.6321429
Sensibilité 0.7374825 0.8186414
Temps de calcul
108 heures 33 heures
Meilleures performances sur 5-Fold pour le problème colombien-autres
La mise en cascade n’a pas amélioré les résultats
+
PDB 2013, Yannick Müller
28
Apprend beaucoup plus vite que les SIF
Fonction d’initialisation aléatoire -> Possibilité d’avoir une mauvaise initialisation
ModélisationPerceptron
+
PDB 2013, Yannick Müller
29
ModélisationPerceptron
A / R
Méthode Nombre
Std_Backprop 2
Spécificité (C) 0.96
Sensibilité (O) 1
Meilleures performances sur 5-Fold pour arabica-robusta
+
PDB 2013, Yannick Müller
30
ModélisationPerceptron
Meilleures performances sur 5-Fold pour colombien-autres
Autres Colombiens
Méthode Nombre Méthode Nombre
SCG 35 BackpropMomentum
120
Spécificité (C) 0.8318182 0.8950000
Sensibilité (O) 0.9846154 0.9222944
+
PDB 2013, Yannick Müller
31
ModélisationRésultats
+
PDB 2013, Yannick Müller
32
ModélisationRésultats mise en cascade
C / O
Méthode Nombre
BackpropMomentum
120
Spécificité (C)
0.8987013
Sensibilité (O)
0.9550000
PDB 2013, Yannick Müller 33
+
Conclusions
+
PDB 2013, Yannick Müller
34
Conclusions
FIS evo Perceptron
Avantages Possibilité d’interpréter le système
Apprentissage rapide -> exploration élargie
Très bonnes performances des 40 itérations
Inconvénients Temps nécessaire a l’évolution exponentiel
Nécessite beaucoup de générations pour converger
Impossibilité d’interpréter ce qui a amené le système a prendre une décision
+
PDB 2013, Yannick Müller
35
Conclusions
Mais… Résultats DARMN :
Sensibilité : 0.96 Spécificité : 0.92
Résultats perceptron : Sensibilité : 0.955 Spécificité : 0.898
+
PDB 2013, Yannick Müller
36
ConclusionsDifficultés rencontrées
Temps de calcul difficilement prédictibles
Crashs au milieu sans logs
Traitement de logs textuels
Approche de l’extraction
Fermeture de l’université
+
PDB 2013, Yannick Müller
37
ConclusionsTravaux futurs
Génération de plusieurs dizaines de modèles et sélection du meilleur
Utiliser un test-set inconnu
Système par votation
Implémentation du perceptron dans mylims.org
+
PDB 2013, Yannick Müller
38
Merci de votre attention
Encore des questions ?