【问题标题】:understanding how to construct a higher order markov chain了解如何构建高阶马尔可夫链
【发布时间】:2016-08-15 10:30:09
【问题描述】:

假设我想预测一个人是class1=healthy 还是class2= fever。我有一个具有以下域的数据集:{normal,cold,dizzy}

转换矩阵将包含从我们的训练数据集生成的转换概率,而初始向量将包含一个人从域{normal,cold,dizzy} 以状态 x 开始(第 1 天)的概率,这也是从我们的训练集。

如果我想构建一阶马尔可夫链,我会生成一个 3x3 转换矩阵和每个类的 1x3 初始向量,如下所示:

> TransitionMatrix
       normal cold dizzy
normal     NA   NA    NA
cold       NA   NA    NA
dizzy      NA   NA    NA

>Initial Vector
     normal cold dizzy
[1,]     NA   NA    NA

NA 将填充相应的概率。

1-我的问题是关于高阶链中的转换矩阵。例如,在二阶 MC 中,我们是否会有一个大小为 domain²xdomain² 的转换矩阵,如下所示:

               normal->normal normal->cold normal->dizzy cold->normal cold->cold cold->dizzy dizzy->normal dizzy->cold dizzy->dizzy
normal->normal             NA           NA            NA           NA         NA          NA            NA          NA           NA
normal->cold               NA           NA            NA           NA         NA          NA            NA          NA           NA
normal->dizzy              NA           NA            NA           NA         NA          NA            NA          NA           NA
cold->normal               NA           NA            NA           NA         NA          NA            NA          NA           NA
cold->cold                 NA           NA            NA           NA         NA          NA            NA          NA           NA
cold->dizzy                NA           NA            NA           NA         NA          NA            NA          NA           NA
dizzy->normal              NA           NA            NA           NA         NA          NA            NA          NA           NA
dizzy->cold                NA           NA            NA           NA         NA          NA            NA          NA           NA
dizzy->dizzy               NA           NA            NA           NA         NA          NA            NA          NA           NA

这里的单元格(1,1)代表以下序列:normal->normal->normal->normal

或者只是像这样domain²xdomain

               normal cold dizzy
normal->normal     NA   NA    NA
normal->cold       NA   NA    NA
normal->dizzy      NA   NA    NA
cold->normal       NA   NA    NA
cold->cold         NA   NA    NA
cold->dizzy        NA   NA    NA
dizzy->normal      NA   NA    NA
dizzy->cold        NA   NA    NA
dizzy->dizzy       NA   NA    NA

这里的单元格(1,1)代表normal->normal->normal,这与之前的表示不同

2- 2 次 MC 的初始向量怎么样。我们是否需要两个大小为 1xdomain 的初始向量,如下所示:

     normal cold dizzy
[1,]     NA   NA    NA

导致每个类有两个初始向量。第一个给出{normal,cold,dizzy} 在第一天出现healthy/fever 类的概率,第二个给出healthy/fever 在第二天出现的概率。这将给出 4 个初始向量。

或者我们是否只需要一个大小为1xdomain²的初始向量,如下所示:

    normal->normal normal->cold normal->dizzy cold->normal cold->cold cold->dizzy dizzy->normal dizzy->cold dizzy->dizzy
[1,]             NA           NA            NA           NA         NA          NA            NA          NA           NA

我可以看到,如果我们想对仅具有一种状态的观察进行分类,则表示初始向量的第二种方式会出现问题。

【问题讨论】:

    标签: algorithm markov-chains


    【解决方案1】:

    假设空间集合是S。通常,在第 n 个顺序中,

    1. 转移矩阵的维度为 |S|n X |S|。这是因为给定当前 n 个状态历史,我们需要单个下一个状态的概率。确实,这个单一的下一个状态会引发另一个历史复合状态n,但转换本身是到单一的下一个状态。见this example in Wikipedia,例如..

    2. 初始分布是对 |S|n 个元素的分布(您的第二个选项)。

    【讨论】:

    • 第二个假设我有一个只有一个状态的观察,比如normal。我将如何从初始分布中检索它?我应该总结所有这些normal->normal normal->cold normal->dizzy(不确定我是否把这个问题说得够清楚)
    • @Imlerith 如果 IIUC 你的问题是如何从联合分布计算边际分布。这是well known
    • 我目前正在学习高阶马尔可夫链,您有什么好的文献推荐吗?我很难找到它。我主要在网上找到PowerPoint,但没有任何参考。我对转换矩阵将如何用于吸收的高阶马尔可夫链感兴趣。这意味着一旦链进入其中,一个或多个状态就不可能离开。谢谢:)
    猜你喜欢
    • 1970-01-01
    • 2017-05-15
    • 1970-01-01
    • 1970-01-01
    • 2017-05-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多