?

基于循環神經網絡的聲學模型研究?

2024-01-23 13:37趙婷婷張二華唐振民
計算機與數字工程 2023年10期
關鍵詞:聲學時刻語音

趙婷婷 張二華 唐振民

(南京理工大學計算機科學與工程學院 南京 210094)

1 引言

人類進行信息交流最自然的方式就是語音。隨著時代發展和計算機技術的進步,語音交流不再局限于人與人之間,讓計算機能夠理解人類語言這一需求日益增長。語音識別就是把人的說話語音變成一種計算機能夠理解的命令,然后計算機再將這些命令處理最終顯示為我們所需的結果。語音識別系統可以劃分為多個獨立的模塊,這些模塊主要有特征提取、語音切分、聲學模型,語言模型的構建和訓練等,經過這一系列的計算,從而得到最佳識別結果。語音識別早期的研究是對于孤立詞的識別,而高斯混合-馬爾可夫模型(GMM-HMM)的出現使得孤立詞語音識別向連續語音識別發展,在經典的GMM-HMM[1]中,GMM 對語音信號觀察概率建模,HMM 則對語音信號時序建模,采用最大期望(EM)算法[2]進行訓練。但是GMM-HMM 結構上屬于淺層模型,在處理信號中的復雜結構信息時學習能力較弱,且對于大數據量的任務建模能力明顯不足,因此當語音信息由標準朗讀轉向日常交流或者識別大量語音數據時,基于GMM-HMM 的語音識別方法就難以勝任。直至深度學習方法的出現以上問題才得以解決,經過一段時間的研究,卷積神經網絡和循環神經網絡等在語音識別中取得了顯著效果[3],之后深度神經網絡就成為語音識別任務中的主流模型。

2 深度學習

2006 年,Geoffrey Hinton 提出了“深度置信網絡”的概念,并給出了兩個重要結論:1)具有多個隱含層的人工神經網絡,具有更優秀的特征學習能力;2)通過逐層預訓練可以讓神經網絡中的權值找到接近最優解的初始值,再通過微調對網絡進行優化。目前大家所知道的深度學習就是一種包含多個隱含層的多層感知機,讓計算機通過自身的各種計算,訓練得到一種模式特征,然后在建立模型的過程中加入這一模式特征[5],這一方法被廣泛應用于多種領域,其本質就是深層神經網絡[6]。深度學習的性能還與數據量成正比,數據量的增加會增強其性能,可以說深度學習也是一種數據依賴性算法[6]。綜上所述,深度學習=多層神經網絡算法+并行計算+海量訓練數據。

2.1 循環神經網絡

循環神經網絡(RNN)[8]是20 世紀80 年代末提出的一種神經網絡結構模型。RNN 具有循環結構,可以記錄上一時刻的信息并用于當前時刻的計算中[9],它的循環處理信息的機制與人類大腦記憶的過程非常類似,符合生物神經元的連接方式。圖1展示了RNN網絡結構。

圖1 RNN網絡結構圖

圖1的左側展示的是RNN的基本結構,按時間序列展開可以得到右側的結構。RNN 輸出值的計算包括以下步驟:

1)Xt是t時刻的輸入;

2)Ht是t 時刻的隱藏狀態,即循環神經網絡的記憶,它由Xt和Ht-1共同決定。計算公式如式(1):

其中U,W 和β均為網絡參數;f 為激活函數,以上公式的計算是循環的。

3)Ot是t 時刻的輸出,它是由模型當前時刻的隱藏狀態Ht(記憶)決定的,所有時刻的輸出概率之和為1。

其中,v和η均為網絡參數,Softmax為激活函數。

RNN 的訓練中最重要的一步是利用反向傳播調參,使損失函數最小化。在理論上,RNN 可以在時間軸上任意展開,也就是,它能記住任意過往的信息,但由于存在梯度消失(若梯度較小,則多層迭代后,梯度很快就會小到對調參幾乎沒有影響)的問題,那些記憶會隨著梯度遞減而消散,即輸入數據時間序列過長時,RNN 無法進行有效的梯度更新,RNN 的發展受到限制。直至LSTM 等模型的提出,新一代的RNN才得以繼續發展。

2.2 長短時記憶網絡

