Modèles d'apprentissage profond pour la reconnaissance de l'activité humaine
La reconnaissance de l'activité humaine, ou HAR, est une tâche difficile de classification de séries chronologiques.
Cela implique de prédire le mouvement d'une personne sur la base des données de capteurs et implique traditionnellement une expertise approfondie du domaine et des méthodes de traitement du signal pour concevoir correctement des fonctionnalités à partir des données brutes afin de s'adapter à un modèle d'apprentissage automatique.
Récemment, des méthodes d'apprentissage en profondeur telles que les réseaux de neurones convolutifs et les réseaux de neurones récurrents se sont révélées capables et ont même obtenu des résultats de pointe en apprenant automatiquement des fonctionnalités à partir des données brutes des capteurs.
Dans cet article, vous découvrirez le problème de la reconnaissance de l'activité humaine et les méthodes d'apprentissage profond qui atteignent des performances de pointe sur ce problème.
Après avoir lu cet article, vous saurez :
- La reconnaissance d'activité consiste à prédire le mouvement d'une personne, souvent à l'intérieur, sur la base de données de capteurs, comme l'accéléromètre d'un smartphone.
- Les flux de données de capteurs sont souvent divisés en sous-séquences appelées fenêtres, et chaque fenêtre est associée à une activité plus large, appelée approche de fenêtre glissante.
- Les réseaux de neurones convolutifs et les réseaux de mémoire à long terme, et peut-être les deux ensemble, sont les mieux adaptés pour apprendre des caractéristiques à partir des données brutes des capteurs et prédire le mouvement associé.
Démarrez votre projet avec mon nouveau livre Deep Learning for Time Series Forecasting, comprenant des tutoriels pas à pas et les fichiers code source Python pour tous les exemples.
Commençons.
Aperçu
Cet article est divisé en cinq parties ; ils sont:
- Reconnaissance de l'activité humaine
- Avantages de la modélisation des réseaux neuronaux
- Représentation des données d'apprentissage supervisé
- Modèles de réseaux neuronaux convolutifs
- Modèles de réseaux neuronaux récurrents
Reconnaissance de l'activité humaine
La reconnaissance de l'activité humaine, ou HAR en abrégé, est un vaste domaine d'étude visant à identifier le mouvement ou l'action spécifique d'une personne sur la base des données de capteurs.
Les mouvements sont souvent des activités typiques effectuées à l’intérieur, comme marcher, parler, se tenir debout et s’asseoir. Il peut également s'agir d'activités plus ciblées telles que les types d'activités effectuées dans une cuisine ou dans une usine.
Les données du capteur peuvent être enregistrées à distance, par exemple par vidéo, radar ou autres méthodes sans fil. Alternativement, les données peuvent être enregistrées directement sur le sujet, par exemple en transportant du matériel personnalisé ou des téléphones intelligents équipés d'accéléromètres et de gyroscopes.
La reconnaissance d'activité basée sur des capteurs recherche des connaissances approfondies de haut niveau sur les activités humaines à partir d'une multitude de lectures de capteurs de bas niveau.
— Apprentissage profond pour la reconnaissance d'activité basée sur des capteurs : une enquête, 2018.
Historiquement, la collecte de données de capteurs pour la reconnaissance d'activité était difficile et coûteuse, nécessitant du matériel personnalisé. Désormais, les téléphones intelligents et autres appareils de suivi personnels utilisés pour surveiller la condition physique et la santé sont bon marché et omniprésents. En tant que telles, les données des capteurs de ces appareils sont moins coûteuses à collecter, plus courantes et constituent donc une version plus couramment étudiée du problème général de reconnaissance d’activité.
Le problème est de prédire l’activité à partir d’un instantané des données des capteurs, généralement des données provenant d’un ou d’un petit nombre de types de capteurs. Généralement, ce problème est présenté comme une tâche de classification de séries chronologiques univariées ou multivariées.
Il s'agit d'un problème difficile car il n'existe aucun moyen évident ou direct de relier les données enregistrées des capteurs à des activités humaines spécifiques et chaque sujet peut effectuer une activité avec des variations significatives, entraînant des variations dans les données enregistrées des capteurs.
L'objectif est d'enregistrer les données des capteurs et les activités correspondantes pour des sujets spécifiques, d'ajuster un modèle à partir de ces données et de généraliser le modèle pour classer l'activité de nouveaux sujets invisibles à partir des données de leurs capteurs.
Avantages de la modélisation des réseaux neuronaux
Traditionnellement, des méthodes issues du domaine du traitement du signal étaient utilisées pour analyser et distiller les données collectées par les capteurs.
Ces méthodes étaient destinées à l'ingénierie des fonctionnalités, créant des fonctionnalités et des vues spécifiques à un domaine, à un capteur ou au traitement du signal des données d'origine. Des modèles statistiques et d'apprentissage automatique ont ensuite été entraînés sur la version traitée des données.
Une limite de cette approche réside dans le traitement du signal et l'expertise dans le domaine requis pour analyser les données brutes et concevoir les fonctionnalités requises pour adapter un modèle. Cette expertise serait requise pour chaque nouvel ensemble de données ou modalité de capteur. Essentiellement, c’est cher et non évolutif.
Cependant, dans la plupart des tâches HAR quotidiennes, ces méthodes peuvent fortement s'appuyer sur une extraction heuristique de caractéristiques artisanales, qui est généralement limitée par la connaissance du domaine humain. De plus, seules des fonctionnalités superficielles peuvent être apprises par ces approches, ce qui entraîne une dégradation des performances pour les tâches non supervisées et incrémentielles. En raison de ces limitations, les performances des méthodes conventionnelles de [reconnaissance de formes] sont limitées en termes de précision de classification et de généralisation des modèles.
— Apprentissage profond pour la reconnaissance d'activité basée sur des capteurs : une enquête, 2018.
Idéalement, des méthodes d’apprentissage pourraient être utilisées pour apprendre automatiquement les fonctionnalités requises pour effectuer directement des prédictions précises à partir des données brutes. Cela permettrait d’adopter de nouveaux problèmes, de nouveaux ensembles de données et de nouvelles modalités de capteurs rapidement et à moindre coût.
Récemment, les modèles de réseaux neuronaux profonds ont commencé à tenir leurs promesses en matière d’apprentissage des fonctionnalités et obtiennent des résultats de pointe en matière de reconnaissance de l’activité humaine. Ils sont capables d'effectuer un apprentissage automatique des fonctionnalités à partir des données brutes des capteurs et de surpasser les modèles adaptés aux fonctionnalités spécifiques à un domaine conçues à la main.
[…] , les procédures d'extraction de fonctionnalités et de création de modèles sont souvent effectuées simultanément dans les modèles d'apprentissage en profondeur. Les fonctionnalités peuvent être apprises automatiquement via le réseau au lieu d'être conçues manuellement. En outre, le réseau neuronal profond peut également extraire une représentation de haut niveau dans la couche profonde, ce qui le rend plus adapté aux tâches complexes de reconnaissance d'activités.
— Apprentissage profond pour la reconnaissance d'activité basée sur des capteurs : une enquête, 2018.
Il existe deux approches principales des réseaux neuronaux qui sont appropriées pour la classification des séries chronologiques et qui se sont révélées efficaces en matière de reconnaissance d'activité à l'aide de données de capteurs provenant de téléphones intelligents de base et d'appareils de suivi de la condition physique.
Il s'agit de modèles de réseaux neuronaux convolutifs et de modèles de réseaux neuronaux récurrents.
Il est recommandé que RNN et LSTM reconnaissent les activités courtes qui ont un ordre naturel, tandis que CNN est plus apte à déduire des activités répétitives à long terme. La raison en est que RNN pourrait utiliser la relation chronologique entre les lectures des capteurs, et CNN est plus capable d'apprendre des fonctionnalités approfondies contenues dans des modèles récursifs.
— Apprentissage profond pour la reconnaissance d'activité basée sur des capteurs : une enquête, 2018.
Représentation des données d'apprentissage supervisé
Avant de plonger dans les réseaux neuronaux spécifiques pouvant être utilisés pour la reconnaissance de l’activité humaine, nous devons parler de la préparation des données.
Les deux types de réseaux neuronaux adaptés à la classification de séries chronologiques nécessitent que les données soient préparées d'une manière spécifique afin de s'adapter à un modèle. Autrement dit, d'une manière « d'apprentissage supervisé » qui permet au modèle d'associer les données de signal à une classe d'activité.
Une approche simple de préparation des données qui a été utilisée à la fois pour les méthodes classiques d'apprentissage automatique sur les fonctionnalités créées à la main et pour les réseaux de neurones consiste à diviser les données du signal d'entrée en fenêtres de signaux, où une fenêtre donnée peut avoir une à quelques secondes d'observation. données. C'est ce qu'on appelle souvent une « fenêtre coulissante ».
La reconnaissance de l'activité humaine vise à déduire les actions d'une ou plusieurs personnes à partir d'un ensemble d'observations captées par des capteurs. Habituellement, cela est effectué en suivant une approche de fenêtre glissante de longueur fixe pour l'extraction des caractéristiques où deux paramètres doivent être fixés : la taille de la fenêtre et le décalage.
— Une approche de fenêtre glissante dynamique pour la reconnaissance d'activité, 2011
Chaque fenêtre est également associée à une activité spécifique. Une fenêtre de données donnée peut avoir plusieurs variables, telles que les axes x, y et z d'un capteur accéléromètre.
Rendons cela concret avec un exemple.
Nous avons des données de capteur pendant 10 minutes ; cela peut ressembler à :
x, y, z, activity
1.1, 2.1, 0.1, 1
1.2, 2.2, 0.2, 1
1.3, 2.3, 0.3, 1
...
Si les données sont enregistrées à 8 Hz, cela signifie qu'il y aura huit lignes de données pour une seconde de temps écoulé lors de l'exécution d'une activité.
Nous pouvons choisir qu'une fenêtre de données représente une seconde de données ; cela signifie huit lignes de données pour un capteur 8 Hz. Si nous avons des données x, y et z, cela signifie que nous aurions 3 variables. Par conséquent, une seule fenêtre de données serait un tableau bidimensionnel avec huit pas de temps et trois caractéristiques.
Une fenêtre représenterait un échantillon. Une minute de données représenterait 480 points de données de capteur, soit 60 fenêtres de huit pas de temps. Le total de 10 minutes de données représenterait 4 800 points de données, soit 600 fenêtres de données.
Il est pratique de décrire la forme de nos données de capteur préparées en termes de nombre d'échantillons ou de fenêtres, de nombre de pas de temps dans une fenêtre et de nombre de caractéristiques observées à chaque pas de temps.
[samples, time steps, features]
Notre exemple de 10 minutes de données d'accéléromètre enregistrées à 8 Hz serait résumé comme un tableau tridimensionnel avec les dimensions :
[600, 8, 3]
Il n'y a pas de taille de fenêtre idéale et cela dépend vraiment du modèle spécifique utilisé, de la nature des données de capteur collectées et des activités classées.
Il y a une tension dans la taille de la fenêtre et dans la taille du modèle. Les fenêtres plus grandes nécessitent des modèles plus grands, plus lents à s'entraîner, tandis que les fenêtres plus petites nécessitent des modèles plus petits, beaucoup plus faciles à installer.
Intuitivement, réduire la taille de la fenêtre permet une détection d’activité plus rapide, ainsi qu’une réduction des besoins en ressources et en énergie. Au contraire, de grandes fenêtres de données sont normalement prises en compte pour la reconnaissance d'activités complexes.
— Impact de la taille de la fenêtre sur la reconnaissance de l'activité humaine, 2014.
Néanmoins, il est courant d’utiliser une à deux secondes de données de capteurs afin de classifier un fragment actuel d’une activité.
À partir des résultats, il a été démontré que des fenêtres réduites (2 s ou moins) fournissent les performances de détection les plus précises. En fait, la reconnaissance la plus précise est obtenue pour des fenêtres très courtes (0,25 à 0,5 s), conduisant à une reconnaissance parfaite de la plupart des activités. Contrairement à ce que l’on pense souvent, cette étude démontre que de grandes tailles de fenêtres ne se traduisent pas nécessairement par de meilleures performances de reconnaissance.
— Impact de la taille de la fenêtre sur la reconnaissance de l'activité humaine, 2014.
Il existe un risque que la division du flux de données des capteurs en fenêtres entraîne des fenêtres qui manquent la transition d'une activité à une autre. En tant que tel, il était traditionnellement courant de diviser les données en fenêtres avec un chevauchement de telle sorte que la première moitié de la fenêtre contienne les observations de la dernière moitié de la fenêtre précédente, dans le cas d'un chevauchement de 50 %.
[…] une longueur incorrecte peut tronquer une instance d'activité. Dans de nombreux cas, des erreurs apparaissent au début ou à la fin des activités, lorsque la fenêtre chevauche la fin d'une activité et le début de la suivante. Dans d'autres cas, la longueur de la fenêtre peut être trop courte pour fournir les meilleures informations pour le processus de reconnaissance.
— Une approche de fenêtre glissante dynamique pour la reconnaissance d'activité, 2011
Il n’est pas clair si des fenêtres avec chevauchement sont nécessaires pour un problème donné.
Lors de l'adoption de modèles de réseaux neuronaux, l'utilisation de chevauchements, tels qu'un chevauchement de 50 %, doublera la taille des données d'entraînement, ce qui peut faciliter la modélisation d'ensembles de données plus petits, mais peut également conduire à des modèles qui surajustent l'ensemble de données d'entraînement.
Un chevauchement entre fenêtres adjacentes est toléré pour certaines applications ; cependant, cette méthode est moins fréquemment utilisée.
— Impact de la taille de la fenêtre sur la reconnaissance de l'activité humaine, 2014.
Modèles de réseaux neuronaux convolutifs
Les modèles de réseaux neuronaux convolutifs, ou CNN en abrégé, sont un type de réseau neuronal profond développé pour être utilisé avec des données d'image, par ex. comme la reconnaissance de l'écriture manuscrite.
Ils se sont révélés très efficaces pour résoudre des problèmes complexes de vision par ordinateur lorsqu’ils sont formés à grande échelle pour des tâches telles que l’identification et la localisation d’objets dans des images et la description automatique du contenu des images.
Ce sont des modèles composés de deux principaux types d’éléments : les couches convolutives et les couches de pooling.
Les couches convolutives lisent une entrée, telle qu'une image 2D ou un signal 1D, à l'aide d'un noyau qui lit par petits segments à la fois et parcourt l'ensemble du champ d'entrée. Chaque lecture aboutit à une entrée qui est projetée sur une carte de filtre et représente une interprétation interne de l'entrée.
Les couches de regroupement prennent les projections de la carte des caractéristiques et les distillent jusqu'aux éléments les plus essentiels, comme l'utilisation d'un processus de moyenne ou de maximisation du signal.
Les couches de convolution et de regroupement peuvent être répétées en profondeur, fournissant ainsi plusieurs couches d'abstraction des signaux d'entrée.
La sortie de ces réseaux est souvent une ou plusieurs couches entièrement connectées qui interprètent ce qui a été lu et mappent cette représentation interne à une valeur de classe.
Pour plus d'informations sur les réseaux de neurones convolutifs, vous pouvez consulter l'article :
- Cours intensif sur les réseaux de neurones convolutifs pour l'apprentissage automatique
Les CNN peuvent être appliqués aux données de reconnaissance de l’activité humaine.
Le modèle CNN apprend à mapper une fenêtre donnée de données de signal à une activité où le modèle lit chaque fenêtre de données et prépare une représentation interne de la fenêtre.
Lorsqu'il est appliqué à la classification de séries chronologiques comme HAR, CNN présente deux avantages par rapport aux autres modèles : la dépendance locale et l'invariance d'échelle. La dépendance locale signifie que les signaux proches dans HAR sont susceptibles d'être corrélés, tandis que l'invariance d'échelle fait référence à l'invariant d'échelle pour différentes allures ou fréquences.
— Apprentissage profond pour la reconnaissance d'activité basée sur des capteurs : une enquête, 2018.
Le premier travail important utilisant les CNN pour HAR a été réalisé par Ming Zeng et al dans leur article de 2014 « Convolutional Neural Networks for Human Activity Recognition using Mobile Sensors ».
Dans l'article, les auteurs développent un modèle CNN simple pour les données de l'accéléromètre, dans lequel chaque axe des données de l'accéléromètre est introduit dans des couches convolutives distinctes, regroupant les couches, puis concaténées avant d'être interprétées par des couches cachées entièrement connectées.
La figure ci-dessous tirée de l'article montre clairement la topologie du modèle. Il fournit un bon modèle sur la manière dont le CNN peut être utilisé pour les problèmes HAR et la classification des séries chronologiques en général.
Il existe de nombreuses façons de modéliser les problèmes HAR avec les CNN.
Un exemple intéressant est celui de Heeryon Cho et Sang Min Yoon dans leur article de 2018 intitulé « Divide and Conquer-Based 1D CNN Human Activity Recognition Using Test Data Sharpening ».
Dans ce document, ils divisent les activités entre celles qui impliquent du mouvement, appelées « dynamiques », et celles où le sujet est stationnaire, appelées « statiques », puis développent un modèle CNN pour faire la distinction entre ces deux classes principales. Ensuite, au sein de chaque classe, des modèles sont développés pour distinguer les activités de ce type, telles que « marcher » pour les activités dynamiques et « assis » pour les activités statiques.
Ils parlent d’une approche de modélisation en deux étapes.
Au lieu de reconnaître directement les activités individuelles à l'aide d'un seul classificateur à 6 classes, nous appliquons une approche diviser pour régner et construisons un processus de reconnaissance d'activité en deux étapes, dans lequel les activités abstraites, c'est-à-dire l'activité dynamique et statique, sont d'abord reconnues à l'aide d'un 2- classe ou classificateur binaire, puis les activités individuelles sont reconnues à l'aide de deux classificateurs à 3 classes.
— Reconnaissance de l'activité humaine 1D CNN basée sur Diviser et conquérir à l'aide de l'affinage des données de test, 2018.
Des modèles CNN assez vastes ont été développés, ce qui a permis aux auteurs de revendiquer des résultats de pointe sur des ensembles de données standard exigeants de reconnaissance de l'activité humaine.
Une autre approche intéressante a été proposée par Wenchao Jiang et Zhaozheng Yin dans leur article de 2015 intitulé « Human Activity Recognition Using Wearable Sensors by Deep Convolutional Neural Networks ».
Au lieu d'utiliser des CNN 1D sur les données du signal, ils combinent les données du signal pour créer des « images » qui sont ensuite transmises à un CNN 2D et traitées comme des données d'image avec des convolutions le long de l'axe temporel des signaux. et à travers les variables du signal, en particulier les données de l'accéléromètre et du gyroscope.
Premièrement, les signaux bruts sont empilés ligne par ligne dans une image de signal [….]. Dans l'image du signal, chaque séquence de signal a la chance d'être adjacente à toutes les autres séquences, ce qui permet à DCNN d'extraire des corrélations cachées entre les signaux voisins. Ensuite, la transformée de Fourier discrète (TFD) 2D est appliquée à l'image du signal et son ampleur est choisie comme image d'activité.
— Reconnaissance de l'activité humaine à l'aide de capteurs portables par des réseaux de neurones à convolution profonde, 2015.
Vous trouverez ci-dessous une représentation du traitement des données brutes des capteurs en images, puis des images en une « image d'activité », résultat d'une transformée de Fourier discrète.
Enfin, un autre bon article sur le sujet est celui de Charissa Ann Ronao et Sung-Bae Cho en 2016 intitulé « Reconnaissance de l'activité humaine avec des capteurs de smartphone utilisant des réseaux neuronaux d'apprentissage profond ».
Une étude minutieuse de l'utilisation des CNN est réalisée, montrant que des tailles de noyau plus grandes de données de signal sont utiles et une mise en commun limitée.
Les expériences montrent que les réseaux virtuels dérivent effectivement des fonctionnalités pertinentes et plus complexes avec chaque couche supplémentaire, bien que la différence de niveau de complexité des fonctionnalités diminue avec chaque couche supplémentaire. Une période de corrélation locale temporelle plus large peut être exploitée (1×9 – 1×14) et une faible taille de pooling (1×2 – 1×3) s’avère bénéfique.
— Reconnaissance de l'activité humaine avec des capteurs de smartphone utilisant des réseaux neuronaux d'apprentissage profond, 2016.
Utilement, ils fournissent également la configuration complète des hyperparamètres pour les modèles CNN, ce qui peut constituer un point de départ utile sur les nouveaux problèmes HAR et d'autres problèmes de classification de séquences, résumés ci-dessous.
Modèles de réseaux neuronaux récurrents
Les réseaux de neurones récurrents, ou RNN en abrégé, sont un type de réseau de neurones conçu pour apprendre à partir de données de séquence, telles que des séquences d'observations au fil du temps ou une séquence de mots dans une phrase.
Un type spécifique de RNN appelé réseau de mémoire à long terme ou LSTM en abrégé, est peut-être le RNN le plus largement utilisé car sa conception soignée surmonte les difficultés générales liées à la formation d'un RNN stable sur des données de séquence.
Les LSTM se sont révélés efficaces pour résoudre des problèmes complexes de prédiction de séquences lorsqu'ils sont formés à grande échelle pour des tâches telles que la reconnaissance de l'écriture manuscrite, la modélisation du langage et la traduction automatique.
Une couche dans un modèle LSTM est composée d'unités spéciales dotées de portes qui régissent les connexions d'entrée, de sortie et récurrentes, dont les poids sont appris. Chaque unité LSTM possède également une mémoire interne ou un état qui s'accumule lors de la lecture d'une séquence d'entrée et peut être utilisée par le réseau comme type de variable locale ou de registre de mémoire.
Pour plus d'informations sur les réseaux de mémoire à long terme, consultez l'article :
- Cours intensif sur les réseaux de neurones récurrents pour l'apprentissage profond
Comme le CNN qui peut lire une séquence d'entrée, le LSTM lit une séquence d'observations d'entrée et développe sa propre représentation interne de la séquence d'entrée. Contrairement au CNN, le LSTM est formé d'une manière qui accorde une attention particulière aux observations effectuées et aux erreurs de prédiction commises au fil du temps dans la séquence d'entrée, appelée rétropropagation dans le temps.
Pour plus d'informations sur la rétropropagation dans le temps, consultez l'article :
- Une introduction douce à la rétropropagation dans le temps
Les LSTM peuvent être appliqués au problème de la reconnaissance de l’activité humaine.
Le LSTM apprend à mapper chaque fenêtre de données de capteur à une activité, où les observations dans la séquence d'entrée sont lues une par une, où chaque pas de temps peut être composé d'une ou plusieurs variables (par exemple des séquences parallèles).
L’application des modèles LSTM simples aux problèmes HAR a été limitée.
Un exemple est celui d'Abdulmajid Murad et Jae-Young Pyun dans leur article de 2017 intitulé « Deep Recurrent Neural Networks for Human Activity Recognition ».
Il est important de noter que dans l'article, ils commentent la limitation des CNN dans leur exigence de fonctionner sur des fenêtres de taille fixe de données de capteurs, une limitation que les LSTM n'ont pas strictement.
Cependant, la taille des noyaux convolutifs restreint la plage de dépendances capturée entre les échantillons de données. En conséquence, les modèles typiques ne s’adaptent pas à un large éventail de configurations de reconnaissance d’activité et nécessitent des fenêtres de saisie de longueur fixe.
— Réseaux de neurones récurrents profonds pour la reconnaissance de l'activité humaine, 2017.
Ils explorent l’utilisation de LSTM qui traitent à la fois les données de séquence vers l’avant (normal) et dans les deux sens (LSTM bidirectionnel). Il est intéressant de noter que le LSTM prédit une activité pour chaque pas de temps d'entrée d'une sous-séquence de données de capteur, qui sont ensuite agrégées afin de prédire une activité pour la fenêtre.
Il y aura [be] un score pour chaque pas de temps prédisant le type d'activité se produisant au moment t. La prédiction pour toute la fenêtre T est obtenue en fusionnant les scores individuels en une seule prédiction.
— Réseaux de neurones récurrents profonds pour la reconnaissance de l'activité humaine, 2017.
La figure ci-dessous tirée de l'article fournit une représentation du modèle LSTM suivi de couches entièrement connectées utilisées pour interpréter la représentation interne des données brutes du capteur.
Il peut être plus courant d'utiliser un LSTM en conjonction avec un CNN sur des problèmes HAR, dans un modèle CNN-LSTM ou ConvLSTM.
C'est là qu'un modèle CNN est utilisé pour extraire les caractéristiques d'une sous-séquence d'échantillons de données brutes, et les caractéristiques de sortie du CNN pour chaque sous-séquence sont ensuite interprétées par un LSTM de manière globale.
Un exemple en est l'article de 2016 de Francisco Javier Ordonez et Daniel Roggen intitulé « Deep Convolutional and LSTM Recurrent Neural Networks for Multimodal Wearable Activity Recognition ».
Nous introduisons un nouveau cadre DNN pour la reconnaissance d'activité portable, que nous appelons DeepConvLSTM. Cette architecture combine des couches convolutives et récurrentes. Les couches convolutives agissent comme des extracteurs de caractéristiques et fournissent des représentations abstraites des données d'entrée du capteur dans des cartes de caractéristiques. Les couches récurrentes modélisent la dynamique temporelle de l'activation des cartes de fonctionnalités.
— Réseaux de neurones à convolution profonde et récurrents LSTM pour la reconnaissance multimodale des activités portables, 2016.
Une architecture de réseau approfondie est utilisée avec quatre couches convolutives sans aucune couche de pooling, suivies de deux couches LSTM pour interpréter les fonctionnalités extraites sur plusieurs pas de temps.
Les auteurs affirment que la suppression des couches de pooling est un élément essentiel de leur architecture de modèle, où l’utilisation de couches de pooling après les couches convolutives interfère avec la capacité des couches convolutives à apprendre à sous-échantillonner les données brutes des capteurs.
Dans la littérature, les frameworks CNN incluent souvent successivement des couches de convolution et de pooling, afin de réduire la complexité des données et d'introduire des fonctionnalités invariantes de traduction. Néanmoins, une telle approche ne fait pas strictement partie de l'architecture, et dans le domaine des séries temporelles […] DeepConvLSTM n'inclut pas d'opérations de pooling car l'entrée du réseau est contrainte par le mécanisme de fenêtre glissante […] et ce fait limite la possibilité de sous-échantillonner les données, étant donné que DeepConvLSTM nécessite qu'une séquence de données soit traitée par les couches récurrentes. Cependant, sans l’exigence d’une fenêtre glissante, un mécanisme de regroupement pourrait être utile pour couvrir différentes échelles de temps de données de capteurs dans des couches plus profondes.
— Réseaux de neurones à convolution profonde et récurrents LSTM pour la reconnaissance multimodale des activités portables, 2016.
La figure ci-dessous tirée de l'article rend l'architecture plus claire. Notez que les calques 6 et 7 de l'image sont en fait des calques LSTM.
Lectures complémentaires
Cette section fournit plus de ressources sur le sujet si vous souhaitez approfondir.
Général
- Apprentissage profond pour la reconnaissance d'activité basée sur des capteurs : une enquête, 2018.
Fenêtres coulissantes
- Une approche de fenêtre coulissante dynamique pour la reconnaissance d'activité, 2011.
- Impact de la taille de la fenêtre sur la reconnaissance de l'activité humaine, 2014.
CNN
- Réseaux de neurones convolutifs pour la reconnaissance de l'activité humaine à l'aide de capteurs mobiles, 2014.
- Reconnaissance de l'activité humaine 1D CNN basée sur Diviser et conquérir à l'aide de l'affinage des données de test, 2018.
- Reconnaissance de l'activité humaine à l'aide de capteurs portables par des réseaux de neurones à convolution profonde, 2015.
- Reconnaissance de l'activité humaine avec des capteurs de smartphone utilisant des réseaux neuronaux d'apprentissage profond, 2016.
RNN
- Réseaux de neurones récurrents profonds pour la reconnaissance de l'activité humaine, 2017.
- Réseaux de neurones à convolution profonde et récurrents LSTM pour la reconnaissance multimodale des activités portables, 2016.
Résumé
Dans cet article, vous avez découvert le problème de la reconnaissance de l’activité humaine et l’utilisation de méthodes d’apprentissage profond qui atteignent des performances de pointe sur ce problème.
Concrètement, vous avez appris :
- La reconnaissance d'activité consiste à prédire le mouvement d'une personne, souvent à l'intérieur, sur la base de données de capteurs, comme l'accéléromètre d'un smartphone.
- Les flux de données de capteurs sont souvent divisés en sous-séquences appelées fenêtres et chaque fenêtre est associée à une activité plus large, appelée approche de fenêtre glissante.
- Les réseaux de neurones convolutifs et les réseaux de mémoire à long terme, et peut-être les deux ensemble, sont les mieux adaptés pour apprendre des caractéristiques à partir des données brutes des capteurs et prédire le mouvement associé.
Avez-vous des questions ?
Posez vos questions dans les commentaires ci-dessous et je ferai de mon mieux pour y répondre.