1. 程式人生 > >語音識別框架

語音識別框架

一、語音識別框架

傳統理論重點研究聲學模型,發音字典不用關心,語言模型一般用n-gram

預處理:1. 首尾端的靜音切除,降低對後續步驟造成的干擾,靜音切除的操作一般稱為VAD。

 2. 聲音分幀,也就是把聲音切開成一小段一小段,每小段稱為一幀,使用移動窗函式來實現,不是簡單的切開,各幀之間一般是有交疊的。

特徵提取:主要演算法有線性預測倒譜系數(LPCC)和Mel 倒譜系數(MFCC),目的是把每一幀波形變成一個包含聲音資訊的多維向量;

聲學模型(AM):通過對語音資料進行訓練獲得,輸入是特徵向量,輸出為音素資訊;

字典:字或者詞與音素的對應,

簡單來說, 中文就是拼音和漢字的對應,英文就是音標與單詞的對應

語言模型(LM):通過對大量文字資訊進行訓練,得到單個字或者詞相互關聯的概率;計算所有可能性的概率,求對應的最大概率值的索引。即輸出文字。

語音識別流程的舉例(只是形象表述,不是真實資料和過程):

    1. 語音訊號:PCM檔案等(我是機器人)

    2. 特徵提取:提取特徵向量[1 2 3 4 5 6 0 ...]

    3. 聲學模型:[1 2 3 4 5 6 0]-> w o s i j i q i r n重點

    4. 字典:窩:w o;我:w o; 是:s i; 機:j i; 器:q i; 人:r n;級:j i;忍:r n;

    5. 語言模型:我:0.0786, 是: 0.0546,我是:0.0898,機器:0.0967,機器人:0.6785;

計算所有可能性的概率,求對應的最大概率值的索引。

    6. 輸出文字:我是機器人

原文:https://blog.csdn.net/nsh119/article/details/79360778

二、聲學模型

聲學模型:某音素組合條件下對應聲學特徵的概率值。反過來也可以通過概率值求索引,即特徵到音素的對映。傳統的為HMM-GMM模型,發展為NN,深度NN模型。

下圖為聲學模型框架。

https://blog.csdn.net/abcjennifer/article/details/27346787

聲學模型的輸入是由特徵提取模組提取的特徵(MFCC等)。一般來說,這些特徵是多維的向量。由於語音訊號特徵的分佈並不能用簡單的概率分佈,故而常用混合高斯模型方法對語音訊號的分佈進行擬合。引數由E-M演算法求得。對聲音序列O,進行GMM擬合,每一個GMM為HMM的一個狀態,計算狀態的概率值,通過搜尋演算法求得最大概率值對應的索引即音素序列。

注:狀態的理解。狀態通過對聲音想、特徵序列O進行GMM擬合或者DNN等擬合求得。如果聲學模型輸出的是音素,狀態應該理解為比音素更小的級別,如3個狀態對應一個音素;

https://blog.csdn.net/T7SFOKzorD1JAYMSFk4/article/details/79069909。如果聲學模型輸出的是拼音如(zhong),狀態應該理解為音素zhong等,或者其他聲學單元。即狀態為構成輸出的更低一級別的單元。

中文音素。

發音單元可以看成單因素加聲調、考慮協同發音等等

 

 

 

語言模型:給定輸入序列,計算序列的概率。

對於一個服從某個未知概率分佈P的語言L,根據給定的語言文字樣本估計P的過程被稱作統計語言建模。

在語音識別中,如果識別結果有多個,則可以根據語言模型計算每個識別結果的可能性,然後挑選一個可能性較大的識別結果。

 

包含:統計語言模型和神經網路語言模型。統計語言模型將詞或者詞彙,看成一個個體。神經網路語言模型也可以實現傳統的語言模型。最重要的是詞向量的提出。

統計語言模型

2元模型:

用最大似然估計計算上述概率

 

問題:

加入開始和結束標誌。

資料匱乏(稀疏)(Sparse Data)引起零概率問題 ,如何解決?  資料平滑

分子加1,分母加詞彙量

不管訓練語料規模多大,對於二元語法和三元語法而言 ,Kneser-Ney平滑方法和修正的Kneser-Ney平滑方法 的效果都好於其它所有的平滑方法

 

基於快取的語言模型(cache-based LM) 

基於混合方法的語言模型 

基於最大熵的語言模型

決策樹語言模型等

係數由E-M演算法求得

評價指標:

具體應用,如語音識別的表現等,

困惑度:基於該語言模型,求得的測試集的概率值的越大越好。對應的困惑度越小越好。

仍然是現今語音識別系統第一遍解碼的首選模型研究熱點:基於N元文法語言模型平滑演算法的研究

N元模型主要研究各種平滑演算法。

 

神經網路語言模型:

NN實現統計語言模型。

訓練RNN網路計算每一個句子的概率

詞向量的提出

 

 

端對端的理解:

中英文的區別:

中英文的音素不同,發音字典不同。如英文的音素k在發音字典可以是c,k;中文的音素組成的拼音shi4可以為世,事,是等。還需要語音模型計算實際的輸出。

端對端不用考慮聲學模型、發音字典、語音模型等,直接完成聲音特徵序列到文字序列的轉換。