Kaldi之父Daniel Povey,我为啥选择在小米开发下一代Kaldi

感谢分享原文-http://bjbsair.com/2020-04-03/tech-info/29916.html

本文约3185字,建议阅读6分钟

本文介绍Kaldi 之父 Daniel Povey对语音识别领域技术发展的想法。

在 2019 年小米开发者大会上,Kaldi 之父 Daniel Povey 以小米首席语音科学家的身份第一次和国内开发者见面,并表示将继续在小米进行 Kaldi 的版本开发,业界开发者对 Daniel Povey 加入小米后的动向高度关注,但却鲜有消息传出。在 AICon 2020 全球人工智能与机器学习技术大会(上海站)召开前期,InfoQ 有幸采访到了 Daniel Povey,听他分享对语音识别领域技术发展的想法。

在语音识别技术领域,Daniel Povey (以下简称:Daniel)的名字家喻户晓。他是语音识别开源工具 Kaldi 的主要开发者和维护者,被称为 Kaldi 之父。

过往,Daniel 在技术领域的发展轨迹始终没有离开“语音识别”。年少时,Daniel 在剑桥大学获得语音识别博士学位。工作初期,Daniel 在 IBM 研究院负责计算机语音识别的工作,并成为 Research Staff Member 的一员。随后,他又进入微软研究院继续深耕语音识别技术,2012 年,Daniel 加入约翰霍普金斯大学,担任语言和语音处理中心系主任。2019 年 12 月初,Daniel 正式加入小米成为小米首席语音科学家,主要负责下一代 Kaldi 的开发。

Kaldi 的意外诞生

当今不少广为流传的科学或技术研究成果都诞生于偶然,例如 Guido van Rossum 在开发 Python 时只是因为他在圣诞节期间觉得很无聊,所以决定开发一种新的脚本解释语言。Kaldi 的诞生与之类似。

在采访中,Dainel 表示,最初开发 Kaldi 主要是为了一个特殊的项目——子空间高斯混合模型(SGMM)发布代码。虽然现在这项技术已经不重要了,但 Kaldi 这个工具为其他很多技术提供了支持,也变得越来越受欢迎。

Kaldi 工具包自 2011 年发布以来,下载量超过了两万多次,合著的论文目前也已经被引用三千多次,Kaldi 集成了多种语音识别模型,包括隐马尔可夫和最新的深度学习神经网络,被认为是业界语音识别框架的基石。

与许多早期的机器学习框架类似,Kaldi 本身也是用 C/C++ 语言编写的,虽然当下 Python 是更为机器学习开发者所追捧的,但早期的大部分框架都选择了稳定的 C/C++ 语言。对此,Daniel 认为,高性能的代码通常在内部用 C 或者 C++ 实现,后上层来进行调用,或者是由上层来调用其他 C 或者 C++ 的第三方库。但由于设计时间较早,Kaldi 并没有 Python 接口(或编译成其他语言的接口),要编写唤起 C++ 程序的 shell 脚本来使用 Kaldi。

下一代 Kaldi 版本规划

在加入小米之前,国内外许多互联网头部公司都向 Daniel 抛出了橄榄枝,包括 Facebook、美团、滴滴、快手等,但在提及为什么会选择加入小米时,Daniel 表示:

我想加入一家 规模比较大的公司,能有足够优秀的开发者来进行下一代 Kaldi 的研发。 中国(尤其是北京)大公司云集,人才济济,所以这里自然而然成为了我的选择。我也面试了北京的一些其他公司,给我的感觉都很好,我之所以加入小米,是因为我认为小米是孵化开源软件的沃土,我觉得这里也愿意支持一项长期的开源项目,而且,小米的产品在市场上也有着良好的口碑。在我看来,小米是一家充满活力的企业,同事们都很友好且乐于助人。

Kaldi 的目标用户是那些了解语音识别技术的开发者,Kaldi 对于该领域的入门者来说并不容易。因此 Daniel 也表示接下来会研究 如何简化 Kaldi。但为了避免项目的体量过大,Daniel 团队现阶段并未对 Kaldi 进行大幅度地简化,但已经在 基于 PyTorch 来开发下一代 Kaldi, 该项目还没有完成,也没有对外公开发布。过去几个月,Daniel 对 Kaldi 所做的最大调整就是和快速解码相关的一些变动(解码是部署语音识别系统时的图搜索程序)。

下一代 Kaldi 完成后,Daniel 希望能 将其融入到小米的产品和服务中。

“和中国公司一起打造健康的社区,走向世界。”这是小米集团副总裁、集团技术委员会主席崔宝秋一直向 Daniel 重点表达的开源愿景,这也正是 Daniel 所欣赏的开源社区环境。

Kaldi 商业化落地

2017 年之前,小米没有自己的语音技术团队,但是却已经有了自己的云、大数据和 AI 平台。从过去的互联互通到未来的整体互联服务中,语音交互扮演着越来越重要的角色,小米也意识到,要想在激烈的市场竞争中占得一席之地,首先就要“自强”。

2018 年 3 月,雷军在两会的媒体沟通会上表示,“2017 年年初,小米设立了探索实验室,不久将有重磅级的人工智能产品发布。”而到了 2018 年 7 月,传闻已久的小米 AI 产品——小米 AI 音箱终于现身。在发布会上,小米联合创始人王川特意提到了小米的 NLP 团队,也就是说小米已经用上了自家的 NLP 技术。

两年间,小米不仅组建了自己的语音技术团队,还在智能产品中应用了自家的 NLP 技术,更重要的是,2019 年年初,小米创始人雷军确定了小米“手机 +AIoT"双引擎战略发展模式,为小米在语音技术领域的发展指明了方向,Daniel 带着 Kaldi 的加入则会为小米的“AIoT"战略添砖加瓦。

