馬志強:語音識別技術研究進展和應用落地分享丨RTC Dev Meetup

聲網 發表於 2022-06-15
本文內容源自「RTC Dev Meetup 丨語音處理在實時互動領域的技術實踐和應用】的演講分享,分享講師為寰語科技語音識別研究主管馬志強。

01 語音識別技術現狀

1、語音成為萬物互聯時代人機互動關鍵入口,語音識別市場空間穩步提高

近幾年來,語音識別技術已經逐步走進了我們的生活和工作中,特別是以 AI 語音助手為代表的語音互動功能也已經得到落地,應用到各類消費級產品當中,比如,智慧手機、智慧汽車、智慧家電以及智慧家居等。使用者只需要喚醒語音助手,提供相應的指令,就可以使其幫助我們完成打電話、查天氣以及導航等常見的功能。根據相關諮詢機構的調研報告所說,中國智慧語音垂直行業的發展規模,到 2025 年將要達到千億的級別。從發展空間可以看出,語音互動以及語音識別逐漸成為萬物互聯時代人機互動的關鍵入口。

2、“一帶一路”建設需要語言互通,多語種識別需求日益強烈

語音識別的市場空間在穩步的提高中,在國家建設“一帶一路”的社會背景下,其所倡議的“五通”也需要語言互通來提供支撐。目前,“一帶一路”已經涵蓋了 100 多個國家和地區,涉及到幾十種官方語言。在此背景下,國家對於多語種技術的能力需求日益強烈,而多語種語音識別技術也是其中最重要、最基礎的技術能力之一。我們從 2020 年開始,就已經規劃並建設了多語種技術能力,比如今天將要介紹的多語種識別、多語種翻譯以及多語種合成等通用的技術能力。

3、實時音視訊業務 AI 字幕有效提升使用者體驗和溝通效率

近兩年來,受到疫情的影響,人們的工作和生活方式也發生了較大的變化,比如,現在比較流行的線上教育、線上直播、線上會議等形式逐漸被大家所接受,對應的 AI 字幕技術目前也已經成功應用賦能到了這些場景中。比如,AI 字幕可以通過語音識別技術和語音翻譯技術,將識別結果和翻譯結果以字幕的形式實時地展示給使用者。這種形式可以幫助使用者更好地理解直播或者視訊的內容,方便使用者記錄會議紀要。整體來看,AI 字幕技術提供了一種語音轉寫和語音翻譯的系統性解決方案,極大地提升了使用者體驗和溝通效率。

4、語音助手業務場景面臨的技術挑戰

語音助手和 AI 字幕是兩個典型的語音識別應用場景,當前,深度學習技術正在不斷地發展和進步,在很多場景中語音識別的效果其實已經達到了可用的水平,但是在剛剛提到的兩個典型場景中,目前仍然面臨著較大的技術挑戰。比如,針對語音助手場景存在著高噪場景的識別問題,特別是在遠場環境中,語音非常容易受到混響和噪聲的干擾影響,導致大量的多人說話以及人聲重疊等難點問題,造成遠場語音識別效果的急劇下降。

第二個問題是海量實體識別的問題。比如在語音助手場景中,可能需要使用其進行一些導航指令,這就要求 ASR 模型具備識別全國至少千萬量級實體的能力,可以想象,其中肯定會存在大量同音不同字的實體,這樣模型識別也非常容易相互串擾。同時,這種量級規模的實體分佈其實是非常不均衡的,特別是對於尾部的實體而言,它是非常稀疏的,此時 ASR 模型建模將會非常困難。

第三個問題是多語種語音識別的問題,線上進行過 ASR 或者相關任務的同學可能比較清楚,對於一些適用範圍較廣的語種,比如漢語、英語等,訓練資料相對來說比較豐富;但是對於小語種來說,比如泰米爾語或者是烏爾都語,訓練資料是極其稀缺的,可能只有幾百小時、幾十小時的量級,在這種情況下,這些語種訓練出來的 ASR 模型,其識別效果一般非常差。

同樣,AI 字幕業務場景也面臨著一些技術挑戰。第一個挑戰就是複雜的轉寫識別場景。比如,在音視訊字幕轉寫的場景中,音視訊通常會包含各種噪聲和背景音,這些都會影響語音轉寫的效果。另外。線上上直播或者娛樂直播場景中也會伴隨著一些特效音和音樂,這對語音轉寫都帶來了巨大的挑戰。

