本文,具体介绍了下面5大方面的行业实战评价指标:
一、语音识别
二、自然语言处理
三、语音合成
四、对话系统
五、整体用户数据指标
语音识别(Automatic Speech Recognition),一般简称ASR,是将声音转化为文字的过程,相当于人类的耳朵。
1、识别率
看纯引擎的识别率,以及不同信噪比状态下的识别率(信噪比模拟不同车速、车窗、空调状态等),还有在线/离线识别的区别。
实际工作中,一般识别率的直接指标是“WER(词错误率,Word Error Rate)”
定义:为了使识别出来的词序列和标准的词序列之间保持一致,需要进行替换、删除或者插入某些词,这些插入、替换或删除的词的总个数,除以标准的词序列中词的总个数的百分比,即为WER。
公式为:
Substitution——替换
Deletion——删除
Insertion——插入
N——单词数目
3点说明
WER可以分男女、快慢、口音、数字/英文/中文等情况,分别来看。
因为有插入词,所以理论上WER有可能大于100%,但实际中、特别是大样本量的时候,是不可能的,否则就太差了,不可能被商用。
站在纯产品体验角度,很多人会以为识别率应该等于“句子识别正确的个数/总的句子个数”,即“识别(正确)率等于96%”这种,实际工作中,这个应该指向“SER(句错误率,Sentence Error Rate)”,即“句子识别错误的个数/总的句子个数”。不过据说在实际工作中,一般句错误率是字错误率的2~3倍,所以可能就不怎么看了。
2、语音唤醒相关的指标
先需要介绍下语音唤醒(Voice Trigger,VT)的相关信息。
A、语音唤醒的需求背景:近场识别时,比如使用语音输入法时,用户可以按住手机上siri的语音按钮,直接说话(结束之后松开);近场情况下信噪比(Signal to Noise Ratio, SNR)比较高,信号清晰,简单算法也能做到有效可靠。
但是在远场识别时,比如在智能音箱场景,用户不能用手接触设备,需要进行语音唤醒,相当于叫这个AI(机器人)的名字,引起ta的注意,比如苹果的“Hey Siri”,Google的“OK Google”,亚马逊Echo的“Alexa”等。
B、语音唤醒的含义:简单来说是“喊名字,引起听者(AI)的注意”。如果语音唤醒判断结果是正确的唤醒(激活)词,那后续的语音就应该被识别;否则,不进行识别。
C、语音唤醒的相关指标
唤醒率。叫AI的时候,ta成功被唤醒的比率。
误唤醒率。没叫AI的时候,ta自己跳出来讲话的比率。如果误唤醒比较多,特别比如半夜时,智能音箱突然开始唱歌或讲故事,会特别吓人的……
唤醒词的音节长度。一般技术上要求,最少3个音节,比如“OK Google”和“Alexa”有四个音节,“Hey Siri”有三个音节;国内的智能音箱,比如小雅,唤醒词是“小雅小雅”,而不能用“小雅”——如果音节太短,一般误唤醒率会比较高。
唤醒响应时间。之前看过傅盛的文章,说世界上所有的音箱,除了Echo和他们做的小雅智能音箱能达到1.5秒,其他的都在3秒以上。
功耗(要低)。看过报道,说iPhone 4s出现Siri,但直到iPhone 6s之后才允许不接电源的情况下直接喊“Hey Siri”进行语音唤醒;这是因为有6s上有一颗专门进行语音激活的低功耗芯片,当然算法和硬件要进行配合,算法也要进行优化。
以上1、2、3相对更重要。
D、其他
涉及AEC(语音自适应回声消除,Automatic Echo Cancellation)的,还要考察WER相对改善情况。
自然语言处理(Natural Language Processing),一般简称NLP,通俗理解就是“让计算机能够理解和生成人类语言”。
1、准确率、召回率
附上之前文章《AI产品经理需要了解的数据标注工作入门》中,分享过的一段解释:
准确率:识别为正确的样本数/识别出来的样本数
召回率:识别为正确的样本数/所有样本中正确的数
举个栗子:全班一共30名男生、20名女生。需要机器识别出男生的数量。本次机器一共识别出20名目标对象,其中18名为男性,2名为女性。则
精确率=18/(18+2)=0.9
召回率=18/30=0.6
再补充一个图来解释:
2、F1值(精准率和召回率的调和平均数)
模型调优后追求F1值提升,准确率召回率单独下降在一个小区间内,整体F1值的增量也是分区间看(F1值在60%内,与60%以上肯定是不一样的,90%以上可能只追求1%的提升)。
P是精准率,R是召回率,Fa是在F1基础上做了赋权处理:Fa=(a^2+1)PR/(a^2P+R)
语音合成(Text-To-Speech),一般简称TTS,是将文字转化为声音(朗读出来),类比于人类的嘴巴。大家在Siri等各种语音助手中听到的声音,都是由TTS来生成的,并不是真人在说话。
主观测试(自然度),以MOS为主:
MOS(Mean Opinion Scores),专家级评测(主观);1-5分,5分最好。
ABX,普通用户评测(主观)。让用户来视听两个TTS系统,进行对比,看哪个好。
客观测试:
对声学参数进行评估,一般是计算欧式距离等(RMSE,LSD)。
对工程上的测试:实时率(合成耗时/语音时长),流式分首包、尾包,非流式不考察首包;首包响应时间(用户发出请求到用户感知到的第一包到达时间)、内存占用、CPU占用、3*24小时crash率等。
对话系统(Dialogue System),简单可以理解为Siri或各种Chatbot所能支持的聊天对话体验。
1、用户任务达成率(表征产品功能是否有用以及功能覆盖度)
比如智能客服,如果这个Session最终是以接入人工为结束的,那基本就说明机器的回答有问题。或者重复提供给用户相同答案等等。
分专项或分意图的统计就更多了,不展开了。
2、对话交互效率,比如用户完成一个任务的耗时、回复语对信息传递和动作引导的效率、用户进行语音输入的效率等(可能和打断,One-shot等功能相关);具体定义,各个产品自己决定。
3、根据对话系统的类型分类,有些区别。
1、闲聊型:
CPS(Conversations Per Session,平均单次对话轮数)。这算是微软小冰最早期提出的指标,并且是小冰内部的(唯一)最重要指标;
相关性和新颖性。与原话题要有一定的相关性,但又不能是非常相似的话;
话题终结者。如果机器说过这句话之后,通常用户都不会继续接了,那这句话就会给个负分。
2、任务型:
留存率。虽然是传统的指标,但是能够发现用户有没有形成这样的使用习惯;留存的计算甚至可以精确到每个功能,然后进一步根据功能区做归类,看看用户对哪类任务的接受程度较高,还可以从用户的问句之中分析发出指令的习惯去针对性的优化解析和对话过程;到后面积累的特征多了,评价机制建立起来了,就可以上强化学习;比如:之前百度高考,教考生填报志愿,就是这么弄的;
完成度(即,前文提过的“用户任务达成率”)。由于任务型最后总要去调一个接口或者触发什么东西来完成任务,所以可以计算多少人进入了这个对话单元,其中有多少人最后调了接口;
相关的,还有(每个任务)平均slot填入轮数或填充完整度。即,完成一个任务,平均需要多少轮,平均填写了百分之多少的槽位slot。对于槽位的基础知识介绍,可详见《填槽与多轮对话 | AI产品经理需要了解的AI技术概念》。
3、问答型:
最终求助人工的比例(即,前文提过的“用户任务达成率”相关);
重复问同样问题的比例;
“没答案”之类的比例。
整体来说,行业一般PR宣传时,会更多的提CPS。其他指标看起来可能相对太琐碎或不够高大上,但是,实际工作中,可能CPS更多是面向闲聊型对话系统,而其他的场景,可能更应该从“效果”出发。比如,如果小孩子哭了,机器人能够“哭声安慰”,没必要对话那么多轮次,反而应该越少越好。
4、语料自然度和人性化的程度
目前对于这类问题,一般是使用人工评估的方式进行。这里的语料,通常不是单个句子,而是分为单轮的问答对或多轮的一个session。一般来讲,评分范围是1~5分:
1分或2分:完全答非所问,以及含有不友好内容或不适合语音播报的特殊内容;
3分:基本可用,问答逻辑正确;
4分:能解决用户问题且足够精炼;
5分:在4分基础上,能让人感受到情感及人设。
另外,为了消除主观偏差,采用多人标注、去掉极端值的方式,是当前普遍的做法。
常规互联网产品,都会有整体的用户指标;AI产品,一般也会有这个角度的考量。
1、DAU(Daily Active User,日活跃用户数,简称“日活”)
在特殊场景会有变化,比如在车载场景,会统计“DAU占比(占车机DAU的比例)”。
2、被使用的意图丰富度(使用率>X%的意图个数)。
3、可尝试通过用户语音的情绪信息和语义的情绪分类评估满意度。
尤其对于生气的情绪检测,这些对话样本是可以挑选出来分析的。比如,有公司会统计语音中有多少是骂人的,以此大概了解用户情绪。还比如,在同花顺手机客户端中,拉到最底下,有个一站式问答功能,用户对它说“怎么登录不上去”和说“怎么老是登录不上去”,返回结果是不一样的——后者,系统检测到负面情绪,会提示转接人工。
本篇分享,介绍了现在行业内对语音交互系统的常见评价指标,一方面,是提供给各位AI产品经理以最接地气的相关信息;另一方面,也是希望大家基于这些指标,打造出更好的产品体验效果。