语音触发器

Hey Siri

“Hey Siri”功能允许用户启动Siri。一个很小的语音识别器一直在运行并监听这两个单词。当它检测到“Hey Siri”时,Siri将余下的语音作为命令或查询进行解析。“Hey Siri”探测器使用深度神经网络(DNN)将每个时刻的声音的声学模式转换为语音声音的概率分布。然后,它计算你所说的短语是“Hey Siri”的可能性分数。如果得分足够高,Siri会被唤醒。
图1. iPhone上的Hey Siri流程
图1. iPhone上的Hey Siri流程
如图1所示,整个系统有几个部分。Siri的大部分实现都是“在云端”,包括主要的自动语音识别,自然语言解释和各种信息服务。还有一些服务器可以提供检测器使用的声学模型的更新。我们主要关注探测器:一个专门的语音识别器,它只关注“Hey Siri”。

监听“Hey Siri”

iPhone中的麦克风以每秒16000的速度将您的声音转换为瞬时波形样本流。频谱分析阶段将波形采样流转换成一系列帧,每帧描述约0.01秒的声谱。将这些帧中的大约20个(音频为0.2秒)送到深度神经网络(DNN),其将这些声学模式中的每一个转换成一组语音类别的概率分布:用于“Hey Siri”的短语,再加上沉默和其他的讲话,总共约20个音类。如图2。
图2

我们选择DNN的每个隐藏层中的单元数量,以适应​​“Hey Siri”检测器运行时可用的计算资源。我们使用的网络通常具有五个隐藏层,所有这些层都是相同的大小:32,128或192个单元,具体取决于内存和功率的限制。在iPhone上,我们使用两个网络,一个用于初始检测,另一个用作辅助检查器。初始检测器使用的次数少于辅助检查器。
假设我们使用的是最小的DNN,则可以通过查看表示不同阶段声学信号的图3来更好地了解探测器的工作原理。最底部是麦克风波形的光谱图。在这种情况下,有人在说“Hey Siri What…”更明亮的部分是这个短语中最响亮的部分。Hey Siri模式是在垂直的蓝线之间。
图3.通过探测器时的声学模式

从底部向上的第二个水平条显示了用梅尔滤波器组分析相同波形的结果,其基于感知测量给出频率的权重。由于声道的精细结构,这种转换使光谱图中可见的细节变得平滑:或者是随机的,如在/s/中,或者是周期性的,在这里被看作垂直条纹。
标记为H1至H5的交替的绿色和蓝色水平条显示了五个隐藏层中的每一个单元的数值(激活)。已经为这个数字安排了每层的32个隐藏单元,以便将具有相似输出的单元放在一起。
下一条(有黄色斜线)显示声学模型的输出。在每一帧中,短语中的每个位置都有一个输出,另外还有一些输出用于静音和其他语音。

双通道检测

“Hey Siri”探测器不仅要准确,而且需要快速,对电池寿命没有显着影响。我们还需要最大限度地减少内存使用和处理器需求,特别是处理器需求峰值。
为了避免整天运行主处理器来监听触发短语,iPhone的Always On Processor(AOP)(一个小型​​,低功耗的辅助处理器,即嵌入式运动协处理器)可以访问麦克风信号(6S及更新机型)。我们使用AOP有限处理能力的一小部分来运行具有小型声学模型(DNN)的探测器。当分数超过阈值时,运动协处理器唤醒主处理器,主处理器使用更大的DNN来分析信号。在支持AOP的第一个版本中,第一个探测器使用了一个有5层32隐藏单元的DNN,第二个探测器有5层192个隐藏单元。
图4.双程检测

人脸触发器

概述

Hey Siri是一种基于语音识别的触发器,通过识别固定的关键字“Hey Siri”来触发Siri。基于人类固有的对话方式,提供另一种Siri触发器(Face Siri)。Face Siri通过判定使用者注视iPhone,进而触发Siri。

人类对话

假设场景,张三与李四对话,有以下两种方式:
1、 如图5所示,张三呼叫李四名字,并与李四建立一次对话。
步骤1:张三说:“李四”。
步骤2:李四听到后回答:“在”。
步骤3:张三问:“吃了吗”?
步骤4:李四回答:“吃过了”。
Hey Siri触发器类似于此种模式。iPhone监听到Hey Siri, 启动Siri并完成后续服务。

图5
2、 如图6所示,张三和李四看向对方,并建立一次对话。
步骤1:互相看向对方。
步骤2:张三问:“吃了吗”?
步骤3:李四回答:“吃过了”。
基于此种人类已有的对话模式,提供一种新的触发Siri的模式,并不需要喊出那个固定的关键字“Hey Siri”。

图6

Face Siri

如图7所示,使用者通过注视iPhone来启动Siri。
步骤1:使用者注视iPhone。使用者面部正对iPhone,并保持张开眼睛看向iPhone。
步骤2:判断是否注视iPhone。通过DNN判断摄像头获取图片的人脸占比是否超过阈值,眼睛是否张开。
步骤3:判断超时之前是否接收到语音。若有效时间内监测到有效语音输入,则触发Siri并等待语音输入完成。
步骤4:解析语音。Siri将语音输入解析为命令或者查询并提供服务。

图7.Face Siri流程

Logo

CSDN联合极客时间,共同打造面向开发者的精品内容学习社区,助力成长!

更多推荐