# Conception et réalisation d'un système d'évaluation des comportements anormaux des opérateurs dans un milieu industriel

par
Houssem Amamou

Département d'informatique et de mathématique

Mémoire présenté à l'Université du Québec à Chicoutimi
comme exigence partielle de la maîtrise en informatique

01, 2017

© Houssem Amamou, 2017.
RÉSUMÉ

Avec la disponibilité grandissante des capteurs et des réseaux de capteurs à couts réduits, la reconnaissance d'activités humaines, grâce à des vêtements intelligents, fait l'objet de nombreuses recherches dans le domaine de l'intelligence artificielle et plus particulièrement la sécurité et la surveillance non-invasif dans les milieux intelligents dont les mai-
sons intelligentes, les villes intelligentes et, plus récemment, les industries intelligentes.

Dans ces travaux de recherche, une nouvelle approche de détection de comportements anormaux utilisant des capteurs sans fil a été présentée et évaluée. De ce fait, il s'avère nécessaire de concevoir une méthode permettant d'analyser et de comprendre le com-
portement humain dans ses activités industrielles et d'interpréter les caractéristiques qui y sont liées afin d'évaluer un risque d'accident en temps réel.

L'approche proposée est divisée en deux étapes afin de répondre aux problèmes des ap-
proches traditionnelles qui souffrent d'un taux élevé de faux positifs car les événements anormaux sont rares par rapport aux activités normales.

D'une part, nous avons investigué les algorithmes de reconnaissance d'activités utilisant
des capteurs de mouvement portés sur le corps humain. D'autre part, nous avons étudié
les méthodes proposées afin de segmenter les données des capteurs. Ces lectures nous
ont permis d'effectuer des choix judicieux permettant la réalisation de notre méthode.

Comme notre problème se caractérise par la rareté des activités anormales, nous ne pou-
vons effectuer une méthode d'entraînement traditionnel d'apprentissage automatique de
notre algorithme sur ce type d'activités. Afin de résoudre ce problème, l'approche adoptée utilise en premier lieu une machine à vecteurs de support entraînée sur des activités normales, ce qui nous permet de filtrer les activités ayant une forte probabilité d'être normales. Dans un second lieu, on dérive des modèles d'activités anormales à partir d'un modèle générale d'activité normale via une régression à noyau non-linéaire afin de réduire le taux de faux positifs.

Afin d'évaluer et de démontrer la fonctionnalité de l'approche suggérée dans ces tra vaux, des expériences ont permis d'avoir des résultats qui ont été analysés. Ces résul tats montrent un bon compromis entre la détection d'activités anormales et le taux de fausses alertes. Cette approche bénéficie du fait qu'elle permet automatiquement de gé nérer les modèles d'activités anormales sans avoir le besoin de les connaître en avance.

Ces expérimentations démontrent l'efficacité de l'approche utilisée avec des vêtements de protection individuelle conçus dans le cadre de ce projet de recherche.

**Mots clés: reconnaissance d'activités, détection d'anomalies, ordonnancement, sécurité**
REMERCIEMENTS

Au terme de ce projet de recherche, je dédie ma profonde reconnaissance à tous ceux
et celles qui m'ont formé, conseillé, aidé et soutenu pour aboutir ces travaux.

Je tiens à remercier le professeur Martin Otis, mon directeur de recherche, pour la
confiance qu'il a témoignée pour m'avoir accepté au sein de son groupe de recherche. Sa
disponibilité, sa patience, son jugement, sa rigueur scientifique et ses nombreuses idées
ont été essentielles et inestimables à ma progression personnelle et académique.

Merci également à tout le groupe du laboratoire LAIMI, pour leurs collaborations, l'en-
traide dont ils ont fait preuve et pour leurs assistances tout au long des expérimentations.

Sur un plan plus personnel, un merci tout spécial à mes parents ainsi que ma sœur pour
leur soutien infini, leur bonne humeur, leur patience et leurs conseils inestimables lorsque
j'en ressentais le besoin.

Je désire également à remercier tous les membres du jury qui me font l'honneur d'éva-
luer ce travail et de le juger.
TABLE DES MATIÈRES

<table><tr><td>RÉSUMÉ</td><td>ii</td></tr><tr><td>REMERCIEMENTS</td><td>iv</td></tr><tr><td>TABLE DES MATIÈRES</td><td>v</td></tr><tr><td>LISTE DES TABLEAUX</td><td>vii</td></tr><tr><td>LISTE DES FIGURES</td><td>viii</td></tr><tr><td>LISTE DES ANNEXES</td><td>x</td></tr><tr><td>CHAPITRE 1 : INTRODUCTION</td><td>1</td></tr><tr><td>1.1 Contexte</td><td>1</td></tr><tr><td>1.2 Problématique</td><td>2</td></tr><tr><td>1.3 Objectifs</td><td>3</td></tr><tr><td>1.4 Présentation du mémoire</td><td>5</td></tr><tr><td>CHAPITRE 2 : DÉTECTION D'ACTIVITÉS ANORMALES</td><td>7</td></tr><tr><td>2.1 L'erreur humaine</td><td>8</td></tr><tr><td>2.2 Instruments de mesure des paramètres : utilisation d'accéléromètres</td><td>9</td></tr><tr><td>2.2.1 Placement des capteurs</td><td>11</td></tr><tr><td>2.2.2 Classification des postures et des mouvements</td><td>13</td></tr><tr><td>2.3 Analyse et segmentation des données</td><td>15</td></tr><tr><td>2.4 La reconnaissance d'activités</td><td>20</td></tr><tr><td>2.4.1 Approche utilisant les règles</td><td>20</td></tr><tr><td>2.4.2 Approches basées sur des plans de reconnaissance</td><td>22</td></tr><tr><td>2.4.3 Approches basées sur les modèles</td><td>22</td></tr><tr><td>2.4.4 Détections basées sur la durée de l'activité</td><td>30</td></tr><tr><td>2.5 La détection des valeurs aberrantes</td><td>30</td></tr><tr><td>2.5.1 Les approches basées sur les similarités</td><td>31</td></tr><tr><td>2.5.2 Les approches basées sur les modèles</td><td>34</td></tr><tr><td>2.6 Discussion</td><td>34</td></tr><tr><td>2.7 Conclusion</td><td>36</td></tr><tr><td>CHAPITRE 3 : MÉTHODOLOGIE UTILISÉE</td><td>37</td></tr><tr><td>3.1 Problématique et objectifs</td><td>38</td></tr><tr><td>3.1.1 Solution suggérée</td><td>39</td></tr><tr><td>3.2 Algorithme de segmentation</td><td>41</td></tr></table>
<table><tr><td>3.2.1</td><td>Utilisation des fonction de densité de probabilité pour la segmentation</td><td>41</td></tr><tr><td>3.2.2</td><td>La machine de Markov cachée dans le cas asynchrone</td><td>43</td></tr><tr><td>3.3</td><td>Construction d'une machine à vecteurs de support à une classe</td><td>43</td></tr><tr><td>3.3.1</td><td>Extraction des caractéristiques</td><td>43</td></tr><tr><td>3.3.2</td><td>Apprentissage d'une machine à vecteurs de support à une classe</td><td>44</td></tr><tr><td>3.4</td><td>Modèles d'activités anormales</td><td>47</td></tr><tr><td>3.4.1</td><td>Procédure d'adaptation itérative</td><td>47</td></tr><tr><td>3.4.2</td><td>Régression à noyau non-linéaire</td><td>49</td></tr><tr><td>3.5</td><td>Conclusion</td><td>51</td></tr><tr><td colspan="2">CHAPITRE 4 : TECHNOLOGIES UTILISÉES ET EXPÉRIMENTATIONS</td><td>53</td></tr><tr><td>4.1</td><td>Technologie portable suggérée</td><td>54</td></tr><tr><td>4.1.1</td><td>Casque de sécurité instrumenté</td><td>55</td></tr><tr><td>4.1.2</td><td>Semelle instrumentée</td><td>56</td></tr><tr><td>4.1.3</td><td>Architecture logicielle de l'intelligence artificielle du système proposé</td><td>58</td></tr><tr><td>4.2</td><td>Expérimentation et résultats</td><td>59</td></tr><tr><td>4.2.1</td><td>Les données d'entraînement et de test</td><td>59</td></tr><tr><td>4.2.2</td><td>Pré-traitement du signal</td><td>61</td></tr><tr><td>4.2.3</td><td>La segmentation des données</td><td>63</td></tr><tr><td>4.2.4</td><td>La reconnaissance des activités</td><td>65</td></tr><tr><td>4.2.5</td><td>Analyse des résultats et comparaison avec d'autres approches</td><td>71</td></tr><tr><td>4.2.6</td><td>Les mesures d'évaluations</td><td>72</td></tr><tr><td>4.2.7</td><td>Les résultats expérimentaux</td><td>73</td></tr><tr><td>4.3</td><td>Conclusion</td><td>79</td></tr><tr><td colspan="2">CHAPITRE 5 : CONCLUSION</td><td>81</td></tr><tr><td colspan="2">BIBLIOGRAPHIE</td><td>84</td></tr></table>
LISTE DES TABLEAUX

<table><tr><td>2.I</td><td>Comparatif des approches de reconnaissance d'activités</td><td>35</td></tr><tr><td>2.II</td><td>Comparatif des approches de détection des valeurs aberrantes</td><td>35</td></tr><tr><td>4.I</td><td>Exemple d'activités normales et anormales</td><td>71</td></tr><tr><td>4.II</td><td>Matrice de confusion</td><td>72</td></tr><tr><td>4.III</td><td>Les valeurs ASR avec les différents algorithmes en utilisant différents nombres de traces d'entraînement</td><td>77</td></tr><tr><td>4.IV</td><td>Comparaison des différentes méthodes de classification dans la reconnaissance d'activités</td><td>79</td></tr></table>
LISTE DES FIGURES

<table>
  <tbody>
    <tr>
      <td>2.1</td>
      <td>Une centrale inertielle contient un accéléromètre, un magnétomètre et un gyroscope [61]</td>
      <td>10</td>
    </tr>
    <tr>
      <td>2.2</td>
      <td>Exemple de placements de capteurs sur le corps humain</td>
      <td>12</td>
    </tr>
    <tr>
      <td>2.3</td>
      <td>Exemple d'un algorithme hiérarchique</td>
      <td>16</td>
    </tr>
    <tr>
      <td>2.4</td>
      <td>Exemple illustrant la notion de densité</td>
      <td>16</td>
    </tr>
    <tr>
      <td>2.5</td>
      <td>Exemple d'un algorithme hiérarchique [13]</td>
      <td>17</td>
    </tr>
    <tr>
      <td>2.6</td>
      <td>Une partie de la topologie d'un MMC qui est utilisé afin dans la reconnaissance des mots [29]</td>
      <td>18</td>
    </tr>
    <tr>
      <td>2.7</td>
      <td>Adaptation bayésienne des données proposée par Allen [1]</td>
      <td>21</td>
    </tr>
    <tr>
      <td>2.8</td>
      <td>Représentation graphique d'une chaîne de Markov à cinq états : Les nœuds sont les états de la chaîne, les arcs orientés entre les nœuds sont les transitions d'un état à un autre [16]</td>
      <td>24</td>
    </tr>
    <tr>
      <td>2.9</td>
      <td>Réseaux hiérarchiques des capteurs d'observation [35]</td>
      <td>27</td>
    </tr>
    <tr>
      <td>2.10</td>
      <td>Graphe des transitions entre les positions statiques [35]</td>
      <td>27</td>
    </tr>
    <tr>
      <td>2.11</td>
      <td>La Plateforme eWatch [3]</td>
      <td>28</td>
    </tr>
    <tr>
      <td>2.12</td>
      <td>Itérations successives de l'algorithme k-plus proches voisins [66]</td>
      <td>29</td>
    </tr>
    <tr>
      <td>2.13</td>
      <td>Exemple de valeurs aberrantes [5]</td>
      <td>31</td>
    </tr>
    <tr>
      <td>2.14</td>
      <td>Exemple d'une répartition de données [12]</td>
      <td>32</td>
    </tr>
    <tr>
      <td>2.15</td>
      <td>Illustration de l'algorithme LOF [12]</td>
      <td>33</td>
    </tr>
    <tr>
      <td>3.1</td>
      <td>Architecture de la solution proposée</td>
      <td>39</td>
    </tr>
    <tr>
      <td>3.2</td>
      <td>Machines à vecteurs de support à une classe avec deux paramètres différents [82]</td>
      <td>46</td>
    </tr>
    <tr>
      <td>3.3</td>
      <td>Exemple de données non linéairement séparables</td>
      <td>48</td>
    </tr>
    <tr>
      <td>4.1</td>
      <td>Coupe du casque instrumenté de sécurité [58]</td>
      <td>55</td>
    </tr>
    <tr>
      <td>4.2</td>
      <td>Semelle instrumentée [63]</td>
      <td>56</td>
    </tr>
    <tr>
      <td>4.3</td>
      <td>Schéma illustrant l'architecture du matériel et le fonctionnement du casque et de la semelle instrumentés [4]</td>
      <td>57</td>
    </tr>
    <tr>
      <td>4.4</td>
      <td>Architecture du système proposé</td>
      <td>58</td>
    </tr>
    <tr>
      <td>4.5</td>
      <td>Diagramme du processus de la collecte des données</td>
      <td>60</td>
    </tr>
    <tr>
      <td>4.6</td>
      <td>Signal normalisé des sorties de l'accéléromètre pour six activités successives</td>
      <td>63</td>
    </tr>
    <tr>
      <td>4.7</td>
      <td>Taux d'erreur de segmentation en fonction du nombre d'activités</td>
      <td>64</td>
    </tr>
    <tr>
      <td>4.8</td>
      <td>Temps de la segmentation en fonction des nombres d'activités</td>
      <td>65</td>
    </tr>
    <tr>
      <td>4.9</td>
      <td>Exemple de scénario 1 des activités</td>
      <td>66</td>
    </tr>
    <tr>
      <td>4.10</td>
      <td>Pourcentage d'erreur de classification en fonction du nombre d'exemples de données du premier scénario</td>
      <td>67</td>
    </tr>
    <tr>
      <td>4.11</td>
      <td>Exemple de scénario d'activité 2</td>
      <td>68</td>
    </tr>
  </tbody>
</table>
<table><tr><td>4.12</td><td>Pourcentage d'erreur de classification en fonction du nombre d'exemples de données du deuxième scénario</td><td>69</td></tr><tr><td>4.13</td><td>Exemple de scénario d'activité 3</td><td>70</td></tr><tr><td>4.14</td><td>Pourcentage d'erreur de classification en fonction du nombre d'exemples de données du troisième scénario</td><td>70</td></tr><tr><td>4.15</td><td>Comparaison du taux de détection et du taux de fausses alertes avec 209 traces normales d'entraînement.</td><td>75</td></tr><tr><td>4.16</td><td>Comparaison du taux de détection et du taux de fausses alertes avec 104 traces normales d'entraînement.</td><td>76</td></tr><tr><td>4.17</td><td>Comparaison du taux de détection et du taux de fausses alertes avec 52 traces normales d'entraînement.</td><td>77</td></tr><tr><td>4.18</td><td>Pourcentage de l'erreur de classification en fonction du nombre d'activités</td><td>78</td></tr></table>

<table><tr><td>I.1</td><td>L'approbation éthique accordée par le Comité d'éthique de la recherche de l'Université du Québec à Chicoutimi (UQAC)</td><td>xii</td></tr></table>
LISTE DES ANNEXES

Annexe I : Approbation éthique .................... xii
Acronymes

MVS Machine à vecteurs de support

CSST Commission de la santé et de la sécurité du travail

IRSST Institut de recherche Robert-Sauvé en santé et en sécurité du travail

MMC Modèles de Markov cachés

RBD Réseaux bayésiens dynamiques

MMG Modèle de mélange gaussienne

ADL Analyse discriminante linéaire

RNNL Régression à noyau non-linéaire

RLMV Régression non-linéaire utilisant le maximum de vraisemblance

ASR Aire en dessous de la courbe ROC

ROC La fonction d'efficacité du récepteur (de l'anglais receiver operating characteristic)

MLLR Régression linéaire utilisant le maximum de vraisemblance
# CHAPITRE 1

## INTRODUCTION

### 1.1 Contexte

Le travail sous sa forme économique est une activité humaine permettant la production de services ou de biens en échange d'une prestation salariale. Cette activité peut être sujette à des risques d'accident dans le cas où elle serait potentiellement la source de danger pour l'humain. Ces accidents du travail ont des conséquences fâcheuses sur de nombreux facteurs aussi bien économiques qu'humains. Afin de maximiser la productivité, chaque compagnie doit avoir un plan d'ordonnancement des activités de production. Néanmoins, un plan efficace est un processus complexe couvrant un large ensemble d'activités permettant d'assurer que le matériel, l'équipement et les ressources humaines soient disponibles. En effet, mettre à place un plan efficace comprend la détermination des étapes de production d'un produit. Il incorpore les temps moyens de chaque tâches, l'ordre dans lequel s'exécute les tâches. Ces dernières sont nécessaires et antérieures à une autre tâche. Il permet d'identifier les pertes (temporelles, socio-économiques, etc.) afin d'accélérer les processus et faire en sorte qu'ils soient plus rentables pour l'entreprise.

Dans ce travail de recherche, nous allons nous concentrer sur certains types d'activités pouvant se retrouver dans la production industrielle sur une chaîne de montage et lors de
la manutention de charges.

