wenet - 生产优先和生产就绪端到端语音识别工具包

Created at: 2020-11-17 11:57:23
Language: C++
License: Apache-2.0

微网

中文版

授权协议 Python 版本

讨论 | 文档 | 论文 | 运行时 (x86) | 运行时 (android) | 预训练模型

我们一起共享神经网络

WeNet 的主要动机是缩小端到端(E2E)语音识别模型的研究和生产之间的差距,减少生产 E2E 模型的工作量,并探索更好的 E2E 模型进行生产。

强调

  • 生产为先,生产就绪:WeNet 的核心设计原则。WeNet 为语音识别提供全栈解决方案。

    • 流式和非流式 ASR 的统一解决方案U2 框架——开发、训练和部署仅一次。
    • 运行时解决方案:内置服务器x86和设备上的android运行时解决方案。
    • 模型导出解决方案:将模型导出到 LibTorch/ONNX 进行推理的内置解决方案。
    • LM解决方案:内置生产级LM解决方案
    • 其他生产解决方案:内置上下文偏置、时间戳、端点和 n 最佳解决方案。
  • 准确:WeNet 在大量公共语音数据集上取得了 SOTA 结果。

  • 重量轻:WeNet 易于安装、易于使用、设计良好且文档齐全。

性能基准

请参阅

examples/$dataset/s0/README.md
不同语音数据集的基准。

安装

  • 克隆回购
git clone https://github.com/wenet-e2e/wenet.git
conda create -n wenet python=3.8
conda activate wenet
pip install -r requirements.txt
conda install pytorch torchvision torchaudio cudatoolkit=11.1 -c pytorch -c conda-forge
  • 或者,如果你想使用 x86 运行时或语言模型 (LM),你必须按如下方式构建运行时。否则,你可以忽略此步骤。
# runtime build requires cmake 3.14 or above
cd runtime/server/x86
mkdir build && cd build && cmake .. && cmake --build .

讨论与交流

请访问讨论进行进一步讨论。

中国用户也可以扫描左侧二维码关注微信公众号。我们创建了一个微信群,以便更好地讨论和更快地响应。请扫描右侧的个人二维码,小伙负责邀请你加入聊天群。

如果你无法访问 QR 图像,请在gitee上访问它。

或者你可以直接在Github Issues上讨论。

贡献者

承认

  1. 我们从ESPnet借用了大量代码用于基于转换器的建模。
  2. 我们从Kaldi借用了大量代码,用于基于 WFST 的 LM 集成解码。
  3. 我们参考EESEN来构建基于 TLG 的图以进行 LM 集成。
  4. 我们参考OpenTransformer进行 e2e 模型的 Python 批量推理。

引文

@inproceedings{yao2021wenet,
  title={WeNet: Production oriented Streaming and Non-streaming End-to-End Speech Recognition Toolkit},
  author={Yao, Zhuoyuan and Wu, Di and Wang, Xiong and Zhang, Binbin and Yu, Fan and Yang, Chao and Peng, Zhendong and Chen, Xiaoyu and Xie, Lei and Lei, Xin},
  booktitle={Proc. Interspeech},
  year={2021},
  address={Brno, Czech Republic }
  organization={IEEE}
}

@article{zhang2020unified,
  title={Unified Streaming and Non-streaming Two-pass End-to-end Model for Speech Recognition},
  author={Zhang, Binbin and Wu, Di and Yao, Zhuoyuan and Wang, Xiong and Yu, Fan and Yang, Chao and Guo, Liyong and Hu, Yaguang and Xie, Lei and Lei, Xin},
  journal={arXiv preprint arXiv:2012.05481},
  year={2020}
}

@article{wu2021u2++,
  title={U2++: Unified Two-pass Bidirectional End-to-end Model for Speech Recognition},
  author={Wu, Di and Zhang, Binbin and Yang, Chao and Peng, Zhendong and Xia, Wenjing and Chen, Xiaoyu and Lei, Xin},
  journal={arXiv preprint arXiv:2106.05642},
  year={2021}
}