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.