De ce fait les risques d'accidents encourus par les opérateurs sont de deux types :

* les blessures physiques : dues à un évènement soudain résultant d'un effort soutenu ou inhabituel et

* les troubles musculo-squelettiques : désignent un ensemble d'atteintes douloureuses des muscles, des tendons et des nerfs (par exemple : le syndrome du canal carpien, la tendinite, le syndrome du défilé thoraco-brachial et le syndrome de la tension cervicale)<fnref n="1" />.

Afin de réduire l'occurrence de ces accidents liés aux activités de production, des mécanismes et des systèmes doivent être mis en œuvre afin de détecter des anomalies pouvant conduire à ces accidents.

## 1.2 Problématique

Ainsi, une étude récente de la CSST [15] révèle qu'en 2013, au Québec, 83,458 travailleurs ont été victimes d'un accident du travail et que 63 travailleurs sont décédés à la suite de cet accident. En prenant en compte les secteurs d'activités professionnelles et industriels (la fabrication, les services miniers, la construction, etc.) qui nous intéressent, cela représente plus de 35% des accidents au travail sur l'ensemble de l'activité économique au Québec, soit environ 30,000 accidents au travail en 2015[15]. Les conséquences de ces accidents sont souvent graves et irréversibles.

<footnote n="1">¹Tel que défini par le centre Canadien d'hygiène et de sécurité du travail.</footnote>
En effet, ils peuvent entrainer des séquelles aussi bien physiques que psychologiques.

De plus, ils entrainent des pertes, car, d'après l'IRSST, les accidents du travail coûtent 4.6 milliards de dollars annuellement aux contribuables québécois et cela représente 1.5% du produit intérieur brut québécois.

## 1.3 Objectifs

Ce constat lance un signal d'alarme sur le besoin de mettre en place des moyens plus efficaces de prévention de ces accidents. Cependant, pour qu'une solution soit la plus effective possible, elle doit agir en particulier sur le facteur humain (fatigue, stress, mauvaise posture, etc.).

Ainsi, nous nous intéressons, dans ces travaux de recherche, à la prévention d'accidents au travail. Pour cela, nous devons, à tout moment de l'exécution d'une tâche, évaluer un éventuel risque d'accident et en avertir la personne. À ce titre, nous allons utiliser des vêtements intelligents, c'est-à-dire des vêtements sur lesquels des capteurs ont été disposés. Ces capteurs sont capables de mesurer plusieurs données telles que la position, l'accélération, l'activité électrique du cerveau, etc. Par conséquent, l'objectif directeur de ces travaux de recherche, est de démontrer qu'à l'aide de ces vêtements, portés par des opérateurs, il est possible d'évaluer les risques pouvant entrainer un accident. La méthode d'avertissement de l'opérateur ne sera cependant pas couverte par nos travaux de recherche.

Les travaux de recherche s'inspirent d'autres domaines tels que la détection d'at-
taques terroristes dans des zones de haute sécurité, où les mouvements des individus présents dans la zone sont surveillés grâce à des capteurs de sécurité. L'utilisation de capteurs intelligents portables est retrouvée aussi dans le domaine médical, où des patients atteints par des maladies cognitives sont placés dans des habitats intelligents afin de maintenir leur qualité de vie et pour préserver leur sécurité et leur autonomie. Ces modèles arrivent à prédire le type d'activité d'un utilisateur en se basant sur des traces normales en utilisant des modèles de Markov cachés (MMC) et des réseaux bayésiens dynamiques (RBD), par exemple [11].

Au lieu de nous intéresser à la détection d'activités normales d'une personne, nous allons plutôt nous orienter vers le chemin inverse. La nature des données et des activités que nous voulons détecter nous imposent ce choix. Nous allons expliciter cela par la suite. Grâce à des vêtements intelligents, nous allons détecter les activités potentielle-ment dangereuses ou des transitions dans une séquence d'activités qui peuvent influencer la santé d'une personne.

Les méthodes conventionnelles pour la protection des travailleurs sont souvent sta-tiques et passives. Comme exemple, les applications dans [20], où la variation du champ électrique est utilisée afin de détecter la présence d'une personne dans un milieu indus-triel. Par contre, les travaux de recherche de ce mémoire utilisent des méthodes en temps réel pour estimer l'intention du travailleur.
## 1.4 Présentation du mémoire

Lors de la détection d'une activité anormale, une assistance en temps réel est utilisée afin de prévenir un risque d'accident. Afin d'y arriver, des algorithmes temps-réels doivent être mis en œuvre pouvant procéder au suivi des opérateurs. Ce système doit être non-intrusif et non-invasif. Il doit être capable de suivre les activités des opérateurs à tout moment.

Un dispositif efficace pouvant effectuer cette tâche est un équipement de protection individuel tel qu'un casque de sécurité intelligent ou une semelle instrumentée. Ainsi, un vêtement intelligent est un vêtement utilisant des capteurs pour collecter des données physiques du travailleur et qui est capable de les traiter de manière automatique.

En somme, nous nous efforcerons à analyser ces volets au travers les chapitres de ce mémoire. Pour ce faire, ce document est séparé de la manière suivante. Le deuxième chapitre aborde de manière détaillée l'état de l'art en sur les techniques de la détection d'activités humaines. Le troisième chapitre va présenter la stratégie qu'on a suivie afin de mettre en place l'approche utilisée qui est celle de créer des modèles d'activités anormales à partir d'un modèle général d'activités normales. Enfin, nous allons indiquer la méthodologie proposée permettant de récolter les résultats à travers les expérimentations qui serviront à valider l'approche adoptée. Cette approche va tout d'abord segmenter le flux de données afin de le diviser en activités. Ces activités seront par la suite traitées par un algorithme en deux étapes. La première étape est de filtrer les activités, c'est à dire de ne garder que les activités suspectes. La deuxième étape est de générer un modèle des
activités normales général qui va servir à générer des modèles d'activités anormales en
utilisant une régression non-linéaire gaussienne.

Ce mémoire présente une contribution dans le domaine industriel par l'utilisation des
vêtements de protection individuelle intelligents dans les programmes de gestion des
risques sur la santé et la sécurité des travailleurs.
# CHAPITRE 2

## DÉTECTION D'ACTIVITÉS ANORMALES

La sécurité des travailleurs est une priorité dans l'industrie. Habituellement, les machines sont sécurisées et des procédures de cadenassage sont utilisées. Dans ces travaux, nous aborderons plutôt la sécurisation du travailleur afin de l'avertir lors de la détection d'une action ayant un risque potentiel sur sa sécurité.

Pour fournir une assistance en temps réel à l'humain, notre problème doit être décomposé en deux volets. En premier lieu, il est nécessaire de détecter l'activité que fait le travailleur. Cependant, cette détection n'est pas suffisante : l'action effectuée par l'humain doit être évaluée et classée. Par exemple, sa tâche peut durer plus longtemps que prévu ou il pourrait regarder dans une direction pouvant mener à une collision avec une machine. C'est pourquoi, dans un second temps, les activités détectées doivent être classées selon qu'elles soient normales ou anormales pour qu'ensuite la personne soit rapidement avertie du risque détecté.

Ainsi dans ce chapitre, les travaux importants liés au domaine d'étude de la détection et de la classification des activités vont être présentés. En particulier, nous explorons les dernières avancées sur la détection des activités et sur les modèles de classification. Ensuite, nous traitons de différents travaux, qui grâce à des schémas de détection d'anormales, arrivent à classifier les activités. Pour finir, les problèmes liés aux données déséquilibrées et aux coûts d'apprentissage du modèle utilisé vont être abordés.
## 2.1 L'erreur humaine

L'erreur humaine a fait l'objet de recherche dans la plupart des domaines comme les industries aéronautiques et aérospatiale. De plus, des recherches sur la détection de ces erreurs se sont retrouvées surtout dans un contexte d'intelligence ambiante dans les habi-tats intelligents. C'est un terme faisant parti du langage quotidien et qui est intuitivement compris. Cependant, chacun peut l'interpréter à sa façon selon le domaine d'étude. Par exemple, elle peut être la conséquence d'une action humaine, le facteur causant un acci-dent ou une action délibérée. Nous allons par la suite établir une définition conforme à nos travaux de la définition de l'erreur humaine afin de mieux le détecter et ainsi mieux le prévenir. Parmi les définitions proposées dans la littérature, celles présentées dans [69] et [67] sont les plus appropriées pour nos travaux de recherche. D'après [69], l'erreur est :

* une action qui n'est pas intentionnelle;

* une exception dans un ensemble de règles et

* une action qui peut conduire une tâche ou un système en dehors de ses limites acceptables.

Les travaux dans [67] ont définit l'erreur humaine comme toutes activités mentales ou physiques conduisant à un résultat non-désiré ou non-acceptable. Afin de mieux différen-tier ce type d'erreur dans notre domaine de recherche, les caractéristiques suivantes, pré-sentées par [28], permettent de distinguer ce concept des autres définitions qui peuvent
être similaires ou reliés. On limite le contexte de de l'erreur humaine dans notre domaine d'étude comme suit :

1. Une action effectuée par un humain : l'évaluation de l'erreur humaine doit commencer avec une série d'actions effectuées.

2. L'action se produit à l'interface entre un humain et un autre système : un point critique concernant la définition de l'erreur humaine est l'interaction entre un humain et un autre système tel qu'un humain, une machine ou l'environnement.

3. L'action est volontaire et délibérée : une action qui n'a pas été effectuée vo-lontairement n'est pas une erreur humaine. Cela sépare l'erreur humaine de la limitation humaine. Les actions effectuées hors des capacités mentale, physique ou physiologique de l'humain ne sont pas des erreurs humaines.

4. L'action dépasse les limites et les normes de sécurité : les normes de sécurité et la tolérance des systèmes sont définies par le système avec lequel l'humain est en interaction.

## 2.2 Instruments de mesure des paramètres : utilisation d'accéléromètres

Afin d'améliorer la détection et la reconnaissance d'activités, les travaux de recherche antérieurs dans ce domaine ont permis le développement de plusieurs méthodes d'acquisitions de mesures de paramètres liés à la détection d'activités. Les avancées technologiques ont facilité la mise en place de nouveaux moyens permettant la mesure
de ces données. Nous allons dans la prochaine section introduire quelques travaux présentant différentes technologies. Ces dernières auront pour but de nous aider à mettre en place le meilleur dispositif pouvant faire partie de notre solution.

<figure><img src="image_1.png" /><figcaption>Figure 2.1 – Une centrale inertielle contient un accéléromètre, un magnétomètre et un gyroscope [61]</figcaption></figure>

Les capteurs inertiels sont des capteurs capable de calculer une accélération, une vitesse angulaire et le champs magnétique terrestre suivant les trois axes d'un repère cartésien. Le premier capteur 2.1a fait référence à un accéléromètre, le deuxième à un
gyroscope et enfin un magnétomètre (souvent accompagné d'un capteur de température et d'un capteur de pression pour effectuer une calibration). L'accélération peut être mesurée électriquement suivant le déplacement d'une masse. Les types les plus communs d'accéléromètre sont de type piézorésistance, piézoréléctrique et capacitif différentiel [72], [24].

La figure 2.1 met en avant :

1. un axe d'un accéléromètre où l'accélération de la masse *m* est proportionnelle à la flexion de la suspension *k*;

2. un axe d'un gyroscope où le capteur mesure la déviation de la masse en raison de l'accélération de Coriolis $V_{gyro} = 2k_c|\Omega \times \nu|$ et

3. un axe d'un magnétomètre où la direction est égale à la somme de l'angle de déclinaison magnétique et le cap magnétique $\psi = \delta + \psi_m$.

Le chapitre 4 présentera la conception des vêtements de protection individuelle incluant cette centrale inertielle afin de réaliser les travaux de recherche présentés dans ce mémoire.

### 2.2.1 Placement des capteurs

Le placement des capteurs sur des vêtements intelligents font référence aux emplacements où les capteurs sont placés, et la manière dont les capteurs sont attachés à ces locations. Ces capteurs peuvent être placés sur différentes parties du corps humain où les
mouvements sont étudiés. Les emplacements de capteurs les plus souvent utilisés sont le sternum [59], le bas du dos [56] et la taille [32] comme on peut le voir sur la figure 2.2.

<figure><img src="image_2.png" /><figcaption>(a) Des capteurs placés au niveau de la taille, du genou et au dos [82]</figcaption></figure>

<figure><img src="image_3.png" /><figcaption>(b) Des capteurs placés au niveau du sternum [59]</figcaption></figure>

<caption>Figure 2.2 – Exemple de placements de capteurs sur le corps humain</caption>

La plupart des études ont adopté des capteurs placés au niveau de la taille [18] car c'est l'emplacement le plus proche du centre de masse du corps humain. Cependant, les emplacements précédemment cités ne sont pas adaptés pour notre contexte qui est celui d'un opérateur dans un milieu industriel. En effet, des capteurs placés au niveau de la taille, du torse ou du bas du dos peuvent mesurer des activités liés à la marche et la posture, mais ne peuvent pas mesurer des activités liées aux actions de manutention et d'assemblage. Ces emplacements sont plus adaptés à l'étude des mouvements des personnes âgées dont la mobilité est réduite. Elle servent aussi à mesurer l'équilibre lors de la marche [45] [57]. D'autres études se sont penchées sur le fait de porter des capteurs au niveau de la tête et des pieds. La raison de cet emplacement est basé sur le fait qu'il est plus facile de détecter des activités anormales en calculant les accélérations dans ces parties du corps humain car elle donneent plus d'information sur quoi porte l'intention et
la concentration d'un opérateur pendant une opération de manutention ou d'assemblage
en posture debout.

2.2.2 Classification des postures et des mouvements

La classification des mouvements en utilisant des méthodologies basées sur l'ac-
céléromètre a été largement étudiée. Les approches utilisées peuvent se baser sur des
méthodes à seuils ou des schémas statistiques analysant les composantes principales.
Les approches avec des seuils prennent avantage des données récoltées à propos du
mouvement pour effectuer la classification. Elles utilisent des algorithmes à structures
hiérarchiques (par exemple les arbres de décision) pour faire la distinction entre les acti-
vités. Un ensemble de seuils est dérivé empiriquement pour effectuer la classification de
chaque classe. Kiani et al [37] présente une approche se basant sur un arbre de décision
hiérarchique qui détecte automatiquement les mouvements et les classifie. Mathie et al
[53] adopte un arbre binaire qui classifie les transitions posturales, les chutes, la marche
et d'autres mouvements en utilisant un accéléromètre tri-axial. Cependant, les approches
utilisant un seul accéléromètre ont des difficultés à distinguer entre les postures debout
et assises. D'autres études ont utilisé deux ou plusieurs capteurs placés sur différentes
parties du corps afin de distinguer entre les positions debout et assises [47].

La classification du mouvement qui se basent sur des méthodes statistiques utilisent
les procédures d'apprentissage automatique. Elles associent les observations (caracté-
ristiques) du mouvement. Les algorithmes les plus utilisés [18] par ces méthodes sont
les *k*-voisins les plus proches (kNN) [30], les machines à vecteurs de support (MVS) [26], les Classification naïve bayésienne [46], Modèle de mélanges gaussiens (MMG) [46] et les modèles de Markov cachés (MMC) [51]. L'approche naïve de Bayes détermine les activités suivant la probabilité associée au signal du modèle des activités. Dans l'approche MMG, la fonction de vraisemblance est une distribution gaussienne typique.

Les poids et les probabilités qui décrivent les probabilités sont obtenus grâce à l'algorithmie espérance-maximisation. Les transitions entre les activités sont décrites par une chaine de Markov qui représente la vraisemblance (probabilité) des transitions entre les activités possibles (états). Le MMC sert à déterminer les états inconnus à tous moments suivant les caractéristiques de l'activité observée. Après l'entraînement du MMC par les données d'entraînement, il détermine les transitions possibles entre les activités.

Plusieurs approches utilisent l'algorithme DTW (dynamic Time Wrapping) [71]. C'est une méthode qui mesure la similarité entre deux séries temporelles pour les synchroniser. DTW a souvent été utilisé dans le but de trouver l'alignement optimal de deux signaux. Il calcule la distance en chaque paire de points. Puis, il utilise ces distances pour calculer une matrice de distance cumulative et il trouve le chemin le moins couteux. Plussieurs applications exploitent cet algorithme. La plus connue est la reconnaissance de parole
## 2.3 Analyse et segmentation des données

Puisque nous travaillerons essentiellement avec une centrale inertielle qui produit une séquence de $n$ donnée $D = \{o_1, o_2, ..., o_n\}$, nous devons générer des groupes de données (partitions). Le processus de partitionnement selon [9] de $D$ en $C = \{C_1, C_2, ..., C_k\}$ suivant une mesure de similarité est appelé segmentation, où $C_i \subseteq D$, $(i = 1, 2, ..., k)$ avec $\bigcap_{i=1}^{k} C_i = \emptyset$ et $\bigcup_{i=1}^{k} C_i = D$. Les $C_i$ sont appelé groupes (clusters).

Les algorithmes de segmentation (partitionnement) peuvent être divisés en cinq familles majeurs [27] : le partitionnement, hiérarchique, graphique, les approches basées sur la densité et les approches basées sur les modèles.