針對於 AI 字幕場景的第二個挑戰就是其本身的高實時性要求,在一般情況下使用者要求字幕和正在觀看的音視訊儘可能地保持同步,通常延遲控制在 1~2 秒,此時的使用者體驗和使用者觀感一般都是非常好的。但是這其實提升了對 ASR 模型,特別是 AI 轉寫模型的要求。

針對 AI 字幕的第三個挑戰就是 AI 字幕的上屏效果體驗,主要包含兩個部分:首先,轉寫結果以字幕的形式傳遞給使用者,通常要附加標點,比如句號或者逗號,使用者根據標點可以進行分句,此時使用者對於字幕的理解度相對較好;但如果沒有標點,則對使用者來說字幕內容看起來是非常困難的。其次是字幕的擦除率,以圖 1 為例,此時有三個句子,分別是三次上屏的結果。比如,“今天”其實在三次上屏的過程中變化了兩次,先由“今”變成了“驚”,然後由“驚”又變回了“今”,在這個過程中,字幕其實跳轉了兩次,跳轉的過程是非常頻繁的,對於使用者來說,觀感以及理解度可能不是特別友好,這也是 AI 字幕技術需要解決的一個問題。

圖片

■圖 1

02 語音識別技術研究進展

第一部分主要介紹了語音識別技術現狀,接下來重點介紹語音識別技術的研究進展。首先,介紹針對於語音識別任務的三大關鍵技術,這三個關鍵技術也可以認為是剛剛提到的兩個典型場景 —— 語音助手和 AI 字幕的基礎和共性技術。

1、關鍵技術

(1) 語音識別資料資源的工程建設

進行過 ASR 任務或者深度學習相關任務的同學可能比較瞭解,訓練資料對模型來說是非常關鍵的。一般情況下,我們從現網(生產環境)能夠獲取到海量的無監督資料,比如文字資料、語音資料或者視訊資料。對於這些無監督資料,目前有兩種主要的處理流程:第一種處理流程是藉助於現有的 ASR 模型,直接給語音或視訊打標籤,生成一些弱監督的標註資料。第二種處理流程是藉助於機器輔助的方式,首先進行預標註,預標註完成之後,一些語言學專家會基於預標註結果進行人工的糾正和檢驗,通過這種方式可以得到一個有監督的精確標註的平行資料。依託於已經建設好的資料資源標註平臺,目前是能夠支援和提供大規模 ASR 訓練資料建設能力的。

(2) 無監督/弱監督訓練資料增強框架

我們基於資料層面提出了一種基於語音合成和自訓練的半監督語音識別框架。如圖 2 所示,對於無監督的語音資料,可以通過 ASR 模型得到大量的偽標籤資料;對於無監督的文字資料,可以通過 TTS 模型得到合成資料。然後將偽標籤資料、合成資料以及有監督的真實資料混合到一起聯合訓練 ASR 模型。

圖片

■圖 2

圖 2 的右側展示了一個迴流的過程,這個過程中,我們可以反覆地迭代、更新,以及訓練 ASR 模型。通過多輪的迭代,ASR 模型可以把大量的無監督語音和無監督文字全部訓練到模型中。隨著多輪的訓練,ASR 模型的效果其實也在逐步得到提升。我們採用這種方法進行了實驗,通過驗證可以發現,在 100 小時的有監督資料中,加上大量無標籤的語音和文字資料,最終訓練出來的 ASR 模型可以達到數千小時的有監督訓練的效果。

(3) 多語種端到端統一建模框架

大家應該都知道,目前比較流行的端到端模型其實包含編碼器和解碼器兩個部分。對於編碼器部分,模型可以直接將多語種的音訊直接輸入到統一的聲學模型編碼器,然後學習各個語種之間統一的聲學表徵。對於解碼器部分,一般會選擇與語種相關的文字生成解碼網路,各個語種或者各個語系之間的解碼網路是相互獨立的,這樣的好處在於,可以儘可能地保留每個語種文字的特性或者差異性,比如中文、英文和俄語的文字有比較大的差異性,但是在聲學層面,它們的聲學特徵是可以共享的。

目前主要採用端到端的模型框架,對於 ASR 端到端來說,它拋棄了一些傳統方案,比如翻譯詞典需要語言學知識的資源,這樣可以減少我們對語言學專家知識,以及大規模資料標註的依賴。