作为一个开源项目,Kaldi 要用于商业落地还要在很多地方进行调整,例如场景优化、跨平台兼容、对内对外赋能等。加入小米之后,Daniel 负责的主要工作就是将 Kaldi 应用于现有应用,在实践中检验技术的可用性。

目前,业界已有不少企业基于 Kaldi 进行产品研发,针对这一现状,Daniel 在接受 InfoQ 记者采访时给出的建议是:

如果用于基于服务器的、没有内存限制的识别,Kaldi 已经足够优化了,不需要做其他改进。如果用于基于设备的、有内存限制的识别,有时候使用(如 RNN-T)这类端到端的模型,以及 Tensorflow 工具包可能会比仅使用 Kaldi 更有成效。

语音识别技术发展

语音识别是计算机处理和识别人类语音的能力,其目标是将人类的语音中的词汇内容转换为计算机可读的输入,例如按键、二进制编码或字符序列。语音识别涉及信号处理、概率论和信息论、模式识别、声学、语言学和认知科学、人工智能等许多学科领域。

过往,工业界取得的许多技术突破是依赖学术界的研究结果,例如,语音识别技术在上世纪 50 年代就已经诞生,而到了 2012 年才在深度神经网络的助力下达到实用化,在没有应用 DNN 之前的六十年里,语音识别技术的发展极为缓慢。2015 年以前,业界更多使用的是传统的 DNN-HMM 混合模型,需要借助对齐信息和上下文相关音素才能达到比较好的识别准确率。2015 年以后,CTC 算法简化了训练过程,于是语音界纷纷投入大量资源训练更深、更复杂的神经网络,利用端到端技术进一步大幅提升语音识别的性能。2017 年 12 月,谷歌提出“使用序列到序列模型的当前最佳语音识别系统”(State-of-the-art Speech Recognition With Sequence-to-Sequence Models),将词错率降低至 5.6%,业界又开始基于此进行探索......

可以说,工业界的每一次突破背后都是学术界的研究成果在支撑,这种模式在人工智能领域最为明显。对此,Daniel 认为:

有时产品开发有助于推进研究,因为它强制我们去解决一些主流研究无法解决的问题,当研究遇到天花板时,就迫使人们要做出改变来解决问题。

语音识别技术发展至今,已经在工业、医疗、教育、金融等各行业进行了落地,而语音识别产品供应商们也表示其产品的识别准确率达到了 95% 甚至 97%,针对当下语音识别技术的发展现状,Daniel 认为:

现在业内许多人士认为,语音识别系统的准确度已经很高了,但实际上这种高精准度仅仅针对的是某些特定的语音类型。现阶段,让机器来识别人们日常交流还是比较困难的,尤其是当周围环境掺杂着噪声、音乐且多人同时发声时。也就是说,我们还需要对现有的语音识别技术进行认真打磨。

结 语

过去几年,我们看到了各类算法不断出现并应用在实际的业务系统中,进而提升语音识别的效果。同时,语音识别技术的应用领域越来越广,基于语音识别技术的人机交互系统开始大规模应用,并且在限定场景下已经有比较好的表现,比如机器人电话客服系统、智能手机助手、智能音箱等。从火爆渐趋冷静,从学术突破到工业落地,接下来,语音识别领域的技术突破值得期待。

嘉宾介绍:

Daniel Povey 是著名的语音识别开源工具 Kaldi 的主要开发者和维护者,被称为 Kaldi 之父。Kaldi 集成了多种语音识别模型,包括隐马尔可夫和最新的深度学习神经网络,公认是业界语音识别框架的基石。1993 年至 2003 年,Daniel 在剑桥大学度过了自己的高等教育经历,获得语音识别的博士学位。2003 年至 2008 年,Daniel 在 IBM 研究院负责计算机语音识别的工作,成为 Research Staff Member 的一员。2008 年至 2012 年, Daniel 在微软研究院参与计算机语音识别方面的工作。2012 年,Daniel 加入约翰霍普金斯大学,担任语言和语音处理中心系主任。2019 年 12 月,Daniel 正式加入小米公司,担任小米首席语音科学家,负责开发下一代 Kaldi。

—完—

感谢分享原文-http://bjbsair.com/2020-04-03/tech-info/29916.html

本文约3185字,建议阅读6分钟

本文介绍Kaldi 之父 Daniel Povey对语音识别领域技术发展的想法。

在 2019 年小米开发者大会上,Kaldi 之父 Daniel Povey 以小米首席语音科学家的身份第一次和国内开发者见面,并表示将继续在小米进行 Kaldi 的版本开发,业界开发者对 Daniel Povey 加入小米后的动向高度关注,但却鲜有消息传出。在 AICon 2020 全球人工智能与机器学习技术大会(上海站)召开前期,InfoQ 有幸采访到了 Daniel Povey,听他分享对语音识别领域技术发展的想法。

在语音识别技术领域,Daniel Povey (以下简称:Daniel)的名字家喻户晓。他是语音识别开源工具 Kaldi 的主要开发者和维护者,被称为 Kaldi 之父。

过往,Daniel 在技术领域的发展轨迹始终没有离开“语音识别”。年少时,Daniel 在剑桥大学获得语音识别博士学位。工作初期,Daniel 在 IBM 研究院负责计算机语音识别的工作,并成为 Research Staff Member 的一员。随后,他又进入微软研究院继续深耕语音识别技术,2012 年,Daniel 加入约翰霍普金斯大学,担任语言和语音处理中心系主任。2019 年 12 月初,Daniel 正式加入小米成为小米首席语音科学家,主要负责下一代 Kaldi 的开发。

