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)

在给定的马尔可夫模型输出中查找状态。

返回一个 (状态,分数) 元组列表。