• Aucun résultat trouvé

Chapitre 3 : Réalisation des modules multi-capteurs et du traitement de données associé

II. Réalisation des techniques de reconnaissance de forme

II.2. Classification bayésienne naïve

II.2.2. Principe de la classification

La classification bayésienne naïve s’effectue sur un ensemble E d’échantillons connus afin de définir les paramètres d’apprentissage. Un échantillon est un tuple contenant la variable aléatoire à classifieur Y composée d’un nombre K de classes y, des J autres variables aléatoires X appelées aussi descripteurs. Le programme, développé sur Julia, charge dans un premier temps le fichier tableur (.csv) contenant les données composées de X variables (la réponse des différents capteurs par exemple) dans lequel des classes prédéfinies y sont attribuées à chaque échantillon. La mise en œuvre de l’apprentissage se déroule alors selon une procédure en 5 étapes.

i. Etape n°1 : construction de la base de données

Reprenons notre exemple précédent afin d’illustrer simplement le fonctionnement de la classification bayésienne naïve : la base de données d’apprentissage est constituée de 445 observations issues de la mesure de 3 capteurs semi-conducteurs auxquelles on attribue les résultats du clustering en guise de classe Tableau III - 15. Les 5 classes sont ici définies par Y1, Y2, Y3, Y4 et Y5.

L’ensemble de données est ensuite scindé en deux ensembles : un premier ensemble d’apprentissage permet d’effectuer l’apprentissage du classifieur, un second ensemble est utilisé afin de tester la validité de la classification. En général, on répartit au hasard les données de l’ensemble : 80 % pour la classification et 20 % pour la validation.

Tableau III - 15 : Exemple de tableau de données d’apprentissage sur la base de 3 capteurs et 5 classes.

Observations Date/Heure Réponse des capteurs (Tension en V) Classe

réelle TGS 2620 TGS 2602 MICS 2710 1 "2014/10/09 12:35:14" 0.561 0.774 0.306 Y1 2 "2014/10/09 12:35:43" 0.577 0.790 0.306 Y1 3 "2014/10/09 12:36:14" 0.587 0.790 0.248 Y1 4 "2014/10/09 12:36:43" 0.558 0.774 0.222 Y1 … … … … 442 "2014/10/09 16:15:43" 0.551 0.799 0.199 Y1 443 "2014/10/09 16:16:13" 0.522 0.799 0.209 Y1 444 "2014/10/09 16:16:43" 0.522 0.799 0.217 Y1 445 "2014/10/09 16:17:13" 0.538 0.754 0.209 Y1

i. Etape n°2 : détermination des fréquences absolues d’apparition d’un événement

On s’intéresse maintenant uniquement aux 356 observations (80%) destinées à établir les paramètres de l’apprentissage. Concrètement, le programme construit le tableau des fréquences absolues pour chaque descripteurs Si (les différents capteurs) qui prennent différentes valeurs

discrètes, entre 0 et 3,3 V dans les différentes classes, comme montré dans le Tableau III - 16. Ces fréquences permettent par exemple de déterminer la probabilité que le capteur TGS 2620 mesure une tension de sortie de 1.074 V (2,7 %).

ii. Etape n°3 : calcul des probabilités absolues d’apparition d’un événement

A partir de l’estimation des fréquences d’apparition des différents événements dans chacune des classes, il est possible de tirer des probabilités absolues. En effet, on détermine la probabilité absolue d’obtenir une classe y, tel que P(y)=fréquence d’apparition de y/nombre d’observations. Dans notre cas, la probabilité d’avoir la classe Y1 est P(Y1)=124/356=34,8%. De même, la probabilité

qu’un capteur j ait un signal de valeur Si est définie par PCj(Si=1.074V)=fréquence d’apparition de

Tableau III - 16 : Exemple de tableau des fréquences absolues du capteur TGS 2620 définit lors de la construction du classifieur.

Signal S (TGS 2620)

Nombre de valeurs de Si par classe

Y1 Y2 Y3 Y4 Y5 Total 0 V 0 0 0 0 0 Σ(Si=0)=0 … … … … 0.551 V 11 0 0 0 0 Σ(Si=0.551)=11 … … … … 1.074 0 12 0 0 0 Σ(Si=1.047)=12 … … … … 1.341 0 0 2 0 0 Σ(Si=1.341)=2 … … … … 3.3 V 0 0 0 0 0 Σ(Si=3.3)=0

Total Σ(Y1)=124 Σ(Y2)=87 Σ(Y3)=49 Σ(Y4)=11 Σ(Y5)=85 Σtotale=356

i. Etape n°4 : construction du tableau des probabilités conditionnelles

