FunASR是一个基础语音识别工具包,提供多种功能,包括语音识别(ASR)、语音端点检测(VAD)、标点恢复、语言模型、说话人验证、说话人分离和多人对话语音识别等。FunASR提供了便捷的脚本和教程,支持预训练好的模型的推理与微调。FunASR开源了大量在工业数据上预训练模型,用户可以在模型许可协议下自由使用、复制、修改和分享FunASR模型。
代表性的模型Paraformer非自回归端到端语音识别模型具有高精度、高效率、便捷部署的优点,支持快速构建语音识别服务。最重要的是,支持标点符号识别、低语音识别、音频-视觉语音识别等功能,也就是说,它不仅可以实现语音转写,还能在转写后进行标注。
Paraformer是达摩院语音团队提出的一种高效的非自回归端到端语音识别框架。本项目为Paraformer中文通用语音识别模型,采用工业级数万小时的标注音频进行模型训练,保证了模型的通用识别效果。模型可以被应用于语音输入法、语音导航、智能会议纪要等场景。
主要核心
1.Predictor 模块:基于 Continuous integrate-and-fire (CIF) 的 预测器 (Predictor) 来抽取目标文字对应的声学特征向量,可以更加准确的预测语音中目标文字个数。2.Sampler:通过采样,将声学特征向量与目标文字向量变换成含有语义信息的特征向量,配合双向的 Decoder 来增强模型对于上下文的建模能力。3.基于负样本采样的 MWER 训练准则。
在本地机器中开发FunASR框架安装
· 安装FunASR和ModelScope,pip3 install -U modelscopegit clone https://github.com/alibaba/FunASR.git && cd FunASRpip3 install -e ./
推理支持音频格式如下:
识别结果输出路径结构如下:
tree output_dir/output_dir/└── 1best_recog├── rtf├── score└── text1 directory, 3 filesrtf:计算过程耗时统计score:识别路径得分text:语音识别结果文件接下来会以私有数据集为例,介绍如何在FunASR框架中使用Paraformer-large进行推理以及微调。cd egs_modelscope/paraformer/speech_paraformer-large_asr_nat-zh-cn-16k-common-vocab8404-pytorchpython demo.py
cd egs_modelscope/paraformer/speech_paraformer-large_asr_nat-zh-cn-16k-common-vocab8404-pytorchpython finetune.py若修改输出路径、数据路径、采样率、batch_size等配置及使用多卡训练,可参照在Notebook开发中私有数据微调部分的代码,修改finetune.py文件中配置。
项目地址https://github.com/alibaba-damo-academy/FunASR
运行范围支持Linux-x86_64、Mac和Windows运行。
使用方式
直接推理:可以直接对输入音频进行解码,输出目标文字。
微调:加载训练好的模型,采用私有或者开源数据进行模型训练。