似乎我可以很好地学习参数并找到训练数据的后验概率,但我不知道如何对新数据进行新的预测。问题尤其来自协变量上的转移概率变化,因此编写代码来预测新数据并非易事。
标准方法是定义(依赖)混合物并拟合模型:
mod <- depmix(EventTime ~ 1, data = data[1:40320,], nstates = 2, family
=multinomial("identity"), transition = ~ Count, instart = runif(2))
fm <- fit(mod, emcontrol=em.control(classification="soft", maxit = 60))
我们上面的内容应该类似于二元 HMM,因为它试图将事件是否发生分类为在序列中移动的 1/0 因变量。转移协变量是一个频率计数变量,它应该直接影响状态的转移概率,然后控制 1/0 因变量的发射概率。
可以获取模型的参数并将参数设置为另一个新模型。然而,没有明确的预测方法,即使图书馆的内部应该有某个地方。
modNew <- depmix(EventTime~1,data=data2,transition=~Count,nstates=2,
family=multinomial("identity"))
modNew <- setpars(modNew,getpars(fm))
请注意,在文档中它说可以运行维特比算法来为新数据生成状态。然而,这对我来说并不是特别有用,它似乎完美地拟合了数据,表明它仍在学习拟合新数据。
probs2 <- viterbi(modNew)
请注意,我是这个话题的新手。这个实施阶段对我来说很困难,但它似乎是分析的基本部分。