3

Formulation génériqueComment utiliser l'apprentissage automatique pour calculer un graphique d'états à partir d'une séquence de données?

J'ai un ensemble de données constitué d'une séquence de points avec 12 caractéristiques chacun.

Je suis intéressé par la détection d'un événement dans ces données.

Dans les données d'entraînement, je connais les moments où l'événement s'est produit. Lorsque l'événement se produit, je peux voir un motif observable dans la séquence de points avant l'événement. Le motif est formé d'environ 300 points consécutifs.

Je suis intéressé à détecter quand l'événement s'est produit dans une séquence infinie de points.

L'analyse a lieu post factum. Je ne suis pas intéressé à prédire si l'événement se produira.

Exemple concret

Vous pouvez sauter cette section

Je construis un portable qui doit détecter quand une personne âgée est tombée. Il sera porté au poignet, comme une montre et il a un IMU (accéléromètre 3 axes, gyroscope 3 axes et magnétomètre)

Les données les plus pertinentes sont l'accélération absolue sur l'axe Z, mais il y a beaucoup d'autres informations à être pris en compte parce que les mouvements de la main sont complexes et peuvent générer de nombreux faux positifs.

Le motif observable humain sur la base de l'accélération absolue de Z est constitué de 3 états:

  1. une accélération vers le sol
  2. une accélération d'impact jusqu'à l'axe Z
  3. de silence - très petits mouvements

Ces états pourraient être élargis davantage par l'apprentissage supervisé et devraient prendre en compte les autres accélérations dans le système de coordonnées portables et dans l'absolu Le système de coordonnées et les vecteurs de rotation exprimés en Euler et en quaternions.

approche

Mon idée était de trouver un algorithme qui utilise les données de formation pour calculer un graphe d'états, où dans chaque état il y a des seuils sur la base des 12 caractéristiques. Si les seuils sont dépassés, l'état change en fonction du graphique.

Qu'en pensez-vous?

Modèles de Markov?

Markov Modèle aurait fonctionné si j'étais intéressé à prédire l'événement avant qu'il se produise basé par exemple sur les 200 points de départ du modèle 300.

Mais je suis intéressé à détecter l'événement peu de temps après la fin du modèle, pas besoin de prédire.

Je ne sais pas si les modèles de Markov s'appliquent et si je ne sais pas comment calculer le modèle.

Répondre

1

Les modèles de Markov cachés ne sont pas inhabituels pour la détection d'événements dans les séquences, en particulier la séparation des trames d'un certain événement du "signal de fond" dans une séquence.

La réalisation la plus élémentaire de c'est de concaténer 2 HMM, une spécialisés à la modélisation du « signal », l'autre à la modélisation de l'arrière-plan, convenablement combinées pour permettre des transitions comme arrière-plan -> Signal -> fond.

Un exemple spécifique est le repérage de mots-clés dans la reconnaissance de la parole (séparez un "mot-clé" du signal de fond). Une brève explication se trouve à la section 11.2 de Grangier et al., "Discriminative keyword spotting". Figure 11.1 dans cette référence peut être la topologie du modèle que vous recherchez.

D'autres alternatives sont classification binaire avec une fenêtre glissante. Ceci est discuté, par exemple, dans T. Dietterich, "Machine Learning for Sequential Data: A review" (entre autres alternatives).