博客專欄

EEPW首頁 > 博客 > 百度語音技術(shù)重要進展:基于歷史信息抽象的流式截斷conformer建模SMLTA2

百度語音技術(shù)重要進展:基于歷史信息抽象的流式截斷conformer建模SMLTA2

發(fā)布人:機器之心 時間:2021-10-22 來源:工程師 發(fā)布文章

Transformer 模型用于在線語音識別任務(wù)中面臨多個難題,百度語音新發(fā)布的SMLTA2克服了這些障礙。

10 月 15 至 18 日,2021 年第十六屆全國人機語音通訊學(xué)術(shù)會議(NCMMSC2021)在江蘇徐州舉行。作為我國人機語音通訊領(lǐng)域研究中最具有權(quán)威性的學(xué)術(shù)會議之一,NCMMSC 受到國內(nèi)語音領(lǐng)域廣大專家、學(xué)者和科研工作者的關(guān)注。

其中,百度語音團隊對外重磅發(fā)布基于歷史信息抽象的流式截斷 conformer 建模技術(shù)——SMLTA2,解決了 Transformer 模型用于在線語音識別任務(wù)中面臨的問題,引發(fā)矚目。

自 2012 年以來,百度語音識別技術(shù)一直不斷深入探索、創(chuàng)新突破,引領(lǐng)著行業(yè)發(fā)展的技術(shù)路徑。2018 年,百度語音發(fā)布的 Deep Peak 2 模型突破了沿用十幾年的傳統(tǒng)模型,大幅提升各場景下識別準(zhǔn)確率。2019 年初,百度語音技術(shù)團隊公布在線語音領(lǐng)域全球首創(chuàng)的流式多級的截斷注意力模型 SMLTA(Streaming Multi-Layer Truncated Attention), 相對準(zhǔn)確率提升 15%。如今,隨著 SMLTA2 的發(fā)布,百度語音實現(xiàn)了在線語音識別歷史上的又一次重大突破。

2.jpg

百度語音識別技術(shù)發(fā)展路線圖

Transformer 模型用于在線語音識別領(lǐng)域的三大障礙

人工智能的終極目標(biāo)是讓機器具備人類智慧,幫助人類實現(xiàn)各種任務(wù)的分析和決策。近年來,隨著深度學(xué)習(xí)技術(shù)的不斷發(fā)展,特別是 Transformer 模型結(jié)構(gòu)的提出,為通用人工智能技術(shù)的實現(xiàn)指出了一種可行的方向。OpenAI 的研究人員根據(jù) Transformer 模型的特點,提出了一種預(yù)訓(xùn)練語言模型(Generative Pre-trained Transformer,GPT)。通過不斷提升模型的容量和數(shù)據(jù)的規(guī)模,GPT 模型從 GPT-1 逐步迭代到 GPT-3,模型的能力也在穩(wěn)定提升。在特定任務(wù)上,GPT-3 模型的性能已經(jīng)接近甚至超過了人類的平均水平。Transformer 模型在 NLP 領(lǐng)域的成功應(yīng)用,顯示出 Transformer 模型結(jié)構(gòu)的建模潛力,激發(fā)了研究人員把該模型用于諸如語音識別和圖像識別等領(lǐng)域的巨大熱情。但是到目前為止,還沒有看到 Transformer 結(jié)構(gòu)在在線語音識別系統(tǒng)的成功應(yīng)用。

在線語音識別任務(wù)相比文本任務(wù)有其獨有的特點。從輸入數(shù)據(jù)的長度上看,文本數(shù)據(jù)的長度一般在幾十到幾百之間,而語音數(shù)據(jù)的長度經(jīng)常是在一千幀以上。對于一些重要的長語音識別任務(wù),音頻數(shù)據(jù)的長度甚至達(dá)到了一萬幀以上。區(qū)別于 LSTM 模型的逐幀遞推機制,Transformer 模型的核心采用 self-attention(自相關(guān))的機制。由于語音識別任務(wù)的語音長度遠(yuǎn)遠(yuǎn)長于文本任務(wù)的字?jǐn)?shù),使得以自相關(guān)操作為基礎(chǔ)的 Transformer 模型在用于在線語音識別時,存在如下難以逾越的障礙:

“計算爆炸”問題。由于 Transformer 模型的 Encoder 各層都需要做自相關(guān)。從理論上說,在中間語音識別結(jié)果需要實時展現(xiàn)的場合,這個自相關(guān)操作隨著每一幀新的語音信息的輸入,需要和全部歷史輸入的語音幀進行自相關(guān)運算。面對超長的音頻數(shù)據(jù),每次輸入都循環(huán)往復(fù)的進行自相關(guān)運算,極大地消耗了系統(tǒng)的計算資源。