En ce qui concerne les algorithmes de partitionnement, la similarité des groupes est mesurée en calculant la valeur moyenne des objets de chaque groupe, e.g. K-Means [49] et K-Medoid [75]. En particulier, récemment l'algorithme CLARANS [60] a été développé pour améliorer l'algorithme K-Medoid. Les algorithmes hiérarchiques dont CURE [25] et BIRCH [83], produisent un ensemble de groupes imbriqués et organisés en un arbre hiérarchique. Chaque nœud de l'arbre représente une classe comme cela est illustré dans la figure 2.3.

Les algorithmes utilisant des méthodes graphiques en particulier les cartes auto-adaptives de Kohonen [40] étudient la répartition des données dans un espace à grande dimension. Ceci s'effectue en discrétisant l'espace et en affectant à chaque groupe de données un point significatif appelé *vecteur référant*.

Les algorithmes se basant sur la densité utilise le fait que les objets qui forment une
<figure><img src="image_4.png" /><figcaption>Figure 2.3 – Exemple d’un algorithme hiérarchique</figcaption></figure>

région dense doivent être groupés ensemble. Ils utilisent une valeur limite afin de déterminer les régions denses en séparant les zones à forte densité de celles à faible densité.

La figure 2.4 permet de visualiser la notion de densité. Si on utilise une mesure de distance, par exemple la distance Euclidienne, le point A et le point X doivent appartenir à la même classe d'objets car $d(A, X) < d(B, X)$, sauf que X appartient à la classe bleue.

<figure><img src="image_5.png" /><figcaption>Figure 2.4 – Exemple illustrant la notion de densité</figcaption></figure>

En particulier, DBSCAN [19] et OPTICS [2] sont des exemples d’algorithmes utilisant cette approche. La figure 2.5 permet de mettre en avant le fonctionnement de l’algo-
rithme DBSCAN qui va classer les groupes de données en fonction du nombre de voisins dont dispose cette partition. C'est à dire pour qu'un objet appartienne à une certaine classe, il doit avoir comme voisins un certain nombre d'objet qui appartiennent à cette classe.

<figure><img src="image_6.png" /><figcaption>Figure 2.5 – Exemple d'un algorithme hiérarchique [13]</figcaption></figure>

En ce qui concerne les approches se basant sur les modèles, un modèle est dérivé pour chaque partitions. L'idée est de trouver le meilleur ajustement de chaque modèle. Ils sont souvent basés sur l'hypothèse que les données sont générées à partir d'une mixture d'une distribution de probabilité. On peut citer comme exemple l'algorithme COBWEB [21] et les modèles de Markov cachés (MMC) qui seront détaillés. Dans plusieurs applications des MMC (par exemple la reconnaissance de la parole, la biologie moléculaire ou la reconnaissance d'activités), chaque état caché est associé à une signification particulière (par exemple les mots dans la reconnaissance de la parole). À chaque état correspond un label de classification et plusieurs états sont regroupés ensemble dans un seul label comme cela est illustré dans la figure 2.6. À chaque séquence d'états correspond une séquence de labels de classification (par exemple : mots, lettres) Il existe de nombreux
<figure><img src="image_7.png" /><figcaption>Figure 2.6 – Une partie de la topologie d’un MMC qui est utilisé afin dans la reconnaissance des mots [29]</figcaption></figure>

travaux de recherche qui se sont attardés sur la problématique de la segmentation des données. Hearst [29] a développé l’algorithme *TextTiling* qui utilise une mesure de similarité des mots entre les phrases afin de séparer des paragraphes entre lesquels le sujet change. Dans [8] Bengio *et al*, ils ont introduit une architecture récurrente ayant une structure modulaire et une procédure d’entraînement basé sur l’algorithme EM. Le modèle résultant a des similarités avec les modèles de Markov. Dans [33], les auteurs ont utilisé un réseau de neurones prédictif et modulaire afin de résoudre le problème de la segmentation des données dépendante du temps. La méthode consiste à l’application de deux algorithmes. Le premier est responsable de l’identification des caractéristiques les plus importantes en fonction du temps. De cette manière, un prédicateur est généré pour chaque caractéristique. Le deuxième est un algorithme de classification qui va attribuer un label à chaque donnée en utilisant une fonction crédit pour chaque label. Cette fonction se base sur la compétition entre les prédicateurs respectifs. Les recherches menées dans [44] ont permis de présenter un framework capable d’analyser des séries tempo-
rels de systèmes dynamiques non-stationnaire opérant dans différents états. La méthode détecte les changement d'états. Elle utilise l'union des systèmes experts et des modèles de Markov généralisés. Par la suite, nous allons présenter la méthode de Kohlmorgen et al.[38] qui a été utilisée dans notre système. Elle permet de diviser les données en blocs consécutifs. Toutes les données appartenant à la même partition doivent être originaire de la même distribution. Nous avons fait le choix d'utiliser cette option car elle est différente à deux égards. Premièrement, la segmentation ne dépend pas de la prédictibilité du système. En revanche, la méthode consiste à estimer la densité de la distribution des données. Ceci est une amélioration des systèmes dans lesquels les données sont difficiles à prédire, par exemple dans le cas de données physiologiques [39] ou des données financières. Le deuxième avantage de cette méthode est qu'elle est temps réel. Un flux de données entrant est analysé de façon incrémentielle tout en gardant une limite des ressources de calcul utilisé. C'est à dire que l'algorithme est capable de segmenter perpétuellement des flux de données avec une taille de mémoire et des ressources CPU données. Le principale avantage dans le fait d'effectuer une analyse en temps réel est le gain de temps car contrairement aux méthodes citées ci-dessus, cette approche n'est pas supervisée. Au lieu d'effectuer une adaptation itérative des paramètres, l'algorithme optimise la segmentation à la volée grâce à la programmation dynamique [7], qui résulte en une correction automatique des segments évalués précédemment. Nous allons dans la méthodologie 3 détaillé l'algorithme utilisé afin de répondre aux besoins de la segmentation des données.
## 2.4 La reconnaissance d'activités

La reconnaissance d'activités a retenu l'intérêt des chercheurs dans le domaine de l'intelligence artificielle et de l'informatique ubiquitaire. Dû à la disponibilité croissante et à l'avancement technologique des capteurs sans fil, nous pouvons bénéficier ainsi de plus d'espace de stockage, de mesures plus précises et d'une capacité de calcul plus importante. Ainsi, dans les prochaines sections, nous allons présenter différentes approches proposées dans la littérature et ainsi pouvoir adopter l'approche la plus adéquate à notre problème.

### 2.4.1 Approche utilisant les règles

Une des approches proposées est d'utiliser des règles facilement compréhensibles par l'humain permettant de décrire un comportement normal [80]. Cette approche s'avère particulièrement intéressante, car elle offre un mécanisme permettant de décrire les activités anormales grâce à des exceptions. Cette méthode bénéficie du fait que la représentation des connaissances se basant sur un système de règles et d'exceptions peut être facilement interprétée par des experts du domaine. Cette méthode a aussi été utilisée dans les travaux de [54] et [32], où un seul accéléromètre tri-axial a été utilisé et évolué afin de reconnaître des activités physiques quotidiennes. Le principal désavantage de cette méthode est son système basé sur les règles. La production de ces règles est un processus couteux en terme de temps d'exécution. Allen et al [1] ont proposé une amélioration en utilisant une approche basée sur les MMG. Cette approche plus géné-
rale favorise une amélioration la reconnaissance d'activités. La figure 2.7 nous permet de mieux comprendre l'algorithme proposée par cette méthode où des MMG sont en premier lieu entraînés sur de multiple participants en utilisant l'algorithme EM et puis adapté à un sujet spécifique en utilisant une adaptation Bayésienne. Cette méthode permet de garder des valeurs spécifiques à chaque personne assez proche et ainsi bénéficier de la robustesse et de la généralité offerte par les données d'entraînement.

L'inconvénient de cette technique est qu'elle requiert d'entraîner séparément un MMG

<figure><img src="image_8.png" /><figcaption>Figure 2.7 – Adaptation bayésienne des données proposée par Allen [1]</figcaption></figure>

pour chaque activité physique. De plus, les transitions de chaque action doit être recon-
nues afin qu'une classification soit possible dans notre cas d'étude. Par exemple, la tran-
sition entre une position debout et une position assise. Le taux de classification correcte
de cette méthode dans ce cas particulier atteint 78% [36]. D'où une certaine difficulté
lors de la distinction de ces activités.
## 2.4.2 Approches basées sur des plans de reconnaissance

Une autre approche est d'utiliser un plan de reconnaissance basé sur un modèle pour une application de sécurité et de surveillance. Par exemple, dans [31], un plan basé sur un modèle est utilisé afin de reconnaitre et de classer les motifs potentiels des actions pouvant conduire à une attaque terroriste. L'approche crée un ensemble de motifs représentatifs en utilisant des cadriels de logique tirés du domaine de la planification dans l'intelligence artificielle. Ces modèles sont stockés dans une librairie qui contient une description des activités structurées hiérarchiquement avec des spécifications sur les conditions sous lesquelles elles peuvent être combinées.

Un modèle contient plusieurs variables décrivant différents paramètres tels que la cible ou l'objectif d'une tâche. Cette librairie forme une description qui permet de produire un ensemble de plans pouvant expliquer les observations afin de les comparer avec les actions observées. Cependant, comme cette méthode nécessite la définition de motifs d'action et de plans a priori, ce modèle ne peut pas être appliqué dans notre cas, car les transitions entre les activités anormaux dans notre problème pouvant se produire ne sont pas connues à l'avance, elles doivent être apprises et détectées lors de leurs apparitions.

## 2.4.3 Approches basées sur les modèles

Durant les dernières décennies, de nombreuses approches basées sur des modèles ont été proposées, entre autres les modèles de Markov cachés (MMC) et les réseaux bayésiens dynamiques (RBD) permettent la reconnaissance d'activités. Lester *et al* [42] ont
développé et analysé une approche hybride discriminative et générative pour classifier les activités. Cette méthode extrait en premier lieu les caractéristiques les plus utiles en utilisant une variation de l’algorithme AdaBoost proposé par [76] des données d’apprentissage. Grâce à ces caractéristiques, l’algorithme construit des MMC et des classeurs statiques entrainés sur ces données pouvant classer les activités.

### 2.4.3.1 Approches utilisant les machines de Markov cachées

Une possibilité d’approche permettant de solutionner notre problème sont les classifications séquentielles car une activité complexe (un scénario d’activité dans notre cas) est le résultat de l’enchaînement d’activités simples. Cela fait naturellement appel aux modèles de Markov de premier ordre. Ces modèles sont composés d’un nombre fini $Q$ d’états $S_i$, où chaque état représente une activité. L’évolution au cours du temps d’une chaîne de Markov de premier ordre suit les règles suivantes [52] :

* Le vecteur de probabilité de priorité $\pi$, de taille $(1 \times Q)$ est composé des probabilités $\pi_i$ de chaque état $S_i$ d’être l’état $X$ à $t_0$

$$ \pi_i = P[X(t_0) = S_i], \quad i = 1, \dots, Q \qquad (2.1) $$

* La matrice des probabilités de transitions (MPT) $\mathbf{A}$, de taille $(Q \times Q)$, où les éléments $a_{ij}$ sont les probabilités de transitions de l’état $S_i$ à l’instant $t_n$ à l’état $S_j$ à l’instant $t_{n+1}$. La transition des états est schématiquement expliqué dans la figure
2.8 pour une chaîne de Markov à six états :

$$a_{ij} = P[X(t_{n+1}) = S_j | X(t_n) = S_i], \quad i = 1, \dots, Q \quad (2.2)$$

On remarque ici le fait que :

$$a_{ij} \ge 0, \quad \sum_{j=1}^{Q} a_{ij} = 1 \quad (2.3)$$

<figure><img src="image_9.png" /><figcaption>Figure 2.8 – Représentation graphique d'une chaîne de Markov à cinq états : Les nœuds sont les états de la chaîne, les arcs orientés entre les nœuds sont les transitions d'un état à un autre [16]</figcaption></figure>

Les probabilités de priorités et de transitions sont nécessaires pour créer le Modèle de Markov Observable (MMO) (π, A) associées aux chaines de Markov peuvent être déterminées empiriquement en se basant sur les activités du sujet. Si la matrice des probabilités de transitions (MTP) et l'état courant sont connus alors l'état qui a la plus grande proba-
bilité d'être l'état suivant peut être déterminé. Dans un sens plus pratique, les états sont
cachés et seuls un processus de second niveau est observable. Ainsi, les sorties obser-
vables sont appelés émissions. Si on suppose que les émissions sont discrets, il existe un
alphabet Ω contenant un nombre W fini d'émissions possibles $Z_i, i = 1, \dots, W$. Le mo-
dèle statistique qui est nommé le modèle de Markov caché (MMC) requiert une matrice
stochastique $Q \times W$ contenant les probabilités $b_{ij}$ d'avoir une émission $Z_i$ à l'instant $t_n$
de l'état $S_i$ :

$$
b_{ij} = P[Z(t_n) = Z_j | X(t_n) = S_i] \quad \text{où} \quad b_{ij} \ge 0 \sum_{j=1}^{W} b_{ij} = 1 \quad (2.4)
$$

Finalement, un MMC est modélisé à partir d'un ensemble de paramètres $\lambda$ qui est com-
posé des probabilités de priorité, de transition et d'émission :

$$
\lambda = (\pi, A, B) \tag{2.5}
$$

En revanche, si les émissions sont continues, l'approche la plus commune [52] à ce
problème de modélisation des émissions continues est paramétrique. Une famille de dis-
tribution donnée est supposée pour les émissions. Ainsi, les paramètres associés à cette
famille sont utilisés afin de les représenter. Par exemple, pour un Modèle de Markov
caché continue (MMCc) à distribution Gaussienne, on a :

$$
b_j = \sum_{m=1}^{M} c_{jm} N(\mu_{jm}, \psi_{jm}), j = 1, \dots, Q \quad (2.6)
$$
Une distribution normale $N(\mu_{jm}, \psi_{jm})$ avec comme valeur moyenne $\mu_{jm}$, une matrice de covariance $\psi_{jm}$ et les paramètres de densité mélange $c_{jm}$ (loi mélange) [81] sont utilisés pour modéliser les émissions de chaque état de la chaîne. La modélisation d'un MMC requiert la résolution de trois problèmes majeurs.

En effet, étant donné une séquence d'observation $Z = [Z(t_1)Z(t_2)\dots Z(t_T)]$ et un modèle $\lambda$, nous avons les trois problèmes suivants à résoudre :

1. évaluer les probabilités conditionnelles $P(Z|\lambda)$;

2. évaluer la séquence d'états la plus probable $X = [X(t_1)X(t_2)\dots X(t_T)]$ occupée par le système et

3. identifier les paramètres du modèle $\lambda$.

Le premier problème est trivial à résoudre. L'algorithme de Viterbi est la solution la plus répandue du problème (2) et l'algorithme de Baum-Welch est populaire pour résoudre le problème (3) [64]. Dans [35], des accéléromètres et des microphones sont portés par une personne afin de détecter les activités journalières en combinant un MMC et une analyse discriminante linéaire (ADL). Ainsi, la reconnaissance se fait en trois étapes. Premièrement, les données captées par les instruments de mesure sont filtrées pour en extraire celles potentiellement intéressantes. Deuxièmement, ces données sont classifiées en utilisant un MMC et un ADL. Finalement combiner les résultats des deux approches en comparant leurs différents résultats pour obtenir une classification finale.

Dans les travaux proposées dans [35], les auteurs ont placés un réseau de capteurs sur
<figure><img src="image_10.png" /><figcaption>Figure 2.9 – Réseaux hiérarchiques des capteurs d'observation [35]</figcaption></figure>

une personne, comme montré dans la figure 2.9 permettant d'enregistrer l'ensemble de l'environnement sonores et les mouvements dans le but de la reconnaissances d'activités.

L'analyse des données et la représentation des activités d'une personne se fait grâce à des MMC. La figure 2.10 permet de mettre en avant un exemple de graphe d'activités représentant les transitions entre la marche, la position debout et la position assise.

<figure><img src="image_11.png" /><figcaption>Figure 2.10 – Graphe des transitions entre les positions statiques [35]</figcaption></figure>
### 2.4.3.2 Approches utilisant les réseaux bayésiens

Plusieurs approches se sont basées sur l'utilisation de la surveillance vidéo en utilisant, comme le propose [78], un réseau bayésien dynamique. Ces méthodes arrivent à identifier les activités anormales en les comparant à un modèle d'activités normales, mais dans la pratique, un seuil de détection reste difficile à déterminer. Un des désavantages liés à l'utilisation des méthodes qui se basent sur la vidéo est qu'ils sont très sensibles à la luminosité. Ils peuvent aussi induire à des ambiguïtés lorsque de multiples objets apparaissent dans le champ de vision de la caméra. Un autre désavantage consiste en l'intrusivité de la vidéo lors de son utilisation dans un milieu privé. Dans [3], des algorithmes utilisant les réseaux bayésiens ont été développés afin de détecter les activités physiques grâce à cinq accéléromètres placés sur différentes parties du corps (le coude, le poignet, la taille, le genou et la cheville). L'énergie moyenne, l'entropie dans le domaine fréquentiel et la corrélation de l'accélération sont calculées pour classifier les données utilisant ces caractéristiques. La corrélation est calculée entre chaque paire de données comme étant le ratio de la covariance et le produit de la déviation standard.

