Modèle de Markov caché (HMM)
Découvrez les modèles de Markov cachés (HMM), leurs principes, leurs applications en reconnaissance vocale, en bio-informatique et en IA, et la manière dont ils déduisent les états cachés.
Un modèle de Markov caché (HMM) est un modèle statistique utilisé pour décrire les systèmes qui passent d'un état à l'autre au fil du temps. Dans les HMM, la séquence des états par lesquels passe le système n'est pas directement observable (elle est "cachée"), mais elle peut être déduite d'une séquence de sorties ou d'émissions observables produites par chaque état. Les HMM sont particulièrement puissants pour la modélisation de données séquentielles et l'analyse de séries temporelles dans divers domaines de l'intelligence artificielle (AI) et de l'apprentissage automatique (ML). Ils appartiennent à une classe de modèles connus sous le nom de modèles graphiques probabilistes, fournissant un cadre pour traiter l'incertitude dans les systèmes dynamiques.
Concepts de base
Les HMM sont définis par deux processus stochastiques (aléatoires) principaux :
- États cachés : Une chaîne d'états de Markov sous-jacente et inobservable. Le système passe d'un état caché à l'autre selon des probabilités spécifiques. L'hypothèse de base est la propriété de Markov : la probabilité de passer à l'état suivant ne dépend que de l'état actuel, et non de la séquence d'états qui l'a précédé.
- Émissions observables : Chaque état caché génère une sortie ou une émission observable sur la base d'une certaine distribution de probabilité. Ces émissions sont les données que nous observons réellement.
Le modèle est caractérisé par :
- États : Un ensemble fini d'états cachés.
- Observations : Un ensemble fini d'émissions ou d'observations possibles.
- Probabilités de transition : Probabilité de passer d'un état caché à un autre.
- Probabilités d'émission : Probabilité d'observer une émission particulière lorsque le système se trouve dans un état caché spécifique.
- Distribution de l'état initial : Les probabilités que le système commence dans chaque état caché.
Fonctionnement des modèles de Markov cachés
Travailler avec des HMM implique généralement de résoudre trois problèmes fondamentaux, souvent traités à l'aide d'algorithmes spécifiques détaillés dans des tutoriels comme celui de Rabiner :
- Problème d'évaluation : Étant donné un HMM et une séquence d'observations, quelle est la probabilité que les observations aient été générées par le modèle ? (Résolu à l'aide de l'algorithme Forward).
- Problème de décodage : étant donné un HMM et une séquence d'observations, quelle est la séquence la plus probable d'états cachés ayant produit ces observations ? (Résolu à l'aide de l'algorithme de Viterbi).
- Problème d'apprentissage : étant donné une séquence d'observations (ou plusieurs séquences), comment pouvons-nous ajuster les paramètres du HMM (probabilités de transition et d'émission) pour tenir compte au mieux des données observées ? (Souvent résolu à l'aide de l'algorithme de Baum-Welch, une instance de l'algorithme de maximisation des attentes). Cette question est cruciale pour l'apprentissage du modèle.
Applications dans le monde réel
Les HMM ont été appliqués avec succès dans de nombreux domaines :
- Reconnaissance vocale : Il s'agit d'une application classique. Les états cachés peuvent représenter des phonèmes (unités sonores de base), tandis que les observations sont des caractéristiques acoustiques extraites du signal vocal. Le HMM décode la séquence de phonèmes la plus probable à partir de l'audio, constituant ainsi la base de la reconnaissance des mots. Des outils comme CMU Sphinx s'appuyaient historiquement fortement sur les HMM.
- Bioinformatique : Les HMM sont largement utilisés pour l'analyse des séquences. Par exemple, dans la recherche de gènes, les états cachés peuvent représenter des régions codantes, des régions non codantes ou des structures génétiques spécifiques (comme les codons de départ, les exons, les introns). Les observations sont les paires de bases d'ADN (A, C, G, T). Le modèle permet d'identifier l'emplacement des gènes dans une longue séquence d'ADN. Un logiciel comme HMMER utilise des HMM de profil pour l'analyse des séquences de protéines, en comparant les séquences à des bases de données comme la base de données Gene du NCBI.
- Traitement automatique du langage naturel (TALN) : utilisé pour des tâches telles que l'étiquetage des parties du discours, où les états cachés sont des balises grammaticales (nom, verbe, adjectif) et les observations sont les mots d'une phrase. Également utilisé en reconnaissance d'entités nommées (NER) .
- Vision par ordinateur (CV) : Appliquée à la reconnaissance des gestes, à la reconnaissance d'activités à partir de vidéos et parfois historiquement au suivi d'objets , bien que souvent remplacée par des méthodes telles que les filtres de Kalman ou les approches d'apprentissage en profondeur.
- Finance : Modélisation des régimes de marché (par exemple, marchés haussiers ou baissiers) en tant qu'états cachés basés sur des indicateurs financiers observables.
- Analyse d'images médicales : Analyse de séquences d'images ou de signaux médicaux au fil du temps.
Comparaison avec des concepts apparentés
Il est important de distinguer les HMM des autres modèles de séquence :
Alors que les nouvelles méthodes d'apprentissage profond atteignent souvent des résultats de pointe, les HMMs restent précieux pour leur interprétabilité (états et probabilités explicites) et leur efficacité, en particulier lorsque les données d'entraînement sont limitées ou que la connaissance du domaine peut être incorporée dans la structure du modèle. Comprendre les concepts fondamentaux comme les HMMs fournit un contexte précieux dans le paysage ML plus large, même en utilisant des plateformes comme Ultralytics HUB qui facilitent principalement le développement et le déploiement de modèles DL comme YOLOv8 ou YOLO11.