Вот мой старый вопрос
Я хотел бы спросить, знает ли кто-нибудь разницу (если есть какая-либо разница) между скрытыми марковскими моделями (HMM) и Particle Filter (PF), и, как следствие, Kalman Filter, или при каких обстоятельствах мы используем какой алгоритм. Я студент, и я должен сделать проект, но сначала я должен понять некоторые вещи.
Таким образом, согласно библиографии, обе они являются космическими моделями состояний , включая скрытые (или скрытые, или ненаблюдаемые) состояния. Согласно Википедии (Hidden_Markov_model) «в HMM пространство состояний скрытых переменных является дискретным, в то время как сами наблюдения могут быть либо дискретными (обычно генерируемыми из категориального распределения), либо непрерывными (обычно из гауссовского распределения). Скрытые марковские модели также могут быть обобщены, чтобы позволить непрерывные пространства состояний. Примерами таких моделей являются те, в которых марковский процесс над скрытыми переменными представляет собой линейную динамическую систему с линейной зависимостью между связанными переменными и где все скрытые и наблюдаемые переменные следуют распределению Гаусса. В простых случаях, таких как только что упомянутая линейная динамическая система, точный вывод поддается обработке (в этом случае, используя фильтр Калмана); однако, в общем, точный вывод в HMM с непрерывными скрытыми переменными невозможен, и должны использоваться приближенные методы,»
Но для меня это немного сбивает с толку ... Простыми словами это означает следующее (на основе также большего количества исследований, которые я сделал):
- В HMM пространство состояний может быть дискретным или непрерывным . Также сами наблюдения могут быть либо дискретными, либо непрерывными . Также HMM является линейной и гауссовой или негауссовой динамической системой.
- В PF пространство состояний может быть дискретным или непрерывным . Также сами наблюдения могут быть либо дискретными, либо непрерывными . Но PF - нелинейная (и негауссова?) Динамическая система (в этом их отличие?).
- Фильтр Калмана (который для меня похож на HMM) используется, когда мы имеем линейную и гауссовскую динамическую систему.
Также, как я знаю, какой алгоритм выбрать, потому что мне все это кажется одинаковым ... Также я нашел документ (не на английском языке), в котором говорится, что PF, хотя и может иметь линейные данные (например, необработанные данные с датчика-кинекта) который распознает движение), динамическая система может быть нелинейной. Может ли это случиться? Это верно? Как?
Для распознавания жестов исследователи могут использовать либо HMM, либо PF, но они не объясняют, почему они выбирают каждый алгоритм ... Кто-нибудь знает, как мне помочь различить эти алгоритмы, понять их различия и как выбрать лучший алгоритм?
Извините, если мой вопрос слишком большой, или некоторые части наивны, но я не нашел где-то убедительного и научного ответа. Заранее большое спасибо за ваше время!
Вот мой НОВЫЙ вопрос (согласно помощи @ conugateprior)
Поэтому при дальнейшем чтении я хотел бы обновить некоторые части моего предыдущего комментария и убедиться, что я немного больше понял, что происходит.
- Опять же, в простых словах, зонтик - это динамические байесовские сети, в которые включены модели HMM и пространства состояний (подклассы) ( http://mlg.eng.cam.ac.uk/zoubin/papers/ijprai.pdf ).
- Кроме того, первоначальное различие между двумя моделями заключается в том, что в HMM скрытые переменные состояния являются дискретными , тогда как наблюдения могут быть либо дискретными, либо непрерывными . В PF скрытые переменные состояния являются непрерывными (действительный вектор скрытого состояния), и наблюдения имеют распределения Гаусса .
- Также согласно @conjugateprior каждая модель имеет 3 следующие задачи: фильтрация, сглаживание и прогнозирование. При фильтрации модель HMM использует для дискретных скрытых переменных состояния метод прямой алгоритм, пространство состояний использует для непрерывных переменных и линейную динамическую систему фильтр Калмана и т. Д.
- Однако HMM также можно обобщить, чтобы непрерывные пространства состояний .
- С этими расширениями HMM эти 2 модели кажутся концептуально идентичными (как это также упоминается в « Скрытой марковской модели» - «Модель перехода Маркова» - «Модель состояния пространства»? ).
Я думаю, что я использую немного более точную терминологию, но все же для меня все размыто. Может кто-нибудь объяснить мне, в чем разница между HMM и моделью State Space ?
Потому что я действительно не могу найти ответ, который может соответствовать моим потребностям ..
Спасибо еще раз!
Ответы:
Будет полезно отличить модель от логического вывода, которое вы хотите сделать с ним, потому что теперь стандартная терминология смешивает их.
Модель - это та часть, в которой вы указываете природу : скрытое пространство (дискретное или непрерывное), динамику скрытого состояния (линейное или нелинейное), характер наблюдений (обычно условно полиномиальный или нормальный) и модель измерения, соединяющую скрытое состояние для наблюдений. HMM и модели пространства состояний являются двумя такими наборами спецификаций моделей.
В ситуациях, когда состояние непрерывно, динамика состояния и измерения линейны, а уровень шума нормальный, фильтр Калмана будет эффективно выполнять эту работу. Его аналогом, когда состояние дискретно, является прямой алгоритм. В случае, когда есть Нормальность и / или нелинейность, мы возвращаемся к приближенным фильтрам. Существуют детерминированные аппроксимации, например, расширенные или неароматизированные фильтры Калмана, и существуют стохастические аппроксимации, наиболее известной из которых является фильтр частиц.
Похоже, что общее ощущение состоит в том, что при наличии неизбежной нелинейности в частях состояния или измерения или ненормальности в наблюдениях (типичные проблемные ситуации) каждый пытается уйти с минимально возможным приближением. Итак, EKF, затем UKF, затем PF.
Литература по фильтру Калмана без запаха обычно содержит некоторые сравнения ситуаций, когда он может работать лучше, чем традиционная линеаризация расширенного фильтра Калмана.
Фильтр частиц имеет почти полную общность - любую нелинейность, любые распределения - но по моему опыту он требует довольно тщательной настройки и, как правило, гораздо более громоздкий, чем другие. Однако во многих ситуациях это единственный вариант.
Что касается дальнейшего чтения: мне нравится раздел 4-7 Байесовской фильтрации и сглаживания Сярккя, хотя это довольно кратко. Автор делает онлайн копию для личного пользования. В противном случае этот материал будет освещен в большинстве книг о временных рядах. Для фильтрации частиц есть Doucet et al. объем по теме, но я думаю, что это довольно старый сейчас. Возможно, другие укажут более новую ссылку.
источник