本篇文章1654字,读完约4分钟

Lei技术评论:kaldi,一个在自动语音识别(asr)领域广泛使用的开源语音识别工具包,现在也集成了tensorflow。该计划允许kaldi开发人员使用tensorflow部署他们的深度学习模块,tensorflow用户可以更方便地使用kaldi的体验。

Kaldi集成TensorFlow,两个开源社区终于要一起玩耍了

1.传统asr有什么问题?

建立一个能够理解不同语言、口音、环境和对话类型的人类语言的自动识别系统是一项非常复杂的任务。传统的asr系统将许多单独的模块集成到一个管道中,其中每个模块在前一个模块的输出上执行。原始音频数据从一端进入,然后识别的语音转录内容从另一端输出。典型的基于统计模式识别的语音识别系统一般由信号处理和特征提取模块、声学模块、发音词典、语言模块和解码器组成。为了支持越来越多的最终用户应用,kaldi工具包中集成了更多的模块。

Kaldi集成TensorFlow,两个开源社区终于要一起玩耍了

近几年来,随着深层神经网络的发展,许多现有的人工智能模块已经被深层神经网络所取代,大大提高了单词识别的准确率。然而,在开发生产级asr系统时,仍有许多问题需要克服:

Kaldi集成TensorFlow,两个开源社区终于要一起玩耍了

深度学习算法在一些问题上能给出很好的结果,如声学环境(噪声)、特定语言发音、词汇范围等。,但在部署过程中并不总是很好地适应;

数据——用不同的语言和不同的声学环境构建asr系统需要大量不同类型的数据,但我们可能没有所需的数据。

规模-一般来说,asr系统可以支持大量的语言和使用大量的计算。

让我们以asr系统中的语言模块为例。语言模块是最先进的asr系统的关键部分。它们主要依靠统计模型来揭示语言单位的内在统计规律,为整个系统提供语言背景,有助于预测正确的词序列和区分发音相似的词。随着最近机器学习的突破,语音识别开发人员正在使用基于深度学习的语言模型,这被称为神经语言模型。与传统的统计方法相比,该神经语言模型的结果得到了显著的改善。然而,神经语言模型的训练和部署极其复杂和耗时。

Kaldi集成TensorFlow,两个开源社区终于要一起玩耍了

第二,将张量流整合到kaldi中

总部位于西雅图的smart wire Company是一家通过云软件弥合实时手机通话和商业应用之间差距的公司。他们的目标是实时分析和处理业务代表和客户之间成千上万次对话的内容,并自动处理数据输入和请求响应等任务。为了使asr系统在这种情况下有用,必须确保它能够以非常低的延迟提供非常精确的转录,并且计算规模不能大到足以有效地支持数千个并发会话。在这种需求下,智网公司的yishay carmiel和海南旭领导的两个团队意识到了这些困难,通过合作完成了kaldi和tensorflow的整合。

Kaldi集成TensorFlow,两个开源社区终于要一起玩耍了

在将tensorflow集成到kaldi之后,他们的asr开发周期缩短了一个数量级。例如,上面提到的语言模块,如果将张量流应用于这个模块,可能只需要几天,而不是几周,就可以从模型通道中验证概念;对于整个asr系统,开发周期从几个月缩短到几周。此外,张量流的集成大大简化了kaldi所需的数据。

Kaldi集成TensorFlow,两个开源社区终于要一起玩耍了

将tensorflow作为一个模块集成到kaldi中对kaldi R&D的员工有很大的好处。同样,这种集成使tensorflow开发人员能够轻松访问强大的asr平台,并将现有的语音处理过程(如kaldi强大的声学模型)整合到机器学习应用程序中。kaldi中用于训练张量流模型的模块可以在不影响整体的情况下进行替换,非常便于扩展。此外,已经在生产中使用的kaldi系统可以用来评估这个集成模型的质量。

Kaldi集成TensorFlow,两个开源社区终于要一起玩耍了

我们希望kaldi-tensorflow的整合能够使这两个充满活力的开源开发社区更加紧密地联系在一起,并共同支持各种基于语言的新产品和研究突破。

雷锋。(公开号码:雷锋。请注意-

集成模型代码:github/kaldi-asr/kaldi

示例:github/kaldi-ASR/kaldi/tree/master/egs/ami/S5/local/tfnnlm

这篇文章是由雷锋编辑的。谷歌开发人员拉兹尔·阿尔瓦雷斯是谷歌的一名研究工程师,也是smart wire的创始人。

雷锋原创文章。严禁擅自转载。详情请参考转载说明。

标题:Kaldi集成TensorFlow,两个开源社区终于要一起玩耍了

地址:http://www.hcsbodzyz.com/hcxw/6618.html