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és
1. +
100% Colombian Coffee :
analyse de données
issues de la résonance
magnétique nucléaire
Projet de Bachelor 2013
Yannick Müller
4 Septembre 2013
Professeur : Prof Carlos Andrés Peña-Reyes
Expert : Julien Rebetez
2. +
Sommaire
1. Sujet
1. Problématique du café Colombien
2. Travail et méthodes utilisées actuellement
2. Approche et résolution du problème
1. Déroulement et préparation
2. Recherches théoriques
3. Extraction de caractéristiques
4. Modélisation
5. Résultats
3. Conclusions du projet
PDB 2013, Yannick Müller
2
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
4
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
5
6. +
Travail et méthodes de DARMN
Metabonomique et classification
PDB 2013, Yannick Müller
6
Collection
Préparation
Extraction (RMN)
Validation
Chemométrie (PLS-DA)
8. +
Cadre du travail
Analyse des es fournies par l’Universidad del Valle ;
Exploration des sujets cessaires la alisation du projet :
sonance tique aire et cificite des es ne- es par elle ;
thodes de lisation - es pour la classification et la lisation dictive ;
thodes d’extraction de ristiques
Proposition d’un catalogue de ristiques et application sur les es
reçues ;
Application de plusieurs thodes de lisation sur un me
( termination du pays ou de l’ ce effets de les comparer
matiquement.
lection de la meilleure approche et application sur des mes de complexite
croissante afin de l’adapter ou l’enrichir selon les besoins.
daction d’un rapport permettant de comprendre l’approche e et de
l’exploiter dans le futur.
PDB 2013, Yannick Müller
8
10. +
Chronologie du projet
PDB 2013, Yannick Müller
10
Réception des
données
Recherches
théoriques
Extraction de
caractéristiques
Evaluation
Recherche de
modèles
Durant le semestre
6 semaines
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 à appréhender
Paquetage fugeR
DARMN travaille
essentiellement sous R
Open-source
Très grosse communauté
PDB 2013, Yannick Müller
11
14. +
Recherches théoriques (3)
Validation
Problème : entraîner un algorithme de ces types peut amener à 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
PDB 2013, Yannick Müller
14
16. +
Extraction de caractéristiques (1)
Pourquoi?
Les données (de base)
présentent un grand nombre de
dimensions
La présentation naïve à
l’algorithme k-nearest-neighbour
(k=2) donne des résultats
médiocres
PDB 2013, Yannick Müller
16
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
PDB 2013, Yannick Müller
17
Caractéristiques indépendantes
Aires sur des portions
18. +
Extraction de caractéristiques (3)
Comparaisons
Kohonen (SOM) permet de faire
une représentation graphique
interprétable aisément sans
apprentissage
PDB 2013, Yannick Müller
18
KNN permet de tirer des critères
de performances objectifs
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éjà utilisées
PDB 2013, Yannick Müller
19
20. +
Modélisation (1)
Paramètres
PDB 2013, Yannick Müller
20
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
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
PDB 2013, Yannick Müller
21
Modélisation (2)
Méthodologie
22. +
Grillé / Vert
Arabica /
Robusta
Colombien
/ Autres
Arabica /
Robusta
Colombien
/ Autres
PDB 2013, Yannick Müller
22
Modélisation (3)
Mise en cascade
DARMNPDB
Arabica / Robusta
Colombien / Autres
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
PDB 2013, Yannick Müller
23
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
24
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 = indata
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)
}
}
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
25
26. +
PDB 2013, Yannick Müller
26
Modélisation
Systè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
27. +
PDB 2013, Yannick Müller
27
Modélisation
Systè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
28. +
Apprend beaucoup plus vite que
les SIF
Fonction d’initialisation aléatoire
-> Possibilité d’avoir une
mauvaise initialisation
PDB 2013, Yannick Müller
28
Modélisation
Perceptron
29. +
PDB 2013, Yannick Müller
29
Modélisation
Perceptron
A / R
Méthode Nombre
Std_Backprop 2
Spécificité (C) 0.96
Sensibilité (O) 1
Meilleures performances sur 5-Fold pour arabica-robusta
30. +
PDB 2013, Yannick Müller
30
Modélisation
Perceptron
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
32. +
Modélisation
Résultats mise en cascade
PDB 2013, Yannick Müller
32
C / O
Méthode Nombre
BackpropMomentum 120
Spécificité (C) 0.8987013
Sensibilité (O) 0.9550000
34. +
Conclusions
PDB 2013, Yannick Müller
34
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 à
l’évolution exponentiel
Nécessite beaucoup de
générations pour
converger
Impossibilité d’interpréter
ce qui a amené le système
à prendre une décision
36. +
Conclusions
Difficulté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
36
37. +
Conclusions
Travaux 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
37
38. +
Merci de votre attention
Encore des questions ?
PDB 2013, Yannick Müller
38