Récemment, une plateforme multi-capteurs nommé eWatch a été proposée pour l'identification des activités enregistrés dans une base de données [55]. La figure 2.11 permet de présenter le système qui peut être porté par l'utilisateur. Le système utilise plusieurs algorithmes de classification tels que les arbres de dé-

<figure><img src="image_12.png" /><figcaption>Figure 2.11 – La Plateforme eWatch [3]</figcaption></figure>
cision, les k-plus proches voisins (K-means) et les réseaux bayésiens.

Par exemple, les k-plus proches voisins sont utilisés dans Ravi et al. [66]. Leur instru-
ment collecte des données à partir d'un dispositif utilisant des accéléromètres porté par
un utilisateur dans la région pelvienne. Ils utilisent un accéléromètre capable de capter
des accélérations pouvant atteindre 4G avec une tolérance de 2%. Ce capteur, ensuite,
transmet ces données afin de les traiter et effectuer la reconnaissance. La figure 2.12
permet de visualiser les différentes étapes de l'algorithme k-plus proches voisins. On

<figure><img src="image_13.png" /><figcaption>Figure 2.12 – Itérations successives de l’algorithme k-plus proches voisins [66]</figcaption></figure>

remarque le déplacement du centre de gravité de chaque classe représenté dans la figure
2.12 avec une croix rouge et une croix bleue.

Cependant, les méthodes proposées ci-haut emploient un apprentissage supervisé pour
la reconnaissance des activités ce qui requiert une importante base de données néces-
saire pour l'entrainement. Dues à l'absence de données d'apprentissage des activités
anormales, ces méthodes ne peuvent être appliquées directement pour la détection des activités anormales.

### 2.4.4 Détections basées sur la durée de l'activité

Une autre approche, proposée dans [16] utilise des modèles de Markov caché à com-mutation pour représenter les activités d'un utilisateur et aboutir à la détection d'évène-ments anormaux. Cependant, cette méthode se concentre davantage sur un aspect plus subtil de la détection soit sur la durée des activités exécutées par l'opérateur plutôt qu'à leurs ordres ou à leurs natures.

## 2.5 La détection des valeurs aberrantes

Les valeurs aberrantes sont des observations qui sont très différentes des valeurs des données de la majorité des cas dans l'ensemble des données [5]. La figure 2.13 permet de représenter un exemple de valeurs aberrantes. Les données sont des valeurs aberrantes dans cet exemple, car elles se trouvent éloignées de la majorité des données représentées. Des problèmes similaires ont été résolus dans le domaine de la fouille de données et de l'apprentissage automatique où l'attention des chercheurs s'est portée sur la détection des valeurs aberrantes dans un nuage de points. Généralement, ces approches se divisent en deux familles : les approches basées sur les similarités [6] et les approches basées sur les modèles [41] [48].
<figure><img src="image_14.png" /><figcaption>Figure 2.13 – Exemple de valeurs aberrantes [5]</figcaption></figure>

### 2.5.1 Les approches basées sur les similarités

En ce qui concerne la première approche, le but principal est de déterminer la distance en chaque couple de points et d'identifier les valeurs aberrantes en examinant la distance des plus proches voisins. La méthode proposée par [65] se base sur le calcul d'une distance euclidienne des k plus proches voisins avec un point donné. Les points ayant les plus grandes distances ont les voisins les plus éparpillés et représentent des valeurs limites plus robustes que les points appartenant à des partitions denses. Cependant, l'utilisation de la distance euclidienne ne donne pas de résultats satisfaisants dans certains cas comme le montre [41]. Pour cette raison Mahalanobis [50] a proposé une distance permettant d'éviter ces scénarios en apportant une meilleure approche comparaée à la distance euclidienne.

Un autre exemple de l'utilisation de cette approche est proposé par Breunig [12]. L'idée principale de cette méthode est d'assigner à chaque valeur un facteur appelé *locallier factor* (LOF). Ce facteur correspond à un indice permettant de savoir si une donnée
est aberrante. Cette méthode, s'appuyant sur un algorithme de classification basé sur la
densité pour détecter les valeurs aberrantes localement, doit être paramétré par l'utili-
sateur qui doit fixer une valeur seuil de la distance entre les données. Cet algorithme
est efficace pour la détection des valeurs anormales dans les espaces multidimension-
nels. Le principe de base est de considérer que si les points voisins sont relativement
proches alors la donnée est normale sinon elle est classée comme anormale. L'avantage
de cette méthode est qu'elle peut traiter de large ensemble de données. Afin d'illustrer
cela, considérons l'exemple donné par la figure 2.14. Ce sont des données à deux di-

<figure><img src="image_15.png" /><figcaption>Figure 2.14 – Exemple d’une répartition de données [12]</figcaption></figure>

mensions réparties comme suit : deux classes d'objets C₁, C₂ et deux objets additionnels
considérés comme valeurs aberrantes o₁ et o₂. Dans cet exemple, C₂ forme une classe
plus dense que C₁. Cependant, la plupart des algorithmes basés sur les distances des va-
leurs aberrantes considère seulement o₁ comme valeur aberrante car pour chaque objet
a dans C₁, la distance entre q et ses plus proches voisins est plus grande que la distance
entre o₂ et C₂ (i.e., d(o₂, C₂)). L'algorithme proposé par [12] permet de régler ce pro-
blème en calculant un LOF pour chaque classe comme cela est montré dans la figure
2.15

Ces approches ne sont cependant pas robustes face aux bruits de mesures. Malheu-

<figure><img src="image_16.png" /><figcaption>Figure 2.15 – Illustration de l’algorithme LOF [12]</figcaption></figure>

reusement, le bruit est un phénomène électronique aléatoire qui se trouve dans tous les systèmes physiques mesurés [17].

L'une des raisons de la faiblesse de ces approches face aux bruits est, comme présentée dans [82], le fait de fixer un seuil approprié en particulier pour les données ayant une nature stochastique. Le signal mesuré par des capteurs faible-coûts peut varier grandement au cours du temps. Ainsi il est difficile de définir une mesure de la distance suffisamment robuste. Une autre limitation réside dans le fait que, dans notre problème, l'algorithme doit traiter les données en temps réel. Or, les modèles se basant sur la similarité doivent être entrainés pour être efficaces. En résumé, les modèles se basant sur les similarités ne représentent pas une solution viable à notre problème.
### 2.5.2 Les approches basées sur les modèles

Concernant les approches qui se basent sur les modèles, ces techniques caractérisent les données normales en utilisant des modèles de prédictions. Elles sont utilisés pour détecter les valeurs aberrantes qui dévient du modèle entrainé. Le modèle des machines à vecteurs de support à une classe (MVS) a été démontré empiriquement capable de détecter des valeurs aberrantes dans divers domaines [68]. Cette approche adopte une limite d'hyper-sphère dans l'espace des caractéristiques pour y inclure les données normales. Grâce à différents noyaux, l'espace des caractéristiques non-linéaires peut être transformé et ainsi utiliser la limite pour détecter les données anormales. Par exemple, dans [48], les auteurs extraient les caractéristiques utiles des données en séries temporelles. Ces données vont servir à entrainer une MVS à une classe pour la détection. Afin de tirer profit de cette méthode, il faut arriver à régler le problème de la sélection d'un paramètre de sensibilité permettant l'obtention d'une bonne balance entre les taux des faux négatifs et des faux positifs. Plus clairement, un faux négatif est une donnée classée négative, c'est-à-dire normale, mais qui est en réalité anormale. Un faux positif, au contraire, est une donnée normale classée comme une activité à risque.

## 2.6 Discussion

En ce qui concerne la segmentation des données, notre choix s'est porté sur l'utilisation de la méthode proposée dans [38]. Cette dernière répond parfaitement aux besoins de notre problème car il permet de diviser un flux de données d'une façon non-supervisée
et en temps réel.

Nous présentons ci-dessous les tableaux 2.I et 2.II permettant de faire un récapitulatif des avantages et des inconvénients des différentes méthodes proposées dans la revue de littérature.

<table><caption>Tableau 2.I – Comparatif des approches de reconnaissance d'activités</caption><thead><tr><td>Approches</td><td>Avantages</td><td>Inconvénients</td></tr></thead><tbody><tr><td>Approches utilisant les règles</td><td>Règles facilement compréhensibles</td><td>Production des règles couteuse, difficulté à détecter la transition entre les activités</td></tr><tr><td>Approches basées sur des plans de reconnaissance</td><td></td><td>Les activités anormales ne sont pas connues à l'avance</td></tr><tr><td>Approches basées sur les modèles</td><td>Détectent parfaitement les activités normales</td><td>Absence de modèles d'activités anormales</td></tr><tr><td>Détections basées sur la durée des activités</td><td>Peuvent être ajouter à notre modèle pour la détection selon la durée</td><td>Se focalise sur la durée des activités</td></tr></tbody></table>

<table><caption>Tableau 2.II – Comparatif des approches de détection des valeurs aberrantes</caption><thead><tr><td>Approches</td><td>Avantages</td><td>Inconvénients</td></tr></thead><tbody><tr><td>Les approches basées sur les similarités</td><td></td><td>Approches peu robuste face aux bruits</td></tr><tr><td>Les approches basées sur les modèles</td><td>Donnent de meilleurs résultats de détection d'activités anormales dans un milieu bruité</td><td></td></tr></tbody></table>

Grâce à ce tableau, nous pouvons constater les principaux avantages et inconvénients de chaque approche proposée dans notre revue. Nous remarquons que les approches qui
se basent sur la reconnaissance d'activités ne sont pas appropriés pour notre problème.
C'est pour cela que nous avons fait le choix de nous orienter vers des approches qui se
spécialisent dans la détection de valeurs aberrantes. D'après ces deux tableaux, il semble
qu'il y a deux approches pertinentes à la résolution de notre problématique. La première
qui se base sur les similarités et qui par sa nature n'est pas très robuste face aux bruits et
une deuxième méilleure puisqu'elle est plus résistante face aux bruits. Pour ces raisons,
notre choix s'est porté vers cette dernière. Elle sera présentée plus en détail par la suite.

## 2.7 Conclusion

Dans ce chapitre, un survol général des méthodes pour le clustering, et la détection d'anomalies a été présenté. Les notions discutées dans ce chapitre servent d'assises pour les travaux présentés dans ce mémoire. En effet, nous avons discuté des algorithmes les plus propices à l'analyse des signaux provenant d'une centrale inertielle en temps réel. Ainsi, en utilisant à la fois les capacités d'un classeur MVS pour extraire les activités susceptes qui vont par la suite, grâce à une régression linéaire, être traitées pour en extraire les activités anormales. Cette approche vise à diminuer les fausses alertes. Nous allons tout d'abord présenter l'approche de notre algorithme afin de traiter la centrale inertielle disposée sur les membres d'un opérateur industriel. Cela fera l'objet du chapitre suivant où il est testé et validé.
# CHAPITRE 3

## MÉTHODOLOGIE UTILISÉE

Certains états mentaux comme la fatigue, le stress ou la somnolence sont des sources de l'augmentation des risques d'accident dans l'industrie. Ils ont ainsi comme conséquences la baisse de la productivité et l'accroissement des coûts de la prise en charge de ces accidents. La majorité des accidents de travail dans le milieu industriel ont comme cause la fatigue ou les longues heures de travail [72] pouvant mener à des activités anormales augmentant le risque d'accident.

Le degré de fatigue est difficilement quantifiable comme le montre Ping Li dans [43] et par conséquent, il est difficile d'identifier les effets de la fatigue sur le taux d'accidents et de blessures au travail. Cependant, ce facteur est considéré comme la cause potentielle dans plus de 20% des accidents et incidents, tous les secteurs compris [22]. Lors de l'utilisation d'outils, le risque de blessures augmente considérant le manque de vigilance ou de concentration et la négligence dûe à une utilisation prolongée.

Ainsi, on s'intéresse plutôt aux comportements anormaux dans les activités humaines pouvant être liées aux états mentaux. Ce chapitre présente une solution théorique à la reconnaissance des comportements anormaux. Ainsi, nous présentons l'ensemble des étapes dans le traitement des données : de la segmentation, en passant par la classification des activités jusqu'à la reconnaissance des comportements anormaux.
## 3.1 Problématique et objectifs

Dans ces travaux de recherche, nous nous intéressons à la prévention des accidents de travaux liées à la fatigue mentale. Des outils doivent être mis en œuvre afin de garantir la sécurité des travailleurs. Pour ce faire, un système doit être capable de réaliser le suivi des activités des opérateurs afin de détecter un éventuel risque. Ce système aura pour but d'avertir les personnes susceptibles de générer un risque pour leurs propres personnes ou leurs collègues. Ceci dans le but de diminuer le nombre de lésions professionnelles et d'améliorer la sécurité en milieu industriel.

L'objectif principal de ce projet est de développer un système capable de détecter les comportements anormaux des travailleurs qui mettent en péril leur sécurité et leur santé. Intuitivement, les techniques de détection des activités anormales comparent un profil de toutes les activités normales avec des observations. Chaque activité qui ne correspond pas à un profil d'activités normales est classée comme anormale. Cette démarche identifie les activités normales tout en assumant que tout autre activité est anormale. Cependant, la détection d'activités anormales doit avoir le potentiel de détecter les activités inconnues du modèle construit. Ces données ont la caractéristique de se produire rarement ainsi, aucun modèle construit par apprentissage ne peut reconnaître ces activités. La nature des données liées aux activités anormales est qu'ils sont rares et qu'ils ne peuvent être prévisibles. Par conséquent, il est impossible d'avoir un nombre de données d'activités anormales suffisamment important pour effectuer un apprentissage de modèles pouvant détecter ce genre de données. Par exemple, dans le domaine de la surveillance
et de la sécurité, un système de surveillance peut avoir été entraîné pour reconnaître
seulement les activités normales. Alors que les activités anormales sont nouvelles pour
le système. Cela peut se produire, par exemple, lorsqu'un nouveau profil d'activité est
créé. Un utilisateur, dont les données ont été utilisées pour entraîner le système, peut
changer la façon par laquelle il exécute ses activités sans alerter le système d'entraîne-
ment. Dans ce cas, le système de détection d'activités anormales peut considérer à tort
que ces activités sont anormales et déclencher une alarme. D'où l'importance de trouver
un autre moyen pour effectuer cette tâche. Nous allons ainsi en premier lieu déceler les
activités suspectes, c'est-à-dire celles qui sont potentiellement classées comme activités
anormales. En deuxième lieu, nous allons procéder aux tris de ces activités pour ressortir
les comportements pouvant présenter un risque pour les travailleurs.

3.1.1 Solution suggérée

<figure><img src="image_17.png" /><figcaption>Figure 3.1 – Architecture de la solution proposée</figcaption></figure>

La figure 3.1 présente l’algorithme proposé. Cette approche est constituée de phases
qui s'appuient sur les données disponibles d'activités normales. La première phase est de construire une machine à vecteurs de support (MVS) à une classe. Ce modèle va nous servir à filtrer les activités ayant une grande chance d'être normales, puis les traces suspectes vont être traitées pour une seconde détection. Nous utilisons une régression non-linéaire (RNNL) pour extraire un modèle d'activités anormales d'une manière non-supervisée. Un grand avantage de cette technique est qu'elle permet, tout en gardant un taux de détection des activités anormales comparable aux méthodes précédemment citées, d'obtenir un taux de faux positifs meilleur que celui des approches se basant sur l'apprentissage des activités anormales. Étant donné un ensemble de traces normales, notre algorithme se déroule sur deux étapes. Tout d'abord, toutes les traces normales sont dirigées vers un module permettant l'extraction des caractéristiques significatives. Ces données sont ensuite analysées par une MVS à une classe afin d'éliminer les traces ayant une forte probabilité d'être normales. Les données qui sont gardées sont appelées des traces suspectes. Puis, ces données vont être analysées une seconde fois par un module qui se base sur des modèles d'activités anormales construits d'une manière non supervisée. Ces modèles vont servir de classifieurs qui déterminent la classe des données c'est-à-dire si elles sont normales ou anormales. La deuxième étape aura pour but de réduire le taux des faux négatifs grâce à des classeurs pour la détection d'activités anormales.
## 3.2 Algorithme de segmentation

L'algorithme de Kohlmorgen et al., comme celui présenté en [38], considère le problème de la segmentation continue en temps réel. Le flux de données doit avoir une structure séquentielle ou temporelle afin de procéder à la segmentation. Les données se divisent en blocs consécutifs. Chaque point appartenant au même bloc doit être original de la même distribution sous-jacentes. La tâche de la segmentation s'effectue d'une façon non-supervisée, i.e. sans limite de segmentation donnée apriori.

### 3.2.1 Utilisation des fonction de densité de probabilité pour la segmentation

On considère $\vec{y}_1, \vec{y}_2, \vec{y}_3, \dots, \vec{y}_t \in \mathbb{R}^n$, un flux de donnée entrant. La séquence des données peut avoir fait l'objet d'un pré-traitement ou un filtrage du moment que cela soit effectué à l'aide d'une fenêtre glissante (par exemple la fenêtre de Hamming) dans le cas d'un scénario temps réel. Dans un premier temps, il est intéressant d'exploiter une idée de la théorie des systèmes dynamiques qui est d'intégrer les données dans un espace à plus grande dimension, dans le but de reconstruire l'espace d'état du système,

$$ \vec{x}_t = (\vec{y}_t, \vec{y}_{t-\tau}, \dots, \vec{y}_{t-(m-1)\tau}). \qquad (3.1) $$