“存儲爆炸”問題。由于 Transformer 模型的 Encoder 的每一層都需要保留整句話的特征編碼后,才能進行后續(xù)網(wǎng)絡(luò)層中做自相關(guān)操作。為了把網(wǎng)絡(luò)做的更深更大,通常會引入殘差結(jié)構(gòu)。在這種情況下,保留神經(jīng)網(wǎng)絡(luò)各層輸入就成為訓(xùn)練和解碼時候必須的要求。而隨著網(wǎng)絡(luò)層數(shù)的加深,網(wǎng)絡(luò)隱層維度的增大以及語音長度的增加,對訓(xùn)練和解碼時的顯存消耗造成巨大壓力。

“焦點丟失”問題。超長的音頻數(shù)據(jù)大大增加了 Transformer 模型的建模難度。區(qū)別于 NLP 任務(wù),語音任務(wù)的特點是很短的聲音信息夾雜在較長的背景噪音或者靜音中。這些語音中的噪音或者靜音雖然不包含語言信息,但是會干擾注意力機制,導(dǎo)致注意力難以聚焦到有效的包含語言信息的聲音特征上,最終影響系統(tǒng)的建模精度。

此外,在線語音識別服務(wù)還需要流式解碼。也就是說在語音輸入的同時就要啟動音頻解碼,話音一落立刻就能拿到整句的識別結(jié)果。而且在說話的過程中,屏幕上實時顯示語音識別的中間文字。如果等音頻完全輸入后才開始解碼,會延長用戶的等待時間,而且看不到輸入的中間文字,嚴(yán)重影響用戶的使用體驗。

百度于 2019 年初在業(yè)界首先提出的流式多級截斷注意力 SMLTA 模型,成功解決了端到端注意力模型的流式建模問題。SMLTA1 主要采用的是 LSTM 模型結(jié)構(gòu)。LSTM 模型的時序遞推的方式造成了該模型在建模能力和訓(xùn)練效率上都弱于 Transformer 模型。但是,Transformer 模型應(yīng)用于在線流式語音識別任務(wù)時,需要同時解決流式解碼和上述 “計算爆炸”、“存儲爆炸”以及 “焦點丟失” 三大問題。

百度語音新突破:基于歷史信息抽象的流式截斷 conformer 建模

通過對 Transformer 模型的深入研究,百度的研究人員在 SMLTA1 的基礎(chǔ)上,進一步提出了基于歷史特征抽象的流式語音識別建模方法 SMLTA2。SMLTA2 模型不僅保留了 SMLTA1 流式、多級、截斷的特點,還通過引入基于 Attention 的歷史特征抽象以及從 Decoder 到 Encoder 各層的注意力機制,解決了 Transformer 模型用于在線語音識別任務(wù)中面臨的問題。其核心結(jié)構(gòu)和歷史特征抽象的原理如下圖所示。

1.jpg

SMLTA2 模型結(jié)構(gòu)和歷史特征抽象原理

由于卷積增強(Convolution Augmented)的 Conformer 模型同時具有 Transformer 模型的全局建模和卷積模型的局部建模的能力,SMLTA2 采用 Conformer 模型作為其主要結(jié)構(gòu)。從圖中可以看到,SMLTA2 首先根據(jù) CTC 模型的尖峰信息對連續(xù)語音特征進行截斷,然后在截斷的特征片段上利用 Conformer Encoder 對輸入特征逐層編碼,最后使用 Transformer Decoder 得到相應(yīng)的識別結(jié)果。在對當(dāng)前建模單元編碼時,歷史的語音特征片段被逐層抽象成固定長度的特征向量,然后和當(dāng)前的語音特征片段一起進行注意力建模。這里的歷史特征抽象是指根據(jù) Decoder 輸出的隱含特征對當(dāng)前語音特征片段的 Encoder 各層進行相關(guān)性建模。

通過 CTC 特征截斷和歷史特征抽象的方式,SMLTA2 在保證建模精度的同時,克服了傳統(tǒng) Transformer 模型在長音頻識別上面臨的 “計算爆炸” 和“存儲爆炸”問題。并且通過流式動態(tài)截斷的方式,把注意力縮小到一個合適的范圍,進一步解決了 Transformer 模型在語音識別任務(wù)的 “焦點丟失” 問題。

