ASR(语音识别)评测学习

2020-12-24 10:55:41 浏览数 (1)

一、引言

小编新接触语音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

0 人点赞