模型介绍
中文整理语音唤醒模型介绍
模型描述
  移动端语音唤醒模型,检测关键词为"***Yes/No/Up/Down/Left/Right/On/Off/Stop/Go***"10个英文单词。
  模型网络结构继承自论文《Compact Feedforward Sequential Memory Networks for Small-footprint Keyword Spotting》,其主体为4层cFSMN结构(如下图所示),参数量约750K,适用于移动端设备运行。
  模型输入采用Fbank特征,训练阶段使用CTC-loss计算损失并更新参数,输出为基于char建模的中文全集token预测,token数共2599个。测试工具根据每一帧的预测数据进行后处理得到输入音频的实时检测结果。
  模型训练采用"basetrain + finetune"的模式,basetrain过程使用大量内部移动端数据,在此基础上,使用Google开源命令词数据进行微调得到输出模型。由于采用了中文char全量token建模,并使用充分数据进行basetrain,本模型支持基本的唤醒词/命令词自定义功能,但具体性能无法评估。如用户想验证更多命令词,可以通过页面右侧“在线体验”板块自定义设置并录音测试。
  目前最新ModelScope版本已支持用户在basetrain模型基础上,使用其他关键词数据进行微调,得到新的语音唤醒模型。欢迎您通过小云小云模型了解唤醒模型定制的方法。
使用方式和范围
运行范围:
现阶段只能在Linux-x86 64运行,不支持Mac和Windows。
模型训练需要用户服务器配置GPU卡,CPU训练暂不支持。
使用方式:
使用附带的kwsbp工具(Linux-x86 64)直接推理,分别测试正样本及负样本集合,综合选取最优工作点。
使用范围:
移动端设备,Android/iOS型号或版本不限,使用环境不限,采集音频为16K单通道。
目标场景:
移动端APP用到的关键词检测场景。
如何使用
请使用python3.9,并手动安装如下依赖:
模型推理代码范例:
audio in参数说明:
默认传入url地址的问问正样本音频,函数返回单条测试结果。
设置本地单条音频路径,如audio in='LOCAL PATH',函数返回单条测试结果。
设置本地正样本目录(自动检索该目录下wav格式音频),如audio in=['POS DIR', None],函数返回全部正样本测试结果。
设置本地负样本目录(自动检索该目录下wav格式音频),如audio in=[None, 'NEG DIR'],函数返回全部负样本测试结果。
同时设置本地正/负样本目录,如audio in=['POS DIR', 'NEG DIR'],函数返回Det测试结果,用户可保存JSON格式文本方便选取合适工作点。
模型局限性以及可能的偏差
考虑到正负样本测试集覆盖场景不够全面,可能有特定场合/特定人群唤醒率偏低或误唤醒偏高问题。
训练数据介绍
basetrain使用内部移动端ASR数据5000+小时,finetune使用Google开源命令词数据。
模型训练流程
模型训练采用"basetrain + finetune"的模式,finetune过程直接使用目标场景的特定唤醒词数据并混合一定比例的负样本数据。如训练数据与应用场景不匹配,应当针对性做数据模拟。
预处理
finetune模型直接使用SpeechCommands v1开源数据,未做任何数据模拟。
数据评估及结果
我们采用一些语音关键词相关论文中对SpeechCommands v1数据的评估方式,统计"***Yes/No/Up/Down/Left/Right/On/Off/Stop/Go/SIL/Unknown***"共12个分类的正确率为97.66%。
由于这批开源数据量较少且场景单一,测试结果仅作参考;为了能实际体验效果,我们最终朝着平均正确率约95%左右输出了每个词的阈值。
相关论文以及引用信息
优先采用原作者提供的中文模型卡片;仅有英文说明时由闲社AI翻译整理。重要参数、许可证和商用范围请以原文为准。
你将获得什么
完整仓库方式包含该固定版本中的权重、配置、分词器及说明文件;指定版本方式只下载所选文件或整组分片。多模态模型的投影文件、配置等依赖,请按作者说明配齐。
完整仓库可能包含多个权重格式,因此需要的磁盘空间可能大于单一格式的模型大小。下载文件不等于完成模型部署。
使用前须知
运行模型需要的设备、工具与依赖,以原作者说明为准。
是否允许商用、修改和分发,请查看模型许可证。
闲社提供资料与镜像下载方法,不代表已运行模型或完成安全审计。下载的代码应先检查,再执行。
资料或下载有问题?
登录后可提交反馈。
