资源 | 横向对比5大开源语音识别工具包,CMU Sphinx最佳

选自svds

作者:Cindi Thompson

机器之心编译

参与:李泽南、Smith

目前开源世界里存在多种不同的语音识别工具包,它们为开发者构建应用提供了很大帮助。这些工具各有哪些优劣?数据科学公司 Silicon Valley Data Science 为我们带来了 5 种流行工具包的深度横向对比。此前,他们曾为我们带来过流行深度学习框架的对比:《从 TensorFlow 到 Theano:横向对比七大深度学习框架》。

作为深度学习研发团队的一员,我们对于循环神经网络(RNN)和其他语音识别需要用到的方法都有所涉及。在几年之前,业内最佳的语音识别系统还是基于语音分析的方法,包含发音、声学和语言模型。通常,这些方法包含 n-gram 语言模型,以及隐马尔科夫模型(HMM)。在此,我们以这种模型作为基准,试图对比目前流行的一些语音识别方法。迄今为止,我们很难看到有人对开源语音识别模型进行过真正对比,希望本文可以抛砖引玉,为大家带来一些帮助。

本文回顾了使用传统 HMM&n-gram 语言模型的开源语音识别工具包。对于用户而言,大多数人都会知道 Siri 或 Cortana 这样的消费产品。而对于研发工程师来说,更灵活、更具专注性的解决方案则更符合需求,很多公司都会研发自己的语音识别通路。以下是目前开源世界上出现的流行工具包,以及我们对它们的各项评价。

开源免费语音识别工具包横向对比

本次分析基于 svds 开发者的主观经验和开源社区的已有消息。上表列出了目前大部分流行的语音识别软件(但略微超出开源的范畴)。2014 年 Gaida 等人的一篇论文评估了 CMU Sphinx、Kaldi 和 HTK。其中 HTK 严格意义上来说并不是开源的,因为其代码并不能重用或作为商业用途使用。

编程语言

因为用户使用语言的情况各不相同,你可能会对特定的工具包有自己的偏好。以上工具除了 ISIP 以外都有 Python 的封装,虽然在一些情况下,Python 封装并不包括核心代码的全部功能。CMU Sphinx 也包含了其他几种编程语言,如 Java 和 C。

开发工作