Le paramètre $m$ dans 3.1 est appelé la dimension d'intégration et $\tau$ est appelé le par- ramètre d'intégration. La dimension du vecteur $\vec{x}_t$ est ainsi $d = m \times n$. L'idée derrière l'intégration est que les données mesurées peuvent être potentiellement des projections
non-linéaire de l'état du système. Dans tous les cas, une intégration dans un espace d'une
dimension plus grande peut aider à résoudre la structure des données, une propriété qui
peut être exploitée. Dans un second temps, dans le but de réduire la quantité des don-
nées temps-réel, un échantillonnage est effectué sur le flux des données. Ensuite, on veut
évaluer la densité de distribution des données et ainsi estimer la fonction de densité de
probabilité (FDP) dans une fenêtre temporelle de longueur W. L'algorithme utilise un
estimateur de densité avec des noyaux Gaussien [10] centrés sur les points<fnref n="1" /> des données
dans la fenêtre $\{\vec{x}_t - \omega\}_{\omega=0}^{W-1}$ :

$$
p_t(x) = \frac{1}{W} \sum_{\omega=0}^{W-1} \frac{1}{(2\pi\sigma^2)^{d/2}} \exp\left(-\frac{(x - \vec{x}_t - \omega)^2}{2\sigma^2}\right). \quad (3.2)
$$

La largeur du noyau σ est un paramètre permettant d'avoir une bonne représentation
de la distribution. La valeur choisie de σ est proportionnelle à la distance moyenne de
chaque x̃_t avec les d voisins les plus proches pour un ensemble de donnée {x̃_t}. Une fois
une quantité de données significative a été enregistrée, le calcul d'un FDP s'effectue avec
ces données en appliquant l'équation 3.2. On calcule un nouveau FDP pour chaque nou-
velle donnée. Dans le but de quantifier la différence entre les deux fonctions, la moyenne
de l'erreur quadratique est utilisée d(f,g) = ∫(f - g)²dx où f et g sont deux mixtures
Gaussiennes.

<footnote n="1">¹On utilise x̃ pour dénoter un point d'un vecteur et x pour une variable d'un vecteur</footnote>
### 3.2.2 La machine de Markov cachée dans le cas asynchrone

Avant de discuter de la variante synchrone (temps réel), il est nécessaire d'introduire les machines de Markov cachées et l'algorithme asynchrone utilisé pour un exemple de séquence des données.

## 3.3 Construction d'une machine à vecteurs de support à une classe

### 3.3.1 Extraction des caractéristiques

Afin de procéder à l'apprentissage d'une MVS à une classe, les traces d'entraînement doivent être transformées des variables temporelles vers des vecteurs de caractéristiques. Comme les traces associées aux activités des travailleurs comportent des variables latentes [82], il est préférable de modéliser ce type de données en utilisant des modèles génératifs. Dans ce travail, un ensemble de MMC avec des observations gaussiennes de densité vont être utilisées pour modéliser les traces normales.

Supposons que les traces d'entraînement sont constituées de *M* types d'activités normales, nous entraînons *M* MMC à *Q* états avec des observations de densité gaussienne, une pour chaque type observé, en utilisant l'algorithme de Baum-Welch [64] qui est un cas particulier d'une généralisation de l'algorithme espérance-maximisation. Grâce à cet algorithme, on fait correspondre à chaque modèle un paramètre $1 \le \lambda \le M$. La fonction de log-vraisemblance est calculée pour chaque pair de traces et de MMC tel que cela est
défini dans l'équation 3.3.

$$L(Y_i, \lambda_i) = \log P(Y_i | \lambda_i), 1 \le i \le N, 1 \le j \le M. \quad (3.3)$$

Ceci est calculé en utilisant l'algorithme progressif-rétroprogessif [64]. De cette manière, pour chaque trace d'entraînement $Y_i$ entre $1 \le i \le N$, on obtient un vecteur de dimension $M$ :

$$x_i = [L(Y_i; \lambda_i), \dots, L(Y_i; \lambda_M)]. \quad (3.4)$$

### 3.3.2 Apprentissage d'une machine à vecteurs de support à une classe

Une fois l'extraction des caractéristiques significatives effectuée, un ensemble de vecteurs $x_1, \dots, x_n$ est obtenu. Nous procédons à l'entraînement d'une MVS à une classe grâce aux données des comportements normaux. L'objectif est de retrouver une sphère qui contient la majorité des données normales de manière à ce que le rayon devienne maximal :

$$\min R^2 + C \sum_{i=1}^{n} \xi_i, \quad (3.5)$$

tel que $|| c - x_i ||^2 \le R^2 + \xi_i, \xi_i \ge 0$.

La variable d'écart $\xi_i$ est introduite afin de permettre à certains points en dehors de la sphère d'être classées comme normaux et le paramètre $C \ge 0$ contrôle le rapport entre le volume de la sphère et le nombre d'erreurs. En utilisant la représentation duale du
Lagrangien, la fonction objective équivalente est :

$$ \max \sum_{i=1}^{n} \alpha_i \langle x_i | x_i \rangle - \sum_{i,j=1}^{n} \alpha_i \alpha_j \langle x_i | x_j \rangle, \qquad (3.6) $$

tel que $0 \le \alpha_i \le C, \sum_{i=1}^{n} \alpha_i = 1$.

Cette équation peut être résolue en utilisant des techniques d'optimisation standards [68]. Les traces normales sont déterminées en calculant la distance entre cette trace et le centre de la sphère. Si la distance est inférieure au rayon de la sphère alors la trace est considérée normale. Cependant, la distribution des données dans l'espace des entrées n'est pas sphérique. Afin d'obtenir une meilleure description des données, une transformation de l'espace des caractéristiques doit être effectuée. Au lieu de recourir à une fonction expliquite de transformation, une solution plus simple et plus performante est de remplacer le produit cartésien dans l'équation 3.6 par une fonction noyau. Ainsi, la fonction objective devient :

$$ \max \sum_{i=1}^{n} \alpha_i.k(x_i, x_i) - \sum_{i,j=1}^{n} \alpha_i \alpha_j.k(x_i, x_j). \qquad (3.7) $$

Afin de procéder au choix du noyau, la nature bruitée et non-linéaire des données collectées par les capteurs doit être prise en compte. Pour cette raison la fonction gaussienne à base radiale est choisie comme noyau (GBR). Ce qui donne $k(x_i, x_j) = \exp(-\omega_1^2 || x_i - x_j ||)^2$ où $\omega_1$ est un facteur permettant de spécifier la largeur de la fonction noyau. Une limitation majeure dans l'utilisation des MVS pour la détection des comportements anormaux est la difficulté à sélectionner un niveau de sensibilité suffisamment grand
pour obtenir le meilleur rapport entre taux de faux positifs et de faux négatifs. La figure 3.2 permet d'illustrer deux décisions de frontière des traces normales.

<figure><img src="image_18.png" /><figcaption>Figure 3.2 – Machines à vecteurs de support à une classe avec deux paramètres différents [82]</figcaption></figure>

Cette figure permet d'illustrer deux décisions aux valeurs des frontières pour une MVS à une classe construite à partir des données à deux caractéristiques. Dans cette figure, la MVS avec un trait en pointillé va classer un nombre des données négatives en données positives plus important que la courbe en trait continu. Alors que la courbe en trait continu va, au contraire, avoir un nombre de faux positifs plus important que la courbe en pointillé.

Pour résoudre ce problème, les paramètres de prises de décisions aux frontières sont sélectionnés de telle sorte qu'ils sont biaisés en faveur du fait qu'il faut garder un taux de faux négatifs le plus faible possible. Nous pouvons nous permettre d'ignorer le taux des faux positifs, car la deuxième détection va se charger d'analyser le reste des données suspectes. Cette méthode a l'avantage de réduire le taux de faux positifs de notre
classeur. Ainsi, la MVS à une classe va jouer le rôle de filtre permettant de ressortir les données normales sans avoir à créer de modèles pour les caractéristiques anormales.

## 3.4 Modèles d'activités anormales

En prenant comme entrée les résultats de la MVS à une classe, la seconde phase de l'approche a pour but de générer des modèles d'activités anormales à partir d'un modèle général d'activités normales. Ces modèles vont servir à assurer la détection des anormalités.

### 3.4.1 Procédure d'adaptation itérative

Les modèles des activités anormales sont créés d'une façon itérative. Tout d'abord, nous avons un modèle général d'activités normales. Plus spécifiquement, les traces normales vont servir à l'apprentissage d'un MMC avec une observation gaussienne. Étant donné un modèle général de traces normales et une trace test, nous évaluons la fonction de vraisemblance que la trace test soit générée par le modèle général. Si le résultat de cette fonction est supérieur à une valeur seuil θ, cette donnée est classée comme aberrante. Cette trace représente un type particulier de modèle anormal. Cette donnée peut être utilisée pour entraîner un modèle de données anormales. Cependant, une seule donnée n'est pas suffisante pour avoir un classifieur de qualité. Pour cette raison, une régression à noyau non-linéaire est utilisée pour générer un modèle pour une activité donnée. Lorsqu'une trace arrive comme résultat de la MVS, le maximum des fonctions
de vraisemblance pour chaque modèle est déterminé. Si le maximum est donné par le modèle général des données normales, cette trace est classée comme normale sinon elle est anormale.

Par la suite, nous devons décider si un nouveau modèle d'activités anormales doit être généré. Si le maximum des fonctions de vraisemblance est supérieur à la valeur seuil θ, la trace appartient à un modèle anormal existant sinon la trace est considérée appartenant à un nouveau modèle. Ainsi, un nouveau modèle est dérivé à partir du modèle normal général.

<figure><img src="image_19.png" /><figcaption>Figure 3.3 – Exemple de données non linéairement séparables</figcaption></figure>

Le noyau linéaire proposé ci-dessus permet de classer les données seulement si celles-ci sont linéairement séparable. Le problème demeure que dans des cas réels, les données ne sont généralement pas séparables. La figure 3.3 permet de voir un exemple de données non linéairement séparable dans un espace en deux dimensions. En effet, sur cette figure, une droite ne peut pas être tracé permettant de séparer les données noires
des données blanches. Pour cette raison, nous avons besoin de trouver une transformation de l'espace des données dans un autre espace dans lequel les données sont à nouveau linéairement séparable. Nous devons donc introduire un modèle d'adaptation avec la régression à noyau non-linéaire. En ce qui concerne notre cas, l'accéléromètre enregistre des données en trois dimensions. Ces données temporelles sont utilisées pour calculer des caractéristiques des données brutes. Comme les données, ces caractéristiques sont représentées en trois dimensions. Afin d'arriver à les classer l'utilisation d'un noyau non-linéaire est essentielle car les données réelles sont très rarement linéairement séparables

### 3.4.2 Régression à noyau non-linéaire

Dans le domaine de la reconnaissance de la parole, plusieurs techniques ont été proposées afin de générer des modèles non-dépendants du locuteur en utilisant un ensemble de données d'entraînement limité. Parmi ces méthodes, la régression linéaire utilisant le maximum de vraisemblance (RLMV) [14] calcule un ensemble de transformations qui réduisent la disparité entre un modèle initial et les données d'adaptation. Plus spécifiquement, le RLMV est une technique se basant sur un modèle d'adaptation qui estime les transformations linéaires pour les moyennes et les variances d'un MMC avec une observation de densité gaussienne.

Dans notre cas, nous avons choisi d'adapter les vecteurs moyens d'un modèle MMC général. Soit $\mu_i^{k-1}$ avec $1 \le i \le Q$, le vecteur moyenne de l'ième état dans le MMC.
L'adaptation se fait en deux étapes. En premier lieu, étant donné une nouvelle donnée, une nouvelle estimation du vecteur moyen $\mu_i^k$ est évaluée à partir du modèle général. En second lieu, le vecteur $\mu_i$ est adapté en utilisant l'équation suivante :

$$ \mu_i = \alpha \cdot \mu_i^{k-1} + (1 - \alpha) \cdot \mu_i^k \quad (3.8) $$

où $\alpha$ est un facteur permettant de contrôler l'équilibre entre l'ancien modèle et les nouvelles estimations. Plus la valeur de $\alpha$ est petite plus les nouvelles données vont contribuer aux modèles d'adaptation.

Une limitation majeure du RLMV est qu'il réalise seulement des transformations linéaires entre le modèle général et les données d'adaptation. Pour cette raison, une adaptation généralisée de RLMV est utilisée. Cette dernière est appelée régression à noyau non-linéaire (RNNL) [73]. L'idée principale de cette technique est de transformer l'espace des caractéristiques grâce à une fonction noyau.

Soit $A = [\mu_1^{k-1}, \dots, \mu_Q^{k-1}]$ et $B = [\mu_1^k, \dots, \mu_Q^k]$ deux vecteurs moyens correspondant respectivement à un ancien modèle et un nouveau modèle. Le vecteur moyen $\mu_i^*$ peut-être évalué grâce à la fonction noyau comme suit :

$$ \mu_i^* = (BK + \beta AK^{-1})(K^2 + \varepsilon I)^{-1}K. \quad (3.9) $$

Dans cette équation, $\beta$ joue le rôle de $\alpha$ dans le RLMV, $I$ est la matrice identité et $\varepsilon$ est un paramètre de régularisation défini par l'utilisateur. La matrice $K$ est une matrice
noyau $Q*Q$ où $k(.,..)$ est une fonction noyau :

$$ K = \begin{bmatrix} k(\mu_1^{k-1}, \mu_1^{k-1}) & \dots & k(\mu_1^{k-1}, \mu_Q^{k-1}) \\ \vdots & \ddots & \vdots \\ k(\mu_Q^{k-1}, \mu_1^{k-1}) & \dots & k(\mu_Q^{k-1}, \mu_Q^{k-1}) \end{bmatrix} \quad (3.10) $$

Dans le but de garder le caractère non-linéaire de la transformation entre le modèle général et les données d'adaptation, Une fonction gaussienne à base radiale (GBR) est utilisée. Ce qui donne comme fonction noyau :

$$ k(\mu_i, \mu_j) = \exp(-\omega_2^2 \| \mu_i - \mu_j \|^2). \quad (3.11) $$

En résolvant l'équation 3.9, on obtient une solution globalement optimale pour le vecteur moyen final $\mu_i^*$ où $1 \le i \le Q$.

## 3.5 Conclusion

Durant ce chapitre, nous avons présenté la méthodologie utilisée afin de répondre aux problèmes posés par la problématique. Une MVS à une classe a été mise en œuvre pour les suites des travaux de recherche. Cette machine sert à faire un premier tri des données pour ne garder que les données suspectes. Par la suite, des modèles d'activités anormales vont être créés grâce aux données suspectes. Ces modèles vont être créés
suite à une procédure d'adaptation itérative. Enfin, la classification se fera suivant une
régression à noyau non-linéaire.

Dans le prochain chapitre, la technologie utilisant la méthodologie sera présentée. Celle-
ci nous servira à tester les performances de notre approche en lui appliquant des cas réels
et ainsi pouvoir discuter des résultats obtenus.
# CHAPITRE 4

## TECHNOLOGIES UTILISÉES ET EXPÉRIMENTATIONS

Le précédent chapitre s'est intéressé à exposer la méthodologie adoptée pour proposer une solution 'q notre problématique. Il faut à présent arriver à déterminer l'efficacité des algorithmes présentés. Les expérimentations sont la prochaine étape pour évaluer les hypothèses posées et tester la méthode choisie.

Afin de valider les concepts théoriques présentés dans le chapitre précédent, nous présenterons la conception des vêtements de protection individuelle. L'instrumentation de ces vêtements avec des capteurs sans fil favorise leurs inclusions dans l'Internet des Objets et les concepts liés aux mégadonnées (données massives). Nous avons décidé d'utiliser une semelle instrumentée et un casque de sécurité favorisant l'évaluation des algorithmes de classification et de détection des comportements anormaux dans le contexte des industries intelligentes.

En premier lieu, ce chapitre permettra de présenter la technologie utilisée qui mettra en œuvre la théorie de notre solution. On présentera également les résultats expérimentaux obtenus et les analyses qui en découlent. Cela servira à évaluer les outils utilisés pour les expérimentations, et à valider le système permettant, tout en gardant un taux de détection élevé, de préserver un taux de fausses alertes faible.
## 4.1 Technologie portable suggérée

Le système proposé contient un casque instrumenté de sécurité, (voir figure 4.1) capable de reconnaître les mouvements de la tête d'un opérateur et de le localiser durant ses occupations. Il est aussi constitué d'une semelle intelligente permettant la reconnaissance des déplacements d'un opérateur et de calculer en temps réel la posture de l'opérateur [4]. La combinaison des deux instruments permet d'accroître la précision de notre système et ainsi réduire le nombre de fausses alertes. La figure 4.2 montre le concept de la semelle et le placement de certains capteurs. Les données récupérées à partir du casque et de la semelle permettent de reconnaître des activités humaines. Ces données sont envoyées grâce à une transmission sans fil à un serveur afin de les traiter et les stocker. Cela permet de faire dans un premier temps une détection en temps réel des activités anormales et dans un deuxième temps, de procéder à l'alimentation d'un dossier médical électronique personnalisé (DME-P) en ligne qui sauvegarde le résultat de chaque opérateur. Ce dossier va par la suite permettre d'obtenir un bilan des risques encourus pour chaque opérateur dans une usine et ainsi obtenir des informations sur une période donnée. Ceci est utile pour procéder à des ajustements dans le plan de la gestion de la sécurité et des risques dans chaque espace de travail dans l'usine. Dans les prochaines sections, nous allons introduire les deux dispositifs utilisés et l'architecture complète de notre système.
<figure><img src="image_20.png" /><figcaption>Figure 4.1 – Coupe du casque instrumenté de sécurité [58]</figcaption></figure>

