当前位置: 首页 > 科技观察

横向比较Top5的开源语音识别工具包,CMUSphinx是最好的

时间:2023-03-18 21:12:45 科技观察

目前,开源世界里有很多不同的语音识别工具包,为开发者构建应用提供了很大的帮助。这些工具各自的优缺点是什么?数据科学公司SiliconValleyDataScience为我们带来了5个流行工具包的深入并排比较。之前,他们为我们带来了流行的深度学习框架的比较:《从 TensorFlow 到 Theano:横向对比七大深度学习框架》。作为深度学习研发团队的一员,我们参与了循环神经网络(RNN)等语音识别中需要用到的方法。几年前,业界领先的语音识别系统还是基于语音分析方法,包括发音、声学和语言模型。通常,这些方法包含n-gram语言模型以及隐马尔可夫模型(HMM)。在这里,我们以这个模型为基准,尝试比较一些目前流行的语音识别方法。到目前为止,我们很难看到有人对开源语音识别模型进行过真正的比较。希望这篇文章能够成为一个很好的例子,给大家带来一些帮助。本文回顾了使用传统HMM&n-gram语言模型的开源语音识别工具包。对于用户来说,大多数人都知道Siri或Cortana等消费产品。对于研发工程师来说,更灵活、更专注的解决方案更符合需求,很多公司都会开发自己的语音识别渠道。以下是目前在开源世界中出现的流行工具包,以及我们对它们的评价。开源和免费语音识别工具包的横向比较此分析基于svds开发人员的主观经验和开源社区的现有新闻。上表列出了大部分流行的语音识别软件(但略微超出开源范围)。Gaida等人在2014年发表的一篇论文。评估了CMUSphinx、Kaldi和HTK。其中,HTK并不是严格意义上的开源,因为它的代码不能被重复使用,也不能用于商业用途。编程语言因为用户使用的语言不同,你可能对特定的工具包有自己的偏好。上述工具都有除ISIP以外的Python包,尽管在某些情况下,Python包并不包含核心代码的所有功能。CMUSphinx还包括其他几种编程语言,例如Java和C。开发工作在学术研究范围内,所有列出的项目都包含它们的源代码。CMUSphinix,很明显,从名字就可以看出是卡耐基梅隆大学的产物。它以某种形式存在了20年,现在可以在Github(C(https://github.com/cmusphinx/pocketsphinx)版本和Java(https://github.com/cmusphinx/sphinx4)版本)和两者都在SourceForge(https://sourceforge.net/projects/cmusphinx/)上开源,并且在这两个平台上都有黑客活动。Github上的Java版和C版都只有一个贡献者,但这并不影响这个项目的历史真实性(SourceForgerepo上有9个管理者和很多开发者)。自2009年的一个研讨会以来,Kaldi就有了它的学术根源,现在在GitHub(https://github.com/kaldi-asr/kaldi)上开源,有121位贡献者。HTK于1989年开始于剑桥大学,商业化已有一段时间,但现在其版权已归还剑桥大学,不再是开源软件。它的最新版本于2015年12月更新,之前于2009年发布。Julius(http://julius.osdn.jp/en_index.php)起源于1997年,最后一次主要发布是在2016年9月,一些活跃的Github回购有三个贡献者,现在不太可能反映真实情况。ISIP是第一个获得专利的开源语音识别系统,起源于密西西比州立大学。它主要是在1996年到1999年间开发的,最新版本是在2011年发布的,但是在Github出现之前这个项目已经不复存在了。社区这里我们关注邮件、讨论组和开发者组的情况。CMUSphinx有一个在线聊天论坛,并且在其repos上有一个活跃的关注者。但是,我们想知道复制SourceForge和GitHub存储库是否会阻止更多贡献。相比之下,Kaldi不仅有论坛和讨论组,还有一个活跃的GitHubrepo。HTK也有一个讨论组,但没有开源存储库。Julius站点上的用户论坛已损坏,但日本站点上可能有更多信息。ISIP主要用于教育目的,邮件列表存档不再实用。教程和示例CMUSphinx的教程非常易读且易于遵循,Kaldi的文档也很全面但似乎更难理解。不过Kaldi的内容涵盖了语音和语音识别中的深度学习方法。如果您缺乏语音识别方面的知识,HTK的教程文档(注册用户可用)对此领域有详细的描述。Julius项目专注于日语,最好的资源是Japanese2(https://www.svds.com/open-source-toolkits-speech-recognition/#fn2),但他们也积极翻译成英文,还提供相关资源;此处列出了运行语音识别的一些示例(https://github.com/julius-speech/dictation-kit)。ISIP也有一些资料,但导航起来有些困难。训练模型即使您使用这些开源工具的唯一原因是训练特定的识别模型,其他语音功能也将是它们的吸引力所在。CMUSphinx包括英语和许多其他开箱即用的模型,我们可以在项目的GitHubredme上轻松找到它们。虽然Kaldi对现有模型的解码说明深藏在文档中,但我们最终在egs/voxforge子目录下的repo下找到了一个在英文VoxForge数据集上训练的模型,识别功能在online-data子目录下。其他三个包没有容易找到的功能,但它们至少都有VoxForge格式的简单模型,VoxForge是一个著名的语音识别数据和训练模型众包网站。原文:http://www.kdnuggets.com/2017/03/open-source-toolkits-speech-recognition.htmlid:almosthuman2014)》]点此阅读更多本作者好文