翟飛飛,宗成慶
(中國科學院 自動化研究所 模式識別國家重點實驗室,北京 100190)
口語是人與人之間相互交流最直接、最方便、最自然的語言使用方式。與書面語相比,由于人在說話過程中思維和交流的需要,口語句子中往往存在很多不同的語言現(xiàn)象,包括間斷、省略、重復、修正、詞序顛倒和冗余等。對于口語中的這些特殊語言現(xiàn)象的研究和處理,是目前口語分析所面臨的一個難點[1]。
文獻[1]對漢語口語中的冗余現(xiàn)象進行了定義,即當說話人思維停頓或不連貫的時候,往往不自覺地在句子中添加一些詞匯來保持語氣和句子的連續(xù)性,這些添加的詞匯就構成了冗余。冗余現(xiàn)象是句中的多余成分,去掉這些成分不會對句子的意思和結構產(chǎn)生影響。例如: 口語句子: “是那個如家快捷嗎?”中的“那個”一詞在本句中為冗余成分。
在英語口語語言現(xiàn)象的自動處理方面,人們對重復、修訂等現(xiàn)象進行了大量的研究,冗余現(xiàn)象的處理主要是作為上述工作的一個子任務來完成的。文獻[2]使用規(guī)則的方法來識別口語句子中的冗余成分。文獻[3]使用條件隨機場(CRFs),文獻[4]使用最大熵模型在識別其他特殊語言現(xiàn)象的同時對冗余成分進行了識別。文獻[5]對刪除冗余成分后造成的影響進行了實驗,他們發(fā)現(xiàn)提前刪除冗余成分能夠提高依存句法分析的準確率。
在漢語口語語言現(xiàn)象的自動處理方面,針對口語冗余現(xiàn)象處理的工作并不是很多。文獻[6]介紹了中國科學院自動化研究所和中國社會科學院語言所聯(lián)合建設的漢語口語對話語料庫,它涉及了旅館預訂、機場信息咨詢以及餐館訂餐等領域,并對口語的各種特殊現(xiàn)象進行了標注。文獻[7]對100多段涉及旅館預訂領域的口語對話語料進行了統(tǒng)計分析,冗余現(xiàn)象在口語的特殊語言現(xiàn)象中所占比例為4.7%。文獻[8]詳盡地分析了真實口語語料中的冗余現(xiàn)象,對冗余現(xiàn)象涉及的詞匯長度,詞匯分布進行了統(tǒng)計,并對冗余現(xiàn)象出現(xiàn)的特征進行了詳細分析并提出了一種面向中間表示的口語解析方法,得到了較好的魯棒性和正確率,但文獻[8]并沒有對冗余現(xiàn)象進行針對性的處理。冗余現(xiàn)象是影響口語句法和語義分析的重要因素之一[1]。當系統(tǒng)對口語句子進行分析或自動翻譯時,冗余現(xiàn)象的存在常常會降低分析準確率,影響譯文的質量。因此,如果能夠在口語句子分析之前把這部分冗余成份進行過濾或去除,就可以有效地減輕后續(xù)分析模塊的負擔。當然,這個預處理過程本身也可以看作是口語理解的一項任務。本文基于真實漢語口語語料庫對冗余現(xiàn)象進行分析,并對漢語口語中的冗余詞匯識別方法進行了研究。
本文的其余部分安排如下: 第2節(jié)我們對口語對話語料中的冗余現(xiàn)象進行分析;第3節(jié)介紹了本文進行冗余詞匯識別和處理的思路;第4節(jié)簡單介紹了所使用的統(tǒng)計方法: 最大熵模型,支持向量機,以及條件隨機場;第5、6節(jié)介紹了冗余詞匯識別的方法并給出了實驗結果和分析;第7節(jié)對冗余詞匯處理前后的口語句子進行了翻譯實驗并進行人工打分以及結果分析;最后一節(jié)對全文進行總結。
本文使用中國科學院自動化研究所和中國社會科學院語言所聯(lián)合建設的CASIA-CASSIL口語對話語料庫的部分語料,包括: 旅館咨詢領域44段 1 522句、機場信息問詢領域55段1 471句以及餐館訂餐領域41段 1 509句。為了便于使用統(tǒng)計方法對口語中的冗余詞匯進行識別,我們首先把口語句子中的冗余現(xiàn)象分為以下四類:
(1) 語氣詞性質的冗余詞匯,即在句子中表示語氣的詞,例: “啊”、“呀”等,記作prt^y;
(2) 代詞性質的冗余詞匯,即詞性為代詞,且可以作為冗余詞匯的詞匯,例: “這個”、“那”等,記作prt^r;
(3) 副詞性質的冗余詞匯,即詞性為副詞,且可以作為冗余詞匯的詞,例: “就”等,記作prt^d;
(4) 插入語性質的冗余詞匯,除上述三類的冗余都分入此類,例“就是說”,“就是”等,記作prt^p;
另外,為了后續(xù)描述的方便,我們把后面三類的合并,即(2)(3)(4)的并集記作prt^rdp。
我們按照上述四類對所使用的口語對話語料中的冗余詞匯進行標注。在標注之前,我們首先對語料進行了如下預處理: (1)由于真實的口語轉成的文本中并沒有標點符號信息,而CASIA-CASSIL語料中含有標點符號信息,因此在標注之前,我們首先刪除了語料中的標點符號。(2)由于我們沒有發(fā)現(xiàn)專用于真實場景口語對話語料的分詞工具,我們使用分詞工具ICTClass對語料進行分詞和詞性標注。然后按照我們的分類模式對語料中的冗余詞匯進行標注*冗余詞匯標注過程中,對于具有句型指示作用的詞匯標注為非冗余詞匯,以保證刪除冗余詞匯后,句子的句型信息不會消除。,標注的同時我們也對分詞錯誤進行了修改。完成上述工作后,就得到了本文所使用的語料。
對語料進行預處理之后,我們對使用的口語對話語料進行了統(tǒng)計分析。在旅館咨詢領域、機場信息問詢領域以及餐館訂餐領域三個領域的口語語料中,冗余詞匯在總詞匯中所占的比例分別為 11.97%、15.23%和14.4%。這說明在真實的口語對話中,有至少11%的詞匯不僅對口語的語法分析和語義理解沒有幫助,而且會產(chǎn)生不利影響。其他的統(tǒng)計結果如表1。
表1 真實口語語料統(tǒng)計結果
表格中的數(shù)據(jù)代表當前語料中當前類別的冗余詞匯在所有冗余詞匯中所占的比例。從表中可以看出,無論哪個領域,語氣詞性質的冗余詞匯(prt^y)在冗余詞匯中所占比例最大,超過50%,說明人們在口語對話中語氣詞的使用較多,這也符合一般的規(guī)律。前三類冗余詞匯所占比例之和可以達到93%以上,這說明冗余詞匯在詞典中的分布主要集中在語氣詞、副詞、代詞三種詞性上,這也為我們的冗余成分識別提供了便利。
經(jīng)由上面的分析,我們知道冗余詞匯的分布相對集中,而冗余現(xiàn)象則主要是由冗余詞匯構成*一些長度較長的冗余現(xiàn)象可能并不是完全由典型的冗余詞匯組成,例如“我想打聽一下”,但在語料中所占比例很少[8],且直觀上對譯文影響不大,因此對這部分冗余成份本文沒有進行處理。,因此本文以冗余詞匯作為冗余現(xiàn)象識別和處理的基本單位。本文對冗余詞匯進行識別和處理的任務就是識別并刪除口語對話語句中的冗余詞匯。刪除句子中的冗余詞匯后,就可以把處理好的口語句子送入后續(xù)應用模塊進行后續(xù)處理,如口語句法分析,口語機器翻譯等。因此,為盡量減小刪除冗余詞匯后對后續(xù)應用模塊的不利影響,冗余詞匯識別的原則是在保證準確率的情況下,盡量提高召回率。也就是說,在F值相差不大的情況下,我們選擇準確率較高的方法進行冗余詞匯識別。
我們把識別口語中冗余詞匯的任務作為一個分類問題,通過統(tǒng)計分類器對口語句子中的詞進行分類從而判定當前詞是否是冗余詞匯。
為了在冗余詞匯識別過程中采用與各個冗余詞匯類別相適應的特征模板信息,我們把各個類別的識別任務分開進行。例如,語氣詞性質的冗余詞匯識別并不需要前后文的詞型特征,但前后文的詞型特征對于識別代詞、副詞、插入語性質的冗余詞匯卻有著積極的作用。另外,我們發(fā)現(xiàn)識別代詞、副詞、插入語性質的冗余詞匯所需要的特征模板信息基本一致,為了降低識別過程的復雜性,我們把這三類的冗余成分識別任務合并在一起進行。因此冗余成分的識別任務即變?yōu)閮蓚€典型的兩類分類問題: (1)對口語句子中的詞按照語氣詞性質的冗余詞匯prt^y和非prt^y兩類進行分類。(2)對口語句子中的非prt^y詞匯按照prt^rdp和非prt^rdp兩類進行分類。冗余詞匯處理的過程可用圖1表示。
圖1 口語冗余詞匯識別與處理過程
以口語句子“呃哦你這個能不能按時解決啊”為例說明這個過程。對口語句子預處理之后,首先識別句子中的語氣詞性質的冗余詞匯“呃”、“哦”、“啊”,并對其標注為“prt^y”;然后識別句子中其他類別的冗余詞匯“這個”,并標注為“prt^rdp”;最后刪除標注為“prt^y”或“prt^rdp”的詞,即得到句子“你能不能按時解決”,送入后續(xù)處理模塊。
現(xiàn)有的統(tǒng)計分類方法中,最大熵模型近幾年受到人們的重視并成功地應用于很多自然語言處理問題中,例如: 詞性標注、中文分詞、句子邊界識別、淺層句法分析及文本分類等。SVM是一種基于統(tǒng)計學習理論下的數(shù)據(jù)集分割模型,它在自然語言處理領域也有著廣泛應用,例如: 文本分類、淺層句法分析等。而且它在兩類分類問題上有著很好的分類效果。另外,冗余詞匯的識別問題還可看作一個序列標注問題,而條件隨機場模型(CRFs)是序列標注模型中的佼佼者。另外,上述三種統(tǒng)計方法都能夠融合口語句子中各種上下文特征信息而無需考慮特征之間的相關性,便于使用各種各樣的特征信息,因此,本文分別使用了最大熵模型、支持向量機(SVM)和條件隨機場(CRFs)三種統(tǒng)計方法來完成口語冗余詞匯的識別任務,并選擇效果最好的方法用于最終的冗余詞匯識別。
最大熵模型的基本思想是在滿足所有已知因素的基礎上建立模型,并對未知事件作最客觀的估計。也就是說,在滿足已知因素的條件下,選擇熵最大的模型來估計數(shù)據(jù)的分布[9]。使用最大熵模型進行數(shù)據(jù)分布的估計一般使用文獻[10]介紹的GIS(Generalized Iterative Scaling)算法,Pietra等人改進了GIS算法,具體見文獻[11]。本文使用最大熵模型分別完成兩項任務,即: (1)對口語句子中的詞按照語氣詞性質的冗余詞匯prt^y和非prt^y兩類進行分類。(2)對口語句子中的詞按照prt^rdp和非prt^rdp兩類進行分類。
支持向量機(SVM)是由文獻[12]提出的一種基于兩類分類問題的有監(jiān)督機器學習算法,SVM的目標是尋找一個分類面使得兩類數(shù)據(jù)正確切分,且分類面距離兩類數(shù)據(jù)的間隔最大化。SVM在兩類分類問題上有著良好的分類效果,因此本文使用SVM分別完成了兩項任務,即: (1)對口語句子中的詞按照語氣詞性質的冗余詞匯prt^y和非prt^y兩類進行分類。(2)對口語句子中的詞按照prt^rdp和非prt^rdp兩類進行分類。
條件隨機場(CRFs)是繼隱馬爾可夫模型和最大熵馬爾可夫模型之后提出的一個新的基于統(tǒng)計的序列標注模型,它在自然語言處理的領域得到了很好的應用。CRFs 是一個無向圖模型,它在給定需要標記的觀察序列的條件下,計算整個標記序列的聯(lián)合概率分布[13]。它不僅具有最大熵馬爾可夫模型的優(yōu)點,而且從理論上解決了標注偏置問題,達到了更好的效果。本文把冗余詞匯識別問題看作一個序列標注問題,使用CRFs對口語句子中的詞進行標注,標注類別為prt^rdp和非prt^rdp。
語氣詞性質的冗余詞匯是指在句子中作為冗余成份的語氣詞,例如“啊”、“呀”等。本部分的任務是判斷口語句子中的每個詞是否是語氣詞性質的冗余詞匯。由于語氣詞在口語句子中出現(xiàn)的位置相對固定,且直觀上這個問題是一個分類問題而不是一個序列標注問題,因此我們選擇最大熵模型和SVM來完成這個任務。
本文使用張樂博士的最大熵工具包,采用GIS迭代算法迭代200次進行訓練,其他參數(shù)為工具默認值,記作ME,特征模板如表2所示。
我們使用SVM-light V6.01進行了兩次SVM識別prt^y的實驗。由于其他核函數(shù)訓練時間長且效果不好,實驗均采用線性核函數(shù),其他參數(shù)為工具默認值。兩次實驗使用不同的特征模板: 一次和上述最大熵模型一致,記作SVM_MEfea,而另一次使用的特征模板如表3所示,記作SVM_Full。
表2 prt^y識別—最大熵模型特征模板
表3 prt^y識別—SVM_Full的特征模板
根據(jù)對語氣詞性質的冗余詞匯在口語句子中的使用規(guī)律的總結,在使用統(tǒng)計模型進行冗余詞匯識別的基礎上,我們又添加了以下三類規(guī)則來協(xié)助完成prt^y的識別,實驗證明規(guī)則的添加顯著提高了識別的準確率和召回率。
a) 識別口語句子中關于語氣詞的固定搭配,根據(jù)搭配的含義對其中的語氣詞進行單獨處理。例如搭配“不是…吧”,對應的規(guī)則為: “吧 after 不是 notprt 5”,意思是指,如果“吧”出現(xiàn)在“不是”之后,并且二者之間的詞的個數(shù)小于或等于5,則判定“吧”不是冗余詞匯。
b) 如果口語句子只包含語氣詞,用來表示應答、響應等情況,規(guī)定句子中的第一個詞為非冗余詞匯。該類規(guī)則是一個語氣詞列表,若句子中只出現(xiàn)這些語氣詞,那么就可以使用這條規(guī)則。例如: 為表示“肯定答復”的含義,使用句子“啊,啊!”,則第一個“啊”標注為非冗余詞匯。
c) 許多語氣詞的使用很簡單,除了特定的結構外,在口語句子中均沒有任何意義,于是都標注為冗余詞匯。例如c)類規(guī)則: “唉 prt^y”,表示只要口語句子中出現(xiàn)詞匯“唉”,就判定為冗余詞匯。
規(guī)則使用時,首先根據(jù)詞的前后文信息判斷是否能夠使用這條規(guī)則,然后根據(jù)規(guī)則確定當前詞是否是冗余詞匯。例如句子“不是 沒有 了 吧”。分析詞匯“吧”時,由于它前面的第3個詞為“不是”,因此可以使用規(guī)則,于是判定“吧”不是冗余詞匯。
我們在上述最大熵模型和SVM(使用與最大熵模型相同的特征模板和取值)的基礎上又進行了添加規(guī)則的實驗。實驗過程中,首先檢查當前詞匯是否可以使用規(guī)則進行判定,若存在對應的規(guī)則,則根據(jù)規(guī)則對詞匯進行判定。若沒有,則使用統(tǒng)計模型對詞匯進行判定。實驗中共使用規(guī)則39條,兩次實驗分別記作ME_Rule和 SVM_MEfea_Rule。
我們把本文第2部分介紹的語料即旅館咨詢領域1 522句、機場信息問詢領域1 471句以及餐館訂餐領域1 509句合并在一起進行了語氣詞性質的冗余詞匯的識別實驗,并使用識別正確率(Precision)、召回率(Recall)和F值(Fscore)三項指標對實驗結果進行評價。由于實驗所使用的語料規(guī)模較小,我們采用交叉驗證的方式進行實驗以保證實驗結果的精確性。實驗過程中,我們把語料均分為9份,進行9次實驗,每次實驗使用其中的8份作為訓練語料,剩余的一份作為測試語料,并將9次實驗的結果取平均值后得到最終的結果,如表4所示。
表4 統(tǒng)計方法識別prt^y結果
由SVM_MEfea 和 SVM_Full 的實驗結果表明,增加的特征并沒有改善prt^y識別的結果。從ME和ME_Rule,以及SVM_MEfea和SVM_MEfea_Rule兩組結果對比,我們可以看到規(guī)則的加入顯著改善了prt^y識別的結果。另外,由ME和SVM_MEfea以及ME_Rule 和SVM_MEfea_Rule的結果對比,我們發(fā)現(xiàn)最大熵模型結果準確率較高,而SVM結果的召回率相對較高,但準確率較低。由于識別冗余詞匯的目的是便于后續(xù)分析,且冗余詞匯識別的原則是保證準確率的情況下,盡量提高召回率,因此我們選擇最大熵模型進行prt^y的識別。
使用統(tǒng)計方法進行語氣詞性質的冗余詞匯識別能夠達到較高的正確率,但由于某些語氣詞的搭配結構較為復雜或者涉及到語義層面,模型很難對其作出正確的識別,主要有以下兩條:
1) 語氣詞“啦”用于某些動詞或動詞短語后表示完成一種動作,不是冗余成分,但模型標注為冗余。例句子“取消啦”,“跑總站去啦”,“找到啦”等。
2) 語氣詞“吧”、“呢”用于表示疑問語氣,使得句子為疑問句型,不是冗余成分,但模型標注其為冗余成分。例如句子 “沒問題吧”,“十點呢”等。
prt^rdp是指在口語句子中具有代詞、或者副詞、或者插入語性質的冗余詞匯。本部分的任務是對口語句子中的每個詞按prt^rdp或非prt^rdp進行分類并進行相應標注。我們使用了最大熵模型、SVM以及條件隨機場(CRFs)進行了實驗,所使用的語料為第2部分所得到的語料。
統(tǒng)計模型在獲取上下文的詞性作為特征時,不會因為詞性對應的詞不同而對詞性特征加以區(qū)分,于是相同的詞性對類別的指示作用也就相同。但冗余詞匯和非冗余詞匯為分類提供的信息顯然不同,因此在特征采集之前,我們對詞性進行修改以反應這種提供信息的差異。我們稱這種策略為PosModi。
在進行特征提取之前,我們遍歷訓練語料,抽取所有的prt^rdp冗余詞匯建立prt^rdp冗余詞詞典,在之后的模型訓練時,對冗余詞詞典中的詞的詞性進行修改。例如: “就”的詞性為副詞“d”,將其修改為: “就”詞性為“d_prt”。
我們?nèi)匀皇褂脧垬凡┦康淖畲箪毓ぞ甙?,并采用GIS迭代算法迭代200次進行訓練,其他參數(shù)為默認值,記作ME,特征模板如表5所示。
表5 最大熵模型識別prt^rdp特征模板
SVM所使用的工具為SVM-light V6.01,由于其他核函數(shù)訓練時間長且效果不好,因此我們采用線性核函數(shù),其他參數(shù)為默認值,記作SVM,特征模板如表6所示。
表6 SVM識別prt^rdp特征模板
我們使用工具CRF++--0.53進行prt^rdp的識別,選擇的特征過濾頻次下限值為5,且由九折交叉驗證取得-c值為0.3*-c選項用于規(guī)定模型對訓練數(shù)據(jù)的擬合程度,c值越大,對訓練數(shù)據(jù)的擬合程度越高,但擬合程度過高會出現(xiàn)過擬合現(xiàn)象。此處我們使用交叉驗證的方式選擇-c的參數(shù)為0.3。,其他參數(shù)設為默認值,記作CRF,特征模板選擇如表7。
表7 CRF識別prt^rdp特征模板
注: a. 表5、6、7中的C,P,以及下標的含義與表2、3相同。T-1代表模型對前一個詞的標注結果。
b. 表5、6中的“取值”一列的含義與表2、3一致。
c. 表7中“取值”一列的含義為對特征進行重復并添加到模型中。例如若當前詞的詞性為副詞“d”,則構建兩個模板T00和T01,兩個模板的取值均為“d”,并加入到模型中。實驗證明,這樣的方式進行特征重復能夠提高識別的效果。
我們使用第2部分所得到的口語語料共4 502句進行prt^rdp識別實驗,并使用識別正確率(Precision)、召回率(Recall)和F值(Fscore)三項指標對實驗結果進行評價。實驗過程中,和第5部分采用的實驗方法相同,我們把語料均分為9份,進行9次實驗,并對實驗結果取平均值后得到最終的實驗結果,如表8所示。
表8 統(tǒng)計方法識別prt^rdp結果
從表中可以看出,PosModi策略并沒有改善識別結果,而且雖然各個模型結果有好有差,但總體上相差不大,結果不是很好。主要原因是所選擇的特征無法真正反應prt^rdp冗余詞匯的本質。因為無論是代詞性質的冗余,還是副詞性質的冗余,都是由上下文以及本身的語義關系決定,而不是它周圍的詞、詞性等外在特征所能夠單純決定的。例如下面的口語句子:
句(1): 你們這個是多長時間一班?
句(2): 你們這個是多長時間去一次海南?
句(1)中的“這個”指代屬于句子主語“你”的某樣東西,例如“大巴”。而句(2)則是說話人為維持話語連續(xù)性而加入的冗余成分。為了防止噪聲信息的引入,特征選取的窗口不能太大,因此句(1)和句(2)中的“這個”的上下文信息完全一致,但卻代表不同的含義。這說明無論是代詞性質的冗余,還是副詞性質的冗余,在相當大程度上是由長距離的上下文信息、前后句子的信息以及句子本身的語義關系決定,而不是它周圍的詞或詞性所能夠單純決定的。在滿足冗余詞匯識別原則的條件下,我們選擇CRFs來進行prt^rdp冗余詞匯的識別。
我們隨機選擇了旅館咨詢領域的兩段口語對話76句、機場信息問詢領域的三段對話78句以及餐館訂餐領域的三段對話76句,共230句口語對話語句,使用最大熵模型識別語氣詞性質的冗余詞匯,使用CRFs識別其他種類的冗余詞匯并進行相應處理。
在230句測試語料中,共有119句含有冗余詞匯;冗余詞匯共有205個,占全部詞匯總數(shù)的 13.9%,其中語氣詞性質的冗余詞匯共有141個,占冗余詞匯總數(shù)的68.7%,其他性質的冗余詞匯共64個,占31.3%。
由于上述語料沒有對應的翻譯答案,我們使用人工主觀打分的方法對結果進行評測。打分標準使用第二次國際口語翻譯評測(IWSLT)所采用的打分標準,即把流暢性、充分性以及語義保持性劃分為5個等級進行打分[14],評價指標如表9所示。
表9 人工主觀打分評價標準
本文分別使用目前翻譯質量較好的SYSTRAN和Google翻譯系統(tǒng)進行實驗。冗余詞匯處理完成后,我們使用這兩個翻譯系統(tǒng)對處理后的230句口語句子進行翻譯。
每個翻譯系統(tǒng)對每個漢語口語句子都會得到三句英語譯文,分別對應刪除冗余詞匯前(記作BeProc),利用統(tǒng)計方法識別并刪除冗余詞匯后(記作AfProc),以及刪除人工標注的完全正確的冗余詞匯后(記作CorrectProc)的漢語句子。
每個口語句子都由兩個打分人員進行獨立打分。打分完成后,對所有句子的對應指標求平均值,SYSTRAN和Google兩個翻譯系統(tǒng)在刪除冗余詞匯前后的翻譯人工打分結果見表10、表11。
表10 SYSTRAN系統(tǒng)翻譯結果
表11 Google系統(tǒng)翻譯結果
從表10、表11中可以看出,刪除冗余詞匯前后,兩個系統(tǒng)譯文的充分性指標基本上沒有變化,而流暢性和語義保持性指標卻相應提高,這說明在對口語句子進行自動翻譯時,冗余現(xiàn)象的存在并不會引起信息的大量丟失,但卻能夠影響譯文的流利程度并引入誤導信息。對比兩個系統(tǒng)的BeProc和CorrectProc結果,在充分性變化不大的情況下,漢語口語句子的英語譯文的流暢性和語義保持性都有了不同程度的改善,這說明預先刪除冗余詞匯能夠改善口語的譯文質量。BeProc和AfProc的對比結果表明,我們的基于統(tǒng)計的冗余詞匯識別方法能夠幫助改善漢語口語的英語譯文質量。
通過對刪除冗余詞匯前后的翻譯打分結果進行分析,我們發(fā)現(xiàn)冗余詞匯處理主要從以下兩個方面改善了譯文質量:
1) 避免了引入誤導信息。
例: 口語句子“奧您不訂今天的是嗎”
冗余處理前SYSTRAN和Google系統(tǒng)的翻譯結果分別為:
SYSTRAN: Austria you do not subscribe today right
Google: Austria today is that you do not set right
由于冗余詞匯“奧”的存在引入了誤導信息“Austria”,而刪除冗余詞匯后結果變?yōu)椋?/p>
SYSTRAN: You do not subscribe today right
Google: You do not set are you today
消除了誤導信息。
2) 使得譯文較為順暢,且能夠基本保留原文語義。
例: 句子: “對就是櫻花西街馬路的西邊兒”
冗余處理前SYSTRAN和Google系統(tǒng)的翻譯結果分別為:
SYSTRAN: To is west the oriental cherry the street street west
Google: West Street is the cherry on the west side of the street children
翻譯系統(tǒng)把冗余詞匯“就是”作為句子動詞,背離了原文語義,且譯文不順暢。刪除冗余詞匯后的結果為:
SYSTRAN: To oriental cherry west street street west
Google: Cherry Street on the west side of the road
冗余詞匯處理后再進行翻譯,譯文順暢且基本保留了源句子的含義。
刪除冗余詞匯之后譯文總體質量得到了改善,但對于某些口語句子,冗余詞匯的刪除有時會導致譯文質量的下降。一個原因是受翻譯系統(tǒng)本身的影響。例如口語句子“哦就是飛機還在鄂爾多斯呢是吧”,刪除冗余詞匯之后的句子變?yōu)椤帮w機還在鄂爾多斯是吧”,兩者語義完全相同,Google系統(tǒng)給出的譯文分別為“Oh, the aircraft is still in it, right Erdos”和“Ordos is the right aircraft is also”。雖然輸入漢語句子語義相同,但冗余詞匯處理前的句子翻譯結果基本符合原文語義,但處理后的翻譯結果卻與原文語義大相徑庭。這說明Google系統(tǒng)對于有些口語句子的語義無法保有忠實性,SYSTRAN系統(tǒng)也有類似的問題,這里不再贅述。
另一個原因是冗余詞匯有時可以作為對話子句[1]*對話子句是指一個對話語句中所包含的分句,而對話語句指從說話人開始講話到講完停下或被對方強行打斷為止所說的全部內(nèi)容。開始或結束的標志,也可以作為重復或修訂等口語現(xiàn)象出現(xiàn)的標志。刪除這些冗余詞匯后會使翻譯系統(tǒng)無法判定對話語句之間的界限,或者重復、修訂等現(xiàn)象的出現(xiàn),從而導致譯文質量下降。例如: 句子“到這兒可能四點吧大概”,刪除冗余詞匯之前SYSTRAN系統(tǒng)的翻譯結果為: To here possible four probably,而刪除冗余詞匯之后的結果為: To here possible four general ideas。當然,Google系統(tǒng)也有相同的問題出現(xiàn)。
對于刪除冗余詞匯后所導致的譯文質量下降的問題,一方面需要通過發(fā)展基于真實口語對話語料的機器翻譯系統(tǒng)來解決,而另一方面則可以通過識別標點符號位置來判定對話子句間的界限,以及將冗余、重復、修訂等特殊語言現(xiàn)象同時進行識別處理來解決,這也將是我們下一步要進行的工作之一。
本文對漢語口語對話語料中的冗余現(xiàn)象進行了分析和分類,并利用最大熵模型、支持向量機以及條件隨機場模型等統(tǒng)計方法分別對口語句子中的冗余詞匯進行了識別和處理,并取得了較好的效果。同時,本文對冗余詞匯處理前后的口語句子進行了自動翻譯,翻譯結果證明,如果在對口語句子進行自動翻譯前預先對冗余詞匯進行識別處理,則能夠改善口語句子的譯文質量。
在下一步工作中,我們將探索對于冗余詞匯識別更為有效的方法以及特征信息,并考慮對口語句子中的其他特殊現(xiàn)象進行自動識別和處理。
[1] 宗成慶.統(tǒng)計自然語言處理[M].清華大學出版社,2008.
[2] M.Johnson, E. Charniak, and M. Lease. An improved model for recognizing disfluencies in conversational speech[C]//Proc. Rich Text 2004 Fall Workshop(RT-04F), 2004.
[3] M. Lease and M. Johnson. Early deletion of fillers in processing conversational speech[C]//Proceedings of the HLT-NAACL, 2006:73-76.
[4] E. Fitzgerald, F. Jelinek, and K. Hall. Reconstructing false start errors in spontaneous speech text[C]//European Association for Computational Linguistics, 2009:255-263.
[5] E. Fitzgerald, F. Jelinek, and K. Hall. Integrating sentence- and word-level error identification for disfluency correction[C]//ACL, 2009:765-774.
[6] Keyan Zhou, Aijun Li, Zhigang Yin, Chengqing Zong. CASIA-CASSIL: a Chinese Telephone Conversation Corpus in Real Scenarios with Multi-leveled Annotation[C]//Proceedings of LREC, 2010:2407-2413.
[7] 宗成慶, 吳華, 黃泰翼,等. 限定領域漢語口語對話語料分析[C]//計算語言學文集(全國第五屆計算語言學聯(lián)合學術會議論文集),1999: 115-122.
[8] 解國棟. 統(tǒng)計口語解析方法研究[D]. 中國科學院自動化所博士論文, 2004.
[9] Adam L. Berger, Stephen A.Della Pietra, Vincent J. Della Pietra. A maximum entropy approach to natural language processing[J]. Computational Linguistics, 1996,22(1):39-71.
[10] J.N. Darroch and D. Ratcliff. Generalized iterative scaling for log-linear models[J]. Annals of Mathematical Statistics. 1972,43: 1470-1480.
[11] S. D. Pietra, V. D. Pietra and J. Lafferty. Inducing features of random fields[J]. IEEE Transactions on Pattern Analysis and Machine Intelligence. 1997,19:380-393.
[12] V. Vapnik. The nature of statistical learning theory[M]. Springer. 1995.
[13] J. Lafferty, A. McCallum, and F. Pereira. Conditional random fields: probabilistic models for segmenting and labeling sequence data[C]//Proc. of ICML, 2001: 282-289.
[14] M. Eck and C. Hori. Overview of the IWSLT 2005 Evaluation Campaign[C]//Proceedings of IWSLT. 2005:11-32.
[15] 左云存, 宗成慶. 基于語義分類樹的漢語口語理解方法[J]. 中文信息學報, 2006, 20(2):8-15.
[16] 解國棟, 宗成慶, 徐波. 面向中間語義表示格式的漢語口語解析方法[J]. 中文信息學報, 2003, 17(1): 1-6.