小米开源语音模型 Kaldi-ONNX 转换工具,助力移动端部署!

栏目: 软件资讯 · 发布时间: 5年前

内容简介:作者 | 小米开源团队

小米开源语音模型 Kaldi-ONNX 转换工具,助力移动端部署!

小米开源语音模型 Kaldi-ONNX 转换工具,助力移动端部署!

作者 | 小米开源团队

责编 | 胡巍巍

近日,小米对外开源了Kaldi模型到ONNX模型的转换工具Kaldi-ONNX,有望进一步促进Kaldi生态与深度学习生态间的互通。 

同时,配合移动端深度学习框架MACE,将极大降低语音模型在手机与智能设备上的离线部署门槛,并大幅提升推理效率。

小米开源语音模型 Kaldi-ONNX 转换工具,助力移动端部署!

介绍

Kaldi是目前使用广泛的开发语音识别应用的框架,利用Kaldi,研究开发人员可以训练出语音识别神经网路模型,不过将训练得到的模型部署到移动端设备上往往需要大量的移植开发工作。

Kaldi-ONNX是一个开源的轻量化 Python 脚本工具,可以用来将Kaldi的神经网络模型文件转换为ONNX格式模型。 

而ONNX是一种开放神经网络交换格式(Open Nerual Network Exchange),它为神经网络模型提供了一种开源的格式, 目前已经有多个神经网络框架或 工具 支持ONNX格式模型,如Caffe2,PyTorch,Tensorflow,MACE, CoreML等。

小米开源语音模型 Kaldi-ONNX 转换工具,助力移动端部署!

意义和优势

使用Kaldi-ONNX将Kaldi的神经网络模型转换成ONNX开源格式,一方面可以使用兼容ONNX的各种工具,如进行可视化检查或模型优化。 

另外转换得到的模型可以借助MACE或其他神经网络框架部署到Android,iOS,Linux/Windows或其他设备上, 为开发者部署语音识别神经网络模型提供了更多框架或工具的选择。

Kaldi-ONNX在设计中考虑了工具的轻量化、易用、灵活、高效等特点,主要从如下几个方面进行设计:

  • 使用Python脚本编写,跨平台,方便在Linux/Window/Mac系统下使用;

  • 体积小,除ONNX框架接口外无第三方依赖,易安装;

  • 广泛支持Kaldi的Nnet2和NNet3模型及常用的神经网络组件;

  • 可扩展及模块化设计,方便更新或添加新的组件;

  • 模型融合及优化,将Kaldi框架对神经网络的编译优化过程进行了简化, 并针对LSTM/TDNN等进行了融合,转换成有向无环网络模型,使模型的部署和推理计算更高效。

此外,MACE(移动端AI计算引擎)框架已支持ONNX格式模型文件和Kaldi模型中常用的算子, 因此推荐使用MACE来部署Kaldi的语音识别神经网络模型。同时MACE的Model Zoo项目里已经收录了数个转换好的Kaldi语音识别DNN模型。

小米开源语音模型 Kaldi-ONNX 转换工具,助力移动端部署!

性能指标

下表是在小米MIX 2S(骁龙845)上的测试数据(单位: 毫秒):

Kaldi nnet3 模型

Nnet3 模型(chunk size=20)

arm64-v8a

armeabi-v7a

CVTE

99.1

88.694

SRE16

64.553

48.593

ASpIRE

8.165

8.499

Callhome

23.851

13.813

VoxCeleb Models

76.182

55.172

SITW Model

61.096

52.418

Kaldi nnet2 模型

Nnet2 模型(chunk size = 20)

arm64-v8a

armeabi-v7a

Fisher English

80.503

78.712

Librispeech

80.116

86.224

RM

23.197

25.228

Tedlium

102.535

116.807

Timit

6.488

6.179

小米开源语音模型 Kaldi-ONNX 转换工具,助力移动端部署!

项目地址

  • Kaldi-ONNX项目地址:

https://github.com/XiaoMi/kaldi-onnx

  • MACE项目地址:

https://github.com/XiaoMi/mace

  • 示例模型地址:

https://github.com/XiaoMi/mace-models/tree/master/kaldi-models

【END】

小米开源语音模型 Kaldi-ONNX 转换工具,助力移动端部署!

作为码一代,想教码二代却无从下手:

听说少儿编程很火,可它有哪些好处呢?

孩子多大开始学习比较好呢?又该如何学习呢?

最新的编程教育政策又有哪些呢?

下面给大家介绍CSDN新成员: 极客宝宝(ID: geek_baby)

戳他了解更多↓↓↓

小米开源语音模型 Kaldi-ONNX 转换工具,助力移动端部署!

 热 文推 荐 

☞开源需自立!Android、GitHub、Apache 全线告急!

☞任正非回应美国禁令推迟90天实施;小米无惧安卓系统禁用;苹果5G芯片有望2025年面世 | 极客头条

☞程序员过关斩将:小小的分页引发的加班血案

☞揭秘清华 AI 学堂班:姚期智担任首席教授,2019 年首批招收 30 人

☞程序员 520 脱单指南!

☞《使女的故事》大火,AI是背后最大推手?

☞十面九问的逆天异步神器-celery,你了解多少?

☞黑客亲述: "倾家荡产,是你们的事! "

☞Docker 系列学习文章 | 什么是容器云?

☞大神!这段代码让 程序员 躺赚200W,源码简单,你怎么看?

点击阅读原文,输入关键词,即可搜索您想要的 CSDN 文章。

你点的每个“在看”,我都认真当成了喜欢


以上所述就是小编给大家介绍的《小米开源语音模型 Kaldi-ONNX 转换工具,助力移动端部署!》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

Java JDK6学习笔记

Java JDK6学习笔记

林信良 / 清华大学出版社 / 2007-4 / 59.90元

《Java JDK6学习笔记》是作者良葛格本人近几年来学习Java的心得笔记,结构按照作者的学习脉络依次展开,从什么是Java、如何配置Java开发环境、基本的Java语法到程序流程控制、管理类文件、异常处理、枚举类型、泛型、J2SE中标准的API等均进行了详细介绍。本书还安排了一个“文字编辑器”的专题制作。此外,Java SE6的新功能,对Java lang等套件的功能加强,以及JDBC4.0、......一起来看看 《Java JDK6学习笔记》 这本书的介绍吧!

随机密码生成器
随机密码生成器

多种字符组合密码

XML、JSON 在线转换
XML、JSON 在线转换

在线XML、JSON转换工具

RGB HSV 转换
RGB HSV 转换

RGB HSV 互转工具