语音识别基础篇(一) - CMU Sphinx简介

如需转载请标明出处:http://blog.csdn.net/itas109 

QQ技术交流群:129518033

CMU Sphinx(简称Sphinx)是美国卡内基梅隆大学开发的一系列语音识别系统的总称。在2000年,卡内基梅隆的Sphinx小组致力于开源几个语音识别器组件,包括Sphinx 2和后来的Sphinx 3(2001年)。 语音解码器带有声学模型和示例应用程序。可用资源包括声学模型训练软件,语言模型编辑软件和语音词典cmudict。

1.软件部分

CMU Sphinx是一个领先的语音识别工具包,具有用于构建语音应用程序的各种工具。 CMU Sphinx包含许多用于不同任务和应用程序的开发包。 有时候,选择什么是令人困惑的。 下面来介绍一下每个开发包的用途:

  • Pocketsphinx — lightweight recognizer library written in C  (C语言开发的轻量级语音识别引擎)
  • Sphinxtrain — acoustic model training tools (声学模型训练工具)
  • Sphinxbase — support library required by Pocketsphinx and Sphinxtrain (Pocketsphinx和Sphinxtrain的基础类库 )
  • Sphinx4 — adjustable, modifiable recognizer written in Java (Java语言开发的可调节、可修改的语音识别引擎)

 在线生成语言模型和词典的工具 Sphinx Knowledge Base Tool VERSION 3 

 2017年11月18日最新的软件版本为5prealpha

  最新的源代码cmusphinx · GitHub

  支持的操作系统:Windows、Linux、MAC

  支持的开发语言:C/C++、Java、Python

2.模型部分

  模型包括声学模型(acoustic model)、语言模型(language model)、拼音字典(phonetic dictionary)

  声学模型包含每个句子的声学特性。 存在与上下文无关的模型,其包含属性(每个音素的最可能的特征向量)和依赖于上下文的(从具有上下文的语音建立的)属性。

  语言模型用于限制单词搜索。它定义了哪些单词可以遵循以前识别的单词(记住,匹配是一个顺序过程),并通过剥离不可能的单词来帮助显着限制匹配过程。最常用的语言模型是n-gram语言模型 - 它们包含单词序列的统计数据和有限状态语言模型 - 它们通过有限状态自动化(有时具有权重)来定义语音序列。为了达到很高的准确率,您的语言模型必须在搜索空间限制方面非常成功。这意味着它应该很好地预测下一个单词。语言模型通常会限制考虑到它所包含的单词的词汇。这是名称识别的一个问题。为了解决这个问题,一个语言模型可以包含像子词甚至音素这样的小块。请注意,这种情况下的搜索空间限制通常较差,相应的识别精度低于基于单词的语言模型。

  语音词典包含从单词到音素的映射。 这个映射不是很有效。 例如,只有两到三个发音变体被记录在其中。 但是,大多数情况下它是足够实用的。 词典不是将单词映射到电话的唯一方法。 您也可以使用一些机器学习算法学到的复杂功能。

  模型下载地址:Download models
  其中Mandarin为中文普通话,下载下来之后我们可以看到
  声学模型:zh_broadcastnews_16k_ptm256_8000.tar.bz2
  语言模型:zh_broadcastnews_64000_utf8.DMP
  拼音字典:zh_broadcastnews_utf8.dic

zh_broadcastnews_ptm256_8000目录结构
├── feat.params   //HMM模型的特征参数
├── mdef   //模型定义文件(为每个即将进行训练的HMM的每一状态定义一个独特的数字标识)
├── means  //混合高斯模型的均值
├── mixture_weights   //混合权重
├── noisedict    //噪声也就是非语音字典
├── sendump  //用来从声学模型中获取mixture_weights文件的?
├── transition_matrices  //HMM模型的状态转移矩阵
└── variances  //混合高斯模型的方差

其他的中文声学模型还有tdt_sc_8k,该模型可以在pocketsphinx-0.8-win32中找到。

Reference

https://en.wikipedia.org/wiki/CMU_Sphinx

http://www.speech.cs.cmu.edu/sphinx

https://cmusphinx.github.io

https://cmusphinx.github.io/wiki/

https://cmusphinx.github.io/wiki/tutorial/

https://cmusphinx.github.io/wiki/download/

https://cmusphinx.github.io/wiki/faq/

http://blog.csdn.net/zouxy09/article/details/7942784

觉得文章对你有帮助,可以用微信扫描二维码捐赠给博主,谢谢!

 如需转载请标明出处:http://blog.csdn.net/itas109 

QQ技术交流群:12951803

  • 6
    点赞
  • 57
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

itas109

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值