2、語音助手技術進展

接下來將詳細介紹剛剛提到的兩個典型場景。

(1) ASR 聲學模型結構

在語音助手場景中包含很多遠場識別的情況,對於電視大屏以及音響來說,需要在遠場喚醒指令。在這種場景下,我們設計了一種特有的聲學模型結構,如圖 3 所示。圖 3 展示的聲學模型採用了帶有強化層和過濾層的注意力機制來抑制遠場的噪聲以及他人說話的干擾,這個模型結構主要通過 CNN 和 Self-Attention 兩種現在比較主流的網路結構來設計和組成,其中過濾層主要通過卷積網路來降低時域解析度,從而去除聲學特徵中的干擾。強化層通過對輸出特徵之間進行 Self-Attention 來保留重點的聲學資訊。

圖片

■圖 3

在實驗中還發現,目前設計的這一套聲學模型結構在複雜場景中,特別是噪聲環境下有比較好的魯棒性,具有比較強的建模能力。

(2) 海量實體系統性解決方案

針對於海量實體,我們也端到端地提供了一整套的系統性解決方案。以語音助手導航場景為例,在使用語音助手的時候可能需要導航到所在城市的各個地方,但是對於我國來說,這是至少包含千萬量級的 POI 實體。我們採用的方法是,首先按照城市的維度進行細顆粒度的建模,然後為每個城市構建一個單獨的語言模型解碼網路。

在使用者真實使用的時候,語音助手系統可以根據使用者的位置資訊以及使用者當前的意圖資訊,動態載入剛剛提到的已經建模好的城市 Patch 包。通過載入這些 Patch 包一方面可以提高使用者所在城市的識別效果,另一方面,因為每個城市採用獨立建模的方式,能夠減少不同城市之間統一實體的串擾問題,進一步提升海量實體的識別結果。

對於這個問題我們不僅針對中文,對其他多語種上做了一些實體優化方案,如圖 4 所示,主要採用了左邊顯示的優化方式,可以看到,對於大多數語種而言,實體的識別準確率基本上能夠達到 85% 以上。這樣的準確率對於使用者來說,基本上已經達到了比較可用的水平。

圖片

■圖 4

(3) 多語種語音識別端到端統一建模方案

對於前面提到的多語種識別問題,我們也在多語種統一建模的基礎上,進一步提出了一種基於語系分組的統一建模方式。這個方案考慮到了不同語種之間的語言學共性,並基於這些語言學特性對我們開發的語種進行了聚類。目前我們把所有的語種分成了四大類,每一個語系對應了語言學上比較相似的一些語種,每個語系對應到 ASR 模型中也包含相應的獨立解碼網路。

比如拉丁語系可能有一個對應的拉丁語系解碼器,而阿拉伯語系也有對應的拉丁語系獨立解碼器,這樣就能夠最大程度地利用到各個語種之間語言學的共享資訊。從實驗結果可以看到,拉丁語系的語種非常多,那麼它的訓練資料也相應比較多,我們對英語、法語、德語、西班牙語等也採用了這種語系分組的統一建模方式,相比單獨建模平均可以相對提升 10% 以上。對於阿拉伯語系來說,其語種比較少,訓練資料相對來說也比較少,但是其基線提升幅度更大,大概是 20% 左右。可以看到,這種基於語系分組的多語種端到端統一建模的方案,對於低資源語種的提升幅度是非常大的。

3、AI 字幕技術進展

接下來介紹 AI 字幕技術的整體研究進展,AI 字幕對於資料、場景以及實時性有比較高的要求,所以對於 AI 字幕技術首先在資料層面進行了研究,具體如下。

(1) 弱監督資料生成技術

對於大量無監督的字幕視訊資料,首先可以從視訊資料中提取到對應的音視訊以及視訊自帶的字幕資訊,利用對應的語音識別技術和 OCR 識別技術,分別得到同一段音訊的兩個不同維度的識別結果:一個可以認為是語音的識別結果,一個可以認為是 OCR,也就是視訊自帶字幕的識別結果。接下來將這兩個識別結果通過字音矯正和字形矯正兩種方式,分別進行相互的對齊和融合,最終得到文字標籤,該文字標籤接近於人工標註的結果。

