马尔可夫生成和概率

时间:2017-06-27 13:35:31

标签: java matrix probability markov

我一直在研究马尔可夫链的各种实现,我只是想澄清一下链的概括。

如果我想生成一个长度为 n 的序列,我们只需从初始概率中进行采样,然后采用刚刚生成的状态来找到转移矩阵的行,并执行此操作 n-1 次? 因此,如果状态是初始样本中的“A”,我们只使用转换矩阵的“A”行作为下一个样本的种子?

{我在马尔可夫链的R中有一个实现,其中每个迭代,初始和转移矩阵相乘,初始由转换,以及转换本身。 在何时何地将这种矩阵乘法应用于链生成?我被告知这些用于在经过一些重复之后确定状态值......但这些重复是什么?我只想为特定长度的序列生成状态,如果我根据原始/输入序列中的核苷酸频率从转换矩阵中采样,那么这种重复会在哪里?} - 按照下面的biziclop排序< / p>

用户输入的可能性

我在这里看到了几个实现。

输入 - “ACGT”

P(ACGT)= P(A)* P(C | A)* P(G | C)* P(T | G)

这是否意味着P(A)来自初始/开始概率,条件概率(P(C | A)等)来自转移矩阵?

或者这是否意味着最大估计,其中P(A)=#A /#核苷酸? 因此P(C | A)=#C's /#A's?

如果转换中的条目为零,那么我们是否使用拉普拉斯估计或其他形式的伪计算来解决这个问题?

如果是这样,那么应用伪编码在哪里? 转换矩阵的每个条目都会得到额外的计数吗?如果我们使用转换矩阵来生成概率,则必须在此处添加伪计数....不?

讨论会有所帮助。不需要提供代码或任何数学。

0 个答案:

没有答案