您现在的位置:主页 > 科技 >

“Hey Siri” 背后的黑科技大揭秘!

来源: 互联网 发布时间:2020-04-05 点击:

原标题:“HeySiri”背后的黑科技大揭秘!

作者|VishantBatta

译者|苏本如,责编|伍杏玲

以下是译文:

如今苹果手机可随时检测并回答“HeySiri”命令,有人可能会想,它是不是在随时记录我们的日常生活对话呢?

答案是否定的!

“HeySiri”能做的并没有我们想象的那么多!

让我们先看看“HeySiri!”的发展历史吧。

“HeySiri!”作为预装语音助手Siri的附加功能,于2014年9月在iOS8中发布。然而,在iOS9(2015年9月)它升级了,只允许被用来识别用户的个性化语音。

而谷歌助手在2013年之前就已经有了这个功能,但是,在你的屏幕关闭时,它不能支持这个功能。即使是现在,很多安卓手机都不支持这个功能。

让我们来比较一下用户体验,如下图所示:

常规方式vs.“HeySiri!”

常规方式是这样的:用户拿起手机->长按home按钮->Siri启动。

而在“HeySiri!”方式下,用户只需说“HeySiri!”,无需按键,就可以让Siri启动。

这样有一个好处是,因为当用户不方便使用手操作(如开车时),用户也可以使用手机的一些功能。

Siri的前身:M9运动协处理器

“协处理器”可以理解为具有有限功能和电池消耗的辅助处理器,用来支持即使在手机空闲(屏幕关闭)时也可以访问“始终开启”的功能。

M9运动协处理器是苹果协处理器家族的第三代产品,于2015年9月与iPhone6s一起推出。得益于它基于ARM、64位的A9片上系统所具有的强大的处理能力和微量的电池消耗,这个苹果手机著名的“唤醒”功能才得以实现。M9有时也被人们描述为“嵌入到运动协处理器上的始终在线处理器(AOP-AlwaysonProcessor)”

“HeySiri!”是如何工作的?

当你第一次启用这个功能时,它会提示你说一定次数的“HeySiri!”。然后你的iPhone将这些声音保存起来,用做将来识别你的个性化声音的“触发键”。

这个个性化的“触发键”保存在协处理器中,即使你的手机处于空闲状态,协处理器也会侦听(而不是听到)落到麦克风上的所有声音。

因此,当声音落在麦克风上,并与“触发键”匹配成功后,协处理器就会激活主处理器开始录音(就像我们长按主屏幕按钮打开Siri一样)。然后,该录音被发送到服务器,并以类似于每个语音助手的过程进行解释。

想象一下这个过程,就好像你拥有数千把钥匙,你正试图找到哪把钥匙正好匹配你要打开的锁。

这里要注意的重要一点是,AOP处理器(A9)总是在“侦听”而不是“听”用户的声音。它就像一个婴儿,他一直在听人说话,但无法完全处理听到的话,只有在呼唤他的名字时,它才会被触发而开始工作。

M9运动协处理器于2015年9月与iPhone6s一起发布。但正如本文一开始所说,“HeySiri!”功能早于2014年9月就已经推出。那么,早期版本的iPhone是如何能够“被动地”侦听呢?

好吧,如果你碰巧认识一个拥有iPhone6的人,你可以检查一下“HeySiri!”。即使你的手机处于空闲状态(屏幕关闭),该功能也只能在充电模式下工作。正如我们可以简单地推断的那样,它仅仅能在充电时获取少量的额外电量。看看下面iPhone6Siri的设置截图:

“HeySiri!”背后的算法

用户的声音会以0.01秒为一帧的单位被采样下来,然后每次将20个这样的帧(0.2秒),连续输入到深度神经网络(DNN),神经网络将这些声音转换为概率密度函数,当该函数值超过最低阈值时,从而激活主处理器。

DNN训练

这里的阈值不是固定不变的,而是根据背景噪声而变化。因此,为了清楚地理解,你可以说DNN每时每刻都在计算阈值。

此外,当第一次记录你的语音样本并生成“触发键”时,实际上是在训练该DNN并定义权重以计算概率。

对于不同的口音,DNN的训练是不同的。例如,“HeySiri”的发音有点像美国英语中的“Serious”,只是它没有标点符号。而“HeySiri!”中的“i”发音长度不同,而且带有一个惊叹号。

“HeySiri”背后的数学计算

下面的内容是为所有机器学习爱好者准备的:)。

这是深度神经网络(DNN)模型:

DNN模型

总的概率函数如下:

其中:

  • F(i,t)是模型中状态i的累计分数

  • q(i,t)是声学模型的输出。这个输出是语音类别的对数分数,它与时间t附近给定语音模式的第i个状态有关

  • s(i)是和留在状态i相关的开销

  • m(i)是从状态i继续向后移动的开销

这里的s(i)和m(i)与定义“触发键”时训练的权重相关,可以这样假设:

s(i)-由“触发键”的单个帧决定,取决于音调、音量等参数。

m(i)-取决于“触发键”的频率,或简而言之速度,以及s(i)参数改变的大小和快慢。

例如:m(i)和s(i)对埃米纳姆(Eminem)和阿黛尔(Adele)来说是非常不同的,因为埃米纳姆唱得更快(实际上要快得多),同时变化较小。而阿黛尔唱得更慢些,而且变化更大。

考虑到处理功率和电池消耗,对于协处理器(32层)和主处理器(192层),DNN中的层级大小是不同的。

“HeySiri!”这项功能虽然没有被广泛宣传,但它却是朝着自动化和提高移动电话易用性迈出的革命性一步。它也可以被视为一个很好的例子,说明一个小小的改变如何对用户体验产生巨大的影响,以及这些小小的革命性改变有时需要进行广泛的研究。

原文链接:https://hackernoon.com/how-does-hey-siri-work-without-your-iphone-listening-to-you-at-all-times-827932do

本文为CSDN翻译,转载请注明来源出处。

热文推荐

你点的每个“在看”,我都认真当成了喜欢



这篇有关于 “Hey Siri” 背后的黑科技大揭秘! 的文章,就为您介绍到这里,希望它对您有帮助。如果您喜欢这篇文章,请分享给您的好友。

    相关阅读