用于語音識別的n元文法模型構造方法及語音識別系統(tǒng)的制作方法
【技術領域】
[0001] 本發(fā)明涉及一種在語音識別中,利用詞矢量分類來擴展人工標注訓練語料,以提 升語言模型的方法,具體提供一種用于語音識別的η元文法模型構造方法及語音識別系 統(tǒng)。
【背景技術】
[0002] 目前采用的語言模型建模技術主要是η元文法語言模型(n-gram Language Model)。該模型因其訓練簡單,復雜度低,使用方便等優(yōu)勢,在語音識別領域得到廣泛的應 用。但是,η元文法模型核心思想是通過詞頻統(tǒng)計來建模,在資源匱乏的領域,比如面向電 話交談的語音(CTS)識別系統(tǒng),由于語料規(guī)模是有限的,存在大量訓練語料中沒有出現的 文法組合,只能依靠平滑算法給那些概率為零的文法附上一個很小的概率。即使如此,數據 稀疏問題依然是效果不理想的主要原因。
[0003] η元文法語言模型運用于語音識別領域,實踐表明用戶語音的人工標注的加入對 于模型性能的提升是效果顯著。但是人工標注的獲得費時費力,因此數據量十分有限,如何 更充分地利用人工標注語料成為人們的研究目標。常用做法是依據標注的文法規(guī)則特點, 擴展出更多風格相近的語料,加入到模型中。之前的研究在這一問題上提出了一些方法,t匕 如依據已有的句子總結出一些句型,對于空缺的詞利用同義詞詞林進行同義詞擴展;也有 利用互信息來對詞典進行分類,產生的詞類用于擴展語料。
[0004] 近年來,神經網絡建模技術在語言模型中得到應用。η元文法語言模型是在離散空 間上建模,詞與詞相互之間僅有語法結構上的聯(lián)系,并無語義上的聯(lián)系。而神經網絡模型在 連續(xù)空間建模,能有效挖掘更深層的語言信息。詞矢量是神經網絡建模過程中可得到的產 物,每個詞由一個遠小于詞典詞個數的維度的矢量表示,矢量維度大大小于詞典詞個數,詞 的特征、以及詞與詞之間的關系信息就蘊藏在矢量中。詞矢量的這一特性在自然語言理解 領域中得到應用。本發(fā)明是將詞矢量應用到語音識別的語言模型提升中,利用詞矢量來獲 得詞典中詞相互間的相似度,按相似度將詞典中的詞分為若干詞類,對標注語料的詞進行 同類詞擴展以達到豐富語料的目的。
【發(fā)明內容】
[0005] 本發(fā)明的目的在于,為有效緩解語音識別領域中常用的η元文法語言模型數據稀 疏的問題,本發(fā)明提供了一種用于語音識別的η元文法模型構造方法及語音識別系統(tǒng)。
[0006] 為了實現上述目的,本發(fā)明提供一種用于語音識別的η元文法模型構造方法,所 述方法包含:
[0007] 步驟101)通過神經網絡語言模型訓練得到詞矢量,再對詞矢量進行分類以及多 層篩選,最終得到詞類;
[0008] 步驟102)利用直接統(tǒng)計詞頻的方法擴充人工標注,即同類詞替換時,直接統(tǒng)計與 原句有變化的1至η元文法組合,進而得到擴充部分的η元文法模型;
[0009] 步驟103)人工標注生成初步的η元文法模型,再與擴充部分的η元文法模型進行 模型插值,得到最終的η元文法模型。
[0010] 可選的,上述步驟101)進一步包含:
[0011] 步驟101-1)輸入標注及訓練文本;
[0012] 步驟101-2)通過神經網絡語言模型訓練得到詞典中的詞的相應詞矢量;
[0013] 步驟101-3)用K均值法對詞矢量分類,其中詞矢量間的相似程度用余弦相似度進 行統(tǒng)計;
[0014] 步驟101-4)對分類結果進行多層篩選,最終得到詞類。
[0015] 可選的,上述步驟102)進一步包含:
[0016] 步驟102-1)將標注文本中的詞對應至步驟101)得到的詞類,由相應分類中的詞 替換;
[0017] 步驟102-2)替換過程中,對與替換部分有關聯(lián)的1至η元文法組合進行詞頻信息 的統(tǒng)計;
[0018] 步驟102-3)根據詞頻信息生成標注擴充部分的η元文法語言模型Β。
[0019] 可選的,上述步驟103)進一步包含:
[0020] 步驟103-1)生成人工標注部分的η元文法語言模型A ;
[0021] 步驟103-2)計算模型A和模型B在開發(fā)集上的最佳插值系數,根據該系數插值模 型A和模型Β,得到最終模型。
[0022] 此外,本發(fā)明還提供了一種基于該η元文法模型的語音識別系統(tǒng)。
[0023] 與現有技術相比,本發(fā)明的技術優(yōu)勢在于:
[0024] 本發(fā)明利用神經網絡深入挖掘詞間信息,緩解語料的稀疏性,優(yōu)化了語言模型部 分,使其在語音識別系統(tǒng)中更有效地控制解碼器搜索路徑、提高解碼速度和識別正確率。
【附圖說明】
[0025] 圖1是詞矢量擴展人工標注流程圖;
[0026] 圖2是神經網絡語言模型結構圖;
[0027] 圖3語音識別系統(tǒng)基本構架。
【具體實施方式】
[0028] 下面結合附圖和具體實施例對本發(fā)明的方案進行詳細的說明。
[0029] 本發(fā)明提供的依據詞矢量擴展人工標注流程的η元文法模型構造方法的流程如 圖1所示,具體包含:
[0030] 1、詞矢量訓練:通過神經網絡語言模型訓練得到詞典中的詞的相應詞矢量。訓練 采用經典的NNLM形式,其結構圖如圖2所示。
[0031] 模型由輸入層、映射層、隱層及輸出層構成。詞典中的每個詞由一個維度為詞典大 小的矢量表示,矢量在該詞的位置上為1,其余維度為0。對于η元模型,輸入層輸入的是 "η-1"個詞矢量相連組成的長矢量,輸出層輸出已知η-1個詞,第η個詞為詞典中任意一個 詞的概率。其中,經過共享矩陣C,離散分布的矢量被映射至連續(xù)空間,所需的詞矢量從矩陣 C中獲得。
[0032] 2、詞矢量分類:用K均值法對詞矢量分類,矢量間的相似程度用余弦相似度來統(tǒng) 計。余弦相似度公式如公式⑵所示,表示兩個向量€,€之間的夾角的余弦值。在自然語 言理解領域中,常用該值來判斷向量的相似程度。夾角越小,就代表越相似。
[0034] 詞典中的詞被分為若干詞類后,再對分類結果作多層篩選。最終得到的詞類,類內 的詞之間可視為詞義及用法相近。
[0035] 3、人工標注擴展:擴展人工標注,即對于句子中屬于某類的詞用該類其他詞替代, 得到新的句子。這樣做相當于將人工標注看成句型,用同類詞進行填充,但是這不同于傳 統(tǒng)意義的句型構造,因為這樣的句型非人工獲得,形式更豐富,用于填充的詞詞性也更多樣 化。
[0036] 在擴展過程中,有些句子較長,涉及需替換的位置較多;或是有些詞相應的類中詞 數較多,同一位置可替換的詞多。這些情況使得有些句子一句被擴展成上百句,而有些只擴 展出個位數。擴展出句數多的句子,除了替換詞的位置,其它部分會被反復復制,這使得新 擴展出來的文法組合被不斷復制的部分稀釋。因此實際的擴展直接在詞頻統(tǒng)計層完成,即 同類詞替換時,直接計上與原句有變化的1至η元文法組合。這樣做相當于提前完成了模 型訓練時的詞頻統(tǒng)計,節(jié)省余下步驟的時間。
[0037] 4、新語言模型生成:由于標注擴展后的文本量遠大于人工標注,質量上來說,人工 標注的質量依然高于標注擴展,因此新的語言模型生成不是將兩部分文本直接混合,而是 采用模型插值的方法,以保證人工標注不被稀釋。
[0038] 本發(fā)明通過以上幾個部分的操作,獲得合理的詞矢量分類結果,擴展人工標注語 料,與原始人工標注結合,得到最終的語言模型,緩解了人工標注數據少的問題,提升語言 模型的性能,在語音識別應用中有穩(wěn)定效果。
[0039] 下面對本發(fā)明運用于語音識別過程的方案作進一步描述。
[0040] 一、語言模型及聲學模型準備
[0041] a.語言模型
[0042] 1、處理訓練文本及標注:訓練文本用于詞矢量的訓練,與標注領域越接近,文本量 越大,越有利于訓練的充分性。實際使用中,文本量達到G級的詞數時訓練較為充分。標注 為語音的手工標注文本。標注文本的處理比較簡單,如有標注中使用的特殊符合直接去掉, 再進行分詞;訓練文本的處理包括去除標點符號、去除特殊符號、分詞等。任務如為中文任 務,訓練文本也以中文為主,一般建議去掉訓練文本中含多個英文詞的語句,因為此類中英 文混合