Kaldi 的意外诞生

当今不少广为流传的科学或技术研究成果都诞生于偶然,例如 Guido van Rossum 在开发 Python 时只是因为他在圣诞节期间觉得很无聊,所以决定开发一种新的脚本解释语言。Kaldi 的诞生与之类似。

在采访中,Dainel 表示,最初开发 Kaldi 主要是为了一个特殊的项目——子空间高斯混合模型(SGMM)发布代码。虽然现在这项技术已经不重要了,但 Kaldi 这个工具为其他很多技术提供了支持,也变得越来越受欢迎。

Kaldi 工具包自 2011 年发布以来,下载量超过了两万多次,合著的论文目前也已经被引用三千多次,Kaldi 集成了多种语音识别模型,包括隐马尔可夫和最新的深度学习神经网络,被认为是业界语音识别框架的基石。

与许多早期的机器学习框架类似,Kaldi 本身也是用 C/C++ 语言编写的,虽然当下 Python 是更为机器学习开发者所追捧的,但早期的大部分框架都选择了稳定的 C/C++ 语言。对此,Daniel 认为,高性能的代码通常在内部用 C 或者 C++ 实现,后上层来进行调用,或者是由上层来调用其他 C 或者 C++ 的第三方库。但由于设计时间较早,Kaldi 并没有 Python 接口(或编译成其他语言的接口),要编写唤起 C++ 程序的 shell 脚本来使用 Kaldi。

下一代 Kaldi 版本规划

在加入小米之前,国内外许多互联网头部公司都向 Daniel 抛出了橄榄枝,包括 Facebook、美团、滴滴、快手等,但在提及为什么会选择加入小米时,Daniel 表示:

我想加入一家 规模比较大的公司,能有足够优秀的开发者来进行下一代 Kaldi 的研发。 中国(尤其是北京)大公司云集,人才济济,所以这里自然而然成为了我的选择。我也面试了北京的一些其他公司,给我的感觉都很好,我之所以加入小米,是因为我认为小米是孵化开源软件的沃土,我觉得这里也愿意支持一项长期的开源项目,而且,小米的产品在市场上也有着良好的口碑。在我看来,小米是一家充满活力的企业,同事们都很友好且乐于助人。

Kaldi 的目标用户是那些了解语音识别技术的开发者,Kaldi 对于该领域的入门者来说并不容易。因此 Daniel 也表示接下来会研究 如何简化 Kaldi。但为了避免项目的体量过大,Daniel 团队现阶段并未对 Kaldi 进行大幅度地简化,但已经在 基于 PyTorch 来开发下一代 Kaldi, 该项目还没有完成,也没有对外公开发布。过去几个月,Daniel 对 Kaldi 所做的最大调整就是和快速解码相关的一些变动(解码是部署语音识别系统时的图搜索程序)。

下一代 Kaldi 完成后,Daniel 希望能 将其融入到小米的产品和服务中。

“和中国公司一起打造健康的社区,走向世界。”这是小米集团副总裁、集团技术委员会主席崔宝秋一直向 Daniel 重点表达的开源愿景,这也正是 Daniel 所欣赏的开源社区环境。

Kaldi 商业化落地

2017 年之前,小米没有自己的语音技术团队,但是却已经有了自己的云、大数据和 AI 平台。从过去的互联互通到未来的整体互联服务中,语音交互扮演着越来越重要的角色,小米也意识到,要想在激烈的市场竞争中占得一席之地,首先就要“自强”。

2018 年 3 月,雷军在两会的媒体沟通会上表示,“2017 年年初,小米设立了探索实验室,不久将有重磅级的人工智能产品发布。”而到了 2018 年 7 月,传闻已久的小米 AI 产品——小米 AI 音箱终于现身。在发布会上,小米联合创始人王川特意提到了小米的 NLP 团队,也就是说小米已经用上了自家的 NLP 技术。

两年间,小米不仅组建了自己的语音技术团队,还在智能产品中应用了自家的 NLP 技术,更重要的是,2019 年年初,小米创始人雷军确定了小米“手机 +AIoT"双引擎战略发展模式,为小米在语音技术领域的发展指明了方向,Daniel 带着 Kaldi 的加入则会为小米的“AIoT"战略添砖加瓦。

作为一个开源项目,Kaldi 要用于商业落地还要在很多地方进行调整,例如场景优化、跨平台兼容、对内对外赋能等。加入小米之后,Daniel 负责的主要工作就是将 Kaldi 应用于现有应用,在实践中检验技术的可用性。

目前,业界已有不少企业基于 Kaldi 进行产品研发,针对这一现状,Daniel 在接受 InfoQ 记者采访时给出的建议是:

如果用于基于服务器的、没有内存限制的识别,Kaldi 已经足够优化了,不需要做其他改进。如果用于基于设备的、有内存限制的识别,有时候使用(如 RNN-T)这类端到端的模型,以及 Tensorflow 工具包可能会比仅使用 Kaldi 更有成效。

语音识别技术发展

语音识别是计算机处理和识别人类语音的能力,其目标是将人类的语音中的词汇内容转换为计算机可读的输入,例如按键、二进制编码或字符序列。语音识别涉及信号处理、概率论和信息论、模式识别、声学、语言学和认知科学、人工智能等许多学科领域。