### 4.1.1 Casque de sécurité instrumenté

Le casque de sécurité, comme celui illustré dans la figure 4.1, est un système à moindre coûts et non-intrusif qui inclut une centrale inertielle (en anglais : inertial measurement unit ou IMU) et un système de localisation utilisant la mesure de la puissance en réception d'un signal WiFi reçu (RSSI). Le RSSI donne une information à propos de la position de l'opérateur comme suggéré dans [77]. Le capteur IMU et un dispositif capable de mesurer l'orientation en utilisant la combinaison de trois capteurs : un accéléromètre, un gyroscope et un magnétomètre. Les deux signaux acquis (RSSI et orientations) sont traités par un filtre de Kalman qui est implémenté dans un micro-contrôleur PIC24 dans le but de déterminer la localisation et de reconnaître les activités d'un opérateur. La carte électronique qui se trouve à l'intérieur du casque est l'unité principale du module d'intelligence artificielle. Un moteur vibro-tactile est intégré au casque et permet d'alerter l'opérateur lorsqu'un risque est évalué au-dessus d'un seuil minimum.
<figure><img src="image_21.png" /><figcaption>Figure 4.2 – Semelle instrumentée [63]</figcaption></figure>

### 4.1.2 Semelle instrumentée

La semelle instrumentée, comme celle illustrée dans la figure 4.2, est un dispositif développé initialement pour prévenir le risque de chute pouvant être lié à l'environnement physique d'une personne [62] et pour mesurer la posture au travail [4]. Cependant dans notre cas, on peut utiliser les données collectées par ce dispositif afin d'alimenter notre algorithme puisque ce système regroupe les capteurs utiles pour la caractérisation, d'une part, de la dynamique de la marche, et d'autre part de la posture de l'utilisateur et les propriétés physiques de son environnement. Ainsi, nous allons pouvoir nous concentrer sur la posture de l'utilisateur et récolter les données pouvant nous informer sur la vi- tesse et l'accélération du pieds de l'opérateur. Ces capteurs peuvent être exploités pour détecter l'activité d'un opérateur et ainsi pouvoir reconnaître si cette activité représente un danger pour lui. Si le risque dépasse un seuil, ce dispositif permet la transmission
<figure><img src="image_22.png" /></figure>

Figure 4.3 – Schéma illustrant l’architecture du matériel et le fonctionnement du casque et de la semelle instrumentés [4]

d'un message d'avertissement vibrotactile. Ce message tactile a pour but d'attirer l'attention de l'opérateur sur des situations potentiellement dangereuses. Dans ce contexte, ces capteurs sont utilisés afin de surveiller le risque lié à la réalisation d'une séquence d'activités de production.

D'un côté, la semelle instrumentée est capable de mesurer la posture par une mesure de la distribution des forces au sol après chaque répétition d'une même tâche, comme cela a été démontré par Barkallah [4]. D'un autre côté, le casque est responsable de mesurer les changements de l'accélération et de la rotation de la tête de l'opérateur. La figure 4.3 illustre l'architecture proposée de la semelle et du casque instrumenté.
4.1.3 Architecture logicielle de l'intelligence artificielle du système proposé

<figure><img src="image_23.png" /><figcaption>Figure 4.4 – Architecture du système proposé</figcaption></figure>

L'architecture présentée dans la figure 4.4 permet de mettre en avant le fonctionnement de notre système et le processus à travers lequel se fait la reconnaissance des activités. Notre algorithme utilise les données collectées grâce à la semelle et au casque afin d'effectuer une reconnaissance en temps réel des activités d'un opérateur. Ces données sont en premier lieux traitées par les instruments afin de les envoyer aux serveurs dans le but d'opérer la détection. Une fois les données recueillies dans le serveur, l'algorithme se charge d'effectuer la détection et la reconnaissance d'activités, tout en continuant à recevoir les données. Deux cas peuvent se présenter soient :

* l'algorithme arrive à détecter et à bien classifier l'activité en question, dans ce cas il la transmet à la base des données des activités ou
* soit il ne reconnaît pas cette activité et dans ce cas il en résulte une erreur et le déclenchement d'un message d'avertissement (par exemple, une alarme).

Dans le premier cas, la base de données est responsable de trouver la séquence d'activités dans lequel l'activité peut être présente. Cela se fait grâce aux différents scénarios enregistrés dans cette base de données et aux activités précédemment effectuées. En fait, si l'algorithme n'arrive pas à retrouver un scénario qui suit l'historique des activités et l'activité en cours, alors il déclenche une alarme. En effet, dans l'ordonnancement des activités de production, les séquences des activités sont bien connues pour une tâche et sont répétées par l'opérateur. Nous allons détailler ce processus dans les prochaines sections.

## 4.2 Expérimentation et résultats

Ces expérimentations ont pour but de valider la solution théorique présentée dans le chapitre 3 avec nos vêtements intelligents et de trouver les ensembles pertinents de capteurs et de caractéristiques de données afin d'améliorer la précision du module de la reconnaissance d'activités. En utilisant les résultats de ces expérimentations, les performances du module de la reconnaissance d'activités vont être évaluées.

### 4.2.1 Les données d'entraînement et de test

Dans le but de réaliser les expérimentations, une application sous Android permettant la récolte des informations du casque instrumenté et plus particulièrement de l'accélé-
romètre, a été développée. Comme le casque est équipé d'un accéléromètre tri-axial, il envoie par bluetooth à un téléphone intelligent les données de mouvement de la personne. Le téléphone transmet les données traitées à un serveur. Ensuite, le serveur prend en charge les calculs à effectuer afin d'extraire les informations pertinentes et délivrer une prédiction relative aux mouvements de l'opérateur, nous pouvons observer dans le schéma de la figure 4.5 le flux des données du module de la reconnaissance d'activités. Les données des activités ont été récoltées sur cinq sujets âgés de 23 à 30 ans composés

<figure><img src="image_24.png" /><figcaption>Figure 4.5 – Diagramme du processus de la collecte des données</figcaption></figure>

d'étudiants (quatre hommes et une femme). Les participants ont effectué différentes actions d'un scénario spécifique. Afin de construire des données de référence, les données des participants ont été annotées par l'auteur avec une indication sur le temps de départ et de fin. Cinq secondes ont été supprimées du début et de la fin de chaque activité des données enregistrées afin d'assurer la correspondance entre ces données et les activités
effectuées. 70% des données ont été considérées comme données d'entraînement et les
30% restants pour tester l'algorithme.

4.2.2 Pré-traitement du signal

Le pré-traitement des données des capteurs inertiels est la première étape à effectuer
avant l'application de l'algorithme de reconnaissance d'activités [84]. Chaque donnée
du capteur inertiel est représentée sur trois composantes suivant les trois axes d'un re-
père cartésien. Le pré-traitement inclut le filtrage analogique (passe-bas Butterworth), un
sous-échantillonnage, le filtrage numérique (Gaussien), la normalisation du signal et le
fenêtrage. Tout d'abord, tous les signaux sont pré-traités pour la réduction des bruits en
utilisant des filtres passe-bas. Dans le PIC24, la fréquence d'échantillonnage est de 1kHz
fixé par la génération d'une interruption activée avec un temporisateur. Ensuite, comme
dans le PIC24, la fréquence d'échantillonnage d'Android se fixe à l'aide d'un tempo-
risateur (Timer). Bien entendu, toutes les données acquises par le PIC24 ne sont pas
transmises à Android. Normalement, entre les deux systèmes (PIC24 et Android), il faut
un filtre sous-échantillonneur. Cependant, sous Android, il n'est pas possible de garantir
une période constante. Enfin, une dernière caractéristique dans Android est la possibilité
d'ajuster la priorité du rafraichissement de l'application. Cette boucle a quatre valeurs
possibles : normal, IU, jeux et rapide. Comme les mouvements des membres de l'humain
(bras, tête et jambe) peuvent être détectés avec au moins plusieurs données mouvement
(défini par une vitesse initiale et finale nulle), la fréquence d'échantillonnage est fixée
afin de pouvoir mesurer la dynamique et de respecter le critère de Shannon-Nyquist. En contre-partie, il y a déjà un échantillonnage fixe sur le microcontrôleur PIC24. Pour cette raison, le traitement critique du signal (dont le filtrage numérique) doit s'y retrouver. Par la suite, le signal est transmis à Android qui n'est pas un système d'exploitation temps-réel et malheureusement certaines limitations s'imposent.

Dans la majorité des cas, sous Android, les bruits à hautes fréquences doivent être supprimées. En conséquence les filtres Gaussiens [70] peuvent être employés pour supprimer les bruits à hautes fréquences. Après l'étape de la réduction des bruits, chaque segment X du signal est normalisé suivant 4.1 :

$$X_{nor} = \frac{X - constant}{Max(|X|)} \quad [43], \quad (4.1)$$

où, $X_{nor}$ est le segment de donnée normalisée, sachant que le repère global de l'axe Z est dans la direction du vecteur de l'accélération gravitationnelle, dans les cas de la détection d'activités dynamiques, la mesure de la variation vecteur de l'accélération gravitationnelle projetée sur chaque axe doit être extraite dans le but d'analyser uniquement les caractéristiques discriminantes dynamiques en utilisant un filtre passe-haut (dans ce cas, le vecteur de l'accélération gravitationnelle est supprimé). Autrement, cette mesure de la projection du vecteur de gravité sur les trois axes de l'accéléromètre nous renseignera sur les postures quasi-statiques ou statiques, qui sont des activités particulières d'un opérateur. Finalement, une fenêtre glissante de forme géométrique cosine de longueur
3 secondes, est appliquée sur le signal, ce qui représente 45 échantillons par fenêtre [34]. Il n'existe pas de chevauchements entre les fenêtres. Quelques actions sont simples à identifier, tel que l'action de s'asseoir ou de se pencher. Cependant, la majorité des actions sont assez similaires dans leurs caractéristiques temporelles et nécessitent des algorithmes de reconnaissance d'activités. La figure 4.6 permet de visualiser les sorties de l'accéléromètre pour six activités successives.

<figure><img src="image_25.png" /><figcaption>Figure 4.6 – Signal normalisé des sorties de l'accéléromètre pour six activités successives</figcaption></figure>

### 4.2.3 La segmentation des données

Afin d'évaluer les performances de notre approche, des expérimentations ont été effectuées afin de valider la méthode adoptée. Les expérimentations ont été réalisées en deux volets. Le premier concerne la segmentation des données. Celle-ci, comme définit précédemment, a pour but de diviser le flux des données reçues par le PIC24. Chaque partie représente une activité d'un scénario (nous allons par la suite présenter plusieurs exemples de scénarios). Ainsi, les expériences ont été réalisées sur un flux de données et le taux de succès de la classification a été calculé afin d'estimer la performance de la
méthode utilisée. La figure 4.7 permet de présenter les résultats retrouvées.

On remarque à partir de la figure précédente que le taux d'erreur durant la phase de

<figure><img src="image_26.png" /><figcaption>Figure 4.7 – Taux d'erreur de segmentation en fonction du nombre d'activités</figcaption></figure>

segmentation augmente quadratiquement au nombre d'activités. Cela s'explique parfaitement car plus il y a d'activités dans un scénario particulier, plus il est compliqué de séparer les activités en divisant le flux de données. En moyenne, un scénario d'activités ne dépasse pas les quinze activités. D'après la courbe de la figure 4.7, cela correspond a un taux d'erreur de segmentation de 2%.

Par la suite, on s'est intéressé aux performances au niveau du temps de réponse que nécessite la phase de segmentation. À noter que ces expérimentations ont été réalisées sur un ordinateur HP équipés d'un processeur i3 à 2.30 GHz.

Afin de procéder à cela, des expérimentations ont été réalisées afin de calculer le temps requit par cette phase tout en variant le nombre d'activités que représente le flux de don-
nées. La figure 4.8 représente les résultats récoltés et permet de mettre en évidence le temps de calcul requis en fonction du nombre d'activités. On remarque que le temps de

<figure><img src="image_27.png" /><figcaption>Figure 4.8 – Temps de la segmentation en fonction des nombres d'activités</figcaption></figure>

réponse de notre approche augmente en fonction du nombre d'activités comme cela est attendu et qu'en général, pour un scénario comprenant un nombre d'activités entre 10 et 20, le temps de calcul nécessaire pour effectuer la segmentation des données se trouve dans un intervalle compris entre 100 et 250 ms.

### 4.2.4 La reconnaissance des activités

Dans ce qui suit, l'évaluation de la partie de la reconnaissance des activités va être évaluée grâce aux différentes expérimentations réalisées dans le laboratoire. Cette partie a pour but de tester les approches utilisées afin de classifier les activités. Nous allons ainsi évaluer les performances de l'algorithme mis en place. Afin de procéder, nous
avons mis en place trois différents scénarios de test. Chaque scénario va contenir un nombre d'activités différentes afin d'identifier les forces et les faiblesses de l'approche adoptée.

Tout d'abord, les différents scénarios vont être présentés. Ensuite, on procédera à la récolte des résultats des expérimentations pour pouvoir les analyser. L'approche dans le développement des scénarios reposent sur les travaux de Julien Vandewynckel [74]

### 4.2.4.1 Premier scénario d'activités

Le premier scénario va rassembler un nombre d'activités (marcher, se pencher, se redresser) comme le représente la figure 4.9. Ce scénario correspond à une activité d'empilement de planches d'un convoyeur vers une palette.

<figure><img src="image_28.png" /><figcaption>Figure 4.9 – Exemple de scénario 1 des activités</figcaption></figure>
L'approche utilisée afin de récolter les résultats des expériences est d'utiliser 70% des données pour entraîner notre modèle et 30% pour effectuer les tests.

<figure><img src="image_29.png" /><figcaption>Figure 4.10 – Pourcentage d’erreur de classification en fonction du nombre d’exemples de données du premier scénario</figcaption></figure>

La figure 4.10 permet de mettre en avant les résultats retrouvés. Sur l'axe des X, on retrouve la taille des données d'entraînement. Sur l'axe des Y, le pourcentage d'erreur de classification représente la classification des données de test. On remarque qu'en augmentant la taille des données d'entraînement l'erreur de classification diminue jusqu'à atteindre un seuil de 0.8%. On remarque aussi que l'augmentation de la taille des données d'entraînement ne donne pas de résultats plus significatifs à partir de 40 exemples mais on observe que le temps de réponse du système augmente dû à la complexité des calculs. Il est de l'ordre de 1400ms pour des données d'entraînement de taille supérieur à 50 alors qu'il n'est que de l'ordre de 700ms pour un nombre de donnée égale à 30.
### 4.2.4.2 Deuxième scénario d'activités

<figure><img src="image_30.png" /><figcaption>Figure 4.11 – Exemple de scénario d'activité 2</figcaption></figure>

On représente sur la figure 4.11 un deuxième exemple de scénario qui a été utilisé. Ce scénario est un peu plus complexe que le premier car il contient plus d'activités et les transitions entre les activités sont plus nombreuses. La figure 4.12 présente les résultats collectées et analysées.
<figure><img src="image_31.png" /><figcaption>Figure 4.12 – Pourcentage d’erreur de classification en fonction du nombre d’exemples de données du deuxième scénario</figcaption></figure>

### 4.2.4.3 Troisième scénario d’activités

La figure 4.13 présente le troisième exemple de scénario d’activités. Ce scénario ajoute les actions : *monter un escalier* et *descendre un escalier* par rapport au deuxième scénario.
<figure><img src="image_32.png" /><figcaption>Figure 4.13 – Exemple de scénario d’activité 3</figcaption></figure>

<figure><img src="image_33.png" /><figcaption>Figure 4.14 – Pourcentage d’erreur de classification en fonction du nombre d’exemples de données du troisième scénario</figcaption></figure>

Les résultats obtenus sont affichés dans la figure 4.14. On remarque dans la figure que
le taux d'erreur de classification augmente par rapport aux deux précédents scénarios. Ce taux est à peu près égal à 9% au début de l'apprentissage pour atteindre un seuil un peu plus supérieur à 2% pour X et Y données d'entraînement respectivement.

### 4.2.5 Analyse des résultats et comparaison avec d'autres approches

En ce qui concerne la reconnaissance d'activités, le capteur attaché au casque, comme le montre la figure 4.1, a été utilisé afin de récolter 418 traces d'activités normales en laboratoire. Afin de collecter des traces anormales, nous avons demandé aux participants telles que 'glisser' ou 'somnoler' en penchant la tête'. Le nombre total d'activités anormales récoltées est de 108. Le tableau 4.1 illustre quelques exemples d'activités normales et anormales.

<table><caption>Tableau 4.1 – Exemple d'activités normales et anormales</caption><thead><tr><td>Activités normales</td><td>Activités anormales</td></tr></thead><tbody><tr><td>S'asseoir</td><td>Glisser sur le sol</td></tr><tr><td>Marcher</td><td>Tomber en arrière</td></tr><tr><td>Monter des escaliers</td><td>Somnoler</td></tr><tr><td>Avoir une bonne posture</td><td>Avoir une mauvaise posture</td></tr></tbody></table>

