“Hey Siri”背後的黑科技大揭祕

來源:CSDN(ID:CSDNnews)

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

導 讀

“Hey Siri!”這項功能是朝著自動化和提高移動電話易用性邁出的革命性一步,它的一個小小的改變卻對用戶體驗產生巨大的影響。今天,我們就來解密“Hey Siri” 背後的那些黑科技!

如今蘋果手機可隨時檢測並回答“Hey Siri”命令,有人可能會想,它是不是在隨時記錄我們的日常生活對話呢?

答案是否定的!

“Hey Siri”能做的並沒有我們想象的那麼多!

讓我們先看看“Hey Siri!”的發展歷史吧。

“Hey Siri!”作為預裝語音助手Siri的附加功能,於2014年9月在iOS 8中發佈。然而,在iOS 9(2015年9月)它升級了,只允許被用來識別用戶的個性化語音。

而谷歌助手在2013年之前就已經有了這個功能,但是,在你的屏幕關閉時,它不能支持這個功能。即使是現在,很多安卓手機都不支持這個功能。

讓我們來比較一下用戶體驗,如下圖所示:

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

常規方式 vs.“Hey Siri!”

常規方式是這樣的:用戶拿起手機 -> 長按home按鈕 -> Siri啟動。

而在“Hey Siri!”方式下,用戶只需說“Hey Siri!”,無需按鍵,就可以讓Siri啟動。

這樣有一個好處是,因為當用戶不方便使用手操作(如開車時),用戶也可以使用手機的一些功能。

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

Siri的前身:M9運動協處理器

“協處理器”可以理解為具有有限功能和電池消耗的輔助處理器,用來支持即使在手機空閒(屏幕關閉)時也可以訪問“始終開啟”的功能。

M9運動協處理器是蘋果協處理器家族的第三代產品,於2015年9月與iPhone 6s一起推出。得益於它基於ARM、64位的A9片上系統所具有的強大的處理能力和微量的電池消耗,這個蘋果手機著名的“喚醒”功能才得以實現。M9有時也被人們描述為“嵌入到運動協處理器上的始終在線處理器(AOP - Always on Processor)”

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

“Hey Siri!”是如何工作的?

當你第一次啟用這個功能時,它會提示你說一定次數的“Hey Siri!”。然後你的iPhone將這些聲音保存起來,用做將來識別你的個性化聲音的“觸發鍵”。

這個個性化的“觸發鍵”保存在協處理器中,即使你的手機處於空閒狀態,協處理器也會偵聽(而不是聽到)落到麥克風上的所有聲音。

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

因此,當聲音落在麥克風上,並與“觸發鍵”匹配成功後,協處理器就會激活主處理器開始錄音(就像我們長按主屏幕按鈕打開Siri一樣)。然後,該錄音被髮送到服務器,並以類似於每個語音助手的過程進行解釋。

想象一下這個過程,就好像你擁有數千把鑰匙,你正試圖找到哪把鑰匙正好匹配你要打開的鎖。

這裡要注意的重要一點是,AOP處理器(A9)總是在“偵聽”而不是“聽”用戶的聲音。它就像一個嬰兒,他一直在聽人說話,但無法完全處理聽到的話,只有在呼喚他的名字時,它才會被觸發而開始工作。

M9運動協處理器於2015年9月與iPhone 6s一起發佈。但正如本文一開始所說,“Hey Siri!”功能早於2014年9月就已經推出。那麼,早期版本的iPhone 是如何能夠“被動地”偵聽呢?

好吧,如果你碰巧認識一個擁有iPhone 6的人,你可以檢查一下“Hey Siri!”。即使你的手機處於空閒狀態(屏幕關閉),該功能也只能在充電模式下工作。正如我們可以簡單地推斷的那樣,它僅僅能在充電時獲取少量的額外電量。看看下面iPhone 6 Siri的設置截圖:

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

“Hey Siri!”背後的算法

用戶的聲音會以0.01秒為一幀的單位被採樣下來,然後每次將20個這樣的幀(0.2秒),連續輸入到深度神經網絡(DNN),神經網絡將這些聲音轉換為概率密度函數,當該函數值超過最低閾值時,從而激活主處理器。

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

DNN訓練

這裡的閾值不是固定不變的,而是根據背景噪聲而變化。因此,為了清楚地理解,你可以說DNN每時每刻都在計算閾值。

此外,當第一次記錄你的語音樣本並生成“觸發鍵”時,實際上是在訓練該DNN並定義權重以計算概率。

對於不同的口音,DNN的訓練是不同的。例如,“Hey Siri”的發音有點像美國英語中的“Serious”,只是它沒有標點符號。而“Hey Siri!”中的“ i”發音長度不同,而且帶有一個驚歎號。

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

“Hey Siri”背後的數學計算

下面的內容是為所有機器學習愛好者準備的:)。

這是深度神經網絡(DNN)模型:

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

DNN模型

總的概率函數如下:

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

其中:

  • 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中的層級大小是不同的。

“Hey Siri!”這項功能雖然沒有被廣泛宣傳,但它卻是朝著自動化和提高移動電話易用性邁出的革命性一步。它也可以被視為一個很好的例子,說明一個小小的改變如何對用戶體驗產生巨大的影響,以及這些小小的革命性改變有時需要進行廣泛的研究。

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


分享到:


相關文章: