Diferença entre os modelos Hidden Markov e Particle Filter (e Kalman Filter)


21

Aqui está minha velha pergunta

Gostaria de perguntar se alguém sabe a diferença (se houver alguma diferença) entre os modelos Hidden Markov (HMM) e Particle Filter (PF) e, como conseqüência, o Kalman Filter, ou em quais circunstâncias usamos qual algoritmo. Sou estudante e tenho que fazer um projeto, mas primeiro tenho que entender algumas coisas.

Portanto, de acordo com a bibliografia, ambos são modelos de espaço de estado , incluindo estados ocultos (ou latentes ou não observados). De acordo com a Wikipedia (Hidden_Markov_model) "no HMM, o espaço de estado das variáveis ​​ocultas é discreto, enquanto as próprias observações podem ser discretas (geralmente geradas a partir de uma distribuição categórica) ou contínuas (normalmente a partir de uma distribuição gaussiana). Os modelos ocultos de Markov também podem ser generalizados para permitir espaços de estado contínuos. Exemplos de tais modelos são aqueles em que o processo de Markov sobre variáveis ​​ocultas é um sistema dinâmico linear, com uma relação linear entre variáveis ​​relacionadas e onde todas as variáveis ​​ocultas e observadas seguem uma distribuição gaussiana. Em casos simples, como o sistema dinâmico linear mencionado acima, a inferência exata é tratável (nesse caso, usando o filtro Kalman); no entanto, em geral, a inferência exata em HMMs com variáveis ​​latentes contínuas é inviável e métodos aproximados devem ser usados,"

Mas para mim isso é um pouco confuso ... Em palavras simples, isso significa o seguinte (com base também em mais pesquisas que eu fiz):

  • No HMM, o espaço de estado pode ser discreto ou contínuo . Além disso, as próprias observações podem ser discretas ou contínuas . O HMM também é um sistema dinâmico linear e gaussiano ou não gaussiano.
  • No PF, o espaço de estado pode ser discreto ou contínuo . Além disso, as próprias observações podem ser discretas ou contínuas . Mas PF é um sistema dinâmico não linear (e não gaussiano?) (Essa é a diferença deles?).
  • O filtro Kalman (também me parece o mesmo com o HMM) está sendo usado quando temos um sistema dinâmico linear e gaussiano .

Também como eu sei qual algoritmo escolher, porque para mim tudo isso parece o mesmo ... Também encontrei um artigo (não em inglês) que diz que o PF pode ter dados lineares (por exemplo, dados brutos de um sensor-kinect que reconhece um movimento), o sistema dinâmico pode ser não linear. Isso pode acontecer? Isso está correto? Quão?

Para o reconhecimento de gestos, os pesquisadores podem usar o HMM ou o PF, mas não explicam por que selecionam cada algoritmo ... Alguém sabe como posso ajudar a distinguir esses algoritmos, a entender suas diferenças e a escolher o melhor algoritmo?

Sinto muito se minha pergunta é muito grande ou se algumas partes são ingênuas, mas não encontrei em algum lugar uma resposta convincente e científica. Muito obrigado antecipadamente pelo seu tempo!

Aqui está a minha nova pergunta (de acordo com a ajuda do @ conjugateprior)

Portanto, com uma leitura mais aprofundada, eu gostaria de atualizar algumas das minhas partes do meu comentário anterior e ter certeza de que entendi um pouco mais o que está acontecendo.

  • Novamente, em palavras simples, o guarda-chuva são as redes Bayesianas Dinâmicas sob as quais os modelos de HMM e espaço de Estado estão incluídos (subclasses) ( http://mlg.eng.cam.ac.uk/zoubin/papers/ijprai.pdf ).
  • Além disso, a diferença inicial entre os dois modelos é que, no HMM, as variáveis ​​de estado oculto são discretas , enquanto as observações podem ser discretas ou contínuas . Em PF, as variáveis ​​de estado oculto são contínuas (vetor de estado oculto com valor real) e as observações têm distribuições gaussianas .
  • Também de acordo com @conjugateprior, cada modelo tem as 3 tarefas a seguir: filtragem, suavização e previsão. Na filtragem, o modelo HMM usa para variáveis ​​de estado oculto discretas o método Algoritmo Forward, espaço de estado usa para variáveis ​​contínuas e sistema dinâmico linear o Kalman Filter, etc.
  • No entanto, o HMM também pode ser generalizado para permitir espaços de estado contínuos .
  • Com essas extensões do HMM, os dois modelos parecem conceitualmente idênticos (como também é mencionado em Modelo de Markov oculto versus Modelo de transição de Markov versus Modelo de espaço de estado ...? ).

Eu acho que estou usando um pouco mais precisa a terminologia, mas ainda está tudo embaçado para mim. Alguém pode me explicar qual é a diferença entre o HMM e o modelo State Space ?

Porque realmente não consigo encontrar uma resposta que atenda às minhas necessidades.

Obrigado mais uma vez!


1
Se a biblioteca da sua escola tiver este livro: crcpress.com/Time-Series-Modeling-Computation-and-Inference/…, eu daria uma olhada nele. É um bom trabalho explicar todos os três tópicos que, devo mencionar, são três tópicos muito distintos.

Acabei de verificar que a biblioteca não possui este livro, infelizmente .. então, se você pudesse me enviar as partes que acredita que respondem à minha pergunta ou me ajudar a distinguir também esses tópicos, seria ótimo! :)
— user5584748

