更改

无编辑摘要
第1行: 第1行: −
[[马尔科夫链]]是一类特殊的随机过程,在给定当前状态下,对于未来状态的预测便不再依赖于过去状态。它可以看作一个 n 维的状态的序列<math>s^{(t)}\ = \{1, ..., n\}^{(t)}</math>,每一步的状态转换都有马尔科夫矩阵(满足每一行和为1的条件的方阵)<math>P</math> 决定,即 <math>p(s^{(t+1)}) = p(s^{(t)}) P</math>。<math>P</math> 的每一行对应的每个状态转移到其他状态的概率,<math>p_{ij} = p(s^{(t+1)} = j | s^{(t)} = i)</math>。比如,当 <math>s^{(t)}</math> 等于第一个状态的时候,<math>P</math> 的第一行展示了 <math>s^{(t+1)}</math> 状态的概率。
+
[[马尔科夫链]]是一类特殊的随机过程,在给定当前状态下,对于未来状态的预测便不再依赖于过去状态。一般的[[马尔科夫链]]包括[math]N[/math]个状态,所有状态之间的概率转移构成了一个转移概率矩阵[math]P[/math],该矩阵有[math]N[/math]行[math]N[/math]列。所谓的马尔科夫链的粗粒化,就是指找到一个新的马尔科夫链,它具有[math]M<N[/math]状态,其对应的[math]M[/math]行[math]M[/math]列的概率转移矩阵[math]P'[/math],它可以看作是对[math]P[/math]矩阵所描述的动力学过程的一种抽象近似描述。
   −
对马尔科夫链做粗粒化的意义是什么呢?我们看到文献中着重强调这三点:
+
对马尔科夫链做粗粒化的意义是什么呢?文献中一般着重强调这三点:
   −
# 我们在研究一个超大的系统的时候,比如复杂城市系统时,并不会关注每一个微观的状态,在粗粒化中我们希望能过滤掉一些我们不感兴趣的噪声和异质性,而从微观尺度中总结一些中尺度或宏观尺度的规律;
+
# 我们在研究一个超多状态的[[复杂系统]]时,并不会关注每一个微观的状态,在粗粒化中我们希望能过滤掉一些我们不感兴趣的噪声和异质性,而从微观尺度中总结一些中尺度或宏观尺度的规律;
−
# 有些状态的转移概率非常相似,所以可以被看成同一类状态。对这些状态进行划分和归并可以减少马尔科夫链的冗余性,得到一个更简洁有效的系统表示;
+
# 有些状态的转移概率非常相似,所以可以被看成同一类状态。对这些状态进行划分和归并可以减少马尔科夫链的冗余性,得到一个更简洁有效的表示;
−
# 在用到马尔科夫决策过程的强化学习里,对马尔科夫链做粗粒化可以减少状态空间的大小,提高训练过程的样本效率和任务表现<ref name=":10">Hafner, Danijar, et al. "Mastering atari with discrete world models." arXiv preprint arXiv:2010.02193 (2020).</ref>。
+
# 在用到[[马尔科夫决策过程]]的[[强化学习]]算法中,对马尔科夫链做粗粒化可以减少[[状态空间]]的大小,提高训练过程的样本效率和任务表现<ref name=":10">Hafner, Danijar, et al. "Mastering atari with discrete world models." arXiv preprint arXiv:2010.02193 (2020).</ref>。
    
在粗粒化过程中,我们有很多目标。
 
在粗粒化过程中,我们有很多目标。
第14行: 第14行:     
在这篇文章里,我们会围绕着这三个维度展开讨论,并介绍一系列针对马尔科夫链的粗粒化方法。
 
在这篇文章里,我们会围绕着这三个维度展开讨论,并介绍一系列针对马尔科夫链的粗粒化方法。
−