过往,工业界取得的许多技术突破是依赖学术界的研究结果,例如,语音识别技术在上世纪 50 年代就已经诞生,而到了 2012 年才在深度神经网络的助力下达到实用化,在没有应用 DNN 之前的六十年里,语音识别技术的发展极为缓慢。2015 年以前,业界更多使用的是传统的 DNN-HMM 混合模型,需要借助对齐信息和上下文相关音素才能达到比较好的识别准确率。2015 年以后,CTC 算法简化了训练过程,于是语音界纷纷投入大量资源训练更深、更复杂的神经网络,利用端到端技术进一步大幅提升语音识别的性能。2017 年 12 月,谷歌提出“使用序列到序列模型的当前最佳语音识别系统”(State-of-the-art Speech Recognition With Sequence-to-Sequence Models),将词错率降低至 5.6%,业界又开始基于此进行探索......

可以说,工业界的每一次突破背后都是学术界的研究成果在支撑,这种模式在人工智能领域最为明显。对此,Daniel 认为:

有时产品开发有助于推进研究,因为它强制我们去解决一些主流研究无法解决的问题,当研究遇到天花板时,就迫使人们要做出改变来解决问题。

语音识别技术发展至今,已经在工业、医疗、教育、金融等各行业进行了落地,而语音识别产品供应商们也表示其产品的识别准确率达到了 95% 甚至 97%,针对当下语音识别技术的发展现状,Daniel 认为:

现在业内许多人士认为,语音识别系统的准确度已经很高了,但实际上这种高精准度仅仅针对的是某些特定的语音类型。现阶段,让机器来识别人们日常交流还是比较困难的,尤其是当周围环境掺杂着噪声、音乐且多人同时发声时。也就是说,我们还需要对现有的语音识别技术进行认真打磨。

结 语

过去几年,我们看到了各类算法不断出现并应用在实际的业务系统中,进而提升语音识别的效果。同时,语音识别技术的应用领域越来越广,基于语音识别技术的人机交互系统开始大规模应用,并且在限定场景下已经有比较好的表现,比如机器人电话客服系统、智能手机助手、智能音箱等。从火爆渐趋冷静,从学术突破到工业落地,接下来,语音识别领域的技术突破值得期待。

嘉宾介绍:

Daniel Povey 是著名的语音识别开源工具 Kaldi 的主要开发者和维护者,被称为 Kaldi 之父。Kaldi 集成了多种语音识别模型,包括隐马尔可夫和最新的深度学习神经网络,公认是业界语音识别框架的基石。1993 年至 2003 年,Daniel 在剑桥大学度过了自己的高等教育经历,获得语音识别的博士学位。2003 年至 2008 年,Daniel 在 IBM 研究院负责计算机语音识别的工作,成为 Research Staff Member 的一员。2008 年至 2012 年, Daniel 在微软研究院参与计算机语音识别方面的工作。2012 年,Daniel 加入约翰霍普金斯大学,担任语言和语音处理中心系主任。2019 年 12 月,Daniel 正式加入小米公司,担任小米首席语音科学家,负责开发下一代 Kaldi。

—完—

感谢分享原文-http://bjbsair.com/2020-04-03/tech-info/29916.html

本文约3185字,建议阅读6分钟

本文介绍Kaldi 之父 Daniel Povey对语音识别领域技术发展的想法。

在 2019 年小米开发者大会上,Kaldi 之父 Daniel Povey 以小米首席语音科学家的身份第一次和国内开发者见面,并表示将继续在小米进行 Kaldi 的版本开发,业界开发者对 Daniel Povey 加入小米后的动向高度关注,但却鲜有消息传出。在 AICon 2020 全球人工智能与机器学习技术大会(上海站)召开前期,InfoQ 有幸采访到了 Daniel Povey,听他分享对语音识别领域技术发展的想法。

在语音识别技术领域,Daniel Povey (以下简称:Daniel)的名字家喻户晓。他是语音识别开源工具 Kaldi 的主要开发者和维护者,被称为 Kaldi 之父。

过往,Daniel 在技术领域的发展轨迹始终没有离开“语音识别”。年少时,Daniel 在剑桥大学获得语音识别博士学位。工作初期,Daniel 在 IBM 研究院负责计算机语音识别的工作,并成为 Research Staff Member 的一员。随后,他又进入微软研究院继续深耕语音识别技术,2012 年,Daniel 加入约翰霍普金斯大学,担任语言和语音处理中心系主任。2019 年 12 月初,Daniel 正式加入小米成为小米首席语音科学家,主要负责下一代 Kaldi 的开发。

Kaldi 的意外诞生

当今不少广为流传的科学或技术研究成果都诞生于偶然,例如 Guido van Rossum 在开发 Python 时只是因为他在圣诞节期间觉得很无聊,所以决定开发一种新的脚本解释语言。Kaldi 的诞生与之类似。

在采访中,Dainel 表示,最初开发 Kaldi 主要是为了一个特殊的项目——子空间高斯混合模型(SGMM)发布代码。虽然现在这项技术已经不重要了,但 Kaldi 这个工具为其他很多技术提供了支持,也变得越来越受欢迎。

Kaldi 工具包自 2011 年发布以来,下载量超过了两万多次,合著的论文目前也已经被引用三千多次,Kaldi 集成了多种语音识别模型,包括隐马尔可夫和最新的深度学习神经网络,被认为是业界语音识别框架的基石。

与许多早期的机器学习框架类似,Kaldi 本身也是用 C/C++ 语言编写的,虽然当下 Python 是更为机器学习开发者所追捧的,但早期的大部分框架都选择了稳定的 C/C++ 语言。对此,Daniel 认为,高性能的代码通常在内部用 C 或者 C++ 实现,后上层来进行调用,或者是由上层来调用其他 C 或者 C++ 的第三方库。但由于设计时间较早,Kaldi 并没有 Python 接口(或编译成其他语言的接口),要编写唤起 C++ 程序的 shell 脚本来使用 Kaldi。

下一代 Kaldi 版本规划

