16

新一代 Kaldi 技术细节揭秘:K2 是核心部分

 3 years ago
source link: https://www.infoq.cn/article/13IWjKNlo1r7a7IVhwFg
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.

2020年11月15日,由北京希尔贝壳科技有限公司、中国计算机学会语音对话与听觉专业组、AISHELL基金会主办,小米科技、昆山杜克大学、西北工业大学音频语音与语言处理研究组、中国科学技术大学共同协办的第五届Kaldi技术交流会在北京举办。

受疫情影响,本次技术交流会采用全天线上直播 &下午(北京·小米科技园)线下技术交流会的形式。值得注意的是,本次线下交流活动,Kaldi 之父 Daniel Povey 博士首次亲临现场,与来自北京各大互联网公司、知名高校的开发者们深入交流下一代 Kaldi 社区未来的发展。

加入小米一年,Daniel Povey 设计并开发出了新一代 Kaldi。新一代 Kaldi 分成三个部分,包括核心算法部分,训练数据准备部分、示例脚本集合部分。

其中,Lhotse(训练数据准备部分)将替代以前 Kaldi 中所有数据准备相关的工作,操作各种音频和文本的元数据。Lhotse 除了 Kaldi 本身,也适用于其他应用。而且 Lhotse 纯 Python 代码,方便易用。

Icefall(示例脚本集合部分)将代替 Kaldi 中的示例脚本集合,并独立成为一个单独的子项目。之所以要把示例脚本集合与核心算法分开,是考虑到示例脚本可能会非常庞大,且经常变动。

新一代 Kaldi 的核心部分叫“k2”。k2 可以让开发者很容易在 PyTorch/TensorFlow 中实现各种语音识别相关算法,比如 CTC、LF—MMI、RNN—T、2nd—pass 语言模型等,消除以往语音识别算法中训练跟解码不匹配的问题。

同时,通过 k2 可以非常容易实现(置信度逐渐提高的)多轮解码过程,这在以往是很难做到的。相较于其他一些语音识别库的优势,k2 速度更快,通用性强(可以用来建模多种语音识别算法)。

现场,据 Daniel Povey 博士透露,k2 核心代码已完成。约 41000 行代码(主要是 C++),本周刚发布 0.1 版本。

Daniel Povey 博士目前担任小米集团语音首席科学家,由他开发和维护 Kaldi 集成了多种语音识别模型,公认是业界语音识别框架的基石。他在本次线下活动中强调:“今天有太多人依托 Kaldi 在做自己的事业,有很多人为 Kaldi 社区一直在做贡献,Kaldi 会始终坚持开源。”

小米集团副总裁、技术委员会主席崔宝秋出席活动并指出,拥抱开源是小米工程文化的重要组成部分,我们要共同努力实现“四赢”:让 Kaldi 项目和 Daniel 赢,小米语音赢,全球的 Kaldi 社区赢,所有跟 Kaldi 相关的创业公司赢。

最后,Daniel Povey 博士感谢了所有人对社区的贡献,他欢迎更多中国和全球的工程师来社区贡献代码,共同为 Kaldi 和全球语音行业的发展做贡献。


About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK