陸正海
(南京信息工程大學(xué)語言文化學(xué)院)
基于語料庫的網(wǎng)頁機器翻譯
陸正海
(南京信息工程大學(xué)語言文化學(xué)院)
本文討論的是在利用機器翻譯處理網(wǎng)絡(luò)上的各種文本時會出現(xiàn)的問題,同時提出一種模型來進行網(wǎng)頁文本的中英翻譯。這里會涉及文本兩部分的處理,即標(biāo)記部分和純文本部分。同時會首先進行標(biāo)記管理,再利用大型語料庫的比對進行純文本的翻譯。
機器翻譯 標(biāo)記 純文本 域 語料庫
當(dāng)進行WWW網(wǎng)頁文本的翻譯時,翻譯系統(tǒng)會遇到兩大類型的問題:如何在翻譯文本中插入HTML標(biāo)記并如何正確翻譯翻譯文本。第一個問題需要系統(tǒng)來正確處理所有的HTML標(biāo)記,否則可能會導(dǎo)致無法閱讀的翻譯文本。而第二個問題則需要一個大型的語料庫來分析文本的意義并避免歧義。如果成功地處理這個問題,系統(tǒng)可能會譯錯,這將是我們以后處理的重點。
本文中將設(shè)計一個機器翻譯系統(tǒng)來進行網(wǎng)頁的中英互譯,首先處理有標(biāo)記文本然后再進行非標(biāo)記部分的翻譯。
對于HTML文本,顯然不能將標(biāo)記(tag)與文本分開,先翻譯文本然后再插入相應(yīng)的標(biāo)記,因為中英文語言不總是一一對應(yīng)。如果這樣處理,圖一將會變成(〈p>約翰是一個〈u>李老師的學(xué)生〈/u>)。這顯然是不可接受的。因此需要換一種方式來處理這個問題。需要首先標(biāo)記HTML和文本塊,然后再分別翻譯純文本和標(biāo)記。然后系統(tǒng)會將其與目標(biāo)語言的文本相比較。如果目標(biāo)文本與源本完全吻合,就不存在問題。我們只需要將目標(biāo)文本部分相應(yīng)的地方做標(biāo)記。如果目標(biāo)文本與源文本不完全一致,系統(tǒng)必須找到相互需要標(biāo)記的標(biāo)記文本,然后再加入需要的tag。
圖一
(一)tag的分類
HTML中有不同的tag,而在機器翻譯中可以簡單地把它們分成兩類:
第一類:void tags(VT:無類型標(biāo)記)。VT是指HTML標(biāo)記中不影響文本塊,也不需要結(jié)束標(biāo)記。這種標(biāo)記的例子是圖片(IMG),圖二里就包括一個IMG標(biāo)記。
圖二
第二類:Real tags(RT:真實標(biāo)記)。RT是指HTML標(biāo)記中會影響文本塊并需要一個結(jié)束標(biāo)記(當(dāng)然某些特定類型也不是必需的)。這種標(biāo)記也分成幾大類:
(1)總體HTML網(wǎng)頁結(jié)構(gòu)標(biāo)記:這些標(biāo)記對于定義HTML網(wǎng)頁的整體結(jié)構(gòu)是必需的。這類標(biāo)記如:HTML,HEAD,TITLE和BODY。
(2)影響HTML頁面獨立的標(biāo)記:這些標(biāo)記會影響到HTML頁面的完整與獨立,換句話說這些標(biāo)記不能被用來影響單個詞和句子,這類標(biāo)記如FORM,UL,OL,SELECT。
(3)字符強調(diào)標(biāo)記:這類標(biāo)記用來強調(diào)詞、部分句子甚至整個段落,如EM,B,I和U。
(4)超文本和超鏈接:這類標(biāo)記是將當(dāng)前文本轉(zhuǎn)向其他頁面。
WWW上的大多數(shù)文本都是用HTML寫的,RL主要用來描述多媒體信息的鏈接,比如圖片。用戶不僅需要閱讀文本的字符串,還需要通過圖片信息與強調(diào)部分來理解其內(nèi)容。所有這些信息在機器翻譯時都需要保留。
(二)HTML標(biāo)記管理器
網(wǎng)頁文本同其他普通文本不一樣,是通過將信息編碼到HTML文本類型定義(DTD)中,這是SGML(一般語言組成標(biāo)準(zhǔn))的應(yīng)用。HTML標(biāo)記本身不需要通過機器翻譯系統(tǒng)來翻譯,但是他們必須在翻譯后保留在合適的地方。在系統(tǒng)里有一個標(biāo)記管理器(TM),它會將句子看成是一個整體而不會將其分開,因此在翻譯網(wǎng)頁時有兩種方法來處理這些標(biāo)記。
第一步:標(biāo)記分離。在標(biāo)記分離階段會用到HTML文本的信息框架和標(biāo)點符號。下面是TM如何處理這些標(biāo)記分離。
(1)起始與結(jié)束標(biāo)記必須保留(如〈A>,〈/A>,〈TITLE>,〈/TITLE>)。
(2)如果一對標(biāo)記中有好幾個句子,必須通過標(biāo)點符號來分離。
(3)一個表格塊中的每一項都被當(dāng)成是一個句子。
(4)空行后的復(fù)合名詞或短語被認(rèn)為是一個標(biāo)題。
HTML標(biāo)記會被篩選出來并存儲到一個外部文件中,里面包括句子數(shù)、詞數(shù)、詞、起始標(biāo)記、結(jié)束標(biāo)記以及FI(標(biāo)記信息)。完成這些操作后,系統(tǒng)就能正確理解不同標(biāo)記并將其當(dāng)成句子而不是短語來處理,以免出現(xiàn)誤解。
第二步:標(biāo)記恢復(fù)。如果目標(biāo)詞與源語言的詞一一對應(yīng),就不需要恢復(fù)。但是情況并非總是如此。更一般的情況是,會碰到1對N或者N對1又或N對M的情況。這種情況下,翻譯時,譯者不會處理完整的標(biāo)記,只需要處理詞串信息。TM保留所有的標(biāo)記,文本翻譯后,TM通過以下的方法將標(biāo)記恢復(fù)到目標(biāo)語信息中。
(1)1對N:源語言的詞的起始和結(jié)束標(biāo)記直接復(fù)制到目標(biāo)語中。
(2)N對1:TM分析源語言的起始和結(jié)束標(biāo)記,然后根據(jù)序列信息確定需要保留的標(biāo)記 (如〈A>,〈/A>,〈TITLE>,〈/TITLE>)。在此過程中,內(nèi)部標(biāo)記如大小和顏色標(biāo)記會被忽略。
(3)N對M:通常這種情況會發(fā)生在成語中。正如N對1的情況,TM分析源語言詞的標(biāo)記。然后TM會決定起始和結(jié)束標(biāo)記。在此過程中,某些顏色和大小的標(biāo)記可以被排除。
(三)標(biāo)記文本的翻譯
圖三表明標(biāo)記文本的不同情況。句子1和2是標(biāo)記文本在源語言和目標(biāo)語中都會出現(xiàn)的例子。句子3是標(biāo)記文本在目標(biāo)語中會出現(xiàn)在不同的地方,而句子4則是標(biāo)記文本不會出現(xiàn)的例子。
圖三
這些句子表明必須要選擇一個模型能夠使電腦決定目標(biāo)語文本的哪個部分需要標(biāo)記。有不同的方法來完成這個模型。在我們的模型中,可以分4步來處理這個問題。首先我們通過機器翻譯系統(tǒng)來翻譯整個文本,然后再使用同一個系統(tǒng)翻譯各個標(biāo)記文本,之后再將全文本和標(biāo)記文本相比較,因此我們可以決定哪些文本塊需要標(biāo)記。這樣做的話,我們可能還需要將標(biāo)記詞分開,然后再單獨翻譯,這對于源語言標(biāo)記文本可能會產(chǎn)生好幾個目標(biāo)語文本模塊時特別必要。更有甚者,有些英語詞當(dāng)它是句子一部分時可能會有不同的翻譯方法。
有時,一個句子的一個名詞可能會出現(xiàn)好幾次,翻譯時,這些名詞出現(xiàn)的次數(shù)很可能會顛倒,如:The teacher of the teacher comes(老師的老師來了).因此,為了使系統(tǒng)能正確處理這樣的句子,必須首先處理源語言的句子為:The teacher’s teacher came。這樣,標(biāo)記就不會出問題了。
至于翻譯沒有標(biāo)記的網(wǎng)頁純文本,一般我們只需要利用現(xiàn)有的機器翻譯系統(tǒng)。在我們的系統(tǒng)里使用的是基于語料庫的翻譯系統(tǒng)。首先需要一個大型的雙語語料庫,這一點目前已經(jīng)不是問題,還需要一個域識別器(domain identifier)。我們首先需要考慮域然后再考慮翻譯系統(tǒng)。
(一)域的識別
當(dāng)處理特定域的文本時,機器翻譯準(zhǔn)備度會非常高并異常高效。因此首先需要識別文本的域以提高翻譯的準(zhǔn)確性。在我們的系統(tǒng)里我們收集一些平衡的網(wǎng)頁文本來確定域。因為沒有可靠的標(biāo)準(zhǔn)域范疇統(tǒng)計數(shù)據(jù),我們必須收集這類文本,以下是收集標(biāo)準(zhǔn)。
(1)收集來的統(tǒng)計數(shù)據(jù)必須能反映整個WWW的內(nèi)容。
(2)有很多共同詞的兩個域能通過一個高級域融合在一起。
當(dāng)翻譯網(wǎng)頁文本時,域識別器分配top-one和top-two兩個范疇,然后確定相應(yīng)的域相關(guān)詞典,機器翻譯系統(tǒng)能夠很好翻譯特定域的文本,通過使用合適的詞典,翻譯時的歧義可以大量解決,并且提高翻譯的質(zhì)量。
例如,“doctor”一詞有很多意思,一旦確定翻譯的域是關(guān)于學(xué)術(shù)領(lǐng)域,很容易就確定目標(biāo)語的意思。
(二)基于語料庫的純文本的翻譯
本系統(tǒng)的基本理念很簡單:通過比對先前類似句子來翻譯句子。這種理念最先由Nagao(1984)提出。這種觀點和我們常說的“一個好的翻譯者是一個懶惰的翻譯者”有共通之處。在我們的系統(tǒng)中,需要用到大量先前的翻譯成果。這樣做不僅能節(jié)約時間,還能提高術(shù)語和風(fēng)格的一致性。
因為是基于語料庫的機器翻譯,我們首先需要一個平行的語料庫。這種意義上的機器可識別的平行語料庫是很容易實現(xiàn)的:聯(lián)合國提供了一個很好的多語文本資源。當(dāng)然很多WWW網(wǎng)頁也提供了大量的雙語或多語言文本,這同時說明了語料庫可以隨時進行擴展。
這種機器翻譯系統(tǒng)包括以下主要部分:
(1)包含源語言和目標(biāo)語的平行語料庫。
(2)一個匹配法則。
(3)一個組合法則。
(4)一個轉(zhuǎn)換與合成法則。
如要翻譯這句話:Alice bought a book on computer.當(dāng)然如果在語料庫里有相同的句子就簡單多了。當(dāng)然這種情況不多,更常見的例子是句子只有部分是匹配的,畫線部分完全包含了相應(yīng)的內(nèi)容。在這種情況下,我們很容易就能組合成譯文“愛麗絲買了一本關(guān)于電腦的書”。