Chaque trace est une série temporelle à trois dimensions. Nous avons collecté ces traces sur 5 sujets comme cela est indiqué précédemment afin de capturer les variations
de traces entre les différents participants.

### 4.2.6 Les mesures d'évaluations

La performance des algorithmes de détection d'activités anormales peut être évaluée suivant deux indicateurs : le taux de détection et le taux de fausses alertes.

Le taux de détection est calculé à partir du ratio entre le nombre d'activités anormales bien classé et le nombre total d'activités anormales. Le taux de fausses alertes est calculé à partir du nombre d'activités mal classé comme activité anormale divisé par le nombre total d'activités normales. En se basant sur la matrice de confusion du tableau 4.II, les deux mesures peuvent être définies de la sorte :

$$ \text{Taux de détection} = \frac{VN}{VN + FN} \qquad (4.2) $$

$$ \text{Taux de fausses alertes} = \frac{FP}{FP + VP} \qquad (4.3) $$

La performance d'un algorithme de détection d'activités anormales doit avoir un taux

<table><caption>Tableau 4.II – Matrice de confusion</caption><thead><tr><th rowspan="2"></th><th rowspan="2"></th><th colspan="2">Classe actuelle</th></tr><tr><th>Normal</th><th>Anormal</th></tr></thead><tbody><tr><th rowspan="2">Classe prédite</th><th>Normal</th><td>Vrai positif (VP)</td><td>Faux négatif (FN)</td></tr><tr><th>Anormal</th><td>Faux positif (FP)</td><td>Vrai négatif (VN)</td></tr></tbody></table>

de détection élevé et un taux de fausse alerte bas. Dans ce qui suit, la performance de l'algorithme sera évaluée en utilisant les courbes ROC qui permettent de mettre en va-
leur le taux de détection par rapport au taux de fausses alertes. En addition, on calcule
explicitement l'aire en dessous de la courbe ROC (ASR) afin de comparer les trois algo-
rithmes.

Nous allons dans ce qui suit expliquer l'utilisation des courbe ROC et de l'indice ASR
permettant de déterminer la performance d'un algorithme à partir du taux de détection
et du taux de fausses alertes. La figure met en avant trois courbes ROC représentant un
mauvais algorithme, un bon et et un excellent. La précision du test dépend de comment
l'algorithme arrive à bien séparer les traces normales des traces anormales. Cette pré-
cision est mesurée par l'aire en dessous de la courbe ROC. Par exemple, une aire de 1
représente un test parfait, alors qu'une aire de 0.5 représente un échec. On peut utiliser
ce système de point afin de classifier les algorithmes :

• de 0.90 à 1 = excellent ;

• de 0.80 à 0.90 = bon ;

• de 0.70 à 0.80 = moyen ;

• de 0.60 à 0.70 = faible et

• de 0.50 à 0.60 = mauvais.

4.2.7 Les résultats expérimentaux

Dans les expérimentations, comme les traces d'entraînement sont des séries tempo-
relles à trois dimensions avec des valeurs continues, le modèle général et les modèles
de chaque activité normale ont été entraînés comme des MMC à densité d'observations
gaussiennes. Pour notre modèle ainsi que le SMV(MLLR), le paramètre C du MVS à une classe est égale à 0.05.

Les expériences ont permis en premier lieu de comparer les trois algorithme : MVS à une classe, MVS (MLLR) et MVS(RLMV). Un ensemble composé de la moitié des traces normales (209 traces) a été aléatoirement sélectionné pour l'entraînement. L'autre moitié des traces normales ainsi que les traces anormales (108 traces) ont été mélangées pour effectuer les tests. La figure 4.15 représente la courbe ROC mettant en valeur le taux de détection en fonction du taux des fausses alertes. On peut apercevoir d'après la figure 4.15 que le MVS procure les plus faibles détections car il obtient un taux de détection élevé au prix d'un taux de fausses alertes élevé. En appliquant les techniques d'adaptation, le MVS(MLLR) et notre approche, la performance du MVS est améliorée.

Cela est dû au fait que les modèles d'activités anormales contribuent à distinguer entre les activités normales et anormales, ce qui réduit significativement le taux de fausses alertes.

On observe aussi que l'utilisation d'une transformation non-linéaire pour l'adaptation, utilisée dans notre approche, surpasse le modèle MVS(MLLR). Par exemple, en utilisant le noyau à base radial (FBR) avec $\omega_2 = 0.01$ et $\beta = 10$, notre approche permet d'avoir un taux de détection de 90% et un taux de fausses alertes de 7%. En utilisant ces paramètres, le nombre de modèles d'activités anormales générés grâce à notre approche est de 12. Ainsi, on peut conclure que, en comparaison des autres algorithmes, la méthode proposée réussit à accomplir un bon compromis entre le taux de détection et le taux de
fausses alertes.

<figure><img src="image_34.png" /><figcaption>Figure 4.15 – Comparaison du taux de détection et du taux de fausses alertes avec 209 traces normales d’entraînement.</figcaption></figure>

Sur la figure 4.15, le meilleur compromis est indiqué par l'aire hachurée en noir. Cette surface représente l'ASR de notre approche. Des expérimentations ont été aussi effectuées afin d'analyser l'effet de la variation du nombre de traces d'entraînement sur les performances des trois algorithmes. Dans cette expérience, on a gardé l'ensemble des données de test inchangées et on a réduit le nombre des données d'entraînement. Les figures 4.16 et 4.17 montrent les expériences menées en utilisant 104 et 52 traces d'entraînement respectivement. On peut apercevoir d'après les figures qu'en diminuant le nombre de traces d'entraînement, la performance des trois algorithmes décroît en consération. Pour le MVS à une classe, lorsque les données d'entraînement sont éparpillées, la frontière de décision calculée ne reflète pas exactement les caractéristiques des don-
nées ce qui dégrade la détection des activités anormales. En ce qui concerne notre approche et MVS(MLLR), des données d'entraînement éparpillées ne permet pas d'avoir une estimation précise des paramètres du modèle général d'activités normales, ce qui résulte en un modèle d'activité anormale imprécis. Ainsi, la performance des deux algorithmes décroît. Comme cela est montré dans la figure 4.17, lorsqu'on utilise seulement 52 traces d'activités normales pour l'entraînement, la capacité de notre approche et de MVS(MLLR) à distinguer entre activités normales et anormales est comparable à celle d'un MVS à une classe.

<figure><img src="image_35.png" /><figcaption>Figure 4.16 – Comparaison du taux de détection et du taux de fausses alertes avec 104 traces normales d'entraînement.</figcaption></figure>
<figure><img src="image_36.png" /><figcaption>Figure 4.17 – Comparaison du taux de détection et du taux de fausses alertes avec 52 traces normales d’entraînement.</figcaption></figure>

Comme cela est montré dans la figure 4.16, lorsqu’on a 104 traces normales d’entraînement, notre approche reste la meilleure en comparaison des deux autres algorithmes. Afin de comparer explicitement les performances des trois algorithmes, les valeurs des

<table><caption>Tableau 4.III – Les valeurs ASR avec les différents algorithmes en utilisant différents nombres de traces d’entraînement</caption><thead><tr><th>Les algorithmes / # des traces d'entraînement</th><th>209 traces</th><th>104 traces</th><th>52 traces</th></tr></thead><tbody><tr><td>MVS à une classe</td><td>0.679</td><td>0.731</td><td>0.691</td></tr><tr><td>MVS(MLLR)</td><td>0.959</td><td>0.928</td><td>0.704</td></tr><tr><td>Notre approche</td><td>0.983</td><td>0.959</td><td>0.741</td></tr></tbody></table>

aires en dessous des courbes ROC (ASR) ont été calculées en évaluant l’aire sous les courbes ROC établies dans les figure 4.15, 4.16 et 4.17. Ces résultats ont été rassemblés dans le tableau 4.III. On peut remarquer d’après la seconde colonne, lorsqu’on utilise
209 traces normales d'entraînement, les valeurs ASR pour les trois algorithmes dans l'ordre sont : 0.679, 0.959 et 0.983. Comme notre approche arrive à atteindre la valeur la plus proche de 1, on peut conclure que celle-ci obtient le meilleur résultat en comparaison avec les deux autres algorithmes.

La figure 4.18 permet de mettre en avant l'augmentation du taux d'erreur de classification en fonction du nombre d'activités. C'est une courbe qui permet d'avoir une idée générale sur la performance de la méthode utilisée pour effectuer la reconnaissance des activités. Ces résultats sont donnés avec un indice de confiance de 5% (comme indiqué par les pointillés rouges) à cause des différents hyper-paramètres. Comme pour les expériences précédentes, 70% des données on été utilisées pour entraîner le modèle et 30% pour le tester. Le tableau 4.IV montre le taux de reconnaissance de quelques

<figure><img src="image_37.png" /><figcaption>Figure 4.18 – Pourcentage de l’erreur de classification en fonction du nombre d’activités</figcaption></figure>
algorithmes de classification. Ces résultats ont été obtenus en effectuant des tests sur le premier scénario évoqué ci-dessus. Grâce au logiciel Weka [23], on a pu effectuer une comparaison de notre approche avec les réseaux bayésiens, les arbres de décision et les réseaux de neurones. Ces résultats ont été obtenus en analysant un flux de données de 20 minutes en suivant le premier scénario. On a pris 70% des données pour procéder à l'entraînement des différentes méthodes et les 30% restant pour les tests. Nous présentons ci-dessous les résultats obtenus. Bien que les réseaux de neurones nécessitent un temps

<table><caption>Tableau 4.IV – Comparaison des différentes méthodes de classification dans la reconnaissance d'activités</caption><thead><tr><td>Méthode de classification</td><td>Taux de classification</td><td>Temps de classification (sec.)</td></tr></thead><tbody><tr><td>Les réseaux bayésiens</td><td>95.5</td><td>0.89</td></tr><tr><td>Les arbres de décision</td><td>89.8</td><td>0.39</td></tr><tr><td>Les réseaux de neurones</td><td>97</td><td>1.84</td></tr><tr><td>Notre approche proposée</td><td>98.5</td><td>0.80</td></tr></tbody></table>

de calcul plus important en comparaison avec les réseaux bayésiens et notre approche, la précision des trois méthodes reste assez similaire.

## 4.3 Conclusion

Dans ce chapitre, nous avons présenté la méthodologie utilisée afin d'évaluer la méthode adoptée. De plus, nous avons ainsi mis en avant les nouvelles technologies utilisées
dédiées à l'Internet des Objets. Nous avons finalement démontré l'efficacité de notre approche proposée à travers des expériences effectuées en laboratoire. Cela se reflète dans le fait qu'en divisant l'algorithme de classification des activités en deux phases, le taux de détection ne se dégrade pas pour conserver un taux de fausses alertes bas. En filtrant les données en premier lieu, puis, en générant des modèles d'activités anormales grâce aux activités suspectes, cela permet d'atteindre un ASR plus élevé que le MVS à une classe et le MVS(MLLR). L'approche utilisée présente des résultats pertinents. L'utilisation combinée des vêtements de protection individuelle et l'algorithme de classification des activités humaines en deux phases permet d'obtenir des résultats intéressants.

Ces résultats nous permettent de conclure que la méthodologie adoptée est efficace pour solutionner les problématiques explicitées.

Comme travaux futurs, il serait pertinent d'avoir une base de données plus conséquente afin de tester plus en profondeur notre approche et d'essayer d'améliorer les faiblesses de notre algorithme. Il serait pertinent aussi d'essayer d'explorer les effets de la variation des hyper-paramètres (par exemple, le seuil θ adoptée dans l'adaptation itérative) sur les expérimentations et les résultats récoltés.
# CHAPITRE 5

## CONCLUSION

Dans ce mémoire, une nouvelle approche a été proposée afin de détecter les activités anormales d'un opérateur portant des vêtements de protection individuelle intelligents. Afin de solutionner le problème posé par la rareté des activités anormales, un algorithme exécuté en deux phases de détection d'activités anormales a été utilisé.

Durant la première phase, un MVS à une classe a été construit en utilisant les activités normales, ce qui aide à filtrer la plupart des traces d'activités normales. Les traces suspectes vont ensuite servir à créer des modèles d'activité anormales suivant une régression à noyau non-linéaire. Un avantage majeur de cette approche est d'arriver à trouver le meilleur compromis entre le taux de détection et le taux de fausses alertes. On démontre l'efficacité de notre approche en utilisant des données réelles collectées grâce à des centrales inertielles insérées dans une semelle et un casque de sécurité.

Une limitation potentielle de notre approche est le risque de générer un grand nombre de modèles d'activités anormales lorsque les activités anormales deviennent subitement la norme. Cela peut se produire lorsqu'un utilisateur répète un comportement plusieurs fois pendant un certain temps. Pour résoudre ce problème, on a utilisé un algorithme de segmentation permettant de détecter les activités en utilisant des traces continues. Cet algorithme a la charge de partitionner les traces en segments consécutifs puis ces segments sont traités pour la détection en temps réel. Afin de réaliser la tâche de la segmentation,
on a utilisé une fonction nous permettant de quantifier la différence entre deux fonctions de densité de probabilité. Cela permet de calculer l'erreur quadratique. Le but de cette procédure est de construire un modèle de Markov caché utilisant les densités de probabilité. Ce modèle est responsable de trouver un nombre de fonction de densité de probabilité réduit qui va représenter les segments recherchés.

Les contributions majeures de ce travail de recherche sont : la conception de vêtements intelligents se présentant sous la forme

* d'un casque et une semelle tous deux équipés de capteurs sensoriels capable de mesurer les accélérations et les rotations d'un opérateur et

* un algorithme pouvant traiter en temps réel un flux de données provenant de ces vêtements de protection individuelle intelligents tout en résolvant la problématique posée par la rareté des activités anormales.

Cet algorithme est capable de détecter les comportements anormaux tout en gardant un faible taux de faux positifs. Ceci, grâce à la mise en œuvre d'une approche filtrant les activités normales en premier lieu pour ne garder que les données suspectes. En deuxième lieu, elle génère des modèles d'activités anormales pour arriver à mieux les reconnaître par la suite. C'est grâce à ces deux étapes que la méthode proposée permet d'obtenir un taux de détection élevé des activités anormales. En ce qui concerne les travaux futurs, nous aimerions explorer comment intégrer un planning intelligent des actions lorsqu'une activité anormale est découverte, en utilisant des méthodes statistiques tel que la méthode
«actionable data mining» [79].
BIBLIOGRAPHIE

[1] Felicity R Allen, Eliathamby Ambikairajah, Nigel H Lovell et Branko G Celler. Classification of a known sequence of motions and postures from accelerometry data using adapted Gaussian mixture models. *Physiological measurement*, 27(10): 935-951, 2006. ISSN 0967-3334.

[2] Mihael Ankerst, Markus M Breunig, Hans-Peter Kriegel et Jörg Sander. Optics : ordering points to identify the clustering structure. Dans *ACM Sigmod Record*, pages 49–60. ACM, 1999.

[3] Ling Bao et Stephen S. Intille. Activity Recognition from User-Annotated Acceleration Data. Dans *Pervasive Computing*, pages 1 – 17. Springer, 2004. ISBN 3540218351.

[4] Eya Barkallah, Martin JD Otis, Suzy Ngomo et Michel Heraud. Measuring operator's pain : Toward evaluating musculoskeletal disorder at work. Dans *Systems, Man, and Cybernetics (SMC), 2015 IEEE International Conference on*, pages 2366–2371. IEEE, 2015.

[5] V Barnett. *T. Lewis Outliers in statistical data*, volume 3. Wiley New York, 1994. ISBN ISBN : 978-0-471-93094-5.

[6] Sd Bay et Mark Schwabacher. Mining distance-based outliers in near linear time with randomization and a simple pruning rule. Dans *ACM SIGKDD international conference on Knowledge discovery and data mining*, pages 29–38. ACM, 2003. ISBN 1581137370.

[7] Richard Bellman. A markovian decision process. Rapport technique, DTIC Document, 1957.

