什么叫语音识别系统
语音识别系统是指将人的语音信号转换为计算机可读的文本或命令的技术和系统。它的核心设备是语音识别软件,可应用于语音输入、语音合成、口语训练等领域。
1.什么叫语音识别系统语音识别系统是一种通过捕捉语音信号后对其进行分析和处理的技术。它主要依赖于模式匹配、统计建模和人工神经网络等方法来进行语音识别操作。
2.语音识别系统包括哪五个部分语音识别系统通常包括以下五个部分:
前端声学处理-捕获语音信号并将其变为数字信号。特征提取-将数字信号转化为能够进行语音识别的特征向量。声学模型-匹配特征向量到相应的语音单元上。语言模型-根据语法规则和语言知识进行翻译操作。解码器-对语音识别结果进行排列,并进行纠错和适当的补全操作。3.语音识别系统的原理语音识别的核心原理是将语音信号转化为数字信号,并基于相应的声学模型和语言模型重新组合,从而得出最终的语音识别结果。其中,最关键的环节是声学模型的训练和优化。一般采用隐马尔可夫模型(HMM)、条件随机场(CRF)等方法对声学模型进行建模,并通过大量的语音样本进行训练和优化。
4.语音识别系统的应用语音识别技术已经广泛应用于如下领域:
语音输入-可以实现通过语音命令控制电脑、手机等设备的操作。拨打电话-可以在自动语音应答系统中提供人机交互服务。口语教育-微信小程序、在线学习平台等进行口语测试、口语趣味互动等活动。健康护理-在医疗机构中可以进行患者语音识别、声线分析、话语情感等方面的应用。横评:五款免费开源的语音识别工具
编者按:本文原作者CindiThompson,美国德克萨斯大学奥斯汀分校(UniversityofTexasatAustin)计算机科学博士,数据科学咨询公司硅谷数据科学(SiliconValleyDataScience,SVDS)首席科学家,在机器学习、自然语言处理等领域具有丰富的学术研究和产业界从业经验。雷锋网编译。
作为SVDS研究团队的成员,我们会经常接触各种不同的语音识别技术,也差不多见证了语音识别技术近几年的发展。直到几年之前,最先进的语音技术方案大多都是以语音为基础的(phonetic-based),包括发音模型(Pronunciationmodels),声学模型(AcousticModelling)和语言模型(LanguageModel)等。通常情况下,这些模型大多都是以隐马尔可夫模型(HMM)和N-gram模型为核心的。未来,我们希望以这些传统模型为基础,探索一些诸如与百度DeepSpeech等最新的语音识别系统相结合的新技术。当然,目前互联网上可以找到许多针对这些基础模型进行解释、汇总的文章和资料,但针对它们之间的差别和特点展开阐述的却并不多。
为此,我们对比了五款基于HMM和N-gram模型的语音识别工具:CMUSphinx,Kaldi,HTK,Julius和ISIP。它们都是开源世界的顶级项目,与Dragon和Cortana等商业语音识别工具不同,这些开源、免费的工具可以为开发者提供更大的自由度以及更低的开发成本,因此在开发圈始终保持着强大的生命力。
需要提前说明的是:以下分析大多来源于我们的主观经验,同时也参考了互联网上的其他信息。而且这篇文章也并非一个覆盖所有语音识别开源工具的汇总类文章,我们只是对比了其中五款相对更主流的产品。另外,HTK并不是严格开源的,它的代码并不能重新组织发布,也不能用于商业用途。
想知道更多语音识别工具的用户请点击以下链接,其中列出了几乎所有开源/非开源的语音识别工具,非常全面。
https://en.wikipedia.org/wiki/List_of_speech_recognition_software
编程语言:根据你对不同编程语言的熟悉程度,你可能会更偏爱某一种工具。如上图所示,这里列出的五款工具中,除了ISIP只支持C++之外,全都支持Python。你可以直接在它们的官网找到不同语言对应的下载链接。不过,Python版有可能并不会覆盖工具包的全部功能,有些功能还可能是为其他语言的特性单独设计的。另外值得注意的是,CMUSphinx还支持Java、C和其他更多语言。
开发者活跃度:这里列出的五个项目均源于学术研究。
从名字也能看出,CMUSphinx是一款源于卡内基梅隆大学的产品。它的研发历史大约可以追溯到20年前,目前在GitHub和SourceForge平台同步更新。在GitHub平台有C和Java两个版本,而且据说分别只有一个管理员维护。但在SourceForge平台却有9个管理员和十几个开发者。
Kaldi源于2009年的一场研讨会,代码目前在GitHub平台开源,共有121位贡献者。
HTK始于1989年的剑桥大学,曾一度商业化,但目前又回归剑桥。如前所述HTK现在并不是一款严格意义的开源工具,而且更新缓慢(虽然它的最新版本更新于2015年12月,但前一个版本的更新时间却是2009年,中间隔了差不多6年时间)。
Julius始于1997年,最后一个主要版本更新于2016年9月,据称其GitHub平台有三名管理员维护。
ISIP是第一个比较先进的开源语音识别系统,起源于密西西比州。它主要在1996年到1999年之间研发,最后一个版本发布于2011年,在GitHub平台出现之前就已经停止更新了。
社区活跃度:这一部分我们考察了上述五个工具的邮件和社区讨论情况。
CMUSphinx的论坛讨论热烈,回帖积极。但其SourceForge和GitHub平台存在许多重复的repository。相比之下,Kaldi的用户则拥有更多交互方式,包括邮件、论坛和GitHubrepository等。HTK有邮件列表,但没有公开的repository。Julius官网上的论坛链接目前已经不可用,其日本官网上可能有更详细的信息。ISIP主要用于教育目的,其邮件列表目前已不可用。
教程和示例:CMUSphinx的文档简单易读,讲解深入浅出,且贴近实践操作。
Kaldi的文档覆盖也很全面,但是在我看来更难理解。而且,Kaldi同时包括了语音识别解决方案中的语音和深度学习方法。
如果你并不熟悉语音识别,那么可以通过对HTK官方文档(注册后可以使用)的学习对该领域有一个概括的认识。同时,HTK的文档还适用于实际产品设计和使用等场景。
Julius专注于日语,其最新的文档也是日语,但团队正在积极推动英文版的发布。
以下链接提供了一些基于Julius的语音识别样例。
https://github.com/julius-speech/dictation-kit
最后是ISIP,虽然它也有一些文档,但是并不系统。
预训练模型:即使你使用这些开源工具的主要目的是想要学习如何去训练一个专业的语音识别模型,但一个开箱即用的预先训练好的模型仍然是一个不可忽略的优点。
CMUSphinx包括英语、法语、西班牙语和意大利语在内的诸多可以直接使用的模型,详情可以参考它的说明文档。
Kaldi对现有模型进行解码的指令深藏在文档中,不太容易找到,但我们仍然发现了贡献者在egs/voxforge子目录下基于英文VoxForge语料库训练好的一个模型,并且还可以通过online-data子目录下的一个脚本直接运行。详情可以参考Kaldi项目的repository。
我们没有深入挖掘其他三个软件包的模型训练情况,但它们应该至少包含一些简单可用的预训练模型,而且与VoxForge兼容(VoxForge是一个非常活跃的众包语音识别数据库和经过训练的模型库)。
未来我们将陆续推出关于CMUSphinx具体应用和如何将神经网络应用于语音识别的更多文章,欢迎大家继续关注。
来源:kdnuggets,雷锋网编译
雷锋网相关阅读:
从SwiftScribe说起,回顾百度在语音技术的七年积累
IBM语音识别能力逼近人类水平,获深度学习巨头YoshuaBengio盛赞
百度首席科学家吴恩达:大脑能在一秒内完成的任何工作,都会被AI取代
雷峰网版权文章,未经授权禁止转载。详情见转载须知。