ASR 语音识别算法测试设计


ASR 语音识别算法测试设计

文章插图
 
【ASR 语音识别算法测试设计】如上图,我们通过微信发送了一段语音,在对语音进行转文字时 。语音识别引擎首先会将把这段语音进行分帧(切分成若干小段),然后利用声学模型将提取的每一帧的声学特征识别为一个个“状态”,多个状态会组合成一个音素(语音中的最小的单位),音素构成了诸多同音字,再利用 语言模型 从诸多同音字中挑选出可以使 语义完整的字(例如 不会把“吃饭”识别成“痴泛”),最后将文本展示出来 。
 
如何将上述过程从质量的角度刻画出来,是本框架解决的主要问题 。同时,AI算法测试依托纯手工测试、亦或是半自动化测试所面临着在执行效率、结果可靠性方面的局限性较大,本框架也是从手动、半自动测试转变为全自动、智能化测试的一次尝试 。
 
我们需要解决的重点问题
  • 基于文本相似度计算及标注质量风险等级阈值设置,实现语音标注质量的风险自动评估 。
  • 基于SER(句错误率)、WER(字错误率)、字错误前提下的音节错误率、字错误且音节正确前提下的音调错误率 指标,实现宏观指标的自动评估(每条标注信息分析精确到每个字的结果分析(正确、编辑、删除、插入)、每个错字的音节、音调分析) 。
  • 基于标注数据意图(场景)的划分,实现各意图指标的自动评估 。
  • 基于标注数据各维度(如,发音人性别、信噪比等),实现各维度指标的自动评估 。
  • 基于由字符到音节再到音调的深层次的启发式分析,更好的启发测试同学发现问题 。
 
重难点分析重点分析
  1. 给出宏观的WER、SER指标结果,以及每条标注的数据WER结果 。
  2. 给出不同维度的WER、SER指标结果,并且与期望指标值进行比对,给出结论 。
难点分析
1 如何实现标注质量的自动评估
标注质量差意味着期望值错误,将直接决定了后续统计结果的可靠性,音频的标注进行质量评估是开展统计分析的前提 。因此需要实现对所有标注数据进行标注质量风险评级,并输出整体标注质量情况 。
 
2 如何实现将每个标注数据进行精确到字、音节、音调的分析,找出其中正确的字、编辑的字、删除的字、插入的字,并且将标注与识别文本标注对齐 。例如:
标注文本(预期):二三四五六七八九十 识别文本(实际):一二三四五七捌九玖十通过人工判断可以得出:
  • 正确的字(C):二三四五七九十
  • 编辑的字(S):捌
  • 删除的字(D):六
  • 插入的字(I) :一、玖
有同学也许会问,为什么捌是编辑、玖为什么是插入?这里答疑一下:
  • “捌” 属于编辑是因为在识别文本中,“捌”前面是“七”、后面是“九” 。而标注文本的七和九之前刚好有一个字,因为这个字和捌不一样,所以是编辑 。
  • “玖”属于插入是因为在识别文本中,“玖”前面是“九”后面是“十”,而标注文本“九”和“十”之间没有任何字,所以是插入 。
3 如何实现基于字错实现由字、到音节、再到音调的深层次分析挖掘,例如,按照如下梯度进行分析:
ASR 语音识别算法测试设计

文章插图
 
效果测试框架通过配置待测试的标注数据集,自动实现以下结果的输出 。
1 模型宏观指标
宏观指标包含 质量风险评估、SER、WER等指标计算及与预期指标值的比对结果,帮助测试人员从宏观角度快速掌握本次任务测试数据集的指标结果 。
ASR 语音识别算法测试设计

文章插图
 
关于评估指标的计算,可以浏览下该文章内容:
AI算法测试——语音识别(ASR)模型评估指标探索
2 数据标注质量风险评估
通常,人工标注的文本数据与期望数据的相似度越高,那么说明标注质量越高(可能是误读,导致存在一定误差,但属于小概率事件),我们通过文本相似度计算(切词、余弦相似度)实现标注质量的风险预测 。
数据标注质量风险评估包含录音文本、归一化文本、标注人员工号、质量风险等级信息,帮助测试人员快速摸清数据标注质量,以及提高对于高风险标注数据的纠正效率 。


推荐阅读