FunASR希望在语音识别方面建立学术研究和工业应用之间的桥梁。通过支持在ModelScope上发布的工业级语音识别模型的训练和微调,研究人员和开发人员可以更方便地进行语音识别模型的研究和生产,并促进语音识别生态系统的发展。
最新动态
| 环境安装
| 教程文档
| 服务部署
| 模型库
| 联系我们
Controllable Time-delay Transformer是达摩院语音团队提出的高效后处理框架中的标点模块。本项目为中文通用标点模型,模型可以被应用于文本类输入的标点预测,也可应用于语音识别结果的后处理步骤,协助语音识别模块输出具有可读性的文本结果。
Controllable Time-delay Transformer 模型结构如上图所示,由 Embedding、Encoder 和 Predictor 三部分组成。Embedding 是词向量叠加位置向量。Encoder可以采用不同的网络结构,例如self-attention,conformer,SAN-M等。Predictor 预测每个token后的标点类型。
在模型的选择上采用了性能优越的Transformer模型。Transformer模型在获得良好性能的同时,由于模型自身序列化输入等特性,会给系统带来较大时延。常规的Transformer可以看到未来的全部信息,导致标点会依赖很远的未来信息。这会给用户带来一种标点一直在变化刷新,长时间结果不固定的不良感受。基于这一问题,我们创新性的提出了可控时延的Transformer模型(Controllable Time-Delay Transformer, CT-Transformer),在模型性能无损失的情况下,有效控制标点的延时。
更详细的细节见:
本项目提供的预训练模型是基于大数据训练的通用领域识别模型,开发者可以基于此模型进一步利用ModelScope的微调功能或者本项目对应的Github代码仓库FunASR进一步进行模型的领域定制化。
对于有开发需求的使用者,特别推荐您使用Notebook进行离线处理。先登录ModelScope账号,点击模型页面右上角的“在Notebook中打开”按钮出现对话框,首次使用会提示您关联阿里云账号,按提示操作即可。关联账号后可进入选择启动实例界面,选择计算资源,建立实例,待实例创建完成后进入开发环境,进行调用。
以下为三种支持格式及api调用方式参考如下范例:
cat example/punc_example.txt
1 跨境河流是养育沿岸人民的生命之源
2 从存储上来说仅仅是全景图片它就会是图片的四倍的容量
3 那今天的会就到这里吧happy new year明年见
from modelscope.pipelines import pipeline
from modelscope.utils.constant import Tasks
inference_pipline = pipeline(
task=Tasks.punctuation,
model='damo/punc_ct-transformer_cn-en-common-vocab471067-large',
model_revision="v1.0.0")
rec_result = inference_pipline(text_in='我们都是木头人不会讲话不会动')
print(rec_result)
rec_result = inference_pipline(text_in='https://isv-data.oss-cn-hangzhou.aliyuncs.com/ics/MaaS/ASR/test_text/punc_example.txt')
待开发
支持基于ModelScope上数据集及私有数据集进行定制微调和推理,使用方式同Notebook中开发。
FunASR框架支持魔搭社区开源的工业级的语音识别模型的training & finetuning,使得研究人员和开发者可以更加便捷的进行语音识别模型的研究和生产,目前已在Github开源:https://github.com/alibaba-damo-academy/FunASR
pip install -U modelscope -f https://modelscope.oss-cn-beijing.aliyuncs.com/releases/repo.html -i https://mirror.sjtu.edu.cn/pypi/web/simple
git clone https://github.com/alibaba/FunASR.git
cd FunASR
pip install --editable ./
接下来会以私有数据集为例,介绍如何在FunASR框架中使用本模型进行推理以及微调。
cd egs_modelscope/punctuation/punc_ct-transformer_cn-en-common-vocab471067-large/
python infer.py
待开发
中文标点预测通用模型在自采集的通用领域业务场景数据上有良好效果。训练数据大约100M个sample,每个sample可能包含1句或多句。
precision | recall | f1_score |
---|---|---|
56.0 |
62.5 |
58.8 |
运行范围
使用方式
使用范围与目标场景
@inproceedings{chen2020controllable,
title={Controllable Time-Delay Transformer for Real-Time Punctuation Prediction and Disfluency Detection},
author={Chen, Qian and Chen, Mengzhe and Li, Bo and Wang, Wen},
booktitle={ICASSP 2020-2020 IEEE International Conference on Acoustics, Speech and Signal Processing (ICASSP)},
pages={8069--8073},
year={2020},
organization={IEEE}
}