一、引言
小编新接触语音SDK项目,SDK无UI、底层调用多个C 算法库、提供的是AI服务。语音AI项目,识别效果是至关重要的一环,识别效果评测也是一项测试重点。为了制定一个专业、全面的效果评测的方案,小编学习了相关知识,对方案制定有了初步思路。希望对测试小伙伴有所帮助~~(●—●)
二、ASR流程、系统结构、评测指标及评测模型
1、语音识别(Automatic Speech Recognition,ASR)
语音识别,也被称自动语音识别,所要解决的问题是让机器能够“听懂”人类的语音,将语音中包含的文字信息“提取”出来,相当于给机器安装上“耳朵”,使其具备“能听”的功能。
语音识别是一门涉及面很广的交叉学科,它与声学、语音学、语言学、信息理论、模式识别理论以及神经生物学等学科都有非常密切的关系。语音识别的目标是将人类的语音内容转换为相应的文字。
2、语音识别基本流程、系统结构
语音识别原理的4个基本流程:“输入——编码——解码——输出”
语音识别系统本质上是一种模式识别系统,主要包括信号处理和特征提取、声学模型(AM)、语言模型(LM)和解码搜索四部分。
3、ASR评测模型
评测模型,各家评测模型殊途同归。下图参考为例:
首先要有测试的数据集,测试的数据集也是有一段音频和标注。标注的就是标注音频内容,说的是什么。注意:评测的数据集和训练的数据集是严格隔离的。
准备好数据集后,SDK读取数据集中的音频(批量评测),每条音频都严格按照待识别效果评测模块的实际逻辑流程,得到每条音频的识别结果,最后得到这个数据集的指标衡量的统计结果。
4、语音识别(ASR)评测指标
语音识别(ASR)评测指标:WER(字错误率)和SER(句错误率)
(1). WER 字错误率
为了使识别出来的词序列和标准的词序列之间保持一致,需要进行替换、删除或者插入某些词,这些插入、替换或删除的词的总个数,除以标准的词序列中词的总个数的百分比,即为WER。
公式为:
Substitution——替换(错误识别)
Deletion——删除(漏识别)
Insertion——插入(多识别)
N——单词数目(标注中含有字数总和)
结果比较示例:
比如下图是某个小功能需求更换模型参数识别效果评测,其中一个测试集的WER统计。
(2). SER句错误率
SER表述为句子中如果有一个词识别错误,那么这个句子被认为识别错误。ASR句子识别错误的个数,除以音频中句子总数即为SER
其计算公式如下所示:
三、ASR评测影响因素
1、语⾳识别准确率影响因素
影响到准确率的因素逐渐增多,其中主要因素有以下几种:
(1). 说话人的口音、多语种混合识别(Code-switching,如中英混合等)等问题仍对识别性能影响较大。
(2). 语音方式:目前人机对话场景下,讲话相对会收着说,吐字相对清晰,识别精度会有保证。但是自然对话场景下,断断续续(停顿造成的断句错误)、吞音、咬字不清、语速快慢等问题对识别效果有影响。
(3). 语音场景(环境):语音识别近讲、远讲场景,环境噪音、混响等问题对识别效果影响很大。
(4). 识别领域:针对特定场景,需要预先对语言模型进行优化,确保领域内的专有名词,语言习惯都能够正确识别。
上述四项中,前三项与声学模型相关,第四项与语言模型有关。
2、语⾳识别评测影响因素
(1). 声音来源(人声 录音声 广播声 耳机 麦克风 单/双通道/立体声)
(2). 语种分类(普通话 方言 英语 小语种 混合语言)
(3). 语音内容/领域(日常话语 非日常话语)【不同行业 不同场景】
(4). 音色(男音 女音)【不同年龄段的男/女音:儿童 少年 中年 老年】
(5). 环境(室内 室外 公共场所 安静 嘈杂 回音)
(6). 音量(分贝值大 小 时大时小)
(7). 语音方式(哼唱 断断续续 正常说话 咬字不清)
(8). 语速(快 中等 慢 时快时慢)
(9). 录入语音时长(0秒 1秒 1分钟内 >1分钟)
(10).对话方式(间隔 连续 单人 多人)
(11).特殊发音(比如普通话中sh与s ping与pin l与n f与h)
四、ASR评测方案制定
评测方案具体设计流程
(1). 了解业务逻辑、实现流程,和针对具体评测项目的主流方法;
(2). 设计专项评测方案;
(3). 组内根据方案设计文档进行讨论、补充;与相关项目组成员组会沟通,确保所有内容的认知达成一致,且对评测方案认可通过;
(4). 完成专项评测方案,并撰写评测报告;
(5). 根据需求变更或者版本变更定期更新维护专项评测。
1、ASR评测方案设计——确定测试场景(简单举例)
考虑评测的各种影响因素,需要先确定某些维度(下例),制定一个测试场景评测:
确定:语种分类(普通话)、声音来源(人声录音)、对话方式(单人)、语音内容(日常话语)、音色(青年女音)、语音方式(正常说话)、语速(中等)、录入语音时长(2分钟)
距离 声源和麦克风之间的距离
角度 声源和麦克风之间的角度
中等语速 每分钟字数大约150左右
2、ASR评测方案设计——确定测试标准(简单举例)
3、ASR评测方案设计——制备输⼊语料、选取数据集
目前现状:标注数据集,数量有限,扩充、更新慢;
数据集要反映用户的实际情况,做识别效果评测,需要更多、贴近用户的数据集;
评测集拓展:新的语料来源:自己录制;调研用户top N的数据内容类型;收集⾼频的badcase;
4、ASR评测方案执行——过程设计
小编所在项目的ASR评测需要基于语音SDK进行,具体执行方案还在修订,遇到的问题和解决方案,小编在实践总结后再总结分享~~
注:参考
https://blog.csdn.net/sty945/article/details/80438587
https://my.oschina.net/u/4594489/blog/4441264
https://www.zhihu.com/question/53001402/answer/148537722
MTSC20195679