🤗 Hugging Face️ • 🤖 ModelScope • 🐾 gitee
星辰超多方言语音识别大模型v1.0,由30万小时无标注多方言语音数据进行预训练,并利用内部30种有标注数据进行微调,打破单一模型只能识别特定单一方言的困境,可支持理解粤语、上海话、四川话、温州话等30种方言
本次开源三个模型:两个30万小时无标注语音预训练模型和一个KeSpeech数据集8种方言微调模型。发布版本和下载链接见下表
模型版本 | 参数量 | 下载链接 | 字典 | 备注 |
---|---|---|---|---|
pretrain_base | 0.09 B | TeleSpeech-ASR1.0-base | ✗ | 30万小时无标注语音预训练模型 |
pretrain_large | 0.3 B | TeleSpeech-ASR1.0-large | ✗ | 30万小时无标注语音预训练模型 |
finetune_large_kespeech | 0.3 B | TeleSpeech-ASR1.0-large-kespeech | dict.char7531.txt | 基于pretrain_large,采用KeSpeech数据集8种方言微调训练 |
$ git clone https://github.com/pytorch/fairseq
$ cd fairseq
$ pip install --editable ./
$ pip install -r requirements.txt
$ pip install kaldiio timm editdistance soundfile
prepare_kaldi_feats.sh
prepare_kaldi_feats.sh
与参数设置mfcc_hires.conf
置于kaldi任一egs目录下(与cmd.sh等脚本平级,例如/path/to/kaldi/egs/aishell/s5/prepare_kaldi_feats.sh),运行prepare_kaldi_feats.sh
即可data.list
,可参考make_datalist.py
,以\t
分隔:$ cat train/data.list
utt:X0000000000_100638174_S00037 feat:/data/raw_nnaudio.test.1.ark:2983479385 feat_shape:363,40 text:不惜在这种试验中毁灭包括自己在内的一切 token:不 惜 在 这 种 试 验 中 毁 灭 包 括 自 己 在 内 的 一 切 tokenid:[TOKENID] token_shape:19,5537
utt:X0000000001_100849618_S00006 feat:/data/raw_nnaudio.test.1.ark:2984296665 feat_shape:345,40 text:在他们收到足够建立大统一模型的数据后 token:在 他 们 收 到 足 够 建 立 大 统 一 模 型 的 数 据 后 tokenid:[TOKENID] token_shape:18,5537
...
dict.${label}.txt
,${label}
为建模单元类型,如ltr, bpe等。以dict.ltr.txt
为例:是 2
好 3
...
lang_char.txt
,相比于dict.${label}.txt
额外添加<blank>
, <unk>
, <sos/eos>
3个token,例如<blank> 0
<unk> 1
是 2
好 3
...
<sos/eos> 5536
data2vec_dialect/path.sh
文件中/path/to/fairseq
为fairseq安装路径run_scripts/decode.sh
文件,参考推理与解码阶段run_scripts/decode.sh
*仅经过微调后的finetune模型支持直接推理,无监督预训练模型pretrain_base
和pretrain_large
需要先在标注数据上训练后,再进行推理,详见预训练模型微调或表征训练下游任务
train.tsv
和dev.tsv
,保存于同一训练目录下$ ln -s /path/to/train/data.list /path/to/train/train.tsv
$ ln -s /path/to/dev/data.list /path/to/train/dev.tsv
path.sh
文件中/path/to/fairseq
为fairseq安装路径run_scripts/run_d2v_finetune.sh
中/path/to
相关路径替换task.data
为 .tsv 文件保存路径,如task.data=/data/wenetspeech/train
$ bash run_scripts/run_d2v_finetune.sh
run_scripts/decode.sh
中的模型路径、测试数据路径等
dataset.gen_subset
为测试数据路径下 .tsv 文件的名称,可配置多个$ bash run_scripts/decode.sh
进入wenet_representation路径,修改path.sh
文件中fairseq
, data2vec_dialect
, wenet_representation
相关路径
连续表征训练与解码:
run_d2v.sh
中dataset相关内容,执行$ bash run_d2v.sh
离散表征训练与解码:
data.list
,准备离散表征对应训练文件data.list.discrete
,修改wenet/discrete_token/kmeans_d2v.yaml
中model_dir
和user_dir
,执行$ bash wenet/discrete_token/dump_feat.sh
run_discrete.sh
中dataset相关内容,执行$ bash run_discrete.sh
模型版本 | Aishell-1 (%) | WenetSpeech* (%) | Babel (%) | KeSpeech (%) |
---|---|---|---|---|
pretrain_base | 4.7 | 18.3 / 16.4 | 22.1 | 10.9 |
pretrain_large | 4.0 | 14.3 / 13.0 | 19.1 | 8.1 |
*WenetSpeech中的结果为分别使用 train_s/train_m
训练后,在Test_Meeting上的CER
模型版本 | 普通话 | 北京 | 西南 | 中原 | 东北 | 兰银 | 江淮 | 冀鲁 | 胶辽 |
---|---|---|---|---|---|---|---|---|---|
pretrain_large | 4.61 | 8.23 | 8.74 | 7.62 | 7.89 | 9.72 | 12.89 | 8.91 | 9.30 |
我们在此声明,不要使用TeleSpeech模型及其衍生模型进行任何危害国家社会安全或违法的活动。同时,我们也要求使用者不要将TeleSpeech模型用于没有安全审查和备案的互联网服务。我们希望所有使用者遵守上述原则,确保科技发展在合法合规的环境下进行。
我们已经尽我们所能,来确保模型训练过程中使用的数据的合规性。然而,尽管我们已经做出了巨大的努力,但由于模型和数据的复杂性,仍有可能存在一些无法预见的问题。因此,如果由于使用TeleSpeech开源模型而导致的任何问题,包括但不限于数据安全问题、公共舆论风险,或模型被误导、滥用、传播或不当利用所带来的任何风险和问题,我们将不承担任何责任。
社区使用TeleSpeech模型需要遵循《TeleSpeech模型社区许可协议》。TeleSpeech模型支持商业用途,如果您计划将TeleSpeech模型或其衍生品用于商业目的,您需要通过以下联系邮箱 tele_ai@chinatelecom.cn,提交《TeleSpeech模型社区许可协议》要求的申请材料。审核通过后,将特此授予您一个非排他性、全球性、不可转让、不可再许可、可撤销的商用版权许可。
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。