这是我的老问题
我想问问是否有人知道隐马尔可夫模型(HMM)和粒子滤波器(PF)之间的区别(如果有区别),并因此得知卡尔曼滤波器,或者在什么情况下我们使用哪种算法。我是学生,必须做一个项目,但首先我必须了解一些事情。
因此,根据书目,这两个都是状态空间模型,包括隐藏(或潜在或不可观察)状态。根据Wikipedia(Hidden_Markov_model), “在HMM中,隐藏变量的状态空间是离散的,而观察值本身可以是离散的(通常从分类分布生成)或连续的(通常从高斯分布生成)。隐藏的马尔可夫模型也可以泛化为允许连续的状态空间。这样的模型的例子是那些对隐变量的马尔可夫过程是线性动力学系统,在相关变量之间具有线性关系,并且所有隐变量和观测变量都遵循高斯分布的模型。在简单的情况下,例如刚才提到的线性动力系统,精确推断是很容易的(在这种情况下,使用卡尔曼滤波器);但是,通常,在具有连续潜在变量的HMM中进行精确推断是不可行的,必须使用近似方法,”
但是对我而言,这有点令人困惑……简而言之,这是否意味着关注(也基于我所做的更多研究):
- 在HMM中,状态空间可以是离散的或连续的。还观测本身可以是离散的或连续的。HMM也是线性和高斯或非高斯动力系统。
- 在PF,状态空间可以是离散的或连续的。还观测本身可以是离散的或连续的。但是PF是一个非线性(非高斯?)动力系统(它们有区别吗?)。
- 当我们具有线性和高斯动力系统时,将使用卡尔曼滤波器(在我看来也像HMM一样)。
另外,我怎么知道该选择哪种算法,因为在我看来,所有这些似乎都是相同的...我还发现了一篇论文(不是英文),其中说PF虽然可以具有线性数据(例如来自传感器结点的原始数据)识别运动),则动力学系统可以是非线性的。这会发生吗?它是否正确?怎么样?
对于手势识别,研究人员可以使用HMM或PF,但是他们没有解释为什么选择每种算法……有人知道我可以如何帮助您区分这些算法,了解它们的差异以及如何选择最佳算法吗?
很抱歉,如果我的问题太大,或者某些部分还很幼稚,但我没有找到令人信服的科学答案。非常感谢您抽出宝贵的时间!
这是我的新问题(根据@conjugateprior的帮助)
因此,通过进一步阅读,我想更新我以前的评论的某些部分,并确保我对所发生的事情有更多的了解。
- 再次简单地说,保护伞是动态贝叶斯网络,其中包含HMM和状态空间的模型(子类)(http://mlg.eng.cam.ac.uk/zoubin/papers/ijprai.pdf)。
- 此外,这两个模型之间的初始差异在于,在HMM中,隐藏状态变量是离散的,而观测值可以是离散的或连续的。在PF中,隐藏状态变量是连续的(实值隐藏状态向量),并且观测值具有高斯分布。
- 此外,根据@conjugateprior,每个模型都有以下3个任务:滤波,平滑和预测。在滤波中,模型HMM将离散的隐藏状态变量用于正向算法,将状态空间用于连续变量并将线性动态系统用于卡尔曼滤波器,等等。
- 但是,HMM也可以泛化为允许连续的状态空间。
- 通过HMM的这些扩展,这两个模型在概念上似乎是相同的(正如在“ 隐马尔可夫模型”,“马尔可夫过渡模型”与“状态空间模型...”中提到的一样)。
我认为我使用的术语更加准确,但对我来说一切仍然很模糊。谁能向我解释HMM和State Space模型有什么区别?
因为我真的找不到适合我需求的答案。
再次谢谢你!