在傳統循環神經網絡的基礎上,加入一個細胞狀態(cell),就能組成一個LSTM[10]單元,我們可以認為正是多了一個內部狀態,LSTM 才記憶得更長久。這個單元狀態將前一個時間的信息傳遞給下一個時間的同時,會選擇性的記住某些信息,也會選擇性的忘記某些信息。為了實現這種信息處理方式,LSTM通過引入巧妙的可控自循環,這種機制我們將其稱之為門。根據不同的功能,LSTM 可分為三種門:輸入門,遺忘門和輸出門,如圖2 所示。傳統RNN 多采用BPTT 算法,這種算法隨著網絡層數的增多,會產生梯度消失等問題,而LSTM 通過設計控制門開關,構造了可控記憶神經元,可以產生使梯度能長時間可持續流動的路徑,解決了梯度消失這一問題,特別適合處理時序間隔長和延遲非常長的任務。

圖2 LSTM單元結構

可以用以下一系列公式來描述一個LSTM 循環體的結構組成:

輸入門:

遺忘門:

臨時狀態記憶單元:

當前時刻的記憶單元:

輸出門:

單元t時刻隱含層輸出:

LSTM的總體計算流程為當前時刻的輸入信息Xt通過輸入門it處理,部分信息能夠添加到記憶信息流中[11];上一時刻的記憶信息流Ct-1中的信息通過遺忘門ft來控制消除多少;二者相結合,得到單元的狀態信息Ct;最終有多少信息可以用于下一網絡的更新還要通過輸出門ot決定,由單元的狀態信息和輸出信息得到單元的隱含層輸出ht,并傳遞給下一單元,最后時刻的ot就是整個網絡的輸出。所有的權重矩陣W,偏置向量b 都是通過訓練得到,根據時間反向傳播算法就能得到這些參數的梯度值。

2.3 雙向長短時記憶網絡

LSTM在處理時間序列數據的時候只能實現單向傳遞,也就是只考慮了過去信息的影響,沒有考慮未來信息可能起到的作用。所以當數據的關鍵信息在后面時,LSTM的識別性能就會降低,無法滿足需求,為了解決這一問題,雙向長短時記憶網絡(BLSTM)應運而生,BLSTM 將方向時序信息的影響也考慮在內,當前輸入信息跟前后序列的數據都相關,即“未來”對“現在”也有影響。

BLSTM 的結構如圖3 所示,其中LSTM 就是圖2中的LSTM單元,圖3上半部分就是信息正向傳播的網格單元,下半部分就是逆向傳播的單元。圖3中Xt參數為t 時刻模型的輸入參數,ht為正向傳輸中t時刻模型的輸出參數,ht*為逆向傳輸中t時刻模型的輸出參數,之后分別取兩個方向最后一層的輸出,進行簡單的拼接得到最終數據,這些數據包含了上文信息和下文信息。

圖3 BLSTM結構

3 語音識別實驗

3.1 實驗原理

語音識別大致包括語音信號音節切分、聲學模型和語言模型等基本單元,框架圖如圖4 所示。為了更好地進行音節切分和模型的構建,還需要對語音信號進行處理,如:預加重,分幀加窗等,預處理后再進行特征參數的選取和提取。

圖4 語音識別系統原理框架圖

人耳對不同頻率的聲音有著不同的感知能力,并不呈現線性正比關系,為了模擬這一特性,人們提出了Mel 頻率,用Mel 頻率尺度會更符合人耳的聽覺特征[12],本實驗選取MFCC 作為實驗所用特征參數。MFCC 系數的提取分為兩個關鍵步驟:將語音信號轉換至梅爾頻率然后進行倒譜分析。首先對語音信號進行傅里葉變換得到頻譜,再利用Mel濾波器將線性頻譜轉換為Mel 頻譜;人耳對聲音的感知用對數關系能更好描述,所以對Mel 頻譜進行對數處理后再進行離散余弦變換[13],由此得到的數據就是MFCC。

基本聲學單元(簡稱基元)的選擇是聲學模型進行構建的前提,選取合適的基元對于識別性能影響很大。聲學模型就是提取聲學基元所對應的特征向量的序列,構成輸入數據,之后聲學模型計算該數據屬于每個基元的概率,從而推斷出當前聲學基元最有可能對應的漢字音節。

因為漢語中普遍存在同音字的問題,即一個音對應多個漢字,僅憑音節難以確定究竟對應哪個字,而語言模型就是建立大型語料庫,統計語料庫中的詞出現的概率,還有各種詞之間轉換的概率,最后把這些信息和聲學模型得到的結果綜合進行輸出[14],從而實現音-字的轉換,解決多個漢字對應一個音的問題。

3.2 實驗數據及處理

