WeNet使用初体验

  |   0 评论   |   0 浏览

背景

开源系统WeNet

出门问问联合西北工业大学推出端到端语音识别工具WeNet,面向产品和工业界的端到端语音识别开源工具WeNet,WeNet致力于消除从端到端模型研究到产品落地中的鸿沟,探索更适合工业级产品的端到端解决方案。

西北工业大学计算机学院教授、博士生导师、音频语音与语言处理研究组(ASLP@NPU)负责人谢磊表示:WeNet基于高效的U2端到端语音识别方案,集成流式和非流式解码为一体,工具包多层架构同时满足面向科研和工业化部署双重需求,是一套易用高效的端到端语音识别工具包,极大地降低了大家学习、科研和工程化门槛。

出门问问CTO Mike Lei表示:WeNet是业界第一个面向工业级产品的开源端到端语音识别解决方案,同时支持流式及非流式识别,并能高效运行于云端及嵌入式端。

WeNet在效果上超越部分商业服务

Leaderboard中现有的两个开源模型 Kaldi multi-cn 和 WeNet multi-cn在 SpeechIO 测试集上性能互有胜负。如下图所示。

a)WeNet multi-cn 的训练只应用了开源语料,而 SpeechIO Leaderboard 中的Kaldi multi-cn 模型额外使用了现有开源语音数据库以外的纯文本语料,在语言知识层面有绝对优势。依据小编的经验该优势表现在识别率上大概应在3-8个百分点。若刨去此部分,WeNet multi-cn 模型应会大部分占优,但如何在端到端系统中更有效的使用额外纯文本语料,也一直是端到端算法研究中的热点问题。

b) Kaldi multi-cn 模型的全部资源大小约 15GB, WeNet multi-cn 模型的全部资源大小约 200MB。上述两点,对于传统系统与端到端系统,非常具有代表意义,供读者朋友们参考。

开源引擎方向

从数据上,目前中文开源语料库的数据量、场景多样性等方面,与商业平台还存在质的差距。因此在一些数据覆盖不足的高难度场景下,识别率差距明显。

可以说,公开领域仍需要更多样化的海量开源数据;同时在非监督自学习、鲁棒数据增广算法方面,行业技术也仍需要突破。

初体验

1分钟demo

使用预训练模型和 docker 进行语音识别,1分钟(如果网速够快)搭建一个语音识别系统

下载官方提供的预训练模型,并启动 docker 服务,加载模型,提供 websocket 协议的语音识别服务。

wget http://mobvoi-speech-public.ufile.ucloud.cn/public/wenet/aishell2/20210602_unified_transformer_server.tar.gz

tar -xf 20210602_unified_transformer_server.tar.gz

model_dir=$PWD/20210602_unified_transformer_server

docker run --rm -it -p 10086:10086 -v $model_dir:/home/wenet/model mobvoiwenet/wenet:mini bash /home/run.sh

wenet_multi_cn模型

speechio的leaderboard中提供了wenet_multi_cn模型,这里拿来做个人测试。

按照官方上的提示,从oss上下载下来模型文件。

在windows下启动识别

docker run --rm -it -p 10086:10086 -v /c/asr/speechio-leaderboard/models/wenet_multi_cn/assets:/home/wenet/model mobvoiwenet/wenet:mini bash /home/run.sh
模型文件名大小
wenet_multi_cnfinal.zip219MB
20210602_unified_transformer_serverfinal.zip141MB

参考