通過這種方式可以利用到現網的無監督的字幕視訊資料,在短時間內獲得大量的 AI 字幕的訓練資料。如果是採用人工標註的方式,時間成本非常大,人力成本也是非常昂貴的。所以目前對於 AI 字幕領域,弱監督資料生成技術是非常關鍵的環節。通過這種技術,可以生成大量的可用於 AI 字幕訓練的弱監督資料。

(2) 低時延端到端轉寫識別技術

AI 字幕場景的應用範圍相比於語音助手更加複雜,比如線上娛樂直播、會議場景,以及影視劇實時轉寫場景都包含了非常多的噪聲、音樂,以及人聲等。所以在語音流程中,我們在 VAD 模組額外增加了聲音事件檢測功能,該功能首先對 ASR 模型輸入的音訊進行聲音事件檢測,檢測音訊中包含常見的噪聲、音樂、掌聲等多個聲音事件。然後將這些聲音事件以標籤和字幕的形式,同時通過螢幕呈現給使用者,進而大幅度減少噪聲、音樂以及掌聲等通用轉寫模型識別效果的誤觸發問題。

AI 字幕場景是非常複雜的,因此我們在資料層面補充了資料增強策略。首先在資料層面對訓練資料做了加噪處理,新增了混響以及背景音樂,甚至包括取樣率變換以及語速變換。通過這種方式儘可能地提高 AI 字幕模型訓練資料的豐富程度,讓模型或者資料能夠適應於真實的使用者場景。另外,針對 AI 字幕高實時性的要求,我們也提出了動態時延的聲學模型結構,採用了多工學習,也就是 multitask 學習方式。通過這種方式,訓練的模型可以動態地適配各種時延要求。這種多工學習的方式,也能夠提升 ASR 模型的效果,比如在真實應用中只需要將模型設定為 200 毫秒,那麼其硬時延或者整體時延就是 200 毫秒左右。通過這種方式可以適配各種不同場景的實時性需求。

(3) 轉寫識別後處理優化技術

使用者的主觀體驗是非常重要的,在完成字幕識別之後,怎麼使上屏更加流暢友好是非常關鍵的,這就運用到了轉寫識別後處理優化技術。

首先,AI 字幕轉寫文字主要採用了一種流式標點模型,對語音識別的結果實時打標點。當檢測到標點時,直接提取標點前的識別結果作為一句話或者一段話,如果沒有檢測到標點,則提取標點預測的最大概率位置作為完整的語義片段,通過標點預測以及提取語義片段的方式,對字幕文字進行分句和分段,這樣便於使用者理解,也能夠提升字幕內容的可理解度。然後可以把識別結果傳送給後端的翻譯模型,翻譯模型根據識別結果再進行翻譯工作。

接下來考慮上屏字幕的擦除率,我們根據實際的應用場景提出了一種約束解碼演算法。如圖 5 所示,第一次識別結果是“今天”,該結果通過字幕傳遞給使用者後,把“今天”兩個字固定住,繼續識別“天氣”這兩個字,這樣“今天”這兩個字在後面的識別過程中就不會變化,也就是紅色的部分會一直在螢幕上不再變化。採用這種約束解碼的方式,能夠減少歷史識別結果的變化次數。後面的識別結果也可以根據之前已經解碼好的結果繼續解碼,也就是我們所說的約束解碼,這樣可以降低整個字幕文字的擦除率,也能夠提高語音轉寫的效果。終端使用者不管是觀感還是對 AI 字幕的理解度都會更加友好,從而提高主觀體驗。

圖片

■圖 5

03 語音識別技術應用落地

接下來分享語音識別技術的整體落地情況,主要涉及我們在語音識別技術方面的產品和常見應用的具體案例。

目前在多語種方向我們已經具備了 70 個語種的語音識別能力。其他方面,比如語音合成、機器翻譯,我們也具備了幾十種到上百種的能力。另外,我們去年參加了 open ASR 多語種語音識別競賽,在 15 個語種的受限賽道和 7 個語種的非受限賽道全部取得了第一的成績。這也展現了我們目前所具備的多語種相關的能力。這些能力已經開放到了我們的 AI 開放平臺上,通過 AI 開放平臺上提供的呼叫介面和服務給開發者使用。