在加入小米之前,国内外许多互联网头部公司都向 Daniel 抛出了橄榄枝,包括 Facebook、美团、滴滴、快手等,但在提及为什么会选择加入小米时,Daniel 表示:

我想加入一家 规模比较大的公司,能有足够优秀的开发者来进行下一代 Kaldi 的研发。 中国(尤其是北京)大公司云集,人才济济,所以这里自然而然成为了我的选择。我也面试了北京的一些其他公司,给我的感觉都很好,我之所以加入小米,是因为我认为小米是孵化开源软件的沃土,我觉得这里也愿意支持一项长期的开源项目,而且,小米的产品在市场上也有着良好的口碑。在我看来,小米是一家充满活力的企业,同事们都很友好且乐于助人。

Kaldi 的目标用户是那些了解语音识别技术的开发者,Kaldi 对于该领域的入门者来说并不容易。因此 Daniel 也表示接下来会研究 如何简化 Kaldi。但为了避免项目的体量过大,Daniel 团队现阶段并未对 Kaldi 进行大幅度地简化,但已经在 基于 PyTorch 来开发下一代 Kaldi, 该项目还没有完成,也没有对外公开发布。过去几个月,Daniel 对 Kaldi 所做的最大调整就是和快速解码相关的一些变动(解码是部署语音识别系统时的图搜索程序)。

下一代 Kaldi 完成后,Daniel 希望能 将其融入到小米的产品和服务中。

“和中国公司一起打造健康的社区,走向世界。”这是小米集团副总裁、集团技术委员会主席崔宝秋一直向 Daniel 重点表达的开源愿景,这也正是 Daniel 所欣赏的开源社区环境。

Kaldi 商业化落地

2017 年之前,小米没有自己的语音技术团队,但是却已经有了自己的云、大数据和 AI 平台。从过去的互联互通到未来的整体互联服务中,语音交互扮演着越来越重要的角色,小米也意识到,要想在激烈的市场竞争中占得一席之地,首先就要“自强”。

2018 年 3 月,雷军在两会的媒体沟通会上表示,“2017 年年初,小米设立了探索实验室,不久将有重磅级的人工智能产品发布。”而到了 2018 年 7 月,传闻已久的小米 AI 产品——小米 AI 音箱终于现身。在发布会上,小米联合创始人王川特意提到了小米的 NLP 团队,也就是说小米已经用上了自家的 NLP 技术。

两年间,小米不仅组建了自己的语音技术团队,还在智能产品中应用了自家的 NLP 技术,更重要的是,2019 年年初,小米创始人雷军确定了小米“手机 +AIoT"双引擎战略发展模式,为小米在语音技术领域的发展指明了方向,Daniel 带着 Kaldi 的加入则会为小米的“AIoT"战略添砖加瓦。

作为一个开源项目,Kaldi 要用于商业落地还要在很多地方进行调整,例如场景优化、跨平台兼容、对内对外赋能等。加入小米之后,Daniel 负责的主要工作就是将 Kaldi 应用于现有应用,在实践中检验技术的可用性。

目前,业界已有不少企业基于 Kaldi 进行产品研发,针对这一现状,Daniel 在接受 InfoQ 记者采访时给出的建议是:

如果用于基于服务器的、没有内存限制的识别,Kaldi 已经足够优化了,不需要做其他改进。如果用于基于设备的、有内存限制的识别,有时候使用(如 RNN-T)这类端到端的模型,以及 Tensorflow 工具包可能会比仅使用 Kaldi 更有成效。

语音识别技术发展

语音识别是计算机处理和识别人类语音的能力,其目标是将人类的语音中的词汇内容转换为计算机可读的输入,例如按键、二进制编码或字符序列。语音识别涉及信号处理、概率论和信息论、模式识别、声学、语言学和认知科学、人工智能等许多学科领域。

过往,工业界取得的许多技术突破是依赖学术界的研究结果,例如,语音识别技术在上世纪 50 年代就已经诞生,而到了 2012 年才在深度神经网络的助力下达到实用化,在没有应用 DNN 之前的六十年里,语音识别技术的发展极为缓慢。2015 年以前,业界更多使用的是传统的 DNN-HMM 混合模型,需要借助对齐信息和上下文相关音素才能达到比较好的识别准确率。2015 年以后,CTC 算法简化了训练过程,于是语音界纷纷投入大量资源训练更深、更复杂的神经网络,利用端到端技术进一步大幅提升语音识别的性能。2017 年 12 月,谷歌提出“使用序列到序列模型的当前最佳语音识别系统”(State-of-the-art Speech Recognition With Sequence-to-Sequence Models),将词错率降低至 5.6%,业界又开始基于此进行探索......

可以说,工业界的每一次突破背后都是学术界的研究成果在支撑,这种模式在人工智能领域最为明显。对此,Daniel 认为:

有时产品开发有助于推进研究,因为它强制我们去解决一些主流研究无法解决的问题,当研究遇到天花板时,就迫使人们要做出改变来解决问题。

语音识别技术发展至今,已经在工业、医疗、教育、金融等各行业进行了落地,而语音识别产品供应商们也表示其产品的识别准确率达到了 95% 甚至 97%,针对当下语音识别技术的发展现状,Daniel 认为:

现在业内许多人士认为,语音识别系统的准确度已经很高了,但实际上这种高精准度仅仅针对的是某些特定的语音类型。现阶段,让机器来识别人们日常交流还是比较困难的,尤其是当周围环境掺杂着噪声、音乐且多人同时发声时。也就是说,我们还需要对现有的语音识别技术进行认真打磨。

结 语

