ECAPA-TDNN模型是基于时延神经网络构建的说话人模型,由于识别性能优异,已经被广泛使用在说话人识别领域中,还可用于说话人日志和语种识别等任务。 ECAPA-TDNN在传统的TDNN模型上有3种改进。第一,融合了一维的Res2Net层和Squeeze-ad-Excitatio模块,对特征chael之间的关系进行建模。第二,融合多个层级特征,同时利用网络浅层和深层的信息。第三,采用了基于attetio机制的poolig层,生成基于全局attetio的说话人特征。 更详细的信息见 本模型使用开源数据集3D-Speaker数据集进行训练,包含约10k个说话人,可以对16k采样率的中文音频进行识别。 在3D-Speaker中文测试集:Cross Device, Cross-Distace, Cross-Dialect中EER评测结果如下: 对于有开发需求的使用者,特别推荐您使用Notebook进行离线处理。先登录ModelScope账号,点击模型页面右上角的“在Notebook中打开”按钮出现对话框,首次使用会提示您关联阿里云账号,按提示操作即可。关联账号后可进入选择启动实例界面,选择计算资源,建立实例,待实例创建完成后进入开发环境,输入api调用实例。 本项目已在3D-Speaker开源了训练、测试和推理代码,使用者可按下面方式下载安装使用: 运行ECAPA-TDNN在3D-Speaker集上的训练脚本 如果你觉得这个该模型有所帮助,请引用下面的相关的论文ECAPA-TDNN说话人模型
模型结构简述
训练数据
模型效果评估
Model
Params
Cross-Device
Cross-Distace
Cross-Dialect
ECAPA-TDNN
20.8M
9.07%
12.71%
14.90%
快速体验模型效果
在Notebook中体验
from modelscope.pipelies import pipelie
sv_pipelie = pipelie(
task='speaker-verificatio',
model='damo/speech_ecapa-td_sv_zh-c_3dspeaker_16k'
)
speaker1_a_wav = 'https://modelscope.c/api/v1/models/damo/speech_campplus_sv_zh-c_16k-commo/repo?Revisio=master&FilePath=examples/speaker1_a_c_16k.wav'
speaker1_b_wav = 'https://modelscope.c/api/v1/models/damo/speech_campplus_sv_zh-c_16k-commo/repo?Revisio=master&FilePath=examples/speaker1_b_c_16k.wav'
speaker2_a_wav = 'https://modelscope.c/api/v1/models/damo/speech_campplus_sv_zh-c_16k-commo/repo?Revisio=master&FilePath=examples/speaker2_a_c_16k.wav'
# 相同说话人语音
result = sv_pipelie([speaker1_a_wav, speaker1_b_wav])
prit(result)
# 不同说话人语音
result = sv_pipelie([speaker1_a_wav, speaker2_a_wav])
prit(result)
# 可以自定义得分阈值来进行识别
result = sv_pipelie([speaker1_a_wav, speaker2_a_wav], thr=0.6)
prit(result)
训练和测试自己的ECAPA-TDNN模型
git cloe https://github.com/alibaba-damo-academy/3D-Speaker.git && cd 3D-Speaker
coda create - 3D-Speaker pytho=3.8
coda activate 3D-Speaker
pip istall -r requiremets.txt
cd egs/3dspeaker/sv-ecapa
bash ru.sh
使用本预训练模型快速提取embeddig
pip istall modelscope
cd 3D-Speaker
# 配置模型名称并指定wav路径,wav路径可以是单个wav,也可以包含多条wav路径的list文件
model_id=damo/speech_ecapa-td_sv_zh-c_3dspeaker_16k
# 提取embeddig
pytho speakerlab/bi/ifer_sv.py --model_id $model_id --wavs $wav_path
相关论文以及引用信息
@article{desplaques2020ecapa,
title={Ecapa-td: Emphasized chael attetio, propagatio ad aggregatio i td based speaker verificatio},
author={Desplaques, Brecht ad Thiepodt, Jethe ad Demuyck, Kris},
joural={arXiv preprit arXiv:2005.07143},
year={2020}
}
@iproceedigs{che2023pushig,
title={3D-Speaker: A Large-Scale Multi-Device, Multi-Distace, ad Multi-Dialect Corpus for Speech Represetatio Disetaglemet},
author={Siqi Zheg, Luyao Cheg, Yafeg Che, Hui Wag ad Qia Che},
url={https://arxiv.org/pdf/2306.15354.pdf},
year={2023}
}
3D-Speaker 开发者社区钉钉群
点击空白处退出提示
评论