[8] Yoshua Bengio et Paolo Frasconi. An Input/Output {HMM} Architecture. Dans G Tesauro, D S Touretzky et T K Leen, éditeurs, *Advances in Neural Information Processing Systems 7 (NIPS'94)*, pages 427–434. MIT Press, 1995.

[9] Derya Birant et Alp Kut. St-dbscan : An algorithm for clustering spatial-temporal data. *Data & Knowledge Engineering*, 60(1):208–221, 2007.

[10] Christopher M Bishop. *Neural networks for pattern recognition*. Oxford university press, 1995.

[11] Kevin Bouchard, Jean-Sébastien Bilodeau, Dany Fortin-Simard, Sebastien Gaboury, Bruno Bouchard et Abdenour Bouzouane. Human activity recognition in smart homes based on passive rfid localization. Dans *Proceedings of the 7th Inter-*
national Conference on PErvasive Technologies Related to Assistive Environments, page 1. ACM, 2014.

[12] Markus M. Breunig, Hans-Peter Kriegel, Raymond T. Ng et Jörg Sander. LOF : Identifying Density-Based Local Outliers. Dans *Proceedings of the 2000 Acm Sigmod International Conference on Management of Data*, pages 1–12. ACM, 2000. ISBN 1581132182.

[13] By Chire (Own work) [CC BY-SA 3.0 (http://creativecommons.org/licenses/by-sa/3.0)], via Wikimedia Commons. Dbscan-illustration, 2011. URL https://commons.wikimedia.org/wiki/File:DBSCAN-Illustration.svg#/media/File:DBSCAN-Illustration.svg. [Online; accessed 29-September-2016].

[14] C. J. Leggetter et P. C. Woodland. Flexible Speaker Adaptation Using Maximum Likelihood Linear Regression. Dans *Proceedings ARPA, Spoken Language Technology Workshop*, volume 9, pages 110–115. Citeseer, 1995.

[15] de la santé et de la sécurité du travail Commission des normes, de l'équité. Principales statistiques : Accidents du travail décès et maladies professionnelles, 2013.

[16] T V Duong, H H Bui, D Q Phung et S Venkatesh. Activity Recognition And Abnormality Detection With The Switching Hidden Semi-Markov Model Computer Vision And Pattern Recognition, 2005. Cvpr 2005. Dans *IEEE Computer Society Conference On*, volume 1, pages 20–25. IEEE, 2005.

[17] D R Engelbrecht, T A Cahill et P J Feeney. Electrostatic Effects on Gravimetric Analysis of Membrane Filters. *Journal of the Air Pollution Control Association*, 30(4):391–392, 1980. ISSN 00022470.

[18] O P E N A C C Ess. A Review of A ccelerometry-Based Wearable Motion Detectors for Physical Activity Monitoring. *Sensors*, 10(8):7772–7788, 2010. ISSN 1424-8220.

[19] Martin Ester, Hans-Peter Kriegel, Jörg Sander, Xiaowei Xu et al. A density-based algorithm for discovering clusters in large spatial databases with noise. Dans *Kdd*, pages 226–231, 1996.

[20] Lorenzo Faggion. Development of a human presence detection system using a novel electrostatically-enhanced displacement current sensing technique. 2016.

[21] Douglas H Fisher. Knowledge acquisition via incremental conceptual clustering. *Machine learning*, 2(2):139–172, 1987.

[22] Canadian Centre for Occupational Health et Safety. Canadian Center for Occupa-
tional Health and Safety, 2014.

[23] Eibe Frank, Mark Hall, Len Trigg, Geoffrey Holmes et Ian H Witten. Data mining in bioinformatics using weka. *Bioinformatics*, 20(15):2479-2481, 2004.

[24] A Godfrey, R Conway, D Meagher et G Ólaighin. Direct measurement of human movement by accelerometry. *Medical Engineering & Physics*, 30(10):1364-1386, 2008. ISSN 1350-4533.

[25] Sudipto Guha, Rajeev Rastogi et Kyuseok Shim. Cure : an efficient clustering algorithm for large databases. Dans *ACM SIGMOD Record*, pages 73-84. ACM, 1998.

[26] Lau H.-Y., Tong K.-Y. et Zhu H. Support vector machine for classification of walking conditions using miniature kinematic sensors. *Medical and Biological Engineering and Computing*, 46(6):563-573, 2008. ISSN 0140-0118.

[27] Jiawei Han, Jian Pei et Micheline Kamber. *Data mining : concepts and techniques*. Elsevier, 2011.

[28] Frederick D Hansen. Human error : A concept analysis. *Journal of air transportation*, 11(3):61-77, 2006.

[29] Martha Alice Hearst. *Context and structure in automated full-text information access*. Thèse de doctorat, University of California, Berkeley, 1994.

[30] Beeke E. Heldberg, Thomas Kautz, Heike Leutheuser, Rudiger Hopfengartner, Burkhard S. Kasper et Bjoern M. Eskofier. Using wearable sensors for semiology-independent seizure detection - Towards ambulatory monitoring of epilepsy. Dans *Proceedings of the Annual International Conference of the IEEE Engineering in Medicine and Biology Society, EMBS*, volume 2015-Novem, pages 5593-5596. IEEE, 2015. ISBN 9781424492718.

[31] Peter a. Jarvis, Teresa F. Lunt et Karen L. Myers. Identifying terrorist activity with AI plan-recognition technology. *AI Magazine*, 26(3):73-81, 2005. ISSN 07384602.

[32] D.M. Karantonis, M.R. Narayanan, M. Mathie, N.H. Lovell et B.G. Celler. Implementation of a Real-Time Human Movement Classifier Using a Triaxial Accelerometer for Ambulatory Monitoring. *IEEE Transactions on Information Technology in Biomedicine*, 10(1):156-167, 2006. ISSN 1089-7771.

[33] A Kehagias et V Petridis. Time-series segmentation using predictive modular neural networks. *Neural Computation*, 1997.
[34] Eamonn Keogh, Selina Chu, David Hart et Michael Pazzani. An online algorithm for segmenting time series. Dans *Data Mining, 2001. ICDM 2001, Proceedings* IEEE International Conference on, pages 289–296. IEEE, 2001.

[35] Nicky Kern, Bernt Schiele, Holger Junker, Paul Lukowicz et Gerhard Troster. Wearable sensing to annotate meeting recordings. *Proceedings - International Symposium on Wearable Computers, ISWC*, 2002-Janua(5):186–193, 2002. ISSN 15504816.

[36] Adil Mehmood Khan, Young-Koo Lee, Sungyoung Lee et Tae-Seoung Kim. A Triaxial Accelerometer-based Physical Activity Recognition via Augmented Signal Features and a Hierarchical Recognizer. *IEEE Transactions on Information Technology in Biomedicine*, 14(5):1166–1172, 2010. ISSN 1089-7771.

[37] K Kiani, C J Snijders et E S Gelsema. Computerized analysis of daily life motor activity for ambulatory monitoring. *Technology and health care : official journal of the European Society for Engineering and Medicine*, 5(4):307–18, 1997. ISSN 0928-7329.

[38] Jens Kohlmorgen et Steven Lemm. A dynamic hmm for on-line segmentation of sequential data. *Advances in Neural Information Processing Systems 14*, 1:793–800, 2001.

[39] Jens Kohlmorgen, K-R Müller, J Rittweger et Klaus Pawelzik. Identification of nonstationary dynamics in physiological recordings. *Biological Cybernetics*, 83 (1):73–84, 2000.

[40] Teuvo Kohonen. Self-organizing maps, vol. 30 of springer series in information sciences. *ed : Springer Berlin*, 2001.

[41] Aleksandar Lazarevic, Levent Ertoz, Vipin Kumar, Aysel Ozgur et Jaideep Srivastava. A Comparative Study of Anomaly Detection Schemes in Network Intrusion Detection. Dans *In Proceedings of the Third SIAM International Conference on Data Mining*, pages 132–138. SIAM, 2003.

[42] Jonathan Lester, Tanzeem Choudhury, Nicky Kern, Gaetano Borriello et Blake Hannaford. A Hybrid Discriminative/Generative Approach for Modeling Human Activities. Dans *IJCAI-05 (International Joint Conference on Artificial Intelligence)*, volume 5, pages 766–772. Citeseer, 2005.

[43] Ping Li, Ramy Meziane, Martin J-D Otis, Hassan Ezzaidi et Philippe Cardou. A smart safety helmet using imu and eeg sensors for worker fatigue detection. Dans *Robotic and Sensors Environments (ROSE), 2014 IEEE International Symposium on*, pages 55–60. IEEE, 2014.
[44] Stefan Liehr, Klaus Pawelzik, Jens Kohlmorgen et Klaus Robert Müller. Hidden Markov mixtures of experts with an application to EEG recordings from sleep. *Theory in Biosciences*, 118(3-4):246-260, 1999. ISSN 1431-7613.

[45] Ulrich Lindemann, A. Hock, M. Stuber, W. Keck et C. Becker. Evaluation of a fall detector based on accelerometers : A pilot study. *Medical and Biological Engineering and Computing*, 43(5):548-551, 2005. ISSN 01400118.

[46] Xi Long, Bin Yin et Ronald M Aarts. Single-accelerometer-based daily physical activity classification. Dans *Engineering in Medicine and Biology Society, 2009. EMBC 2009. Annual International Conference of the IEEE*, pages 6107-6110. IEEE, 2009.

[47] G M Lyons, K M Culhane, D Hilton, P A Grace et D Lyons. A description of an accelerometer-based mobilitiy monitoring technique. *Medical Engineering and Physics*, 27(6):497-504, 2005.

[48] Junshui Ma et Simon Perkins. Time-series novelty detection using one-class support vector machines. Dans *Neural Networks, 2003. Proceedings of the International Joint Conference on*, volume 3, pages 1741-1745. IEEE, 2003. ISBN 0780378989.

[49] James MacQueen et al. Some methods for classification and analysis of multivariate observations. Dans *Proceedings of the fifth Berkeley symposium on mathematical statistics and probability*, pages 281-297. Oakland, CA, USA., 1967.

[50] Prasanta Chandra Mahalanobis. On tests and measures of group divergence. Part I : Theoretical formulae. *Journal and Proceedings, Asiatic Society of Bengal*, 26 (4):541-588, 1930. ISSN 1095-7103.

[51] Andrea Mannini et Angelo Maria Sabatini. Machine learning methods for classifying human physical activity from on-body accelerometers. *Sensors*, 10(2):1154-1175, 2010.

[52] Andrea Mannini et Angelo Maria Sabatini. Machine learning methods for classifying human physical activity from on-body accelerometers. *Sensors*, 10(2):1154-1175, 2010. ISSN 14248220.

[53] M. J. Mathie, B. G. Celler, Nigel H. Lovell et A. C F Coster. Classification of basic daily movements using a triaxial accelerometer. *Medical and Biological Engineering and Computing*, 42(5):679-687, 2004. ISSN 01400118.

[54] Merryn Joy Mathie. *Monitoring and interpreting human movement patterns using a triaxial accelerometer*. Thèse de doctorat, The University of New South Wales, 2003.
[55] Uwe Maurer, Asim Smailagic, Daniel P Siewiorek et Michael Deisher. Activity recognition and monitoring using multiple sensors on different body positions. Dans *Wearable and Implantable Body Sensor Networks, 2006. BSN 2006. International Workshop on*, pages 4–pp. IEEE, 2006. ISBN 0769525474.

[56] Gerwin A.L. Meijer, Klaas R. Westerterp, Francois M.H. Verhoeven, Hans B.M. Koper et Foppe ten Hoor. Methods to Assess Physical Activity with Special Reference to Motion Sensors and Accelerometers. *Transactions on Biomedical Engineering*, 38(3):221–229, 1991.

[57] Hylton B. Menz, Stephen R. Lord et Richard C. Fitzpatrick. Age-related differences in walking stability. *Age and Ageing*, 32(2):137–142, 2003. ISSN 00020729.

[58] Ramy Meziane, Ping Li, Martin J D Otis, Hassan Ezzaidi et Philippe Cardou. Safer hybrid workspace using human-robot interaction while sharing production activities. Dans *ROSE 2014 - 2014 IEEE International Symposium on RObotic and SEnSors Environments, Proceedings*, pages 37–42. IEEE, 2014. ISBN 9781479949274.

[59] Bijan Najafi, Kamiar Aminian, Anisoara Paraschiv-ionescu, François Loew, Christophe J Büla, Philippe Robert et Senior Member. Ambulatory System for Human Motion Analysis Using a Kinematic Sensor: Monitoring of Daily Physical Activity in the Elderly. *Biomedical Engineering, IEEE Transactions on*, 50(6):711–723, 2003.

[60] Raymond T. Ng et Jiawei Han. Clarans: A method for clustering objects for spatial data mining. *IEEE transactions on knowledge and data engineering*, 14(5):1003–1016, 2002.

[61] Martin Otis. Interaction human-robot. Université du Québec à Chioutimi, 2016.

[62] Martin J-D Otis, Johannes C Ayena, Louis E Tremblay, Pascal E Fortin et Bob-Antoine J Ménélas. Use of an enactive insole for reducing the risk of falling on different types of soil using vibrotactile cueing for the elderly. *PloS one*, 11(9): e0162107, 2016.

[63] Martin J D Otis et Bob Antoine J Menelas. Toward an augmented shoe for preventing falls related to physical conditions of the soil. Dans *Conference Proceedings - IEEE International Conference on Systems, Man and Cybernetics*, pages 3281–3285. IEEE, 2012. ISBN 9781467317146.

[64] L R Rabiner. A tutorial on hidden Markov models and selected applications in speech. *Proc. IEEE*, 77(2):257–286, 1989.

[65] Sridhar Ramaswamy, Rajeev Rastogi et Kyuseok Shim. Efficient algorithms for mining outliers from large data sets. Dans *Proceedings of the 2000 ACM SIGMOD*
international conference on Management of data - SIGMOD '00, pages 427-438.
ACM, 2000. ISBN 1581132174.

[66] Nishkam Ravi, Nikhil Dandekar, Preetham Mysore et Michael L Littman. Activity recognition from accelerometer data. Dans *Proceedings of the Conference on Innovative Applications of Artificial Intelligence*, volume 5, pages 1541–1546, 2005.

[67] James Reason. *Human error*. Cambridge university press, 1990.

[68] B Schölkopf, J C Platt, J Shawe-Taylor, a J Smola et R C Williamson. Estimating the support of a high-dimensional distribution. *Neural computation*, 13(7):1443–1471, 2001. ISSN 0899-7667.

[69] John W Senders, Neville P Moray et al. *Human error : Cause, prediction, and reduction*. L. Erlbaum Associates Hillsdale, NJ, 1991.

[70] Z Syed. Accurate personal positioning using inertial and gps. Dans *Proceedings of the ION GNSS*, 2009.

[71] Gineke A ten Holt, Marcel JT Reinders et EA Hendriks. Multi-dimensional dynamic time warping for gesture recognition. Dans *Thirteenth annual conference of the Advanced School for Computing and Imaging*, volume 300, 2007.

[72] T Togawa et F A Spelman. *Sensors in Medicine and Health Care*, volume 3. John Wiley & Sons, 2004. ISBN 3527295569.

[73] IW Tsang, JT Kwok et Brian Mak. Fast speaker adaption via maximum penalized likelihood kernel regression. Dans *Acoustics, Speech and ...*, volume 1, pages 997–1000. IEEE, 2006. ISBN 142440469X.

[74] Julien Vandewynckel, Martin Otis, Bruno Bouchard, Bob Antoine Jerry Ménélas et Abdenour Bouzouane. Towards a real-time error detection within a smart home by using activity recognition with a shoe-mounted accelerometer. *Procedia Computer Science*, 19(Ant):516–523, 2013. ISSN 18770509.

[75] Hrishikesh D Vinod. Integer programming and the theory of grouping. *Journal of the American Statistical Association*, 64(326):506–519, 1969.

[76] Paul Viola et M Jones. Rapid object detection using a boosted cascade of simple features. Dans *Proceedings of the IEEE Computer Society Conference on Computer Vision and Pattern Recognition (CVPR)*, pages 511–518. Citeseer, 2001. ISBN 0-7695-1272-0.

[77] Wallace Wong, Lin Shen Liew, Chean Hung Lai et Llewellyn Liu. Accurate indoor positioning technique using RSSI assisted inertial measurement. Dans *Lec-
*ture Notes in Electrical Engineering*, volume 235 LNEE, pages 121–129. Springer, 2013. ISBN 9789400765153.

[78] Tao Xiang et Shaogang Gong. Video behaviour profiling and abnormality detection without manual labelling. Dans *Proceedings of the IEEE International Conference on Computer Vision*, volume II, pages 1238–1245. IEEE, 2005. ISBN 076952334X.

[79] Qiang Yang, Jie Yin, Charles Ling et Rong Pan. Extracting actionable knowledge from decision trees. *IEEE Transactions on Knowledge and Data Engineering*, 19 (1):43–56, 2007.

[80] Yiyu Yao, Fei-Yue Wang, Jue Wang et Daniel Zeng. Rule + Exception Strategies for Security Information Analysis. *IEEE Intelligent Systems*, 20(5):52–57, 2005. ISSN 15411672.

[81] Mohammadreza Yavari, Maozhen Li, Siguang Li et Man Qi. Parallelizing abnormal event detection in crowded scenes with GPU. Dans *2015 12th International Conference on Fuzzy Systems and Knowledge Discovery (FSKD)*, pages 274–277. IEEE, aug 2015. ISBN 978-1-4673-7682-2.

[82] Jie Yin, Qiang Yang, Senior Member et Jeffrey Junfeng Pan. Sensor-Based Abnormal Human-Activity Detection. *Knowledge and Data Engineering, IEEE Transactions on*, 20(8):1082–1090, 2008.

[83] Tian Zhang, Raghu Ramakrishnan et Miron Livny. Birch: an efficient data clustering method for very large databases. Dans *ACM Sigmod Record*, volume 25, pages 103–114. ACM, 1996.

[84] X Zhao, S Saeedi, N El-Sheimy, Z Syed et C Goodall. Towards arbitrary placement of multi-sensors assisted mobile navigation system. Dans *Proceedings of the 23rd International Technical Meeting of The Satellite Division of the Institute of Navigation (ION GNSS 2010)*, pages 556–564, 2001.
# Annexe I

## Approbation éthique

Ci-dessous l'approbation éthique accordée par le Comité d'éthique de la recherche de l'Université du Québec à Chicoutimi (UQAC) :

<figure><img src="image_38.png" /><figcaption>Figure I.1 – L'approbation éthique accordée par le Comité d'éthique de la recherche de l'Université du Québec à Chicoutimi (UQAC)</figcaption></figure>