过去几年,我们看到了各类算法不断出现并应用在实际的业务系统中,进而提升语音识别的效果。同时,语音识别技术的应用领域越来越广,基于语音识别技术的人机交互系统开始大规模应用,并且在限定场景下已经有比较好的表现,比如机器人电话客服系统、智能手机助手、智能音箱等。从火爆渐趋冷静,从学术突破到工业落地,接下来,语音识别领域的技术突破值得期待。

嘉宾介绍:

Daniel Povey 是著名的语音识别开源工具 Kaldi 的主要开发者和维护者,被称为 Kaldi 之父。Kaldi 集成了多种语音识别模型,包括隐马尔可夫和最新的深度学习神经网络,公认是业界语音识别框架的基石。1993 年至 2003 年,Daniel 在剑桥大学度过了自己的高等教育经历,获得语音识别的博士学位。2003 年至 2008 年,Daniel 在 IBM 研究院负责计算机语音识别的工作,成为 Research Staff Member 的一员。2008 年至 2012 年, Daniel 在微软研究院参与计算机语音识别方面的工作。2012 年,Daniel 加入约翰霍普金斯大学,担任语言和语音处理中心系主任。2019 年 12 月,Daniel 正式加入小米公司,担任小米首席语音科学家,负责开发下一代 Kaldi。

—完—

感谢分享原文-http://bjbsair.com/2020-04-03/tech-info/29916.html

本文约3185字,建议阅读6分钟

本文介绍Kaldi 之父 Daniel Povey对语音识别领域技术发展的想法。

在 2019 年小米开发者大会上,Kaldi 之父 Daniel Povey 以小米首席语音科学家的身份第一次和国内开发者见面,并表示将继续在小米进行 Kaldi 的版本开发,业界开发者对 Daniel Povey 加入小米后的动向高度关注,但却鲜有消息传出。在 AICon 2020 全球人工智能与机器学习技术大会(上海站)召开前期,InfoQ 有幸采访到了 Daniel Povey,听他分享对语音识别领域技术发展的想法。

在语音识别技术领域,Daniel Povey (以下简称:Daniel)的名字家喻户晓。他是语音识别开源工具 Kaldi 的主要开发者和维护者,被称为 Kaldi 之父。

过往,Daniel 在技术领域的发展轨迹始终没有离开“语音识别”。年少时,Daniel 在剑桥大学获得语音识别博士学位。工作初期,Daniel 在 IBM 研究院负责计算机语音识别的工作,并成为 Research Staff Member 的一员。随后,他又进入微软研究院继续深耕语音识别技术,2012 年,Daniel 加入约翰霍普金斯大学,担任语言和语音处理中心系主任。2019 年 12 月初,Daniel 正式加入小米成为小米首席语音科学家,主要负责下一代 Kaldi 的开发。

Kaldi 的意外诞生

当今不少广为流传的科学或技术研究成果都诞生于偶然,例如 Guido van Rossum 在开发 Python 时只是因为他在圣诞节期间觉得很无聊,所以决定开发一种新的脚本解释语言。Kaldi 的诞生与之类似。

在采访中,Dainel 表示,最初开发 Kaldi 主要是为了一个特殊的项目——子空间高斯混合模型(SGMM)发布代码。虽然现在这项技术已经不重要了,但 Kaldi 这个工具为其他很多技术提供了支持,也变得越来越受欢迎。

Kaldi 工具包自 2011 年发布以来,下载量超过了两万多次,合著的论文目前也已经被引用三千多次,Kaldi 集成了多种语音识别模型,包括隐马尔可夫和最新的深度学习神经网络,被认为是业界语音识别框架的基石。

与许多早期的机器学习框架类似,Kaldi 本身也是用 C/C++ 语言编写的,虽然当下 Python 是更为机器学习开发者所追捧的,但早期的大部分框架都选择了稳定的 C/C++ 语言。对此,Daniel 认为,高性能的代码通常在内部用 C 或者 C++ 实现,后上层来进行调用,或者是由上层来调用其他 C 或者 C++ 的第三方库。但由于设计时间较早,Kaldi 并没有 Python 接口(或编译成其他语言的接口),要编写唤起 C++ 程序的 shell 脚本来使用 Kaldi。

下一代 Kaldi 版本规划

在加入小米之前,国内外许多互联网头部公司都向 Daniel 抛出了橄榄枝,包括 Facebook、美团、滴滴、快手等,但在提及为什么会选择加入小米时,Daniel 表示:

我想加入一家 规模比较大的公司,能有足够优秀的开发者来进行下一代 Kaldi 的研发。 中国(尤其是北京)大公司云集,人才济济,所以这里自然而然成为了我的选择。我也面试了北京的一些其他公司,给我的感觉都很好,我之所以加入小米,是因为我认为小米是孵化开源软件的沃土,我觉得这里也愿意支持一项长期的开源项目,而且,小米的产品在市场上也有着良好的口碑。在我看来,小米是一家充满活力的企业,同事们都很友好且乐于助人。

Kaldi 的目标用户是那些了解语音识别技术的开发者,Kaldi 对于该领域的入门者来说并不容易。因此 Daniel 也表示接下来会研究 如何简化 Kaldi。但为了避免项目的体量过大,Daniel 团队现阶段并未对 Kaldi 进行大幅度地简化,但已经在 基于 PyTorch 来开发下一代 Kaldi, 该项目还没有完成,也没有对外公开发布。过去几个月,Daniel 对 Kaldi 所做的最大调整就是和快速解码相关的一些变动(解码是部署语音识别系统时的图搜索程序)。

下一代 Kaldi 完成后,Daniel 希望能 将其融入到小米的产品和服务中。

“和中国公司一起打造健康的社区,走向世界。”这是小米集团副总裁、集团技术委员会主席崔宝秋一直向 Daniel 重点表达的开源愿景,这也正是 Daniel 所欣赏的开源社区环境。

