Bio.MarkovModel 模块
一个状态发射的马尔可夫模型。
注意,使用的术语类似于 Manning 和 Schutze。
函数:train_bw 使用 Baum-Welch 算法训练马尔可夫模型。train_visible 使用 MLE 训练可见马尔可夫模型。find_states 查找解释某些观测结果的状态序列。
load 加载马尔可夫模型。save 保存马尔可夫模型。
类:MarkovModel 保存马尔可夫模型的描述
- Bio.MarkovModel.itemindex(values)
返回一个字典,其中包含值及其序列偏移量作为键。
- class Bio.MarkovModel.MarkovModel(states, alphabet, p_initial=None, p_transition=None, p_emission=None)
基类:
object
创建一个状态发射的马尔可夫模型对象。
- __init__(states, alphabet, p_initial=None, p_transition=None, p_emission=None)
初始化类。
- __str__()
创建马尔可夫模型对象的字符串表示。
- Bio.MarkovModel.load(handle)
将文件句柄解析为马尔可夫模型对象。
- Bio.MarkovModel.save(mm, handle)
将马尔可夫模型对象保存到句柄中。
- Bio.MarkovModel.train_bw(states, alphabet, training_data, pseudo_initial=None, pseudo_transition=None, pseudo_emission=None, update_fn=None)
使用 Baum-Welch 算法训练马尔可夫模型。
使用 Baum-Welch 算法训练马尔可夫模型。states 是一个字符串列表,描述每个状态的名称。alphabet 是一个对象列表,表示允许的输出。training_data 是一个观测列表。每个观测都是 alphabet 中对象的列表。
pseudo_initial、pseudo_transition 和 pseudo_emission 是可选参数,您可以使用它们将伪计数分配给不同的矩阵。它们应该是包含要添加到每个参数矩阵的数字的适当大小的矩阵,在归一化之前。
update_fn 是一个可选的回调函数,它接收参数(迭代、对数似然)。它在每次迭代时被调用一次。
- Bio.MarkovModel.train_visible(states, alphabet, training_data, pseudo_initial=None, pseudo_transition=None, pseudo_emission=None)
使用每个参数的最大似然估计训练可见马尔可夫模型。
使用每个参数的最大似然估计训练可见马尔可夫模型。states 是一个字符串列表,描述每个状态的名称。alphabet 是一个对象列表,表示允许的输出。training_data 是一个 (输出,观察到的状态) 列表,其中输出是来自 alphabet 的发射列表,观察到的状态是来自 states 的状态列表。
pseudo_initial、pseudo_transition 和 pseudo_emission 是可选参数,您可以使用它们将伪计数分配给不同的矩阵。它们应该是包含要添加到每个参数矩阵的数字的适当大小的矩阵。
- Bio.MarkovModel.find_states(markov_model, output)
在给定的马尔可夫模型输出中查找状态。
返回一个 (状态,分数) 元组列表。