微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

pomegranate 图模型和概率模型工具包

程序名称:pomegranate

授权协议: MIT

操作系统: 跨平台

开发语言: Python

pomegranate 介绍

pomegranate 是基于 Python 的图模型和概率模型工具包,它使用 Cython 实现以加快反应速度。它源于
YAHMM,可实现快速、高效和极度灵活的概率模型,如概率分布、贝叶斯网络、混合隐马尔可夫模型等。概率建模最基础的级别是简单的概率分布。以语言建模为例,概率分布就是是一个人所说的每个单词出现频率的分布。

1. 概率分布

第二个级别是以更复杂的方式使用简单分布的概率模型。马尔可夫链可以扩展简单的概率分布,仍旧以语言建模为例,即某个单词的概率依赖于先前所说单词。隐马尔可夫模型中某个单词的概率依赖于前一个词的潜在/隐藏状态,如名词通常在形容词后面。

第三个级别是概率模型的堆叠,可以建模更复杂的现象。如果单个隐马尔可夫模型可以捕捉口音(如某个人的说话习惯),那么混合隐马尔可夫模型可以将其调整以适应特定情况。比如,一个人可能在工作时使用更为正式的语言,在与朋友交流时使用稍微随意的语言。通过将其建模为混合隐马尔可夫模型,我们将这个人的语言表示为各种口音的「混合」。

  • 1. GMM-HMMs

  • 2. 混合模型

  • 3. 模型的贝叶斯分类

2. 安装

pomegranate 依赖项要求:

- Cython (only if building from source) - NumPy - SciPy - NetworkX - joblib

运行测试前,还要安装 nose。

pip 安装:

pip install pomegranate

conda 安装:

conda install pomegranate

无需 C++编译器,快速安装 Windows 版本的 Wheels 已构建完毕。

3. 验证安装

设置已完成,现在需要检查 pomegranate 是否可以使用:

\$ python -c 'from pomegranate import *; print(normaldistribution(0, 1).probability(0))' 0.398942280402

pomegranate 官网

https://github.com/jmschrei/pomegranate

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