广泛的信号处理链如何让语音助理“正常工作”
廣泛的信號處理鏈如何讓語音助理“正常工作”
How extensive signal processing chains make voice assistants ‘just work’
智能音箱和聲控設備越來越受歡迎,亞馬遜的Alexa和谷歌的助手等語音助手越來越能理解請求。
這種界面最吸引人的地方之一就是“管用”——沒有用戶界面可學,可以越來越多地像人一樣用自然語言與小工具交談,并得到有用的回應。但要實現這種功能,需要進行大量復雜的處理。
在本文中,將研究語音控制解決方案的體系結構,并討論幕后發生的事情,以及所需的硬件和軟件。
Signal flow and architecture
信號流與結構
雖然聲控設備種類繁多,但其基本原理和信號流程是相似的。讓考慮一個智能揚聲器,例如Amazon的Echo,并查看涉及的主要信號處理子系統和模塊。
圖1顯示了智能揚聲器中的整個信號鏈。
圖1:語音助手的信號鏈,基于CEVA的ClearVox和WhisPro。
從圖的左側開始,可以看到,一旦使用語音活動檢測(VAD)檢測到一個語音,就會被數字化,并經過多個信號處理階段,以提高所需主揚聲器語音到達方向的清晰度。數字化的、經過處理的語音數據隨后被傳遞到后端語音處理,這可能部分發生在邊緣(設備上),部分發生在云端。最后,如果需要,會產生一個響應,并由揚聲器輸出,這需要解碼和數模轉換。 對于其應用程序,可能存在一些差異,優先級也會有所不同——例如,需要優化車內語音接口,以處理車內典型的背景噪音。此外,受入耳式耳機和低成本家用電器等小型設備需求的推動,總體趨勢是降低功耗和降低成本。
Front-end signal processing
前端信號處理
一旦語音被檢測并數字化,就需要執行多個信號處理任務。除了外部噪聲,還需要考慮由收聽設備產生的聲音,例如,智能揚聲器輸出音樂或與電話另一端的人交談。為了抑制這些聲音,該設備使用聲學回聲消除(AEC),因此用戶可以闖進來打斷智能揚聲器,即使已經在播放音樂或講話。一旦這些回波被去除,噪聲抑制算法就被用來清除外部噪聲。
雖然有許多不同的應用,可以把歸納為兩類聲控設備:近場和遠場拾音。近場設備,如耳機、耳塞、聽筒和可穿戴設備,都是放在或戴在用戶嘴邊的,而遠場設備(如智能揚聲器和電視)的設計是為了從房間的另一端聆聽用戶的聲音。
近場設備通常使用一個或兩個麥克風,但遠場設備通常使用三到八個麥克風。究其原因,遠場設備比近場設備面臨更多挑戰:隨著用戶移動的更遠,到達麥克風的聲音逐漸變得更安靜,而背景噪音則保持不變。同時,該設備還必須將直接的語音信號與墻壁和其表面的反射(即混響)分開。
為了解決這些問題,遠場設備采用了一種稱為波束形成的技術。使用多個麥克風,并根據到達每個麥克風的聲音信號之間的時間差來計算聲源的方向。這使得設備可以忽略反射和其聲音,只聽用戶的聲音,并跟蹤移動,在有多人交談的地方放大正確的聲音。
對于聰明的演講者來說,另一個關鍵任務是識別“觸發器”單詞,例如“Alexa”。由于演講者總是在聽,這種觸發識別會引發隱私問題——如果用戶的音頻總是被上傳到云端,即使不說觸發詞,對亞馬遜或谷歌聽到所有的對話感到舒服嗎?相反,可以更好地處理觸發器識別,以及許多流行的命令,例如在智能揚聲器本身的本地“提高音量”,只有在用戶啟動了更復雜的命令之后,音頻才會被發送到云端。
最后,在最終發送到云后端進行進一步處理之前,必須對清澈的語音樣本進行編碼。
Specialized solutions
專業解決方案
從上面的描述可以清楚地看出,前端語音處理必須能夠處理很多任務。必須快速準確地完成這項工作,而且對于電池供電的設備,功耗必須保持在最低限度——即使設備總是在監聽觸發字。
為了滿足這些需求,通用數字信號處理器(dsp)或微處理器在成本、處理性能、尺寸和功耗方面不太可能勝任這項工作。相反,一個更好的解決方案可能是一個特定于應用的DSP,具有專用的音頻處理功能和優化的軟件。選擇已經針對語音輸入任務進行了優化的硬件/軟件解決方案也將降低開發成本,大幅縮短上市時間,同時降低總體成本。
例如,CEVA的ClearVox是一套語音輸入處理算法的軟件套件,可以處理不同的聲學場景和麥克風配置,包括揚聲器的聲音到達方向、多麥克風波束形成、噪聲抑制和聲學回聲消除。ClearVox經過優化,可在CEVA sound DSP上高效運行,從而提供一個經濟高效、低功耗的解決方案。
除了語音處理,edge設備還需要處理觸發字檢測的能力。一個專門的解決方案,如CEVA的WhisPro,是實現所需精度和低功耗的極好方法(見圖2)。WhisPro是一個基于神經網絡的語音識別軟件包,專門為CEVA的dsp提供,使原始設備制造商能夠在其支持語音的產品中添加語音激活功能。可以處理所需的始終在線監聽,而主處理器則在需要時保持休眠,從而顯著降低了整個系統的功耗。
圖2:使用語音處理和語音識別進行語音激活。
WhisPro可以實現95%以上的觸發識別率和多個自定義詞組的支持。任何一個使用過智能揚聲器的人都可以證明,讓可靠地響應叫醒詞——即使是在嘈雜的環境中——有時也是一種令人沮喪的經歷。正確地使用這一功能可以極大地改變消費者對語音控制產品質量的看法。
語音識別:本地還是云
一旦語音被數字化和處理,就需要某種自動語音識別(ASR)能力。ASR技術有很多種,從簡單的關鍵字檢測到需要用戶說出特定的關鍵字,到復雜的自然語言處理(NLP),用戶可以像稱呼另一個人一樣正常說話。
關鍵詞檢測有很多用途,即使詞匯非常有限。例如,一個簡單的智能家居設備,比如電燈開關或恒溫器,可能只對一些命令做出響應,比如“開”、“關”、“亮”、“調光”等等。這種級別的ASR可以輕松地在本地、邊緣進行處理,而無需互聯網連接,從而降低成本,確保快速響應,并避免安全和隱私問題。
另一個例子是,許多Android智能手機可以通過說“cheese”或“smile”來拍照,而將命令發送到云端只需花費太長時間。這是假設互聯網連接是可用的,而智能手表或聽筒等設備并不總是如此。
另一方面,許多應用程序需要NLP。如果想問回聲揚聲器天氣,或為找到一個酒店今晚,那么可以用許多不同的方式表達問題。該設備需要能夠理解命令中可能存在的細微差別和俗語,并且能夠可靠地計算出所詢問的內容。簡言之,需要能夠將言語轉化為意義,而不僅僅是將言語轉化為文本。
以酒店詢價為例,可能需要詢問大量可能的因素:價格、位置、評論以及其許多因素。NLP系統必須解釋所有這些復雜性,以及一個問題可能用的許多不同的措辭方式,以及請求中缺乏清晰性——說“給找一個有價值的中央酒店”對不同的人來說意味著不同的事情。要獲得準確的結果,還需要設備考慮問題的上下文,并識別用戶何時提出相關的后續問題,或在一個查詢中請求多個信息。
這可能需要大量的處理,通常使用人工智能(AI)和神經網絡,這對于僅在邊緣進行處理來說通常是不實際的。帶有嵌入式處理器的低成本設備將沒有足夠的功率來處理所需的任務。在這種情況下,正確的選擇是將數字化語音發送到云端進行處理。在那里,可以對其進行解釋,并將適當的響應發送回語音控制設備。
可以看到在設備上的邊緣處理和云中的遠程處理之間存在權衡。在本地處理所有事情可以更快,而且不依賴于有互聯網連接,但將難以處理更廣泛的問題和信息獲取。這意味著對于一個通用設備,比如家庭中的智能揚聲器,至少需要將一些處理推送到云端。
為了解決云處理的缺點,在本地處理器的功能上有了一些發展,在不久的將來,可以看到邊緣設備中NLP和AI的巨大改進。新技術正在減少所需的內存量,處理器繼續變得更快,更少的耗電量。
例如,CEVA的NeuPro系列低功耗AI處理器為邊緣提供了復雜的功能。基于CEVA在計算機視覺神經網絡方面的經驗,該系列產品為設備語音處理提供了一個靈活、可擴展的解決方案。
結論
語音控制接口正迅速成為日常生活的重要組成部分,并將在不久的將來添加到越來越多的產品中。改進的動力來自更好的信號處理和語音識別能力,以及更強大的本地和云端計算資源。
為了滿足原始設備制造商的要求,用于音頻處理和語音識別的組件需要在性能、成本和功率方面滿足一些嚴峻的挑戰。對于許多設計師來說,針對手頭的任務進行了專門優化的解決方案很可能是最好的方法——滿足最終客戶的需求,并縮短上市時間。
無論基于什么樣的技術,語音接口將變得更準確,更容易用日常語言交談,而其不斷下降的成本將使對制造商更具吸引力。這將是一個有趣的旅程,看看下一個被用來做什么。
總結
以上是生活随笔為你收集整理的广泛的信号处理链如何让语音助理“正常工作”的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 先进机器人系统中的关键技术
- 下一篇: 多核处理器集成了神经处理单元