最近这几天有相关的语音转文字的测试,主要是针对几个供应商提供的接口,然后对识别结果进行校对和评估,来确认哪个供应商提供的品质和性价比等更好。
然后自学了下语音转文字的一些测试方法,记录下来,方便使用。
参考链接:软件测试之语音识别(ASR)测试
一、语音识别(ASR)评估指标
在测试语音识别的过程中,衡量识别内容的准确性,一般通过如下指标进行评估
- WER(Word Error Rate,词错率)
定义:为了使识别出来的词序列和标准的词序列之间保持一致,需要进行替换、删除或者插入某些词,这些插入、替换或删除的词的总个数,除以标准的词序列中词的总个数的百分比,即为WER
WER=(S+D+I)/N
S:substitution,替换
D:Deletion,删除
I:Insertion,插入
N:标准词序列中词的总个数
(S+D+I)=识别出来的词序列与标准的词序列之间的编辑距离
注意:因为有插入词(Insertion),所以可能会出现WER>1的情况,不过,WER>1时,表明识别出来的词序列和标准的词序列相差很大,识别效果特别差
- SER(Sentence Error Rate,句错率)
定义:句子中如果有一个词识别错误,那么这个句子被认为识别错误,句子识别错误的个数,除以总的句子个数即为SER
SER=SE/N
SE:识别出来的序列中,识别错误的句子个数(即WER!=0的句子个数)
N:标准序列中总句子个数
二、语音识别(ASR)思路
(1)、语音识别的测试点主要包括如下几点:
i.输入测试语音
(中间过程:语音识别模块接收到测试语音,执行语音转文字操作,并将识别文字输出)
ii.验证识别文字内容的准确性
iii.语音识别耗时
(2)、 测试语音的输入,主要包括以下几个方面:
①语音输入离拾音设备的距离:近距离、远距离
②拾音设备:移动端(安卓、IOS)原生麦克风、PC端原生麦克风、日常用耳机麦克风、专业设备麦克风(罗技等)
③语音输入与拾音设备的相对位置:正对拾音口,背对拾音口
④语音输入的环境:办公环境、会议室环境
⑤语音输入时的语速:正常语速、语速较快、语速较慢、时快时慢、断断续续
⑥语音输入时的音量:正常音量、音量较大、音量较小,时大时小
⑦语音输入时的音色:男声、女声
⑧语音输入的音频类型:自然人声、录音、广播、变声等
(3)、测试识别内容,主要包括以下几个方面:
①支持识别的语种:普通话、英文、方言等
②支持的应用场景:日常对话、尽职调查、娱乐访谈等
③支持的对话模式:单人对话,多人对话,同一时间只有一个人说话,同一时间多人一起说话
④覆盖的词库内容:根据应用场景,是否包含了应用场景(比如金融、娱乐领域)对应的词库训练
(4)、验证识别内容的准确性
统计识别文字的WER、SER指标
(5)、关注语音识别耗时
①短语音的识别耗时
②长语音的识别耗时
三、WER、SER指标的计算
①计算识别的词序列与标准的词序列之间的编辑距离
②计算WER
③计算SER