A partir de ces mêmes fréquences le classifieur détermine ensuite des probabilités conditionnelles, c’est-à-dire la probabilité que la variable aléatoire A vaille ak quand elle se trouve

dans une certaine classe y, comme illustré par le Tableau III - 17. L’ensemble de ces probabilités, définies à l’aide de l’échantillon, reliant les variables et les observations attribuées à différentes classes forme ainsi les paramètres d’apprentissage du classifieur bayésien naïf.

Tableau III - 17 : Exemple de détermination des probabilités conditionnelles définissant le classifieur, connaissant les fréquences absolues.

Signal S (TGS 2620)

Nombre de valeurs de Si par classe

Y1 Y2 Y3 Y4 Y5 0 V 0 0 0 0 0 … … … … 0.551 V 11/193=0.057 0 0 0 0 … … … … 1.074 0 12/95=0.13 0 0 0 … … … … 1.341 0 0 2/54=0.037 0 0 … … … … 3.3 V 0 0 0 0 0 Total 1 1 1 1 1

i. Etape n°5 : validation des paramètres de classification

La dernière étape consiste à valider les résultats de l’apprentissage à l’aide des 20% de données restantes. Comme pour classer une observation inconnue, l’objectif du test est d’attribuer la classe la plus probable à ces données. Pour cela, on calcul la probabilité d’appartenance de cette nouvelle observation pour chacune des classes, qui correspond au produit entre la probabilité absolue de la classe et les probabilités conditionnelles des différentes variables.

Si par exemple, une observation a pour valeur <X1=0,512 ; X2=0,803 ; X3=0,229 ; Y> avec X1 la réponse du capteur TGS2620, X2 la réponse du capteur TGS2602, X3 la réponse du capteur MICS2710 et Y la classe recherchée, alors la probabilité Y=c1 est :

b(!1) = I(!1). I(!1|"1 = 0,512 J). I(!1|"2 = 0,803 J). I(!1|"3 0,229 J)

Ainsi, en calculant la probabilité associée à toutes les classes possibles, la probabilité la plus élevée correspond à la classe ayant le plus de chance de qualifier l’observation. Le programme fournit alors un tableau à la suite de l’étape de validation qui fournit la valeur des différentes probabilités d’attribution de chaque donnée à une classe, valeur qui sert d’indice de confiance, ainsi que la classe attribuée à chaque observation (Tableau III - 18). En comparant, les résultats de cette classification aux classes que nous avions attribuées aux données utilisées pour la phase de validation, il est possible de déterminer le taux de réussite du classifieur. Ces résultats permettent également d’élaborer une matrice de confusion afin de mettre en évidence la qualité de la classification. Cette matrice regroupe d’une part le nombre d’occurrences d’une classe estimée que l’on compare avec le nombre d’occurrences de la classe réelle.

Tableau III - 18 : Exemple de fichier de sortie présentant les résultats d’un test de classification naïve bayésienne.

Obs Réponse des capteurs (V) Classe de l’obs Indice de confiance

TGS 2620 TGS 2602 MICS 2710 Y_entrée Y_sortie Y1 Y2 Y3 Y4 Y5

1 0.774 0.558 0.248 1 1 0.98 0.005 0.005 0.005 0.005 2 0.767 0.554 0.229 1 1 0.99 0.002 0.003 0.002 0.002 3 1.832 0.700 0.409 4 4 0.33 0.12 0.10 0.35 0.10 … … … … 87 1.783 1.035 0.616 2 2 0.02 0.87 0.03 0.04 0.04 88 0.829 0.516 0.229 1 1 0.99 0.003 0.002 0.002 0.002 89 0.841 0.506 0.199 1 1 0.99 0.002 0.003 0.002 0.002

Lors de ce chapitre, nous avons présenté le principe de fonctionnement ainsi que le développement de nos dispositifs de mesure par capteurs de gaz miniatures, le choix des différents capteurs a été justifié en adéquation avec le suivi spécifique et non-spécifique des polluants rencontrés en air intérieur. L’interface électronique entre les différents capteurs et le nano-ordinateur Raspberry Pi nous permet d’avoir un système autonome sur le long terme pour la gestion des capteurs commerciaux, la récupération et le stockage des données. Des méthodes de traitement élaborées, le clustering par bisecting k-means et l’apprentissage par bayésien naïf, pour la reconnaissance de forme des signaux des capteurs semi-conducteurs ont également été prise en main. Avant de présenter les différents résultats, la stratégie de caractérisation des performances des capteurs, les dispositifs expérimentaux utilisés et le contexte dans lequel les mesures ont été réalisées seront décrits dans le prochain chapitre.

Chapitre 4 : Mise en œuvre des systèmes multi-capteurs lors de