為了解決 Transformer 模型應(yīng)用于流式語音識別任務(wù)的各種問題,其他研究學(xué)者采用對 Encoder 各層進行啟發(fā)式的截斷和抽象。Google 的 Transformer Transducer 模型對 Encoder 的上下文限制了固定長度范圍,可以看作在輸入特征上進行加窗截斷的方法。Facebook 的記憶增廣(Augmented Memory)方法把音頻特征切分為等長的片段,然后通過平均池化等方法得到固定長度的向量。這種截斷和抽象是先驗進行的,最終的識別結(jié)果無法反饋信息給這種截斷和抽象過程。而且在此基礎(chǔ)上得到的特征向量只是一種數(shù)學(xué)上的簡化,其本身并沒有實際的物理含義。SMLTA2 通過特征抽象得到的特征向量對應(yīng)著一個輸出的文字信息。這些特征向量拼接起來組成的歷史特征向量,實際上形成了一種聲學(xué)特征層面的語言模型,進而有效提升 SMLTA2 模型的建模能力。

目前幾乎所有的基于 Encoder-Decoder 結(jié)構(gòu)的端到端模型在建模時,Encoder 和 Decoder 之間的關(guān)系是 Encoder 的輸出是 Decoder 的輸入,Decoder 的解碼過程并不和 Encoder 內(nèi)部各層的編碼信息發(fā)生任何聯(lián)系。Decoder 只能在端到端聯(lián)合建模的訓(xùn)練過程,通過誤差傳遞的方式間接地影響 Encoder 的編碼過程。盡管這種傳統(tǒng)的 Encoder-Decoder 協(xié)同工作的方式更簡單,但是卻存在 Decoder 對 Encoder 內(nèi)部各層信息的反饋和使用不夠直接的問題。

通過前文分析,Transformer 模型應(yīng)用于語音識別領(lǐng)域,必須對歷史信息進行必要的截斷和近似。如果不引入從 Decoder 到 Encoder 各層的反饋機制,而簡單武斷地對 Encoder 的各層信息進行截斷或者近似,難免發(fā)生信息丟失,影響建模能力。SMLTA2 通過 Decoder 到 Encoder 各層的注意力特征選擇機制來引入反饋,使得最外層識別結(jié)果信息可以直接作用于編碼器內(nèi)部的每一層的編碼過程,通過歷史信息抽象充分提取有效特征信息,顯著改善了 Transformer 模型從 NLP 領(lǐng)域應(yīng)用到語音識別領(lǐng)域面臨的各種問題。SMLTA2 的這種全新的端到端建模方法,是對傳統(tǒng) Encoder-Decoder 結(jié)構(gòu)的端到端建模的結(jié)構(gòu)性創(chuàng)新。

語音識別模型的迭代和工業(yè)化落地

從基于 LSTM 和 CTC 的上下文無關(guān)音素組合建模 Deep Peak 2 到流式多級截斷注意力 SMLTA1,再到基于歷史特征抽象的流式語音識別建模 SMLTA2,百度一直堅持在語音識別模型上的創(chuàng)新迭代。

多年來,百度語音不僅在技術(shù)路線上持續(xù)引領(lǐng)行業(yè),還一直堅持在產(chǎn)品上可使用、讓用戶真正可體驗。百度的上一代流式多級的截斷注意力模型 SMLTA1 就成功上線語音輸入法全線產(chǎn)品,服務(wù)中國數(shù)億用戶,是世界范圍內(nèi)已知的第一次大規(guī)模部署的用于在線語音輸入的注意力模型。

此次發(fā)布的 SMLTA2 依舊保持了流式識別的特點,具備工業(yè)產(chǎn)品落地的能力。目前在實驗室內(nèi),模擬線上環(huán)境進行測試,SMLTA2 在同等計算資源消耗的情況下,相對于上一代技術(shù)錯誤率降低大約 12%。SMLTA2 的提出,是百度在語音識別領(lǐng)域的又一技術(shù)突破,也是百度 AI 技術(shù)繼續(xù)領(lǐng)跑行業(yè)的重要技術(shù)創(chuàng)新。期待 SMLTA2 的產(chǎn)品上線應(yīng)用,實現(xiàn)語音識別準(zhǔn)確率的再度提升,給用戶帶來全新的交互體驗。

*博客內(nèi)容為網(wǎng)友個人發(fā)布,僅代表博主個人觀點,如有侵權(quán)請聯(lián)系工作人員刪除。



關(guān)鍵詞: AI

相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