Kaldi 商业化落地

2017 年之前,小米没有自己的语音技术团队,但是却已经有了自己的云、大数据和 AI 平台。从过去的互联互通到未来的整体互联服务中,语音交互扮演着越来越重要的角色,小米也意识到,要想在激烈的市场竞争中占得一席之地,首先就要“自强”。

2018 年 3 月,雷军在两会的媒体沟通会上表示,“2017 年年初,小米设立了探索实验室,不久将有重磅级的人工智能产品发布。”而到了 2018 年 7 月,传闻已久的小米 AI 产品——小米 AI 音箱终于现身。在发布会上,小米联合创始人王川特意提到了小米的 NLP 团队,也就是说小米已经用上了自家的 NLP 技术。

两年间,小米不仅组建了自己的语音技术团队,还在智能产品中应用了自家的 NLP 技术,更重要的是,2019 年年初,小米创始人雷军确定了小米“手机 +AIoT"双引擎战略发展模式,为小米在语音技术领域的发展指明了方向,Daniel 带着 Kaldi 的加入则会为小米的“AIoT"战略添砖加瓦。

作为一个开源项目,Kaldi 要用于商业落地还要在很多地方进行调整,例如场景优化、跨平台兼容、对内对外赋能等。加入小米之后,Daniel 负责的主要工作就是将 Kaldi 应用于现有应用,在实践中检验技术的可用性。

目前,业界已有不少企业基于 Kaldi 进行产品研发,针对这一现状,Daniel 在接受 InfoQ 记者采访时给出的建议是:

如果用于基于服务器的、没有内存限制的识别,Kaldi 已经足够优化了,不需要做其他改进。如果用于基于设备的、有内存限制的识别,有时候使用(如 RNN-T)这类端到端的模型,以及 Tensorflow 工具包可能会比仅使用 Kaldi 更有成效。

语音识别技术发展

语音识别是计算机处理和识别人类语音的能力,其目标是将人类的语音中的词汇内容转换为计算机可读的输入,例如按键、二进制编码或字符序列。语音识别涉及信号处理、概率论和信息论、模式识别、声学、语言学和认知科学、人工智能等许多学科领域。

过往,工业界取得的许多技术突破是依赖学术界的研究结果,例如,语音识别技术在上世纪 50 年代就已经诞生,而到了 2012 年才在深度神经网络的助力下达到实用化,在没有应用 DNN 之前的六十年里,语音识别技术的发展极为缓慢。2015 年以前,业界更多使用的是传统的 DNN-HMM 混合模型,需要借助对齐信息和上下文相关音素才能达到比较好的识别准确率。2015 年以后,CTC 算法简化了训练过程,于是语音界纷纷投入大量资源训练更深、更复杂的神经网络,利用端到端技术进一步大幅提升语音识别的性能。2017 年 12 月,谷歌提出“使用序列到序列模型的当前最佳语音识别系统”(State-of-the-art Speech Recognition With Sequence-to-Sequence Models),将词错率降低至 5.6%,业界又开始基于此进行探索......

可以说,工业界的每一次突破背后都是学术界的研究成果在支撑,这种模式在人工智能领域最为明显。对此,Daniel 认为:

有时产品开发有助于推进研究,因为它强制我们去解决一些主流研究无法解决的问题,当研究遇到天花板时,就迫使人们要做出改变来解决问题。

语音识别技术发展至今,已经在工业、医疗、教育、金融等各行业进行了落地,而语音识别产品供应商们也表示其产品的识别准确率达到了 95% 甚至 97%,针对当下语音识别技术的发展现状,Daniel 认为:

现在业内许多人士认为,语音识别系统的准确度已经很高了,但实际上这种高精准度仅仅针对的是某些特定的语音类型。现阶段,让机器来识别人们日常交流还是比较困难的,尤其是当周围环境掺杂着噪声、音乐且多人同时发声时。也就是说,我们还需要对现有的语音识别技术进行认真打磨。

结 语

过去几年,我们看到了各类算法不断出现并应用在实际的业务系统中,进而提升语音识别的效果。同时,语音识别技术的应用领域越来越广,基于语音识别技术的人机交互系统开始大规模应用,并且在限定场景下已经有比较好的表现,比如机器人电话客服系统、智能手机助手、智能音箱等。从火爆渐趋冷静,从学术突破到工业落地,接下来,语音识别领域的技术突破值得期待。

嘉宾介绍:

Daniel Povey 是著名的语音识别开源工具 Kaldi 的主要开发者和维护者,被称为 Kaldi 之父。Kaldi 集成了多种语音识别模型,包括隐马尔可夫和最新的深度学习神经网络,公认是业界语音识别框架的基石。1993 年至 2003 年,Daniel 在剑桥大学度过了自己的高等教育经历,获得语音识别的博士学位。2003 年至 2008 年,Daniel 在 IBM 研究院负责计算机语音识别的工作,成为 Research Staff Member 的一员。2008 年至 2012 年, Daniel 在微软研究院参与计算机语音识别方面的工作。2012 年,Daniel 加入约翰霍普金斯大学,担任语言和语音处理中心系主任。2019 年 12 月,Daniel 正式加入小米公司,担任小米首席语音科学家,负责开发下一代 Kaldi。

—完—

原文地址:https://www.cnblogs.com/lihanlin/p/12657697.html

时间: 2024-10-16 22:26:53

Kaldi之父Daniel Povey,我为啥选择在小米开发下一代Kaldi的相关文章

为啥 选择了 NSDocumentDirectory 还是返回一个array 而不是一个 直接一个 document 的目录 String