Respostas:


15

Será útil distinguir o modelo da inferência que você deseja fazer, porque agora a terminologia padrão combina os dois.

O modelo é a parte em que você especifica a natureza de: o espaço oculto (discreto ou contínuo), a dinâmica do estado oculto (linear ou não linear), a natureza das observações (geralmente condicionalmente multinomial ou Normal) e o modelo de medição conectando o estado oculto das observações. HMMs e modelos de espaço de estado são dois desses conjuntos de especificações de modelo.

tt

Nas situações em que o estado é contínuo, a dinâmica e a medição do estado são lineares e todo o ruído é Normal, um Filtro Kalman fará esse trabalho com eficiência. Seu análogo quando o estado é discreto é o algoritmo de encaminhamento. No caso de não-Normalidade e / ou não-linearidade, voltamos aos filtros aproximados. Existem aproximações determinísticas, por exemplo, um filtro Kalman estendido ou não perfumado, e há aproximações estocásticas, das quais a mais conhecida é o filtro de partículas.

O sentimento geral parece ser que, na presença de uma não linearidade inevitável no estado ou de partes da medição ou de uma não normalidade nas observações (as situações-problema comuns), tenta-se fugir com a aproximação mais barata possível. Então, EKF, UKF e PF.

A literatura sobre o filtro de Kalman não perfumado geralmente tem algumas comparações de situações em que pode funcionar melhor do que a linearização tradicional do filtro de Kalman estendido.

O Filtro de Partículas tem uma generalidade quase completa - qualquer não linearidade, qualquer distribuição - mas, na minha experiência, exigiu um ajuste cuidadoso e geralmente é muito mais pesado do que os outros. Em muitas situações, porém, é a única opção.

Quanto a outras leituras: eu gosto das cap. 4-7 da filtragem e suavização bayesiana de Särkkä, embora sejam bastante concisas. O autor faz tem uma cópia online disponível para uso pessoal. Caso contrário, a maioria dos livros de séries temporais do espaço de estados cobrirá esse material. Para a filtragem de partículas, há Doucet et al. volume sobre o tema, mas acho que é bastante antigo agora. Talvez outros apontem uma referência mais nova.


Antes de mais, muito obrigado pela sua resposta. Verifique se eu editei a pergunta acima para ser mais coerente e preciso com a terminologia. Também refiz minha pergunta toda.
— user5584748

Em sua reescrita, não é bem verdade que "Em PF, as variáveis ​​de estado oculto são contínuas (vetor de estado oculto com valor real) e as observações têm distribuições gaussianas". PF é um filtro. O modelo para o qual é um filtro deve ter um espaço de estado contínuo (com alguma estrutura markoviana ou outra), mas não tem restrições: distribuições, dinâmicas e processos de medição.
— conjugateprior

Você poderia, por exemplo, usar um PF para filtrar um modelo de espaço de estados gaussiano linear comum. Funcionaria muito bem. Você simplesmente não precisa, pois o filtro Kalman é exato.
— conjugateprior

4
"Qual é a diferença entre o HMM e o modelo State Space?" Basicamente: por convenção, os HMMs têm um estado discreto. Também por convenção, 'modelos de espaço de estado' denotam coisas com estado contínuo.
— conjugateprior

Muito obrigado! Portanto, essa diferença ocorre por convenção (e de acordo com a bibliografia). Mas, em geral, podemos escolher o modelo que quisermos. Isso está correto? O modelo que vou escolher depende se terei melhores resultados?
— user5584748
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.