Introduction to speech recognition model
Time:2021-12-16
Views:2464
1、語音識別的基本架構(gòu)
上式中W表示文字序列,Y表示語音輸入。公式1表示語音識別的目標(biāo)是在給定的語音輸入下,找到可能性最大的文字序列。根據(jù)貝葉斯公式可以得到公式2,其中分母表示出現(xiàn)這條語音的概率,它相比于求解的文字序列沒有參數(shù)關(guān)系,可以在求解時忽略,進而得到公式
3。公式3中第一部分表示給定一個文字序列出現(xiàn)這條音頻的概率,它就是語音識別中的聲學(xué)模型;第二部分表示出現(xiàn)這個文字序列的概率,它就是語音識別中的語言模型。
無論是傳統(tǒng)的方法還是深度神經(jīng)網(wǎng)絡(luò)的方法,目前的語音識別架構(gòu)都沒有脫離上面的公式,也就是說都離不開AM和LM。
語音識別主要包括特征工程、聲學(xué)模型和語言模型三個部分。
2、語音特征工程
2.1好的語音特征
1)包含區(qū)分音素的有效信息,良好的時域分辨率,良好的頻域分辨率
2)分離基頻F0以及它的諧波成分
3)對不同的說話人具有魯棒性
4)對噪音或通道失真具有魯棒性
5)有著良好的模式識別特性,低維特征,特征獨立。
2.2提取MFCC特征
1)A/D轉(zhuǎn)換(采樣)
通過采樣將模擬信號轉(zhuǎn)化為數(shù)字信號,便于數(shù)字化處理,采樣方法使用Nyquist采樣,采樣原理:一個信號不論多么復(fù)雜,總可以分解為若干個正(余)弦信號的和,對應(yīng)了信號的最大頻率分量,利用其最大頻率的2倍(或高于)頻率進行采樣,將連續(xù)型的信號轉(zhuǎn)化為離散型的信號。預(yù)濾波,若采樣頻率確定,可用截止頻率(低于1/2采樣頻率)模擬低通濾波器進行濾波來防止頻域混疊失真。
2)預(yù)加重
增加語音信號相較于低頻分量的高頻分量幅度,語音能量主要集中在低頻,提高高頻,有助于提高信噪比,去除聲門激勵、口鼻輻射、傳播時高頻衰減更大的影響。公式如下:
3)分幀、加窗
信號處理算法通常假設(shè)信號是固定的,而語音信號不斷變化,分幀后每一幀假定為靜止的,xt[n]=w[n]x‘[td+n],0<=n<=l-1,l 是幀長,每次移動一個幀移。通常ASR中,幀長取25ms,幀移取10ms,幀移使得幀與幀之間過渡更加平穩(wěn),否則,幀與幀連接處的信號會因為加窗而被弱化,這部分信息就丟失了,加窗后對每一幀計算短時平均能量(一幀樣本點的加權(quán)平方和)
4)DFT+取平方
離散傅里葉變換,從加窗信號中提取頻譜信息,計算時用FFT,取平方是為了剔除相位信息。
5)梅爾濾波
對DFT功率譜應(yīng)用一個梅爾級濾波器組,獲得梅爾級功率譜,每個濾波器從DFT多個頻帶中收集能量,DFT頻譜是等距頻段的,但人類聽覺在較高頻率下較不敏感。
對頻譜進行平滑化,并消除諧波的作用,突顯原先語音的共振峰。(因此一段語音的音調(diào)或音高,是不會呈現(xiàn)在 MFCC參數(shù)內(nèi),換句話說,以 MFCC為特征的語音辨識系統(tǒng),并不會受到輸入語音的音調(diào)不同而有所影響)此外,還可以降低運算量。
6)取對數(shù)
采用log壓縮動態(tài)范圍,人類對信號能量的感知是對數(shù)的。
7)IDFT
生成倒譜系數(shù),DFT估計的功率譜包含F(xiàn)0的諧波,使得頻譜包絡(luò)難以估計。
8)動態(tài)特征
描述倒譜系數(shù)隨著時間的變化,一共39維(標(biāo)準(zhǔn)),0-2階MFCCs(12維)差分,0-2階能量差分。
3、聲學(xué)模型
3.1聲學(xué)模型類型
3.2混合聲學(xué)模型架構(gòu)
在英文中這個聲學(xué)符號可以是音節(jié)(syllable)或者更小的顆粒度音素(phoneme);在中文中這個聲學(xué)符號可以是聲韻母或者是顆粒度同英文一樣小的音素。那么公式3中的聲學(xué)模型就可以表示為下面的公式4的形式:
其中Q表示發(fā)音單位的序列。從公式中可以看到,聲學(xué)模型最終轉(zhuǎn)換成了一個語音到發(fā)音序列的模型和一個發(fā)音序列到輸出文字序列的字典。這里的發(fā)音序列通常是音素,到此為止聲學(xué)模型是從語音到音素狀態(tài)的一個描述。為了對不同上下文的音素加以區(qū)分,通常使用上下文相關(guān)的“三音子”作為建模單元??梢杂孟聢D表示:
其中字典部分表示為如下公式5,其意義是把每個文字拆分成若干發(fā)音符號的序列。
基于上面的推到,聲學(xué)模型是一個描述語音和狀態(tài)之間轉(zhuǎn)換的模型。
此時,引入HMM假設(shè):狀態(tài)隱變量,語音是觀測值,狀態(tài)之間的跳轉(zhuǎn)符合馬爾科夫假設(shè)。那么聲學(xué)模型可以繼續(xù)表示為如下公式:
其中a表示轉(zhuǎn)移概率,b表示發(fā)射概率。用圖來表示的話就是下圖中的結(jié)構(gòu) :
3.3混合聲學(xué)模型GMM+HMM
聲學(xué)模型的主要功能是:對特征向量序列進行音素標(biāo)記,利用詞典({詞:音素})生成字符串序列,簡而言之,實現(xiàn)特征到字符的生成。
實現(xiàn)的方法:1、采用參數(shù)估計的方法,對GMM和HMM的參數(shù)進行估計,GMM參數(shù)的估計采用EM算法,HMM參數(shù)估計采用Baum-Welch算法;2、給定相關(guān)特征向量,通過GMM輸出概率,作為發(fā)射概率,結(jié)合HMM和viterbi算法標(biāo)記音素序列;3、根據(jù)詞典,生成字符串序列。
GMM模型的主要作用是生成發(fā)射概率P(X),其中X是特征向量,多元混合高斯分布的概率密度函數(shù)是:
混合權(quán)重的累加和等于一,即cm的和等于1,∑是D×D 維協(xié)方差矩陣,|∑|是∑的行列式,參數(shù)估計采用EM算法。
HMM模型是描述音素狀態(tài)轉(zhuǎn)換關(guān)系的,該模型包括五個參數(shù),初始概率,轉(zhuǎn)移概率,發(fā)射概率,觀測序列,隱含序列,在聲學(xué)模型中主要是通過HMM和viterbi標(biāo)記處音素序列,HMM模型圖如下:
其中,隱含狀態(tài)為音素,通過初始概率,轉(zhuǎn)移概率,發(fā)射概率,觀測序列可以求出各個時刻各音素的概率,結(jié)合viterbi算法求出音素序列,HMM參數(shù)估計采用Baum-Welch算法,
4、語言模型
語言模型的目的是根據(jù)聲學(xué)模型輸出的結(jié)果,給出最大概率的文字序列
n-gram語言模型:
P(S)被稱為語言模型,基于馬爾科夫假設(shè),下一個詞的出現(xiàn)僅僅依賴于它前面一個或幾個詞,假設(shè)僅僅依賴前面一個詞:
通常通過極大似然估計構(gòu)造語言模型,公式如下:
對于音字轉(zhuǎn)換問題,輸入拼音nixianzaiganshenme,可能對應(yīng)著很多轉(zhuǎn)換結(jié)果,對于這個例子,可能的轉(zhuǎn)換結(jié)果如下圖所示(只畫出部分的詞語節(jié)點),各節(jié)點之間構(gòu)成了復(fù)雜的網(wǎng)絡(luò)結(jié)構(gòu),從開始到結(jié)束的任意一條路徑都是可能的轉(zhuǎn)換結(jié)果,從諸多轉(zhuǎn)換結(jié)果中選擇最合適的結(jié)果的過程就需要解碼算法。
常用的解碼算法是viterbi算法,它采用動態(tài)規(guī)劃的原理能夠很快地確定最合適的路徑。
免責(zé)聲明: 本文章轉(zhuǎn)自其它平臺,并不代表本站觀點及立場。若有侵權(quán)或異議,請聯(lián)系我們刪除。謝謝! |