声学在线前几日盘点了语音识别业界相关的公司和技术,引起了众多朋友的关注。不少朋友都在咨询声学在线关于技术细节问题,因此,我们打算春节期间连续发布几篇深度文章,希望从语音识别领域的公司、技术、算法和专利的层面解读出语音识别的产生、发展、应用与瓶颈,以此提供给相关行业的朋友们作为参考。
目前朋友们最关心的就是当前有哪些语音识别开放平台,显然大家更担心被某个平台所绑架。为了促进语音识别的行业发展,我们更深入一步,不仅盘点当前的商业开放平台,也把这个领域的开源代码详细盘点一番,让更多的朋友了解这个行业。
语音识别领域的商用开源代码盘点
语音识别是一门交叉学科,其所涉及的领域包括:信号处理、模式识别、概率论和信息论、发声机理和听觉机理、人工智能等等。但是随着深度学习技术的发展,云端的语音识别更多的偏向于计算机技术。显然,从事计算机技术研究的人员更加众多,这也是语音识别的快速发展的基础,因而也形成了语音识别的开源代码要比开放平台更多的现象。
提到语音识别的开源代码,首先就要提到三个非常著名的开源平台,即Kaldi、CMU Sphinx和Julius。笔者大概按其重要性做了以下排名,Sphinx、HTK之类曾经很红火,但是确实也有点太老了。而Kaldi是Apache licence,完全可以商用,美国和中国很多公司都是直接修改Kaldi生成的语音识别引擎。另外,很多巨头公司内部研究部门也是在用Kaldi做研发,关于这些欢迎留言讨论。
1 Kaldi
Kaldi诞生于2009年的JohnsHopkins University,刚开始项目重点是子空间高斯模型(SGMM)建模和词汇学习抽样调查,代码也是基于HTK进行的开发,现在也是C++作为主要语言。但是随着更多参与者的加入,特别是对深度神经网络(DNN)的支持,让Kaldi的发展超过了其他几个著名开源项目。更重要的是Kaldi的维护和更新非常及时,基本上每天都有新的进展报告,而且在跟进学术研究的新算法方面也更加快速。国外很多公司和研究机构也都在用Kaldi平台,当然国内更多的公司,其实也是基于这个平台做的改进,特别是最近几年新兴的公司和企业研究院。
CMU-Sphinx是卡内基-梅隆大学(CarnegieMellon University,CMU)开发的一款开源的语音识别系统,后来Sun、三菱、惠普、加州大学圣克鲁斯分校和麻省理工也对其有所贡献。Sphinx包括一系列的语音识别器和声学模型训练工具,使用了固定的HMM模型(中科院声学所也曾经引领了HMM国内潮流),被称为第一个高性能的连续语音识别系统。Sphinx的发展也很快,现在Sphinx-4已经完全用Java语言改写,很适合嵌入到Android平台。另外,笔者这里还要强调下李开复先生对Sphinx的贡献,虽然争论很多。
3 Julius
Julius是日本京都大学和日本IPA(Information-tech-nologyPromotion Agency)联合开发的一个实用高效双通道的大词汇连续语音识别引擎。Julius通过结合语言模型和声学模型,可以很方便地建立一个语音识别系统。Julius支持的语言模型包括:N-gram模型,以规则为基础的语法和针对孤立词识别的简单单词列表。Julius支持的声学模型必须是以分词为单位,且由HMM定义的。Julius由纯C语言开发,遵循GPL开源协议,Julius最新的版本采用模块化的设计思想,使得各功能模块可以通过参数配置。
HTK是Hidden Markov ModelToolkit(隐马尔科夫模型工具包)的简称,HTK主最初是由剑桥大学工程学院(Cambridge University Engineering Department ,CUED)的机器智能实验室于1989年开发的,它被用来构建CUED的大词汇量的语音识别系统。HTK主要包括语音特征提取和分析工具、模型训练工具、语音识别工具。HTK实际上于1999年被微软收购,但是这样反而阻碍了HTK的发展,因此后来微软又授权开源。HTK的版本更新相当缓慢,2015年总算发布了其3.5 Beta版本。
5 RWTH ASR
RWTH ASR是一个包含语音识别解码器与工具的声学模型开发软件包,2001年由 RWTH Aachen 大学的Human Language Technology and Pattern Recognition Group 开发。RWTH ASR也是由C++开发,主要包括说话人自适应组件、说话人自适应训练组件、非监督训练组件、个性化训练和单词词根处理组件等。
上述5种语音识别开源代码是基础的开源版本,基于这些版本诞生了不少衍生的版本,比如Platypus,FreeSpeech,Vedics,NatI,Simon,Xvoice,Zanzibar,OpenIVR,Dragon Naturally Speaking等等,其中,Dragon Naturally Speaking比较有意思,被Nuance收购后也作为了其产品名称。
另外多说几句,语音识别重要的开源代码几乎都是来源于国外大学研究机构的主要贡献。这或许也是国内大学和研究机构的改革方向,拿着纳税人的钱,是不是也应该做出这种促进行业发展的基础贡献?同样,国家也不应该给大学和研究机构太过于功利性的考核。一个行业的繁荣发展,需要大量基础研究的贡献,而这不是企业所能担负的任务。
语音识别领域的免费开放平台盘点
语音识别的开源代码虽然众多,但是部署应用相当复杂。特别是基于深度学习的开源平台,需要大量的计算和数据以训练引擎,这个对于一般的用户来说也是一个非常高的技术门槛。因此对于创业型公司来讲,显然自己部署语音识别引擎也不划算,那么免费的开放平台就是很好的选择。
Nuance是语音识别领域的老牌劲旅,除了语音识别技术外,还包扩语音合成、声纹识别等技术。Nuance Voice Platform(NVP)是Nuance公司推出的语音互联网平台,这是一个开放的、基于统一标准的语音平台产品。它能够支持客户公司已有的IT投资和基础设备,同时可以加入语音的应用。但是,Nuance一直有个问题就是过于托大,对创业型的小公司也不太感兴趣,天天想着攀比各个行业的巨头。也难怪,这也是个策略,最近也听说Dragon Drive将在新奥迪A3上提供一个免提通讯接口,可以实现信息的听说获取和传递。
2 Microsoft Speech API
微软的Speech API是微软推出的包含语音识别(SR)和语音合成(SS)引擎的应用编程接口,其最新版本是Microsoft Speech API (SAPI) 5.4。SAPI支持多种语言的识别和朗读,包括英文、中文、日文等。微软的API调用模式,我想众位都是非常熟悉了,这里也不再多强调。但是,微软总有个问题,就是任何一个产品都得和Windows绑定。这也让人工智能领域的研发人员头疼不已,总不能在机器人里面装个Windows吧,所以面向PC的语音识别没啥前途。
3 Google Speech API
这个领域自然不能少了苹果和谷歌,但是苹果打死也不会免费的,而谷歌打死也不会收费的。但是,这没有意义了,因为不管你的引擎多么优秀,现在的语音识别还是要基于云的。所以国内的众多创业用户压根用不了,甚至也访问不到。但是如果你的产品主要布局在国外,Google Speech API还是要备选的,因为这个API调用起来更加方便。
4 IBM viaVoice
IBM必须要提到,或许我们逐渐淡忘了这个曾经极其辉煌的巨头,但是IBM绝对是较早开始语音识别研究的机构之一。早在20世纪50年代末期,IBM就开始了语音识别的研究。1964年世博会上,IBM就向世人展示了数字语音识别。 1984年,IBM发布的语音识别系统在5000个词汇量级上达到了95%的识别率。1996年IBM发布了新版的听写系统VoiceType3.0,这是viaVoice的原型。这个版本的语音识别系统不需要训练,可以实现孤立单词的听写和连续命令的识别。1999年,IBM发布了VoiceType的一个免费版。2003年,viaVoice就已经非常流行,但是2005年,IBM授权代理viaVoice的ScanSoft公司与Nuance公司合并,viaVoice也就可惜的退出了历史舞台。现在也只能从网上搜索下载一些桌面版本,对于市场应用来说,基本上也就没有什么价值了。
5 科大讯飞语音
科大讯飞1999年成立,作为中国最大的智能语音技术提供商,在智能语音技术领域有着长期的研究积累,并在中文语音合成、语音识别、口语评测等多项技术上拥有国际领先的成果。科大讯飞目前提供语音识别、语音合成、声纹识别等全方位的语音交互技术。目前也是国内创业团队使用最为广泛的开放语音识别平台,科大讯飞拥有中科大的教育资源和中科院的技术资源,而且已经占据先机,主要还是看其未来的战略如何发展。
6 百度语音
百度语音自从和中科院声学所合作以后,在贾磊带领下短时间内建立起来自己的引擎,而且打出了永久免费的口号,在很多领域抢占了一定的市场,在百度有钱任性的支持下自然发展迅速。但是,最近听说百度语音变动极大,新请来的吴恩达似乎和贾磊有些不合,传闻NG先生意欲整合百度语音,导致贾磊已经离职。而且百度语音最近招聘很多声学方面相关的学生,或许NG先生对百度语音又有了新的战略构想。实际上,NG先生负责的是百度大脑计划,语音交互自然要作为其中尤为重要的一环,而大脑计划若想落地,就必然需要终端设备的支持,而这也涉及到了众多声学前端技术。但是百度着急招人,给学生的待遇却没有太大竞争力。
小结
国内的语音识别开放平台还很多,和国外有所不同,国内开放的都是语音识别的专业公司,比如云之声、思必驰、捷通华声等等。但是这些公司也有隐忧,没有巨头那种资金实力,仅靠融资运转显然无法达到良性循环。现在来看,这几家公司都正在积极参与智能终端的语音交互方向,希望借此方向尽快落地赚钱。不过,笔者觉得这个方向,反而不是这些公司的强项。
云端语音识别大量依靠计算机方面的人才,而智能终端语音交互则需要声学方面的人才。所以最近许多公司都在拼命招聘这方面的人才,其中,不乏有360、爱奇艺,甚至YY、唱吧也跟着凑热闹。不过这个领域人才稀少,既然作为公司战略,不妨多给声学专业的学生一点重视,至少薪酬方面,不要低于计算机方面学生的薪酬。学习声学专业的学生都需要进行大量实验的积累,虽然不像化学那样危险,但是同样很累很辛苦。何况这种依赖于物理和生理的声学问题,也不是一般的技术人员就能短时间内掌握的。