專利名稱:口語會話中句子邊界識別方法
技術(shù)領(lǐng)域:
本發(fā)明涉及語音識別,特別涉及口語句子的邊界識別方法。
背景技術(shù):
隨著計算機硬件條件的飛速發(fā)展和語音識別技術(shù)的不斷提高,以語音為接口的語言理解以及生成系統(tǒng)(以下簡稱為語音語言聯(lián)合系統(tǒng))如人機接口、人機對話系統(tǒng)、同聲翻譯系統(tǒng)等開始走向?qū)嵱没?。這些系統(tǒng)有著廣闊的應(yīng)用前景。比如人機語音界面,它的完善將使人們不再為學習繁瑣的計算機操作而苦惱,因為任何事情你只需“說”給計算機聽,它便會按你的要求執(zhí)行。再如同聲翻譯技術(shù),它將消除不同種語言使用者之間的交流障礙,這將極大地方便人們跨國旅行,以及在大型國際盛會(奧運會,亞運會等)中讓來自不同國度的成員進行方便自如地交流成為可能。在軍事上,語音語言聯(lián)合系統(tǒng)也有著重要的應(yīng)用。美國已著手研發(fā)士兵用同聲翻譯機,以方便其在異域作戰(zhàn)時向當?shù)鼐用窳私馇闆r。另外電話竊聽一直是獲取軍事情報的有效手段,而從大量語音信息中慮取有效信息一直以來完全依賴人工,如果實現(xiàn)機器的自動慮取,將極大地提高效率和節(jié)省人力。
從圖1可以看出,語音語言聯(lián)合系統(tǒng)一般由三個模塊組成語音識別模塊、句子邊界切分模塊和語言分析與生成模塊。由于語音識別的結(jié)果是沒有任何標點的連續(xù)文本,要進行下一步的分析、轉(zhuǎn)換和生成處理必須先斷句,也就是把連續(xù)文本分割成一個個的句子,而句子邊界切分模塊正是行使這樣一種功能,它處于語音識別模塊和語言分析生成模塊的中間,是連接它們的一道橋梁。語音識別技術(shù)和語言分析與生成技術(shù)一直是計算機科學領(lǐng)域的研究熱點,而句子邊界切分技術(shù)在語音語言聯(lián)合系統(tǒng)的初步實用化以前并沒有受到廣泛關(guān)注。如今隨著語音語言聯(lián)合系統(tǒng)的應(yīng)用的不斷擴展,句子邊界切分技術(shù)作為支撐這種聯(lián)合應(yīng)用的核心技術(shù)之一,日益受到重視。
發(fā)明內(nèi)容
本發(fā)明的目的是提供一種口語會話中句子邊界識別方法,其解決了將語音識別后的連續(xù)文本轉(zhuǎn)化為后續(xù)分析模塊可處理的句子的問題。
為實現(xiàn)上述目的,一種口語會話中句子邊界識別方法,包括訓練和切分兩個過程,所述的訓練過程包括步驟獲得口語語料庫;對口語語料庫進行替代等預(yù)處理;統(tǒng)計n-gram模型的n元同現(xiàn)頻率;估計n元正向依存概率和n元逆向依存概率;獲得n元正、逆向依存概率數(shù)據(jù)庫;設(shè)定Maximum Entropy模型的特征函數(shù);循環(huán)計算特征函數(shù)參數(shù);獲得特征函數(shù)參數(shù)數(shù)據(jù)庫。
口語會話中句子邊界識別方法屬于純統(tǒng)計方法,其實施只需要一個后臺口語語料庫,語料庫不需要進行任何深層地切分或者標注等處理。該方法不受語言的限制,通過更換訓練語料庫,可以運用于任何一種語言的句子邊界切分。
圖1是語音語音應(yīng)用系統(tǒng)的一般模式。
具體實施例方式
下面結(jié)合附圖詳細說明本發(fā)明技術(shù)方案中所涉及的各個細節(jié)問題。
口語語料的預(yù)處理獲取的口語語料不能直接拿來訓練,必須經(jīng)過一些預(yù)處理。句子邊界切分,就是在連續(xù)文本中尋找句子的結(jié)束點,也即預(yù)測那些句末標點的出現(xiàn)位置,因而只要是句末標點,對切分而言都沒有區(qū)別。預(yù)處理的主要工作就是將語料中的句末標點用統(tǒng)一的符號代替,為方便敘述,本文中的替代符號用“SB”表示;而對于非句末標點的其他標點,則要刪除,因為語音識別出的文本中是不可能含有這樣的標點符號的。對于中文而言,這項工作很容易,直接將句號、問號、感嘆號等句末標點替換成同一的符號,再將逗號、冒號、引號等非句末標點刪除即可。但有些語言的標點具有歧義,比英文的句號“.”,它也用來表示縮寫形式,比如“Mr.”,“Dr.”等,這時我們必須先將這些縮寫形式替換成不含“.”的形式,然后再用統(tǒng)一的符號替換掉“.”。
N元同現(xiàn)頻率的統(tǒng)計和N元依存概率估計N元同現(xiàn)概率的統(tǒng)計建立在經(jīng)過預(yù)處理的口語語料庫的基礎(chǔ)上。首先我們要統(tǒng)計出一個基元詞表,對于中文而言,這個詞表就是語料庫中出現(xiàn)的所有字和“SB”,對于英文,這個詞表包括所有語料庫中出現(xiàn)的單詞和縮寫等的替換形式以及“SB”。在根據(jù)語料庫統(tǒng)計出的N元組頻率的基礎(chǔ)上,我們用Modified Kneser-Ney Smoothing算法對詞典中所有條目的N元組合的依存概率進行估計。Modified Kneser-Ney Smoothing對不同出現(xiàn)次數(shù)的N元組給予不同程度的消減來補償那些出現(xiàn)次數(shù)為零的N元組,這種平滑方法經(jīng)Stanley F.Chen等人的評測,性能超過其他平滑方法。
Maximum Entropy模型特征函數(shù)設(shè)定及參數(shù)訓練Maximum Entropy模型是用來估算聯(lián)合概率的一種統(tǒng)計模型,其中心思想是在滿足訓練語料約束的情況下使聯(lián)合事件的熵,也就是不確定性達到最大。在自然語言處理中,聯(lián)合概率一般表示為P(b,c),b表示可能的情況,c表示所在的上下文。在本文所描述的句子邊界切分方法中,b被設(shè)定為一個布爾型變量,其為真表示判斷位置為句子邊界,為假則表示判斷位置不是句子邊界。相應(yīng)的特征函數(shù)成組出現(xiàn),如下所示
從上面的公式可以看出,每一組特征函數(shù)和一個Sj對應(yīng),Sj表示某一長度的字組(中文)或詞組(英文),在本方法中Sj設(shè)定為訓練語料庫中出現(xiàn)的所有三元、二元和一元組。公式里prefix(c)、suffix(c)分別表示判斷位置的所有前綴和后綴的集合,舉例而言,比如句子“請<1>明<2>天<3>再<4>來<5>”,對于位置<3>,其前綴的集合為{天,明天,請明天},后綴的集合為{再,再來};include(prefix(c),Sj)表示Sj屬于prefix(c)。每一個特征函數(shù)都有一個權(quán)值與之對應(yīng),權(quán)值表明了特征函數(shù)所屬的特征對結(jié)果影響程度的大小。在本方法中,權(quán)值也成組出現(xiàn),表示為αj10,αj11,αj20,αj21,這些權(quán)值通過Generalized Iterative Scaling算法計算得到,并儲存于最大熵參數(shù)數(shù)據(jù)庫中。對于某一上下文環(huán)境下,某種情況出現(xiàn)的概率計算如下P(c,b)=πΠj=1k(αj10fj10(b,c)×αj11fj11(b,c)×αj20fj20(b,c)×αj21fj21(b,c))]]>k為所設(shè)的特征函數(shù)的組數(shù),π為歸一化變量,在本例中其值為π=P(c,0)+P(c,1)特別地,有時我們只想考慮左邊的上下文或者右邊上下文和某種情況出現(xiàn)的聯(lián)合概率,這時計算公式分別為P(c_left,b)=πΠj=1k(αj10fj10(b,c)×αj11fj11(b,c))]]>P(c_right,b)=πΠj=1k(αj20fj20(b,c)×αj21fj21(b,c))]]>基于雙向n-gram模型和Maximum Entropy模型的句子邊界切分方法對于給定的連續(xù)文本“W1<1>W2<2>...<n-1>Wn”,其中Wi(1 i n-1)表示基元,句子邊界切分就是判斷所示的n-1個位置是否為句子邊界。用Pis(i)表示位置i是句子邊界的概率,用Pno(i)表示位置i不是句子邊界的概率,那么位置i被判定是一個句子邊界當且僅當Pis(i)>Pno(i)。
在本方法中,Pis(i)和Pno(i)分別由四部分組成正向n-gram概率、逆向n-gram概率、最大熵正向修正概率和最大熵逆向修正概率。用公式描述如下Pis(i)=Wn_is(Ci)×Pis(i|NN)×Wr_is(Ci)×Pis(i|RN)Pno(i)=Wn_no(Ci)×Pno(i|NN)×Wr_no(Ci)×Pno(i|RN)其中Pis(i/NN)、Pno(i/NN)和Pis(i/RN)、Pno(i/RN)分別表示正、逆向n-gram概率,Wn_is(Ci)、Wn_no(Ci)和Wr_is(Ci),Wr_no(Ci)分別表示對正、逆向n-gram概率的加權(quán)值,下面我們分別描述上述各項的計算方法。
正向n-gram切分概率正向n-gram模型將文本視為從左至右的馬爾可夫序列。我們用W1W2...Wm(m為自然數(shù))來表示一個輸入文字序列,Wi(1≤i≤m)表示基元,根據(jù)馬爾可夫特性,某一基元出現(xiàn)的概率只和它左邊n-1個基元相關(guān),也就是P(Wm|W1W2...Wm-1)=P(Wm|Wm-n+1...Wm-1)。由條件概率公式,文字序列出現(xiàn)的概率可寫為P(W1W2...Wm)=P(W1W2...Wm-1)×P(Wm|W1W2...Wm-1),綜合起來我們得到P(W1W2...Wm)=P(W1W2...Wm-1)×P(Wm|Wm-n+1...Wm-1)將表示句子的邊界的符號“SB”加入字符序列中,判斷位置i是否為一個句子的邊界,即計算P(W1W2...WiSBWi+1)(即Pis(i|NN))和P(W1W2...WiWi+1)(即Pno(i|NN))的大小。以3-gram模型為例,考慮到位置i-1有兩種情況,一是其為句子邊界,二是其不為句子邊界,計算P(W1W2...WiSBWi+1)和P(W1W2...WiWi+1)的迭帶公式為P(W1W2...WiSBWi+1)=P(W1W2...SBWi×P(SB|SBWi×P(Wi+1|WiSB)+P(W1W2...Wi-1Wi)×P(SB|Wi-1Wi)×P(Wi+1|WiSB)P(W1W2...WiWi+1)=P(W1W2...Wi-1SBWi)×P(Wi+1|SBWi)+P(W1W2...Wi-1Wi)×P(Wi+1|Wi-1Wi)假設(shè)W1左邊的位置編號為0,那么迭帶的初始值為Pis(0|NN)=1Pn0(0|NN)=0逆向n-gram切分概率逆向n-gram模型和正向n-gram模型類似,只是它將字符序列W1W2...Wm看成一個從右到左的馬爾可夫序列,也就是將他們出現(xiàn)的先后順序看成是WmWm-1...W1。同樣,通過條件概率公式和馬爾可夫特性我們得到P(WmWm-1...W1)=P(WmWm-1...W2)×P(W1|WnWn-1...W2)Wi為一個句子的終結(jié)點,當且僅當P(WmWm-1...Wi+1SBWi)>P(WmWm-1...Wi+1Wi)。
同樣,我們給出迭帶計算P(WmWm-1...Wi+1SBWi)(即Pis(i+1|RN))和P(WmWm-1...Wi+1Wi)即(Pno(i+1|RN))的公式(3-gram)P(WmWm-1...Wi+1SBWi)=P(WmWm-1...Wi+2SBWi+1)×P(SB|SBWi+1)×P(Wi|Wi+1SB)+P(WmWm-1...Wi+2Wi+1)×P(SB|Wi+2Wi+1)×P(Wi|Wi+1SB)以P(WmWm-1...Wi+1Wi)=P(WmWm-1...Wi+2SBWi+1)×P(Wi|SBWi+1)+P(WmWm-1...Wi+2Wi+1)×P(Wi|Wi+2Wi+1)及初始條件P(SBWm)=1,P(Wm)=0。
逆向n-gram模型從右向左迭帶計算每個位置為句子邊界的概率,這樣做可以避免正向模型的一些錯誤,比如下面這個句子“小張病了一個星期”,如果采用正向切分,很可能輸出如下的結(jié)果“小張病了SB一個星期”,因為從左往右搜索,“小張病了”就是一個完整的句子;而如果采用逆向切分,從右往左搜索,我們顯然不會把“一個星期”認為是一個完整的句子,那么搜索繼續(xù)向右,直到句子真正的邊界。
最大熵修正權(quán)值通過上面的敘述,基于逆向n-gram切分對正向n-gram的有益補充,我們考慮將正、逆向n-gram概率加權(quán)綜合起來,而權(quán)值的確定即依靠本方法所述的最大熵模型的參數(shù)。
如上文所述,Wn_is(Ci),Wn_no(Ci),表示對正向n-gram概率的加權(quán),其計算等同于P(c_left,1)和P(c_left,0),如下所示W(wǎng)n_is(Ci)=πΠj=1kαj11fj11(1,ci)]]>Wn_no(Ci)=πΠj=1kαj10fj10(0,ci)]]>Wr_is(Ci),Wr_no(Ci)分別表示對正向n-gram概率的加權(quán),其計算等同于P(c_right,1)和P(c_right,0),如下所示
Wr_is(Ci)=πΠj=1kαj21fj21(1,ci)]]>Wn_no(Ci)=πΠj=1kαj20fj20(0,ci)]]>為了驗證本方法的切分性能,我們利用收集的漢語和英語口語語料進行了句子邊界切分試驗,并和參考文獻中的語言模型(正向n-gram模型)進行了對比。訓練語料和測試語料以及切分結(jié)果如下所示,需要說明的一點是,測試結(jié)果中的準確率為正確切分數(shù)目占總切分數(shù)目的比率,召回率為正確切分數(shù)目占原有句數(shù)的比率,而F-Score是綜合衡量正確率和召回率的指標,其計算公式為
表1.訓練語料的詳細情況
表2.測試語料的詳細情況
表3.漢語切分試驗結(jié)果
表4.英語切分試驗結(jié)果
從試驗結(jié)果可以看出,我們提出的基于雙向n-gram模型和maximumentropy模型的句子邊界切分方法在性能上明顯超過文獻[1]中所用的單純基于正向n-gram模型的方法,這是因為我們的方法在判斷某一位置是否為句子邊界時,綜合考慮了正、逆向搜索對切分結(jié)果的影響,并通過最大熵參數(shù)對正、逆向概率進行合理地調(diào)整。
權(quán)利要求
1.一種口語會話中句子邊界識別方法,包括訓練和切分兩個過程,所述的訓練過程包括步驟獲得口語語料庫;對口語語料庫進行替代等預(yù)處理;統(tǒng)計n-gram模型的n元同現(xiàn)頻率;估計n元正向依存概率和n元逆向依存概率;獲得n元正、逆向依存概率數(shù)據(jù)庫;設(shè)定Maximum Entropy模型的特征函數(shù);循環(huán)計算特征函數(shù)參數(shù);獲得特征函數(shù)參數(shù)數(shù)據(jù)庫。
2.按權(quán)利要求1所述的方法,其特征在于所述的循環(huán)計算特征函數(shù)參數(shù)的算法為Generalized Iterative Scaling算法。
3.按權(quán)利要求1所述的方法,其特征在于所述的切分過程包括步驟用基于正向n-gram模型的切分方法對文本進行切分;用基于逆向n-gram模型的切分方法對文本進行切分;抽取切分點的上下文,用Maximum Entropy模型的特征函數(shù)的參數(shù)對正、逆向切分結(jié)果進行加權(quán)綜合。
全文摘要
一種基于雙向N-gram模型和Maximum Entrpy模型的句子邊界切分方法包括訓練和切分兩個過程,所述的訓練過程包括步驟獲得口語語料庫;對口語語料庫進行替代等預(yù)處理;統(tǒng)計n-gram模型的n元同現(xiàn)頻率;估計n元正向依存概率和n元逆向依存概率;獲得n元正、逆向依存概率數(shù)據(jù)庫;設(shè)定Maximum Entropy模型的特征函數(shù);循環(huán)計算特征函數(shù)參數(shù);獲得特征函數(shù)參數(shù)數(shù)據(jù)庫?;陔p向n-gram模型和Maximum Entropy模型的句子邊界切分方法屬于純統(tǒng)計方法,其實施只需要一個后臺口語語料庫,語料庫不需要進行任何深層地切分或者標注等處理。該方法不受語言的限制,通過更換訓練語料庫,可以運用于任何一種語言的句子邊界切分。
文檔編號G06F17/30GK1570923SQ0314755
公開日2005年1月26日 申請日期2003年7月22日 優(yōu)先權(quán)日2003年7月22日
發(fā)明者宗成慶, 劉丁 申請人:中國科學院自動化研究所