在語音助手場景的應用方面,我們也和國內的手機廠商等進行了深入的合作。目前我們具備了 12 個語種的語音助手能力,包含國內以及國外的產品。在語音助手的特定識別場景方面,我們的語音識別準確率基本上都能達到 90% 以上,支援了搜尋、音樂、百科、天氣、導航等接近 30 多個垂類的語音助手技能。涉及到產品,我們目前主要包含手機、大屏、音響、手錶以及一些智慧家居的具體產品。

近幾年,我們的語音助手能力已經得到了廣泛的應用和落地,目前國內還提供除了普通話以外的方言能力。在智慧汽車領域,語音助手功能也是體現車機智慧化以及差異化的特色功能。我們目前能夠提供一整套的“雲+端”系統性解決方案,也包含端側的語音助手識別能力。同樣,我們也和國內的一些廠商進行了合作,目前“雲+端”的系統性解決方案也已經落地到了國內的一些上市車型中。

在 AI 字幕方面,我們目前已經支援了至少四個語種,分別是中文、英文、日語和韓語,這些語種的實時轉寫能力也應用到了一些手機產品中,正在播放的音視訊可以通過 AI 字幕功能實時地轉寫出來,同時附帶翻譯。整體來看,AI 字幕在這兩年也取得了長足的進步,比如在影視劇音視訊、線直播、線上教育甚至線上會議等場景中都得到了廣泛的應用。

問答環節

1、AI 字幕場景中的聲學模型建模單元是什麼以及如何處理流式識別的準確率和低延遲的矛盾?

首先我們目前所用的 AI 字幕場景中的建模聲學建模單元主要包含一到兩種。第一種是端到端的建模方案,ASR 模型就是基於端到端的。在這種情況下,對於中文來說,其建模單元一般就是漢字,對英文來說就是英文單詞。對於如何處理流式識別的準確率和低延遲的矛盾問題,準確率和延遲之間可以認為是一個不斷 balance 的過程,如果想要獲得較高的準確率,那麼延遲就不能太高;如果延遲低,那麼準確率就會比較差。

基於這個問題,我們提出了一種動態時延的聲學模型訓練方式,可以通過 mask 機制實現動態時延,比如可以設定 200 毫秒或者 600 毫秒的時延。也可以採用 multitask 訓練方式,在模型中同時支援不同的時延的聲學模型,這樣就可以從兩方面共同提升 ASR 的準確率和延遲效果。比如有些場景對時延要求非常高,那麼就用 200 毫秒的延遲;有些場景對時延要求不高,那麼就可以用 600 毫秒甚至更大的延遲實現準確率的提升。

2、智慧音響為什麼會突然應答?它們是不是在實時監聽周圍的聲音?

智慧音響是一個端到端的解決方案,它不僅涉及到語音識別技術,還涉及到前端喚醒,也就是語音喚醒技術。我們在用智慧音響的時候,可能會出現突然說你好的情況,這可能是前端的喚醒模組,也就是語音喚醒出現了誤觸發,會把人聲或者噪音識別成喚醒詞,比如,Siri 等將某些詞誤觸發成了喚醒詞,那麼語音助手就會進行應答,所以整體上主要原因還是存在誤喚醒的情況。

3、這裡介紹的編解碼和通常意義上的編解碼,例如 opus 有什麼區別?

opus 是一種聲音編碼格式,它是對音訊本身進行了編碼處理。我們提到的模型的編解碼是一種深度學習的網路結構。端到端模型由一個 encoder 和一個 decoder 組成,encoder 就是我們常說的編碼器,它是對輸入的音訊做了特徵提取以及聲學建模相關的工作。解碼器也就是通常說的 decoder,它是對編碼器所編碼的向量的特徵表示,然後解碼成對應的文字和或者其他的識別結果。我們今天介紹的編解碼,相當於一個端到端的結構。在這個端到端的結構中,輸入是我們常見的音訊,輸出是對應的識別結果,也就是文字。這是它們的本質上的區別。

關於聲網雲市場

聲網雲市場通過整合技術合作夥伴的能力,為開發者提供一站式開發體驗,一站式解決實時互動模組的選型、比價、整合、賬號打通和購買,幫助開發者快速新增各類 RTE 功能,快速將應用推向市場,節約 95% 整合 RTE 功能時間。

訊飛語音實時轉寫(中/英)外掛目前已經上架聲網雲市場,支援中文和英文實時轉寫,返回帶精確時間戳的文字流,可用於生成字幕,適用於各類直播、語音社交、視訊會議等場景。大家可以點選此連結立即體驗。