Allion Labs / Greg Tsai

聲音延遲(Audio Latency)對語音辨識產品有多重要?

『在近二十年來,尤其是引入深度學習以後,語音識別取得了一系列重大突破,並一步步走向市場並搭載到消費級產品中。然而在使用者體驗上,「遲鈍」可以算得上這些產品最大的缺點之一,這也意味著語音識別的延遲問題已經成為了該領域研究極待解決的難點。2012 年,語音識別研究表明,通過引入 “深度學習” 可以顯著提高語音識別準確率 ,因此谷歌也較早地在 “語音搜尋” 等產品中採用深度學習技術。而這也標誌著語音識別領域革命的開始:每一年Google都開發出相關技術, 從 “深度神經網路” (DNN)到 “迴圈神經網路” (RNN)、 “長短期記憶網路” (LSTM)、 “卷積網路” (CNNs)等一系列新的架構,進一步地提高了語音識別的質量。然而在此期間,延遲問題依舊是該領域需要攻克的主要難點——當語音助手能夠實現快速回答問題時,使用者會感覺它有幫助得多。』

(以上摘自 “雷鋒網 AI 科技評論”)

 

語音辨識,量測環境與技術是關鍵 

為了評估語音辨識的有效性及指向範圍,環境的聲學條件必須儘量和日常生活環境一致。因此需要建立一套聲學量測環境,用以評估語音辨識性能,為求量測的可靠性,這套量測系統與工具本身的一致性與重覆性也必須獲得確認。

就我們的經驗,評估量測環境架設是否穩定,最可行的做法是:「評估每次重覆量測到的延遲時間是否一致」。因此我們需要量測各個揚聲器延遲時間的具體偏移量,如此一來,我們就可以找出量測環境潛在的不確定因素。

對於智慧音箱的語音辨識量測環境,我們需要兩個揚聲器,一個揚聲器用來模擬人員講出語音指令,另一個用來模擬背景聲音。將前述兩個揚聲器及智慧音箱,依據測試情境擺放,再放置一支量測用的自由場麥克風在這三個音箱約略等距的位置上,當這些都設置好就可以開始進行延遲時間的評估。

圖1: 揚聲器及麥克風連接示意圖

圖2:實際佈置場景

 

智慧音箱 時間延遲量測 大不易 

或許一般人以為測量揚聲器的延遲似乎不難,只要量S揚聲器到M麥克風從激發到接收到的時間就可以了!這對於傳統的類比揚聲器來說,的確如此;但對於智慧音箱的揚聲器來說,就有點挑戰了!

智慧揚聲器沒有類比輸入端子可以直接饋入信號,必須要從網路上播放測試音;因此如何精準地控制播放測試音是個難題,收音後又很難以人工方式找到測試音的精確起始時間。

因此,百佳泰的聲學團隊及軟體開發團隊共同合作,開發了一套量測方法,可以自動化並高效地起始智慧音箱播放,並且運用數位信號處理技術來精確判斷各個揚聲器聲音信號的起始時間

 

時間延遲量測示範與結果分享

我們以Audio Precision APx500 來確認基本架設,首先在揚聲器與麥克風相距2.5m的條件下,我們量測到 7.35ms的時間差, 當時的溫度大約25度C. 透過公式C=331+0.6T可以求得聲速346 m/s.

換算距離Distance = Speed * Time = 346 * 0.00735 ≈ 2.54 m.

可知該量測系統可以測出聲音延遲。

圖說 – 聲延遲量測之驗證 – 揚聲器與麥克風相距約2.5 公尺

 

為了比較人工手動與自動化量測所產生的差異,我們同時進行了手動量測與自動化量測,人工完成的結果如下:

表1:人工量測數據-逐次誤差

 

折線圖比較如下:

圖表:人工量測數據折線圖 – 逐次誤差

 

可以看到Speak A、Speaker B 以及Smart Speaker 在重覆量測之後,每次的差異量都很明顯。這些差異較大的來源:包含了人為觸發時間的差異、也有可能是來自人工對齊的差異…等。在這種人工手動量測的作法下,難以有效發掘量測系統環境的不穩定因素,因為都被人工量測的誤差給淹沒了。

接著,我們以百佳泰開發的量測系統來完成圖2的架設,實測結果如下:

表2:自動化量測數據

圖表:自動化量測數據折線圖-逐次誤差

 

從結果中可以看到,播放語音的揚聲器A及播放環境音的揚聲器B,其延遲時間在經歷20次的測試後皆相當一致,其變化範圍分別在0.0024s 與0.001s左右。

而播放背景聲音的智慧音箱揚聲器,存在著類似 “抖動(Jitter)” 的現象,即每一次量測到的延遲時間,都有一點點變化,這個變化量大約有 0.15秒之間,主要是無線網路連線與來源內容的變動性所引起。

如此比較我們可以了解,聲音延遲量測的自動化,排除了人工量測所引入的不確定性,讓Smart Speaker 播放路徑的延遲特性可以真正呈現出來,為後續的語音辨認測試奠定良好的基礎。

由此可知,百佳泰的電聲延遲評估工具,其精確度可以量測出人力所不能及的程度!除一方面達到品牌大廠所要求的品質精度與可重複性,屏除人為誤差與不確定性,另一方面也做到全自動化,大量節省量測及分析時間!