實驗所用數據集為南京理工大學NJUST603語音庫,語音庫參數為說話人423 人(男生210 人,女生213 人),每人朗讀散文《師恩難忘》,該文共596個漢字。實驗選取切分好的100 個漢字音節作為實驗對象,每個漢字隨機選取120 個樣本作為訓練集,15 個樣本作為測試集。實驗所用的語音數據是單聲道WAV 格式,采樣頻率為16000Hz,采樣精度為16bit。

實驗首先對語音信號進行分幀、加窗等預處理,幀長和幀移分別為32ms、16ms。在語音識別系統中,一般采取比詞小的字詞作為建模和識別單元,因為漢字都是單音節,所以實驗選取音節作為識別單元。數據預處理之后,對語音信號進行音節切分,得到單個字的起始位置和終止位置;然后提取每個字的MFCC 特征參數作為模型的輸入,維度為24維。

3.3 聲學模型

3.3.1 GMM_HMM模型

語音信號是慢時變信號,簡單的表示方法就是馬爾科夫鏈,而隱馬爾科夫模型(HMM)就是基于馬爾科夫鏈發展的[15]。隱馬爾科夫模型由兩個隨機過程組成,一是描述狀態和觀察值之間的統計對應關系;二是與概率分布相聯系的狀態轉移的統計對應關系[16]。但在語音識別的過程中,無法直接得到所有狀態的觀察值概率矩陣,而高斯混合模型(GMM)可以通過高階多維高斯分布描述連續的概率分布,可以通過GMM 對語音信號的觀測值進行模擬得到觀測狀態概率矩陣,再結合HMM 就構成了GMM-HMM模型。

利用GMM-HMM 對處理好的語音數據進行實驗,經過對比,選取HMM 狀態數為6,高斯混合階數為3 的模型進行實驗所得識別正確率最高,為84.7%。

3.3.2 BLSTM模型

盡管GMM-HMM 聲學模型已經較為成熟,但仍然存在一些不足。而雙向長短時記憶網絡能夠彌補這些不足,提高語音識別的準確率。本實驗利用TensorFlow實現了BLSTM模型[17],實驗使用的語音特征參數是24 維MFCC。由于每個音節的長度不一致,包含的語音幀數不同,所以在模型訓練之前,需要統計所有音節的長度,即樣本幀數,把所有音節的特征參數按照最長的樣本幀數補齊組成一個張量。然后選取合適的損失計算函數和優化算法,在訓練數據迭代過程中更新神經網絡的參數,得到全局最優解,即訓練好的聲學模型。最后用訓練好的模型對測試樣本進行測試,正確率為92.9%。

3.4 實驗結果對比

實驗用同一數據集中的語音數據對GMMHMM 模型和BLSTM 模型進行對比識別,結果如表1所示。

表1 GMM-HMM模型和BLSTM模型的識別率結果對比

通過表1,可以看出BLSTM 模型的識別率比GMM-HMM 提高了8.2%,這是因為GMM 模型難以利用同一狀態內幀的上下文信息,而BLSTM 考慮了上下文對當前語音識別的影響,所以BLSTM 模型有著更高的識別率。

為了驗證BLSTM 模型能夠利用輸入數據的時間序列特征,對MFCC 參數打亂順序之后再識別,結果如表2所示。

表2 不同數據BLSTM模型的識別率結果

由表2 可知,對打亂順序后的每一維MFCC 參數進行識別,對比正常順序的識別率有明顯下降,以此可以驗證BLSTM 模型能利用輸入數據的時間序列關系。

4 結語

本文總結對比了基于統計的GMM-HMM 模型和基于深度學習的BLSTM 兩種聲學模型的優劣,以及對相同數據集的識別效果,實驗表明基于BLSTM 的聲學模型識別正確率明顯高于前者,BLSTM 模型之所以識別率較高是因為該模型能考慮上下文對語音識別的影響。實驗也存在一些問題,如數據集規模較小,使得深度模型訓練層數增加時,不能得到充分訓練;隱藏節點過高時,超出內存無法訓練等,這些都是后續研究應該解決的問題,也是之后的研究方向。

猜你喜歡
聲學時刻語音
冬“傲”時刻
捕獵時刻
愛的就是這股Hi-Fi味 Davis Acoustics(戴維斯聲學)Balthus 70
魔力語音
基于MATLAB的語音信號處理
基于MQ3與MP3的價廉物美的酒駕語音提醒器
Acoustical Treatment Primer:Diffusion談談聲學處理中的“擴散”
Acoustical Treatment Primer:Absorption談談聲學處理中的“吸聲”(二)
對方正在輸入……
Acoustical Treatment Primer:Absorption 談談聲學處理中的“吸聲”
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合