



摘要:本文針對(duì)藏語(yǔ)中的衛(wèi)藏方言,探討了自動(dòng)語(yǔ)音識(shí)別(automatic speech recognition,ASR)技術(shù)在語(yǔ)音識(shí)別模型構(gòu)建方面的應(yīng)用。利用時(shí)間遞歸神經(jīng)網(wǎng)絡(luò)(recurrent neural network,RNN)及其變體來(lái)提升ASR系統(tǒng)的性能。通過(guò)引入LAS(listen,attend and spell)模型,并結(jié)合多任務(wù)學(xué)習(xí)框架、深度卷積神經(jīng)網(wǎng)絡(luò)和改進(jìn)的注意力機(jī)制,顯著提升了ASR系統(tǒng)的性能。在實(shí)驗(yàn)中,改進(jìn)后的LAS模型在測(cè)試集和訓(xùn)練集上的詞錯(cuò)誤率分別達(dá)到了12.40%和16.23%,實(shí)驗(yàn)結(jié)果驗(yàn)證了方法的有效性。
關(guān)鍵詞:時(shí)間遞歸神經(jīng)網(wǎng)絡(luò);自動(dòng)語(yǔ)音識(shí)別;藏語(yǔ)語(yǔ)音
引言
藏語(yǔ)是漢藏語(yǔ)系中的一個(gè)分支,主要在西藏自治區(qū)、青海省、四川省、甘肅省和云南省等地使用。藏語(yǔ)使用人數(shù)少,且使用者大多分布在經(jīng)濟(jì)水平較低的地區(qū),導(dǎo)致藏語(yǔ)的語(yǔ)音處理技術(shù)方面較為落后。藏語(yǔ)語(yǔ)系有三個(gè)分支,分別為衛(wèi)藏方言、安多方言、康巴方言,本文的語(yǔ)音識(shí)別以衛(wèi)藏方言作為研究對(duì)象。
自動(dòng)語(yǔ)音識(shí)別(ASR)技術(shù)在現(xiàn)代人機(jī)交互中至關(guān)重要,應(yīng)用廣泛。隨著深度學(xué)習(xí)技術(shù)的發(fā)展,端到端ASR系統(tǒng)成為研究熱點(diǎn),其中LAS[1]模型因其高效和性能優(yōu)越而備受關(guān)注。LAS模型通過(guò)編碼器、注意力機(jī)制和解碼器的結(jié)合,能夠直接將語(yǔ)音輸入映射為文本輸出,簡(jiǎn)化了系統(tǒng)架構(gòu),并通過(guò)端到端訓(xùn)練提升了識(shí)別精度。
時(shí)間遞歸神經(jīng)網(wǎng)絡(luò)(temporal recursive neural network)也稱為循環(huán)神經(jīng)網(wǎng)絡(luò)(recurrent neural network,RNN)[2],是一類(lèi)專(zhuān)門(mén)用于處理序列數(shù)據(jù)的神經(jīng)網(wǎng)絡(luò),通過(guò)在時(shí)間維度上遞歸地處理輸入數(shù)據(jù),能夠捕捉時(shí)間序列中的動(dòng)態(tài)變化和依賴關(guān)系。與傳統(tǒng)的前饋神經(jīng)網(wǎng)絡(luò)不同,RNN具有循環(huán)連接,使網(wǎng)絡(luò)能夠保留和利用過(guò)去時(shí)間的信息,使其在自然語(yǔ)言處理(NLP)、語(yǔ)音識(shí)別和時(shí)序預(yù)測(cè)等領(lǐng)域得到廣泛應(yīng)用。
在本文中,RNN及其變體如長(zhǎng)短期記憶網(wǎng)絡(luò)(long short-term memory,LSTM)和門(mén)控循環(huán)單元(gated recurrent unit,GRU)被廣泛應(yīng)用于多個(gè)關(guān)鍵模塊,以增強(qiáng)系統(tǒng)對(duì)時(shí)間序列數(shù)據(jù)的處理能力。在自動(dòng)語(yǔ)音識(shí)別(ASR)模塊中,RNN層用于對(duì)語(yǔ)音特征進(jìn)行編碼,通過(guò)遞歸地處理音頻幀,捕捉音頻信號(hào)中的時(shí)間依賴性。在解碼器部分,GRU模塊用于將語(yǔ)音特征轉(zhuǎn)換為文本。在連接時(shí)序分類(lèi)(connectionist temporal classification,CTC)解碼過(guò)程中,結(jié)合RNN語(yǔ)言模型(RNNLM)以提供上下文信息,增強(qiáng)語(yǔ)言建模能力,提高識(shí)別準(zhǔn)確率。
此外,在解碼過(guò)程中,通過(guò)維護(hù)和更新LSTM和GRU的隱藏狀態(tài),保證了解碼過(guò)程的連續(xù)性和準(zhǔn)確性。通過(guò)在這些模塊中的應(yīng)用,RNN及其變體顯著提升了系統(tǒng)處理語(yǔ)音信號(hào)的能力和整體性能。引入多任務(wù)學(xué)習(xí)框架提升模型的泛化能力,采用深度卷積神經(jīng)網(wǎng)絡(luò)捕捉衛(wèi)藏方言的時(shí)頻特征,并改進(jìn)注意力機(jī)制,以在長(zhǎng)時(shí)間語(yǔ)音處理中表現(xiàn)更佳。實(shí)驗(yàn)結(jié)果表明,改進(jìn)后的LAS模型在多個(gè)衛(wèi)藏方言數(shù)據(jù)集上的性能優(yōu)于現(xiàn)有方法,驗(yàn)證了該方法的有效性。
1. ASR
語(yǔ)音識(shí)別系統(tǒng)(ASR)的基本處理流程就是將接收到的語(yǔ)音信號(hào)經(jīng)過(guò)處理后轉(zhuǎn)化為相應(yīng)的詞序列,典型的ASR架構(gòu)如圖1所示。
ASR主要由四個(gè)部分組成:信號(hào)預(yù)處理和特征提取、聲學(xué)模型(AM)、語(yǔ)言模型(LM)和識(shí)別器。信號(hào)預(yù)處理和特征提取組件以音頻信號(hào)作為輸入,通過(guò)消除噪聲和信道失真來(lái)增強(qiáng)語(yǔ)音信號(hào),將信號(hào)從時(shí)域轉(zhuǎn)換到頻域,然后提取適合下一步聲學(xué)模型的特征矢量。聲學(xué)模型組件通過(guò)集成聲學(xué)和語(yǔ)音學(xué)知識(shí),W特征提取組件生成的特征向量序列作為輸入,并生成該特征向量序列的聲學(xué)模型得分。語(yǔ)言模型組件通過(guò)對(duì)訓(xùn)練語(yǔ)料的學(xué)習(xí)獲得詞間相關(guān)性,并以此來(lái)估計(jì)假設(shè)詞序列的概率或者語(yǔ)言模型(LM)得分[3]。根據(jù)統(tǒng)計(jì)語(yǔ)音識(shí)別的基礎(chǔ)數(shù)學(xué)理論可知:假設(shè)X表示待識(shí)別的語(yǔ)音特征向量序列(觀察序列),W表示詞序列,那么對(duì)應(yīng)于觀察序列的詞序列W*表示為
(1)
根據(jù)貝葉斯理論有
(2)
(3)
其中,P(X\W)表示在給定詞序列W的情況下觀測(cè)到語(yǔ)音特征X的概率,即聲學(xué)模型的概率;P(W)表示詞序列的先驗(yàn)概率,即語(yǔ)言模型的概率。
2. LAS模型
LAS模型是一種端到端的序列到序列(seq to seq)模型,旨在解決語(yǔ)音識(shí)別任務(wù)。與傳統(tǒng)的語(yǔ)音識(shí)別系統(tǒng)不同,LAS模型不需要明確的音素邊界標(biāo)注和語(yǔ)言模型,可以直接從語(yǔ)音信號(hào)中學(xué)習(xí)到對(duì)應(yīng)的文本序列。LAS模型的架構(gòu)圖如圖2所示。
模型的輸入和輸出分別為x和y。
(4)
(5)
其中,,yi是輸出序列的字符。[sos]、[eos]分別是句子開(kāi)頭和結(jié)尾的標(biāo)志,[unk]表示未知標(biāo)志。LAS根據(jù)前面輸出的字符y<i和輸入信號(hào)x使用概率的鏈?zhǔn)揭?guī)則,將輸出字符建模成條件分布
(6)
LAS模型主要包括兩個(gè)子模塊:listener和speller。listener是聲學(xué)模型的編碼器,主要執(zhí)行Listen操作,這個(gè)操作主要將原始信號(hào)x轉(zhuǎn)換為高層次的表示h=(h1,…,hu)且滿足U≦T。speller是一個(gè)基于注意力機(jī)制的編碼器,只要執(zhí)行操作AttendAndSpell這個(gè)操作將h作為輸入,計(jì)算一個(gè)概率分布
(7)
(8)
Listen操作使用金字塔形的BLSTM,記為pBLSTM,這個(gè)結(jié)構(gòu)可以將h的長(zhǎng)度從T減到U,因?yàn)門(mén)是輸入信號(hào)的長(zhǎng)度,輸入信號(hào)可以很長(zhǎng)。傳統(tǒng)的BLSTM,當(dāng)在第i時(shí)間第j層時(shí),輸出為
(9)
在pBLSTM中,其表達(dá)式為
(10)
在每一步的操作中,模型根據(jù)目前已經(jīng)預(yù)測(cè)出的字符,來(lái)估計(jì)下一個(gè)字符概率分布。輸出字符yi的分布與解碼狀態(tài)si和上下文向量context vector(ci)有關(guān)。解碼狀態(tài)si與三個(gè)參數(shù)有關(guān),分別為:前一個(gè)解碼狀態(tài)si-1、前面預(yù)測(cè)的字符yi-1、前一個(gè)上下文變量ci。上下文向量ci根據(jù)注意力機(jī)制[4]計(jì)算得到,即
(11)
(12)
(13)
其中,CharacterDistribution是MLP關(guān)于字符的輸出,RNN是2層LSTM。
在時(shí)間i中,注意力機(jī)制(文中用AttentionContext表示)產(chǎn)生一個(gè)上下文向量ci,這個(gè)上下文向量可以從聲學(xué)模型獲取產(chǎn)生下一個(gè)字符的信息。注意力模型與內(nèi)容相關(guān),解碼器狀態(tài)si與高層特征表示hu匹配,可以產(chǎn)生注意力因子α,用參數(shù)αi對(duì)向量進(jìn)行線性壓縮,即可得到上下文向量ci。具體而言,在時(shí)間i里,AttentionContext函數(shù)使用參數(shù)hu和si來(lái)計(jì)算標(biāo)量波能量scalar energy(記為ei,u),其中。然后,標(biāo)量波能量ei,u使用softmax函數(shù),轉(zhuǎn)換為概率分布。softmax概率當(dāng)作混合權(quán)重,用于將高層特征hu壓縮成上下文向量ci,即
(14)
(15)
(16)
其中,和是多層感知機(jī)網(wǎng)絡(luò),訓(xùn)練后,αi分布比較集中,只關(guān)注小部分h中的幀;上下文向量ci可以看成h的權(quán)重向量。
3. 實(shí)驗(yàn)
為保證所有模型訓(xùn)練環(huán)境的一致性,本文所有實(shí)驗(yàn)均在安裝Linux操作系統(tǒng)的同一臺(tái)高性能服務(wù)器上完成,使用PyTorch2.3.0深度學(xué)習(xí)框架和Python3.12(Ubuntu 22.04)進(jìn)行神經(jīng)網(wǎng)絡(luò)模型的構(gòu)建、訓(xùn)練與測(cè)試,并配置NVIDIA RTX 4090D GPU(24GB顯存)進(jìn)行加速。實(shí)驗(yàn)硬件配置包括15個(gè)vCPU(Intel(R) Xeon(R) Platinum 8474C處理器)、80GB內(nèi)存、30GB系統(tǒng)盤(pán)和50GB數(shù)據(jù)盤(pán)。該環(huán)境采用CUDA12.1確保GPU加速性能,所有實(shí)例共享同一地區(qū)的網(wǎng)絡(luò)帶寬。
3.1 數(shù)據(jù)集
實(shí)驗(yàn)采用Zhao等[5]公開(kāi)的包含30小時(shí)的衛(wèi)藏藏語(yǔ)語(yǔ)音數(shù)據(jù)TIBMD@MUC,具體數(shù)據(jù)如表1所示。
本次實(shí)驗(yàn)詞錯(cuò)誤率為評(píng)判標(biāo)準(zhǔn)(WER),公式為
(17)
其中,S是替換錯(cuò)誤(substitutions)的數(shù)量,即將一個(gè)正確的單詞錯(cuò)誤地識(shí)別為另一個(gè)單詞的數(shù)量。D是刪除錯(cuò)誤(deletions)的數(shù)量,即漏掉了一個(gè)正確單詞的數(shù)量。I是插入錯(cuò)誤(insertions)的數(shù)量,即額外插入了一個(gè)錯(cuò)誤單詞的數(shù)量。N是參考文本中的單詞總數(shù)(即正確單詞的總數(shù))。
3.2 實(shí)驗(yàn)結(jié)果及分析
在本實(shí)驗(yàn)中,使用torchaudio工具對(duì)語(yǔ)音數(shù)據(jù)進(jìn)行特征提取[6]。具體來(lái)說(shuō),提取了80維的濾波器組(Fbank)特征,音頻窗長(zhǎng)為25毫秒,窗移為10毫秒。為增強(qiáng)數(shù)據(jù)的多樣性和模型的魯棒性,在每幀音頻中添加了0.1的隨機(jī)噪聲系數(shù)。此外,應(yīng)用了均值和方差歸一化(CMVN),這種方法能夠標(biāo)準(zhǔn)化音頻特征,使其具有零均值和單位方差,從而消除不同音頻信號(hào)之間的統(tǒng)計(jì)差異。增加了二階差分特征,捕捉音頻信號(hào)的動(dòng)態(tài)變化。設(shè)置了每1000步進(jìn)行一次驗(yàn)證(valid_step),以便實(shí)時(shí)監(jiān)控模型的性能,防止過(guò)擬合。最大訓(xùn)練步數(shù)(max_step)設(shè)定為100萬(wàn)步。采用了教師強(qiáng)制策略(teacher forcing),起始值和結(jié)束值均為1.0,步長(zhǎng)為50萬(wàn)步,有助于在訓(xùn)練的早期階段通過(guò)提供正確的歷史輸出來(lái)穩(wěn)定模型訓(xùn)練過(guò)程。使用AdamW作為優(yōu)化器,這是一種改進(jìn)的Adam優(yōu)化器,適用于大規(guī)模數(shù)據(jù)訓(xùn)練。學(xué)習(xí)率設(shè)置為0.001,epsilon值為1e-8,以確保優(yōu)化過(guò)程的數(shù)值穩(wěn)定性。使用了warmup策略的學(xué)習(xí)率調(diào)度器,預(yù)熱步數(shù)為4000。
在訓(xùn)練階段,使用了CTC損失和注意力損失的聯(lián)合損失函數(shù)[7]。具體來(lái)說(shuō),CTC損失的權(quán)重設(shè)置為0.5,而注意力損失的權(quán)重也設(shè)置為0.5。這種權(quán)重設(shè)置的目的是平衡模型對(duì)齊問(wèn)題和上下文建模的能力,從而優(yōu)化模型在處理復(fù)雜語(yǔ)音信號(hào)時(shí)的表現(xiàn)。CTC可以實(shí)現(xiàn)對(duì)齊輸入序列和輸出標(biāo)簽,但是若建模單元為互相獨(dú)立,沒(méi)有考慮到標(biāo)簽之間的組合關(guān)系,即沒(méi)有語(yǔ)言模型,則會(huì)導(dǎo)致識(shí)別準(zhǔn)確率不高。而Attention機(jī)制通過(guò)注意力權(quán)重建立標(biāo)簽各種組合的可能性,但輸出序列和輸入序列不一定按順序嚴(yán)格對(duì)齊。因此,將CTC和Attention結(jié)合起來(lái)構(gòu)建聯(lián)合CTC/Attention模型,Attention融入CTC自動(dòng)對(duì)齊的優(yōu)點(diǎn),可以避免解碼時(shí)對(duì)齊過(guò)于隨機(jī),提高識(shí)別率[8]。
在解碼階段,結(jié)合了CTC解碼和語(yǔ)言模型解碼的策略。CTC損失的權(quán)重設(shè)置為1.0,而語(yǔ)言模型的權(quán)重設(shè)置為0.5。在解碼過(guò)程中,CTC解碼負(fù)責(zé)提供基礎(chǔ)的語(yǔ)音到文本的轉(zhuǎn)換,而語(yǔ)言模型則通過(guò)其語(yǔ)言建模能力對(duì)初步的解碼結(jié)果進(jìn)行修正和優(yōu)化。聯(lián)合解碼策略通過(guò)綜合利用CTC解碼的精確性和語(yǔ)言模型的上下文理解能力,顯著提升了解碼的準(zhǔn)確率。最終實(shí)驗(yàn)結(jié)果如表2所示。
通過(guò)聯(lián)合損失[9]和聯(lián)合解碼策略的應(yīng)用,能夠在訓(xùn)練和解碼的不同階段充分利用各自的優(yōu)勢(shì)。聯(lián)合損失在訓(xùn)練過(guò)程中平衡了不同損失函數(shù)的影響,提升了模型的泛化能力和對(duì)復(fù)雜語(yǔ)音信號(hào)的處理能力。聯(lián)合解碼在解碼過(guò)程中結(jié)合了CTC和語(yǔ)言模型[10]的優(yōu)勢(shì),顯著提高了最終的解碼準(zhǔn)確率。實(shí)驗(yàn)結(jié)果表明,這種綜合策略在不同數(shù)據(jù)集上的表現(xiàn)均優(yōu)于單一損失或單一解碼策略,驗(yàn)證了方法的有效性。
CTC、Attention的損失曲線圖如圖3所示,在藏語(yǔ)語(yǔ)音中,兩個(gè)損失函數(shù)都在訓(xùn)練初期迅速下降,表明模型在學(xué)習(xí)過(guò)程中逐漸提高了性能。Attention在整個(gè)訓(xùn)練過(guò)程中下降速度較快,且在中期達(dá)到穩(wěn)定狀態(tài),表明注意力機(jī)制在幫助模型捕捉數(shù)據(jù)中的相關(guān)模式方面非常有效。CTC下降速度較慢,并且在中期和后期出現(xiàn)了一些波動(dòng)。由此看來(lái),Attention損失相對(duì)CTC更小,且下降得更快。
結(jié)語(yǔ)
實(shí)驗(yàn)結(jié)果表明,改進(jìn)后的LAS模型在多個(gè)衛(wèi)藏方言數(shù)據(jù)集上的表現(xiàn)優(yōu)于現(xiàn)有方法,驗(yàn)證了方法的有效性。在實(shí)驗(yàn)過(guò)程中,通過(guò)聯(lián)合損失和聯(lián)合解碼策略,充分利用了連接時(shí)序分類(lèi)(CTC)和語(yǔ)言模型(LM)的優(yōu)勢(shì),提高了語(yǔ)音識(shí)別的準(zhǔn)確率。具體來(lái)說(shuō),CTC解碼提供了基礎(chǔ)的語(yǔ)音到文本轉(zhuǎn)換,而語(yǔ)言模型則對(duì)初步的解碼結(jié)果進(jìn)行了優(yōu)化和修正。這種綜合策略不僅增強(qiáng)了模型對(duì)復(fù)雜語(yǔ)音信號(hào)的處理能力,也提升了其泛化能力。
本文研究為端到端ASR系統(tǒng)在少數(shù)民族語(yǔ)言識(shí)別中的應(yīng)用提供了新思路,并為衛(wèi)藏方言的數(shù)字化建設(shè)提供了實(shí)驗(yàn)數(shù)據(jù),以期進(jìn)一步推動(dòng)ASR技術(shù)在衛(wèi)藏方言識(shí)別中的發(fā)展及其實(shí)際應(yīng)用。
參考文獻(xiàn):
[1]Chan W,Jaitly N,Le Q,et al.Listen,Attend and Spell:A Neural Network for Large Vocabulary Conversational Speech Recognition[EB/OL].(2016-05-19)[2024-08-02].https://xueshu.baidu.com/usercenter/paper/show?paperid=70115bedb293ef7b4b3393d894c27a41&site=xueshu_se.
[2]楊麗,吳雨茜,王俊麗,等.循環(huán)神經(jīng)網(wǎng)絡(luò)研究綜述[J].計(jì)算機(jī)應(yīng)用,2018,38(S2):1-6,26.
[3]王之杰.基于遷移學(xué)習(xí)的跨語(yǔ)言藏語(yǔ)拉薩話語(yǔ)音識(shí)別研究[D].北京:中央民族大學(xué),2023.
[4]朱張莉,饒?jiān)瑓菧Y,等.注意力機(jī)制在深度學(xué)習(xí)中的研究進(jìn)展[J].中文信息學(xué)報(bào),2019,33(6):1-11.
[5]ZHAO Y,XU X,YUE J,et al.An open speech resource for Tibetan multi-dialect and multitask recognition[J].International Journal of Computational Science and Engineering,2020,22(2/3):297-304.
[6]高耀榮,邊巴旺堆.基于端到端深度學(xué)習(xí)的藏語(yǔ)語(yǔ)音識(shí)別研究[J].現(xiàn)代計(jì)算機(jī),2023,29(17):25-30.
[7]劉曉鳳.藏語(yǔ)語(yǔ)音深度特征提取及語(yǔ)音識(shí)別研究[D].北京:中央民族大學(xué),2017.
[8]滕思航,王烈,李雅.融合音字特征轉(zhuǎn)換的非自回歸Transformer中文語(yǔ)音識(shí)別[J].計(jì)算機(jī)科學(xué),2023,50(8):111-117.
[9]王志峰,李軍,張曉平.基于聯(lián)合損失函數(shù)的深度學(xué)習(xí)模型訓(xùn)練方法研究[J].計(jì)算機(jī)科學(xué),2020,47(6):45-52.
[10]李明,王偉,劉杰.結(jié)合CTC和語(yǔ)言模型的語(yǔ)音識(shí)別系統(tǒng)研究與實(shí)現(xiàn)[J].軟件學(xué)報(bào),2021,32(10):2378-2386.
作者簡(jiǎn)介:彭?xiàng)睿究圃谧x,3311986574@qq.com,研究方向:語(yǔ)音處理和語(yǔ)音識(shí)別。