如上图,我们通过微信发送了一段语音,在对语音进行转文字时。语音识别引擎首先会将把这段语音进行分帧(切分成若干小段),然后利用声学模型将提取的每一帧的声学特征识别为一个个“状态”,多个状态会组合成一个音素(语音中的最小的单位),音素构成了诸多同音字,再利用 语言模型 从诸多同音字中挑选出可以使 语义完整的字(例如 不会把“吃饭”识别成“痴泛”),最后将文本展示出来。
如何将上述过程从质量的角度刻画出来,是本框架解决的主要问题。同时,AI算法测试依托纯手工测试、亦或是半自动化测试所面临着在执行效率、结果可靠性方面的局限性较大,本框架也是从手动、半自动测试转变为全自动、智能化测试的一次尝试。
重点分析
难点分析
1 如何实现标注质量的自动评估
标注质量差意味着期望值错误,将直接决定了后续统计结果的可靠性,音频的标注进行质量评估是开展统计分析的前提。因此需要实现对所有标注数据进行标注质量风险评级,并输出整体标注质量情况。
2 如何实现将每个标注数据进行精确到字、音节、音调的分析,找出其中正确的字、编辑的字、删除的字、插入的字,并且将标注与识别文本标注对齐。例如:
标注文本(预期): 二三四五六七八九十
识别文本(实际): 一二三四五七捌九玖十
通过人工判断可以得出:
有同学也许会问,为什么捌是编辑、玖为什么是插入?这里答疑一下:
3 如何实现基于字错实现由字、到音节、再到音调的深层次分析挖掘,例如,按照如下梯度进行分析:
测试框架通过配置待测试的标注数据集,自动实现以下结果的输出。
1 模型宏观指标
宏观指标包含 质量风险评估、SER、WER等指标计算及与预期指标值的比对结果,帮助测试人员从宏观角度快速掌握本次任务测试数据集的指标结果。
关于评估指标的计算,可以浏览下该文章内容:
2 数据标注质量风险评估
通常,人工标注的文本数据与期望数据的相似度越高,那么说明标注质量越高(可能是误读,导致存在一定误差,但属于小概率事件),我们通过文本相似度计算(切词、余弦相似度)实现标注质量的风险预测。
数据标注质量风险评估包含录音文本、归一化文本、标注人员工号、质量风险等级信息,帮助测试人员快速摸清数据标注质量,以及提高对于高风险标注数据的纠正效率。
3 语音测试样本的数据统计分析详情
全量语音识别的统计分析结果中包含每条标注数据的基本信息,结果比对的统计信息,以及精确的字、音、调的分析,帮助测试人员快速直观的了解每一条标注信息标注结果,提高分析效率。
关于这部分实现,可以浏览下该文章内容:
4 意图(场景)统计分析
意图统计分析结果包含各意图的字错率、句错率,以及与预期指标值的比对结果,帮助测试人员了解不同意图(场景下)的指标表现。
5 其他维度统计分析
其他维度只要包含标注数据时打标的字错率、句错率,以及与预期指标值的比对结果各项维度,帮助测试人员了解不同数据特征下的指标表现,同时支持配置即统计(只需要配置到运行配置中,即可实现统计,无需代码开发)
6 错字前提下,音节正确分析详情
由字符到音节,从错字的角度出发,进行更深层次的启发式分析,包含期望字、期望字音节、多音字读音,对应的错字数量,具体的每一个错字,字的来源等信息,通过数据归并统计分析,启发测试人员从中发现更多的问题。
7 错字且音节正确前提下,音调正确分析详情
同音字分析,由音节到音调,这是基于错字且音节正确前提下更深一步的启发式分析,包含了期望字、期望字音节、多音字读音、期望音调,对应的错字数量、错字音调等信息,通过数据归并统计分析,启发测试人员从中发现更深入的问题。
8 错字且音节正确前提下,音调错误分析详情
由音节到音调,这是基于错字且音节正确前提下更深一步的启发式分析,包含了期望字、期望字音节、多音字读音、期望音调,对应的错字数量、错字音调等信息,通过数据归并统计分析,启发测试人员从中发现更深入的问题。