1.基于前向神經(jīng)網(wǎng)絡語言模型的漢語語音關鍵詞檢索方法,所述方法包括:
步驟1)將包含歷史詞的輸入樣本和目標詞輸入前向神經(jīng)網(wǎng)絡模型,對于每個目標詞wi,加入概率分布為q(wi)的若干個噪聲詞,并將最后一個隱藏層的激活輸出傳至目標詞和這些噪聲詞所在節(jié)點處,由此根據(jù)訓練的目標函數(shù)計算各層之間的轉(zhuǎn)換矩陣;計算輸出層的輸出與目標詞的誤差,將誤差通過網(wǎng)絡回傳,更新各轉(zhuǎn)換矩陣,直至前向神經(jīng)網(wǎng)絡模型訓練完畢;
步驟2)利用步驟1)得到的前向神經(jīng)網(wǎng)絡模型計算輸入詞歷史的目標詞概率;
步驟3)將前向神經(jīng)網(wǎng)絡語言模型計算得到的目標詞概率用于解碼器中,通過解碼器對語音解碼得到多候選識別結果的詞圖,再將詞圖轉(zhuǎn)為混淆網(wǎng)絡并生成逆序索引;在檢索階段,根據(jù)關鍵詞列表在逆序索引中檢索關鍵詞,返回命中關鍵詞及其出現(xiàn)的時間。
2.根據(jù)權利要求1所述的基于前向神經(jīng)網(wǎng)絡語言模型的漢語語音關鍵詞檢索方法,所述步驟1)具體包括:
步驟101)輸入N個訓練樣本時,同時輸入一個基于訓練樣本的目標詞統(tǒng)計得到的一元概率;
所述訓練樣本包括輸入樣本和目標詞;其中N個輸入樣本為:ui(1≤i≤N),每個ui由n-1個詞歷史vij(1≤j≤n-1)組成,ui=(vi1,vi2,…vi,n-1);表示形式采用“N中選一”的編碼模式;所述目標詞為wi(1≤i≤N);
步驟102)將輸入層的輸入樣本通過映射層矩陣映射到連續(xù)空間,串接在一起后作為第一個隱藏層的輸入;然后將詞向量繼續(xù)向前傳播,直至最后一個隱藏層;
步驟103)根據(jù)NCE準則,將步驟101)的一元概率生成若干噪聲詞;并將最后一個隱藏層的激活輸出傳至目標詞和這些噪聲詞所在節(jié)點處,根據(jù)訓練的目標函數(shù)計算各層之間的轉(zhuǎn)換矩陣;
步驟104)計算輸出層的輸出與目標詞的誤差,將誤差通過網(wǎng)絡回傳,更新各轉(zhuǎn)換矩陣,直至神經(jīng)網(wǎng)絡訓練完畢。
3.根據(jù)權利要求2所述的基于前向神經(jīng)網(wǎng)絡語言模型的漢語語音關鍵詞檢索方法,其特征在于,所述步驟103)的具體實現(xiàn)過程為:
對于每個目標詞wi,加入概率分布為q(wi)的k個噪聲樣本wij,q(wi)采用Unigram的概率;引入變量C,那么一個詞是由神經(jīng)網(wǎng)絡預測得到(C=1),還是由 噪聲樣本得到(C=0),其概率如下式所示:
其中:
其中,D′是最后一個隱藏層到輸出層的變換矩陣,b是偏置向量,Z(u)為規(guī)整因子,Z(u)在訓練和預測過程中均設為1;
訓練的目標函數(shù)J定義為最大化logP(C|w,u)的期望,即:
通過求最大化的J,求得各層之間的轉(zhuǎn)換矩陣。
4.根據(jù)權利要求3所述的基于前向神經(jīng)網(wǎng)絡語言模型的漢語語音關鍵詞檢索方法,其特征在于,所述步驟2)具體包括:
步驟201)將包含n-1個詞歷史v0j(1≤j≤n-1)的向量u0輸入上述訓練完成的前向神經(jīng)網(wǎng)絡模型中;
步驟202)計算映射層上的不同詞歷史傳至第一個隱藏層時的結果:CjDv0j(1≤j≤n-1),D為映射層的矩陣;保存計算結果;
步驟203)根據(jù)不同的詞歷史v0j,在內(nèi)存中查找上述已經(jīng)計算好的詞向量CjDv0j,經(jīng)過若干個隱藏層傳至輸出層;
步驟204)在輸出層計算目標詞的概率:
P(w|u0)=p(w|u0)=exp(D'h2+b) (8)。