陈 林 洪志云
(广东美的制冷设备有限公司 佛山 528311)
随着智能音箱[1]和语音家电的普及,AI语音已经逐步渗透到人们的生活中,人们越来越乐于使用语音交互和控制(家电),而语音交互的体验也越来越被重视。2018年来,无论是国内外AI语音方向的巨头还是国内的统一语音解决方案厂商,都发布了自己的全双工对话技术。语音家电作为语音入口之一,无论是控制家电还是播放音乐,都实现了全双工对话技术的应用。虽然全双工对话这种模式各大厂商都已发布,但对于该技术(功能)至今都没有一个统一的标准去规范它的技术要求和实验方法。而语音家电和智能音箱天然不同的应用属性,决定了语音家电全双工对话技术要求和实验方法迫切需要定义和实践,源于语音家电作为语音入口,因为有控制的属性,在全双工对话中,噪声很有可能误入继而被识别成可控制设备的指令词,这种情况对于很多大功率家电其实是一件非常影响用户体验和危险的事情。
本文将聚焦语音家电全双工对话技术的识别率、语义打断、噪声误打断3个语音性能方面的测试要求和测试方法。
语音家电全双工对话技术,实际上是语音家电录音的同时可以播放声音,即一边回答问题一边听用户说话,这个过程中VAD[2]是常开的。因为是常开,那么噪声(外部噪声、回声噪声)就很容易误入并被识别成有意义的指令词。对于语音家电来说,一个有意义的指令词很有可能会触发家电的控制,这是我们最关心的问题。基于此,对于语音家电上全双工对话技术的应用,我们需要较好的用户体验,就要在要求较高的识别率[3]的同时,要求噪声环境下的语义打断和噪声误打断指标也要足够好。
语音家电(双麦)全双工状态下的识别率要求如表1。
表1 双麦语音家电全双工状态下识别率
语音家电(双麦)全双工状态下的语义打断要求如表2。
表2 双麦语音家电全双工状态下语义打断要求
语音家电(双麦)全双工状态下的噪声误打断要求如表3。
表3 双麦语音家电全双工状态下噪声误打断要求
表4 双麦语音家电全双工对话技术测试设备一览表
人工嘴位于语音家电麦克风正前方(注:其他角度如 45 °和 135 °结果仅作为参考),水平直线距离L米(有1 m、3 m、5 m三种方案);声级计、语音家电麦克风位于同一平面处,噪音源与语音家电麦克风距离≥1 m;声级计与语音家电麦克风尽量靠近(两者之间距离≤50 mm),但不能碰到被测设备的外壳,避免发音震动引起的干扰。DUT(被测物)的位置有三种情况,分别时室内居中放置、室内靠墙放置、室内角落放置,具体选择哪种位置因被测物实际使用情况而定,比如风扇,可选择室内居中位置、立式空调可选择室内角落、电饭煲可选择室内靠墙等。实际测试可按照产品实际情况选择图1~6的任意两种或者一种布局方式进行测试。
图1 DUT室内居中放置噪声朝里布局示意图
图2 DUT室内居中放置噪声朝外布局示意图
图3 DUT室内靠墙放置噪声朝里布局示意图
图4 DUT室内靠墙放置噪声朝外布局示意图
图5 DUT室内角落放置噪声朝里布局示意图
图6 DUT室内角落放置噪声朝外布局示意图
2.3.1 识别率测试数据要求如表5。
表5 双麦语音家电全双工对话技术指令词测试数据要求
2.3.2 噪声测试数据要求如表6。
表6 双麦语音家电全双工对话技术噪声测试数据要求
分别调节音箱和人工嘴音量,使前述两种设备单独发声时声级计测出的分贝值计算信噪比,所有测试均保证信噪比SNR[4]≥10 dB。用人工嘴依次播放测试集语音命令,采用自动记录设备记录识别结果。需要注意的是:
1)所有测试均在产品结构合理并且达到结构设计ID的标准后进行测试;
2)所有测试均在典型混响环境[5]下测试(T60的值在200~400 ms);
3)声音分贝以设备接收到的声音的分贝为准;
4)噪声源的朝向(朝里、朝外)不同的情况下,准确率要求不变;
5)本文提到的语音性能自动化测试环境单位dB均为dBA。
2.4.1 识别率测试
测试环境:满足表1的要求;
测试数据:家电控制指令词,≥100人&≥200条/人,且满足3.3的要求;
通判标准:满足表1的要求;
测试方法:
①切换到全双工链路(很多语音设备可能同时存在半双工链路和全双工链路),
②进行全双工链路的识别率测试:
播放唤醒词→确认已经被唤醒→播放指令词→匹配识别结果→重复上述4个步骤。
2.4.2 语义打断测试
测试环境:满足表2的要求。
测试数据:全双工技能指令词,≥5人&≥100条/人,同时满足3.3的要求。
通判标准:满足表2的要求:
-实际播放指令次数为A,
-本地记录打断成功次数为B,
-本地记录打断成功且识别正确次数为C;
脚本设计:
①唤醒(判断唤醒标志,保证唤醒成功且上一轮全双工已经退出);
②本地播放有长TTS下发的指令词(判断识别正确且成功激活全双工状态);
③检测到“start tts”标志后等待1 s(期间无“end tts标志”且无全双工退出标志);
④播放测试指令词,并记录播放时间到本地excel;
⑤等待5 s;
⑥重复①~⑥,直到待测的指令词播完,结束自动化测试(待测指令此总数为A)。
按照上面的步骤,每次播完一个指令词就重新唤醒再进入全双工。保存200条测试指令词测试过程中的全部嵌入式端的日志到本地,测试完成后对该日志进行数据处理,处理方法如下:
①按照进入全双工&退出全双工为一组,通过脚本分析日志并统计数据如表7。
表7 进入全双工&退出全双工统计数据
②计算语义打断精确率和召回率:
-实际播放指令次数为A;
-本地记录打断成功次数为B=sum N1(200组N1的和);
-本地记录打断成功且识别正确次数为C=sum N2(200组N2的和);
2.4.3 噪声误打断测试
测试环境:满足表3的要求。
测试数据:只需要测试噪声环境的时候按照3.3的要求准备噪声数据。
通判标准:
安静环境,全双工状态下,噪声误打断≤0次/100轮;
噪声环境,全双工状态下,噪声误打断≤10次/100轮。
脚本设计:
前置条件:安静环境的测试直接执行下述脚本,噪声环境的测试则同时启动噪声播放和下述自动化脚本的执行。(有条件的话,可以对测试全过程进行录音,方便排查问题。)
①唤醒(判断唤醒标志,保证唤醒成功,且上一轮全双工已经退出);
②播放指令词;
③判断进入全双工状态,成功进入计数N则+1,N的初始值为0;
④等待X s(X为对话主动退出定义的超时时间);
⑤重复①~⑤,直到N=100后结束自动化测试。
按照上面的步骤,每次播完一个指令词成功进入全双工状态后,则一直等到该全双工状态自然超时退出,中间不播放除待测噪声外的任何音频数据,随后再重新唤醒播放指令词进行下一轮全双工的触发。保存测试过程中的全部嵌入式端的日志到本地,测试完成后对该日志进行数据处理,处理方法如下:
①按照进入全双工&退出全双工为一组,通过脚本分析日志并统计数据如表8。
表8 进入全双工&退出全双工统计数据
②计算噪声误打断
安静环境和噪声环境的测试分开统计,噪声误打断次数=sum N3(100组N3的和)。
测试报告应包括以下内容:
1)语音家电种类;
2)使用的测试设备;
3)测试环境的详细描述(房间噪声值、混响值、测试设备摆放、距离、角度);
4)测试使用的数据详细描述;
5)表1、表2、表3中各测试项目的数据指标。
采用以上测试方法,选取市场了一款宣称“全双工对话”技术的空调DF100作为试验样机,按照以上试验步骤,部分测试结果如表9,部分测试过程数据见图7,部分测试环境见图8。
表9 DF100全双工语音性能部分测试结果
图7 部分测试过程数据
图8 部分测试环境
家电的语音功能成为近年来各大家电企业宣称重要卖点之一,消费者也从“能动口就不动手”的角度出发,希望购买集解放双手和娱乐为一体的语音家电,而全双工对话技术又是家电语音功能的一大亮点,能够为人们提供自然流畅的一次唤醒多轮问答的类人化的交互体验。本文解读了语音家电全双工对话技术的关键测试指标、测试要求和方法,并结合语音空调产品的测试结果,为今后各家电企业及测试机构针对语音家电全双工对话技术测试提供了指引方法。