NSArray * array = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES); 为啥 选择了 NSDocumentDirectory 还是返回一个array 而不是一个 直接一个 document 的目录 String 为啥 选择了 NSDocumentDirectory 还是返回一个array 而不是一个 直接一个 document 的目录 String

让您正确选择网上商城开发公司——勇闯科技

电子商务已经成为我们这个时代最重要和最成功的互联网应用之一,越来越多的人都在通过网上商城来购买商品.在北京的大街上,每天都可以看到骑着电动自行车带着大箱小包的快递人员:在各个网上商城上闲逛,已成为了某些网虫的"强迫症".搭建一个功能强大的网上商城,成为各行各业开发电子商务的迫切需要.    互联网的发展真的很是惊人,现在越来越多的人开始在网上进行购物,不用出门就可以买到自己喜欢的东西,确实挺爽的,有越来越多的企业或个人开始了网上商城的开发,但由于企业或个人对商城这块不是特别了解,所以在

傲翼科技:正确选择棋牌游戏开发公司,打造专业一流品牌

棋牌游戏本来就是群众喜欢的文娱项目,互联网时期,棋牌游戏开发商将线下棋牌移植到互联网络上,有效填补当今快节拍生活形式下老.中.青.少年人的等车.排队 等碎片或闲暇时间,满足棋牌游戏喜好者随时随地过把瘾的心愿.玩家越来越多,棋牌运营商数量日积月累,相应的,棋牌游戏开发商也在短短几年遍地开花.济南傲翼科技,国内老牌棋牌游戏开发商.傲翼棋牌产品涵盖PC棋牌游戏系列.手机棋牌游戏系列和街机游戏系列,三大棋牌平台逾两百款精品游戏,为广阔运营商提供 棋牌游戏定制+棋牌游戏开发+棋牌架设+售后技术支持+运营培

C# 学习笔记 --为啥选择C#

初学C#,没有看视频教程,也没有C++基础,只有C基础.VB基础. 喜欢VB的快捷,很方便就可以搭建起windows的开发环境,很容易上手. 同样,喜欢C的简单,自由.长期写单片机程序,知道C的灵活是无可替代的. 由于需要开发USB,硬件使用的是FPGA+CY7C68001,因为不需要开发USB的固件程序,所以可以省不少事.68001的驱动可以使用windows自带的, 上位机软件使用VS2013 WDK8.1自带的WINUSB模板. 只需要设置GUID就可以找到设备了. 由于软件是纯C写的控制

为什么越来越多的企业选择使用Python开发?

近来,Python作为一种功能强大且通用的编程语言而广受好评,它具有非常清晰的语法特点,适用于多种操作系统,目前在国际上非常流行,正在得到越来越多的应用.1.简介    Python,是一种面向对象.直译式的计算机程序语言,具有近二十年的发展历史.它包含了一组功能完备的标准库,能够轻松完成很多常见的任务.它的语法简单,与其他大多数程序设计语言使用大括号不同,它使用缩进来定义语句块.    Python支持命令式程序设计.面向对象程序设计.函数式编程.面向侧面的程序设计.范型编程多种编程范式. 2

手机游戏引擎的选择--学习游戏开发Cocos2d-x和Unity3D/2D哪个前景更好?更易上手?

现在手游火的一塌糊涂,引擎也是层出不穷除了引领3D市场的Unity3D,独霸2D市场的Cocos2D-X之外,还有虚幻.Sphinx等,甚至搜狐也开发了国产的Genesis-3D引擎. 其它的不多说,这里主要就对比Unity3D和Cocos2D-X,帮助大家选择. 如果你想开发一个2D游戏,有着C++/C/LUA之一的基础,那么Cocos2D-X也许比较适合你.他本身就为2D游戏设计,有着丰富的源码.实例和教程文档.你可以得到社区的大力支持. 如果你想开发一个3D或2D游戏,有着面向对象编程语言

【Node.js】2.开发Node.js选择哪个IDE 开发工具呢

安装完Node.js之后,就要为它选择一个有利的IDE用于开发. 相比较了多个IDE之后,定位在webstrom和sublime上. 有一个简单的比较: webstorm功能很丰富,前端开发工具的集大成者,相比sublime稍重一些 sublime插件也很丰富,界面也比较美观,很轻量,也有简单的project管理功能 这里选择使用sublime作为Node.js的开发工具. 傻瓜式安装,安装完成启动. 关于sublime的使用,有超级多的小技巧. 请在官网查询 其相关文档,后续使用. 然后进入n

如何选择android app开发的方式

主流的手机开发方式有: native  App android手机系统本地开发语言java.NDK实现,运行速度快.用户交互性特别强,界面也很酷. Web 应用 直接通过手机浏览器访问,可通过 HTML5 来访问一些基本的手机功能,开发和维护都非常简单. 混合 App这是一种结合前两者的应用架构方式,相当于在 Web 上用一个本地 app 的壳进行封装,其复杂度介于前二者之间,有专门的框架来完成这样的工作,例如phonegap等web 开发框架. 那么我们该如何选择呢?其实原则很简单: 使用你熟

一个好的技术团队应该怎么选择自己的开发语言

在过去的三年时间了,作为曾经的研发部经理,我和我的技术总监始终在为一件事而努力着,那就是选择一门合适我们团队的技术语言. 我们研发团队一共有9个人,分为三个小组:移动手机组.后端接口组.web前端组,如果按照大公司的做法,我们完全不必为每组应该选择什么技术语言而担心,我们可以在每组中选择一个组长,由他全权负责即可,公司层面只要最终的结果即可,可事情并没有那么简单. 现实总是残酷的,其中的原因有这么几个:第一:岗位经费不高,想要低成本找一个技术合格的人非常难:第二:知名度有限,一般的技术人才都有更