DeepMind技術加持谷歌用AI改善Duo通話丟包
隨著 4G、5G通信技術發展,網絡通話越來越盛行。但是網絡不穩定是常態,所以通話中我們時不時可能會蹦出一句,“你能再重複一遍嗎,剛剛網絡不太好。”為了提高通話質量,谷歌近期在視頻聊天應用Duo 中應用了一種新技術WaveNetEQ ,在出現音頻丟包情況時,該技術會判斷丟失的音頻數據可能是什麼,並替換掉它。
背後的技術支持來自谷歌聲名在外的DeepMind 團隊。
一個完整的在線呼叫,數據經常會被分成多個小塊,每小塊就是一個數據包packet 。然而,在這些“數據包”從發送方傳輸到接收方的過程中,數據包通常會以錯誤的順序到達,從而產生抖動相關問題,或者直接丟失,造成音頻空白。
谷歌給出一份資料顯示, Duo 99% 的通話都有數據包丟失、過度抖動或網絡延遲情況。20% 的通話丟失了超過3% 的音頻,10% 的通話丟包率超過8% ,也就是說每次通話都有很多音頻需要替換。
每個視音頻app 都會用某種方式處理丟包。谷歌表示,這些數據包丟失隱藏(PLC) 過程可能很難更好地填補60 毫秒或更長時間的空白。過去常用算法是NetEQ ,這是webRTC 中音頻技術方面的兩大核心技術之一(另一核心技術是音頻的前後處理,包括AEC、ANS、AGC等)。webRTC 是谷歌收購GIPS 再開源的,是目前影響力極大的實時音視頻通信解決方案,但用它處理丟包,大多情況下聽起來像機器人或機械重複。
谷歌就用了大量的語音數據,訓練出了基於DeepMind WaveRNN 技術的WaveNetEQ 模型。訓練數據集來自100 多名、48 種不同語言的志願者,也就是說它可以自動填補48 種語言的丟包情況。
WaveNetEQ 是一種用於語音合成的遞歸神經網絡模型,由兩部分組成,即自回歸網絡(autoregressive network)和條件網絡(conditioning network)。自回歸網絡的作用是保持信號的平穩流動,而條件網絡控制和影響自回歸網絡以保持音頻一致性。
谷歌用WaveNetEQ取代了原來的NetEQ PLC組件,相對於NetEQ ,它在聲音質感方面無疑有提升,而且WaveNetEQ模型跑得足夠快,可以在手機上運行,如此也可以規避用戶可能擔心的數據隱私問題。谷歌稱所有的處理都是在設備上進行,因為Duo的通話默認情況下就是端到端加密。一旦通話的真實音頻恢復,將無縫地切換到現實對話。
不過,WaveNetEQ 替換的內容和時長有限制。目前是支持在120 毫秒以內的空白,之後會逐漸消失並歸零;WaveNetEQ 不是生成完整的單詞,而是簡單的音節。
目前WaveNetEQ 已經應用到Pixel 4 手機上的Duo APP 中,谷歌表示,它正在將其推廣到其他安卓手機上。
當然用機器學習處理音頻丟包並不是頭一遭,許多公司都在研究相關技術,以國內公司為例,有些是自身業務本就涉及視音頻,比如騰訊;有些是音視頻雲服務商,比如阿里,還有一些是專門的音視頻第三方服務商如聲網等。