在学术研究中,所有列出的项目都包含它们的来源。CMU Sphinix,显而易见,从它的名字就能看出来是卡内基梅隆大学的产物。它已经以某些形式存在了 20 年了,现在它在 Github(C (https://github.com/cmusphinx/pocketsphinx) 版本和 Java (https://github.com/cmusphinx/sphinx4) 版本)和 SourceForge (https://sourceforge.net/projects/cmusphinx/) 上都开源了,而且两个平台上都有最新活动。Github 上的 Java 版本和 C 版本都只有一个贡献者,但是这并不影响此项目的历史真实性(在 SourceForge repo 上有 9 个管理人员还有很多开发者)。

Kaldi 从 2009 年的研讨会起就有它的学术根基了,现在已经在 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 repo 包含三个贡献者,现在已经不大可能反应真实情况了。ISIP 是第一个最新型的开源语音识别系统,源于密西西比州立大学。它主要发展于 1996 到 1999 年间,最后版本发布于 2011 年,但是这个项目在 Github 出现前就已经不复存在了。

社区

这里我们关注一下邮件、讨论群还有开发者团体的情况。CMU Sphinx 在它的 repos 上有着在线交流论坛和积极的关注。然而,我们想知道复制 SourceForge 和 GitHub 的 repo 是否阻碍了更多的投稿。相比之下,Kaldi 不仅有着论坛和讨论群,还有一个活跃的 GitHub repo。HTK 也有讨论群但是没有开放资源库。Julius 网站上的用户论坛坏掉了,但是在日本站里可能有更多的信息。ISIP 主要用于教育目的,而且邮件清单档案现在已经不再实用。

教程和例子

CMU Sphinx 的教程非常具有可读性,易于学习,Kaldi 的文档也很全面,但似乎更难理解。不过 Kaldi 的内容覆盖了语音识别中的语音和深度学习方法。如果你缺乏语音识别的知识,HTK 的教程文档(注册用户可看)对这一领域有详尽的描述。Julius 项目聚焦于日语,最新的资料就是 Japanese2 (https://www.svds.com/open-source-toolkits-speech-recognition/#fn2),但是他们也主动地译成英文,并且也提供相关资料;这里列有一些运行语音识别的实例(https://github.com/julius-speech/dictation-kit)。ISIP 也有一些资料,但是有些难以浏览。

训练模型

即使你使用这些开源工具的最大理由是训练特定的识别模型,其他语音功能也会是它们吸引人的地方。CMU Sphinx 包含英语和很多其他即开即用的模型,在该项目 GitHub 的 redme 上,我们可以很容易地找到它们。而 Kaldi 对现有模型进行解码的指令深深地隐藏在文档中,我们最终在 egs/voxforge 子目录的 repo 下发现了一个英语 VoxForge 数据集训练后的模型,而识别功能在 online-data 子目录下。其他三个软件包没有容易找到的功能,但它们至少都有适配 VoxForge 格式的简单模型,后者是一个语音识别数据和训练模型的著名众包网站。

目前,这项研究还没有加入神经网络语音识别的内容,以上的对比还处于初步阶段,欢迎大家的讨论。

原文链接:http://www.kdnuggets.com/2017/03/open-source-toolkits-speech-recognition.html

本文为机器之心编译,转载请联系本公众号获得授权。

原文发布于微信公众号 - 机器之心(almosthuman2014)

原文发表时间:2017-06-26

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏新智元

AI抢程序员工作:2040年AI可能代替程序员

14920
来自专栏phodal

我是如何为技术博客设计一个推荐系统(上):统计与评分加权

过去的两周里,我一直忙于为 『玩点什么』 设计一个推荐系统。在这个过程中,参考几本书籍,查找了一系列的资料。想着这些资料上,大部分都是大同小异的,实现了几个简单...

41760
来自专栏人工智能头条

专访陈天奇:DMLC发起人与机器学习的故事

2K80
来自专栏大数据文摘

Elon Musk揭OpenAI研究新突破, 可在VR中自我学习的机器人(附论文)

23350
来自专栏机器之心

Theano's Dead!Yoshua Bengio宣布停止Theano维护与开发

机器之心报道 机器之心编辑部 今日,Theano 的开发与维护者之一 Pascal Lamblin 贴出了一封邮件:Yoshua Bengio 宣布 Thean...

36380
来自专栏PPV课数据科学社区

【学习】干货收藏:如何进行大数据分析及处理?

众所周知,大数据已经不简简单单是数据大的事实了,而最重要的现实是对大数据进行分析,只有通过分析才能获取很多智能的,深入的,有价值的信息。 那么越来越多的应用涉及...

90460
来自专栏悦思悦读

如何以Python为工具走入数据科学之门

本次分享第【1】部分:什么是数据科学。 本次分享第【2】部分:如何从小白成长为数据科学家。 分享主题:Data Science学习分享会 分享时间:2016年4...

366130
来自专栏AI科技评论

Facebook 所谓的“人工智能母体”FBLearner Flow 究竟是如何工作的?

Facebook昨天第一次正式介绍了FBLearner Flow,一个可以为全公司员工管理机器学习模型的机器学习软件。换句话说,这是一个可以自己制造人工智能的人...

68270
来自专栏TEG云端专业号的专栏

谈谈服务器运营领域的机器学习

本文我们来谈谈近几年机器学习在服务器运营领域的一些实践。

70080
来自专栏FreeBuf

走近科学:隐藏在图像数据库中的安全问题

本文原刊登于IEEE IT Professional杂志。 由于系统改造的代价之高,使用适于系统设计的网络安全措施则是最好的选择。而新科技和应用则带来更多安全与...

219100

扫码关注云+社区

领取腾讯云代金券