Python中的隐马尔可夫模型

hmmp的Python项目详细描述


Python包hmmpy实现了三个不同的类,这些类是打算向用户公开的。课程包括:

  • HiddenMarkovModel
  • DiscreteHiddenMarkovModel
  • GaussianHiddenMarkovModel

各班对观察结果的假设各不相同。类HiddenMarkovModel支持任何发射概率,但没有用于估计与发射概率相关的参数的任何程序。接下来的两个类通过分别假设观测值的高斯分布或离散分布来解决这个问题。Baum-Welch算法现在可以估计离散发射概率或与状态相关的平均值和协方差。这三个对象的构造函数的输入略有不同。这三种方法都要求以状态列表的形式提供状态空间。它们还需要表示转移概率和初始概率的函数。提供的转移概率函数应该从状态空间中获取两个对象,并返回从第一个对象到第二个对象的转换概率。函数不需要规范化,即在所有状态上求和为1,因为这是在内部处理的,而不管如何。初始概率函数应返回其唯一参数的初始概率,该参数应为所提供状态的状态。最后一个参数取决于调用的对象。对象HiddenMarkovModel需要一个函数,该函数返回给定观测值和状态时某个观测值的发射概率。对象GaussianHiddenMarkovModel需要各种状态的平均值和协方差的初始值数组。对象DiscreteHiddenMarkovModel需要一个“符号”列表(即观察空间)和一个函数,该函数在给定状态时返回所提供“符号”的概率。在

在一个对象被实例化之后,一个人可以访问诸如decode这样的方法,它返回估计的隐藏状态序列,reestimate,后者运行Baum Welch一定次数以学习模型参数。在此过程中,可学习参数的内部表示在每次迭代后都会更新。在

将提供活页夹笔记本和使用示例。在

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java接口中的每个方法都是抽象的,但在抽象类中,我们也只能使用抽象方法   初始化Java中声明的、未初始化的变量会发生什么情况?   java BouncyCastle openPGP将字节[]数组加密为csv文件   在Java中将类A(和所有子类)映射到类B的实例的字典   RSA公钥编码,在Java和Android中,代码相同,结果不同   java在安卓中实现数字检测语音识别   java取消选择复选框   java如何在其他配置中重用Maven配置XML片段   java有没有一种有效的方法来检查HashMap是否包含映射到相同值的键?   spring处理程序调度失败;嵌套的例外是java。lang.NoClassDefFoundError:org/apache/http/client/HttpClient   带有ehcache的java多层缓存   java如何访问chromium(或任何其他浏览器)cookie   java通过将两个集合与spring data mongodb data中的条件合并来获取计数   安卓中R.java的语法错误