如何计算 HMM 的值?

How To Calculate the values for an HMM?

我需要帮助理解和解决 HMM 的两个问题。请看这些 matrices, 其中
隐藏状态是 H = 快乐和 S = 悲伤
Pi是初始概率table
P(x[t] | x[t-1]) 是过渡 table 和
p(y[t] | x[t]) 是发射 table

我怎么理解: 如果在时间 t-1 我们有 p(x[t−1] = H | y[1:t−1]) = 1,[=17= 的值是多少? ]p(x[t] = H | y[1:t−1])?
关于什么 p(x[t] = H | y[1:t−1]; y[t] = 播放)?

我不知道如何理解和计算这些问题。 我如何使用矩阵计算来计算这些值?

首先,根据这些数据,让我们回答: p(x[t] = H | y[1:t−1]),那么p(x[t] = H | y[1:t−1]; y[t] = Play)应该就很直观了。但请注意,so 不是您做功课的网站。

无论如何,在处理马尔可夫链时,请记住一件事:历史无关紧要!所以不管你以前的观察是什么,你现在的观察 (y) 将仅取决于当前状态 x[t]。 (不要告诉你的历史老师,她会试着让你重复 class,就像我的情况一样)。

所以:p(x[t−1] = H | y[1:t−1]) = 1等同于说之前的状态是Happy(H)。 "given" y[1:t−1] 没有给我们任何信息。 好的,我们对 p(x[t]|x[t-1]=H) 了解多少?好吧,第一个矩阵的第一行告诉你从一个状态转换到另一个状态的概率是多少。

现在我们可以回答您的第一个问题: p(x[t] = H) = p(x[t] = H | x[t-1] = H)*p(x[t-1] = H) + p(x[t] = H | x[t-1] = S)*p(x[t-1] = S) 如果前面的公式太多了,提示:p(x[t] = H)是她今天开心的无条件概率。 因为我们已经知道 p(x[t-1] = H) =1(她昨天很开心),这意味着她昨天肯定不难过:p(x[t-1] = S) =0 => p(x[t] = H) = p(x[t] = H | x[t-1] = H),并使用第一个矩阵,你得到:0.6

怎么样? p(x[t] = H | y[1:t−1]; y[t] = Play) ,应用 "History doesn't matter rule",你会得到: p(x[t] = H | y[1:t−1]; y[t] = Play) = p(x[t] = H | y[t] = Play) 如果您想自己做,这里还有另一个提示:p(x[t] = H) =0.6 因为我们已经回答了!您还知道:p(x[t] = H) + p(x[t] = S) = 1(因为她只能快乐或悲伤,对吧?)

现在应用贝叶斯规则(我知道这是不直观的,但 youtube 上有很多很好的视频也解释了背后的直觉),你可以这样写你的问题: p(x[t] = H | y[t] = Play) = (p(y[t] = Play| x[t] = H) * p(x[t] = H))/p(y[t] = Play)

但是你可能会说:嘿,我已经在观察她在玩了,你可能会想用 1 代替它,不要那么快,因为在数学中,这个 p(y[t] = Play) 表示无条件概率。

p(y[t] = Play) = p(x[t] = H)*p(y[t] = Play|x[t] = H) + p(x[t] = S)*p(y[t] = Play|x[t] = S)

所以: p(x[t] = H | y[t] = Play) = (p(y[t] = Play| x[t] = H) * p(x[t] = H))/(p(x[t] = H)*p(y[t] = Play|x[t] = H) + p(x[t] = S)*p(y[t] = Play|x[t] = S))

现在你没有未知数了,从表中代入并计算。