本發(fā)明屬于統(tǒng)計(jì)機(jī)器翻譯技術(shù)領(lǐng)域,尤其涉及一種基于多維度數(shù)據(jù)分析和語義的中英語料庫校對(duì)方法。
背景技術(shù):
統(tǒng)計(jì)機(jī)器翻譯主要包括翻譯模型和語言模型兩大部分,其中翻譯模型由雙語平行語料庫訓(xùn)練而來,語言模型由目標(biāo)語言單語語料訓(xùn)練而來,統(tǒng)計(jì)機(jī)器翻譯引擎的質(zhì)量在很大程度上取決于用來訓(xùn)練的雙語平行語料庫的質(zhì)量。國外有研究表明,經(jīng)過校對(duì)的高質(zhì)量的1000萬句對(duì)的雙語語料和未經(jīng)校對(duì)的8000萬句對(duì)的語料所訓(xùn)練出來的引擎翻譯質(zhì)量相當(dāng)。由于雙語平行語料一般數(shù)量龐大,動(dòng)輒數(shù)千萬甚至上億句對(duì),而且來源復(fù)雜。
綜上所述,現(xiàn)有技術(shù)的存在的問題是:雙語平行語料數(shù)量來源復(fù)雜造成校對(duì)不正確和不整齊。
技術(shù)實(shí)現(xiàn)要素:
本發(fā)明的目的在于提供一種基于多維度數(shù)據(jù)分析和語義的中英語料庫校對(duì)方法,旨在解決雙語平行語料數(shù)量來源復(fù)雜造成校對(duì)不正確和不整齊的問題。
本發(fā)明是這樣實(shí)現(xiàn)的,一種基于多維度數(shù)據(jù)分析和語義的中英語料庫校對(duì)方法,所述基于多維度數(shù)據(jù)分析和語義的中英語料庫校對(duì)方法為:利用規(guī)則機(jī)器翻譯引擎,將語料庫中的英語句子翻譯成中文;然后此中文和語料庫中的中文句子進(jìn)行匹配;根據(jù)匹配率,輔以距離、長度、編號(hào)多維度數(shù)據(jù)分析特征,找出不匹配的句對(duì),留下準(zhǔn)確的句對(duì),從而校對(duì)出正確的語料庫。
進(jìn)一步,所述基于多維度數(shù)據(jù)分析和語義的中英語料庫校對(duì)方法具體包括以下步驟:
檢查英文句子中是否存在漢字,通過漢字內(nèi)碼表,自動(dòng)取出英文句子中存在漢字的句子;
檢查英中句子長度是否匹配,計(jì)算英文句子的長度和漢語句子的長度的比值,其中英文句子長度就是句子中英文字符的數(shù)量,漢語句子長度就是句子中漢字的數(shù)量,就是然后設(shè)定一個(gè)閾值,超出該閾值范圍的不匹配,閾值比值范圍為:0.4≤閾值比值≤6;
檢查句子是否超長,計(jì)算句子中英文句子的長度和漢語句子的長度,用于統(tǒng)計(jì)機(jī)器翻譯訓(xùn)練的句子中,漢語句子長度大于500或英語句子長度大于800為超長句子,去掉;
檢查漢語句子中的英文是否太多,計(jì)算漢語句子中英文字符的數(shù)量,用于統(tǒng)計(jì)機(jī)器翻譯訓(xùn)練的句子,訓(xùn)練出的翻譯模型為中英短語對(duì),一個(gè)漢語句子中含有非漢字和標(biāo)點(diǎn)的字符數(shù)超過40,將非漢字和標(biāo)點(diǎn)去掉;
檢查漢語句子中漢字是否太少,計(jì)算漢語句子中漢字的數(shù)量,用于統(tǒng)計(jì)機(jī)器翻譯訓(xùn)練的句子,訓(xùn)練出的翻譯模型是中英短語對(duì),漢語句子中漢字?jǐn)?shù)量少于2,該句子不合格;
檢查圓括號(hào)是否匹配,首先檢查英文句子的圓括號(hào)是否配對(duì),然后檢查漢語句子的圓括號(hào)是否配對(duì),再檢查英文句子和漢語句子雙方的圓括號(hào)是否配對(duì);計(jì)算英文句子中左圓括號(hào)的數(shù)量,再計(jì)算英文句子中右圓括號(hào)的數(shù)量,看兩者數(shù)量是否相等;計(jì)算漢語句子中左圓括號(hào)的數(shù)量,再計(jì)算漢語句子中右圓括號(hào)的數(shù)量,看兩者數(shù)量是否相等;計(jì)算英語句子中左圓括號(hào)的數(shù)量,再計(jì)算漢語句子中左圓括號(hào)的數(shù)量,看兩者數(shù)量是否相等;計(jì)算英語句子中右圓括號(hào)的數(shù)量,再計(jì)算漢語句子中右圓括號(hào)的數(shù)量,看兩者數(shù)量是否相等;
檢查方括號(hào)是否匹配,首先檢查英文句子的方括號(hào)是否配對(duì),然后檢查漢語句子的方括號(hào)是否配對(duì),再檢查英文句子和漢語句子雙方的方括號(hào)是否配對(duì);
檢查句首項(xiàng)目符號(hào)與編號(hào)是否匹配,對(duì)原文和譯文部分句首項(xiàng)目符號(hào)與編號(hào)不匹配的進(jìn)行校正;如果原文句首有項(xiàng)目符號(hào)與編號(hào),而譯文句首沒有項(xiàng)目符號(hào)與編號(hào),則將原文的句首項(xiàng)目符號(hào)與編號(hào)刪除掉;如果譯文句首有項(xiàng)目符號(hào)與編號(hào),而原文句首沒有項(xiàng)目符號(hào)與編號(hào),則將譯文的句首項(xiàng)目符號(hào)與編號(hào)刪除掉;
檢查數(shù)字是否正確,檢查語料庫中數(shù)字是否錯(cuò)誤,以及檢查原譯文數(shù)字不相匹配的錯(cuò)誤;采用查找關(guān)鍵詞“C:D:D||C:D:D||C:^D1&&!E:^D1”的方法,找出問題句對(duì);其中C:代表在漢語句子中查找,D代表任意數(shù)字,為多個(gè)數(shù)字;D:D代表數(shù)字,:為數(shù)字的模式,^代表句首,D1代表一個(gè)數(shù)字;||為邏輯或運(yùn)算,&&為邏輯與運(yùn)算,!為邏輯非運(yùn)算;C:^D1&&!E:^D1表示漢語句子以數(shù)字開始,同時(shí)其對(duì)應(yīng)英文句子不是以數(shù)字開始;
檢查各種亂碼,根據(jù)漢字的內(nèi)碼表和提取一個(gè)全部由亂碼組成的關(guān)鍵字文件檢查各種亂碼;
語義校對(duì),對(duì)語料庫進(jìn)行語義校對(duì)是本發(fā)明的重點(diǎn),方法是采用英漢規(guī)則機(jī)器翻譯引擎對(duì)句對(duì)中的英文句子進(jìn)行翻譯,得到中文譯文,然后將該譯文和該句對(duì)中的中文進(jìn)行相似度計(jì)算,相似度低于某個(gè)閾值的認(rèn)為是不合格句對(duì)。
進(jìn)一步,檢查各種亂碼中,采用兩種方法檢查亂碼,具體包括:
第一種方法檢查亂碼為:根據(jù)漢字的內(nèi)碼表,找出語料庫中含有亂碼的句對(duì);
第二種方法檢查亂碼為:提取一個(gè)全部由亂碼組成的關(guān)鍵字文件,然后在語料庫中查找這些亂碼關(guān)鍵字,若出現(xiàn)超過兩次,則該句對(duì)為亂碼句對(duì)。
進(jìn)一步,所述基于多維度數(shù)據(jù)分析和語義的中英語料庫校對(duì)方法包括:采用貝葉斯分類方法來將語料庫中的雙語句對(duì)分成兩類:準(zhǔn)確的雙語句對(duì)和不準(zhǔn)確的雙語句對(duì),然后將其中不準(zhǔn)確雙語句對(duì)過濾掉;
假設(shè)雙語句對(duì)t可由n個(gè)相互獨(dú)立的特征V={v1,v2,...,vn}確定,t屬于類別ci(i=1,2)的概率為P(ci|t),那么當(dāng)ci使得P(ci|V)獲得最大值時(shí),t就屬于ci類;這樣,求出P(ci|V)的最大值,確定統(tǒng)計(jì)短語t所處的類別;
根據(jù)貝葉斯公式:
由于各類別的先驗(yàn)概率是未知的,因此,通常假設(shè)各類別的出現(xiàn)概率相同,即P(c1)=P(c2),這樣對(duì)于公式1取最大值就轉(zhuǎn)換成只需要求P(V|ci)最大,在各特征間不存在依賴關(guān)系的情況下有
依據(jù)上述公式2獲得雙語句對(duì)所處的類別,從而依此確定是否過濾該雙語句對(duì)。
進(jìn)一步,所述特征包括:
雙語句對(duì)的英文句子中是否存在漢字;
雙語句對(duì)中英中句子長度是否匹配;
雙語句對(duì)的句子是否超長;
雙語句對(duì)的漢語句子中英文是否太多;
雙語句對(duì)的漢語句子中漢字是否太少;
雙語句對(duì)的圓括號(hào)是否匹配;
雙語句對(duì)的方括號(hào)是否匹配;
雙語句對(duì)的句首項(xiàng)目符號(hào)與編號(hào)是否匹配;
雙語句對(duì)中的數(shù)字是否正確;
雙語句對(duì)中是否存在亂碼。
本發(fā)明采用多維度數(shù)據(jù)分析外加語義分析相結(jié)合的方法,可保證校對(duì)后的語料庫既整齊,又正確。本發(fā)明采用對(duì)語料庫進(jìn)行語義校對(duì)的方法,并利用了規(guī)則機(jī)器翻譯引擎的翻譯結(jié)果。
附圖說明
圖1是本發(fā)明實(shí)施例提供的基于多維度數(shù)據(jù)分析和語義的中英語料庫校對(duì)方法流程圖。
具體實(shí)施方式
為了使本發(fā)明的目的、技術(shù)方案及優(yōu)點(diǎn)更加清楚明白,以下結(jié)合實(shí)施例,對(duì)本發(fā)明進(jìn)行進(jìn)一步詳細(xì)說明。應(yīng)當(dāng)理解,此處所描述的具體實(shí)施例僅僅用以解釋本發(fā)明,并不用于限定本發(fā)明。
本發(fā)明實(shí)施例提供的基于多維度數(shù)據(jù)分析和語義的中英語料庫校對(duì)方法,所述基于多維度數(shù)據(jù)分析和語義的中英語料庫校對(duì)方法為:利用規(guī)則機(jī)器翻譯引擎,將語料庫中的英語句子翻譯成中文;然后此中文和語料庫中的中文句子進(jìn)行匹配;根據(jù)匹配率,輔以距離、長度、編號(hào)多維度數(shù)據(jù)分析特征,找出不匹配的句對(duì),留下準(zhǔn)確的句對(duì),從而校對(duì)出正確的語料庫。
采用貝葉斯分類方法來將語料庫中的雙語句對(duì)分成兩類:準(zhǔn)確的雙語句對(duì)和不準(zhǔn)確的雙語句對(duì),然后將其中不準(zhǔn)確雙語句對(duì)過濾掉;
假設(shè)雙語句對(duì)t可由n個(gè)相互獨(dú)立的特征V={v1,v2,...,vn}確定,t屬于類別ci(i=1,2)的概率為P(ci|t),那么當(dāng)ci使得P(ci|V)獲得最大值時(shí),t就屬于ci類;這樣,求出P(ci|V)的最大值,確定統(tǒng)計(jì)短語t所處的類別;
根據(jù)貝葉斯公式:
由于各類別的先驗(yàn)概率是未知的,因此,通常假設(shè)各類別的出現(xiàn)概率相同,即P(c1)=P(c2),這樣對(duì)于公式1取最大值就轉(zhuǎn)換成只需要求P(V|ci)最大,在各特征間不存在依賴關(guān)系的情況下有
依據(jù)上述公式2獲得雙語句對(duì)所處的類別,從而依此確定是否過濾該雙語句對(duì)。
所述特征包括:
雙語句對(duì)的英文句子中是否存在漢字;
雙語句對(duì)中英中句子長度是否匹配;
雙語句對(duì)的句子是否超長;
雙語句對(duì)的漢語句子中英文是否太多;
雙語句對(duì)的漢語句子中漢字是否太少;
雙語句對(duì)的圓括號(hào)是否匹配;
雙語句對(duì)的方括號(hào)是否匹配;
雙語句對(duì)的句首項(xiàng)目符號(hào)與編號(hào)是否匹配;
雙語句對(duì)中的數(shù)字是否正確;
雙語句對(duì)中是否存在亂碼。
下面結(jié)合附圖對(duì)本發(fā)明的應(yīng)用原理作進(jìn)一步描述。
如圖1所示,本發(fā)明的基于多維度數(shù)據(jù)分析和語義的中英語料庫校對(duì)方法,具體包括以下步驟:
S101:檢查英文句子中是否存在漢字,對(duì)于中英雙語句對(duì)來說,英語中是不能存在漢字的,所以可以通過漢字內(nèi)碼表,來自動(dòng)取出英文句子中存在漢字的句子。
S102:檢查英中句子長度是否匹配。這可以計(jì)算英文句子的長度和漢語句子的長度的比值,然后設(shè)定一個(gè)合理的閾值,超出閾值范圍的認(rèn)為不匹配,因?yàn)橐话慊プg英文句子比漢語句子長,故可以設(shè)定該比值小于0.4為不匹配的句子,該比值大于6也為不匹配的句子。
S103:檢查句子是否超長,用于統(tǒng)計(jì)機(jī)器翻譯訓(xùn)練的句子,如果太長是不太合適的,所以可以去掉,比如漢語句子長度大于500或英語句子長度大于800的可認(rèn)為超長。
S104:檢查漢語句子中英文是否太多,用于統(tǒng)計(jì)機(jī)器翻譯訓(xùn)練的句子,訓(xùn)練出的翻譯模型是中英短語對(duì),如果短語對(duì)中的漢語部分存在太多英文就會(huì)有副作用,所以需要將這些句子去掉,一般認(rèn)為一個(gè)漢語句子中含有非漢字和標(biāo)點(diǎn)的字符數(shù)超過40認(rèn)為英文太多了。
S105:檢查漢語句子中漢字是否太少,用于統(tǒng)計(jì)機(jī)器翻譯訓(xùn)練的句子,訓(xùn)練出的翻譯模型是中英短語對(duì),如果句對(duì)得漢語句子中漢字太少,該句子就沒有什么意義,一般認(rèn)為漢語句子中漢字?jǐn)?shù)量少于2,該句子就不合格。
S106:檢查圓括號(hào)是否匹配,首先檢查英文句子的圓括號(hào)是否配對(duì),然后檢查漢語句子的圓括號(hào)是否配對(duì),再檢查英文句子和漢語句子雙方的圓括號(hào)是否配對(duì)。
S107:檢查方括號(hào)是否匹配,首先檢查英文句子的方括號(hào)是否配對(duì),然后檢查漢語句子的方括號(hào)是否配對(duì),再檢查英文句子和漢語句子雙方的方括號(hào)是否配對(duì)。
S108:檢查句首項(xiàng)目符號(hào)與編號(hào)是否匹配,有許多語料來源于微軟Word文檔,會(huì)出現(xiàn)原文和譯文部分句首項(xiàng)目符號(hào)與編號(hào)不匹配的情況,有時(shí)候原文有編號(hào),而譯文沒編號(hào),有時(shí)候則反之,有時(shí)候原譯文編號(hào)數(shù)字不相等,這些都需要校正過來。
S109:檢查數(shù)字是否正確。語料庫中經(jīng)常出現(xiàn)“數(shù)字:數(shù)字”這類型的錯(cuò)誤,以及原譯文數(shù)字不相匹配的錯(cuò)誤。
S110:檢查各種亂碼,有兩種方法檢查亂碼,一是根據(jù)漢字的內(nèi)碼表,可以找出語料庫中含有亂碼的句對(duì),二是提取一個(gè)全部由亂碼組成的關(guān)鍵字文件,然后在語料庫中查找這些亂碼關(guān)鍵字,如果出現(xiàn)超過2次,則該句對(duì)基本就是亂碼句對(duì)。
S111:語義校對(duì),采用英漢規(guī)則機(jī)器翻譯引擎對(duì)句對(duì)中的英文句子進(jìn)行翻譯,得到中文譯文,然后將該譯文和該句對(duì)中的中文進(jìn)行相似度計(jì)算,相似度低于某個(gè)閾值的認(rèn)為是不合格句對(duì)。
下面結(jié)合具體實(shí)施例對(duì)本發(fā)明的應(yīng)用原理作進(jìn)一步描述。
1)、檢查英文句子中是否存在漢字。
根據(jù)漢字內(nèi)碼表,漢字由雙字節(jié)組成,共有4種情況為漢字,1、第一個(gè)字節(jié)內(nèi)碼范圍為[0x81,0xa0]并且第二個(gè)字節(jié)內(nèi)碼范圍為[0x40,0xfe]的為漢字;2、第一個(gè)字節(jié)內(nèi)碼范圍為[0xaa,0xaf]并且第二個(gè)字節(jié)內(nèi)碼范圍為[0x40,0xa0]的為漢字;3、第一個(gè)字節(jié)內(nèi)碼范圍為[0xb0,0xf7]并且第二個(gè)字節(jié)內(nèi)碼范圍為[0x40,0xfe]的為漢字;4、第一個(gè)字節(jié)內(nèi)碼范圍為[0xf8,0xfe]并且第二個(gè)字節(jié)內(nèi)碼范圍為[0x40,0xa0]的為漢字。以此就可以判斷英文句子中是否存在漢字,并去除不合格的句對(duì),如下所示例子:
汽包里的連續(xù)The continuous blowdown device of steam drum could maintain certain salt content of furnace water.
汽包里的連續(xù)排污裝置能保持爐水的含鹽量一定。
2)檢查英中句子長度是否匹配。
計(jì)算英文句子的長度和漢語句子的長度的比值,小于0.4為或大于6的為不匹配的句子,如下述句子:
??Sudden drops less than limited value of the oil level in oil tank,or the lubricating oil pressure drops to 0.05MPa and cannot stop the falling.
--油箱油位突然下降至下限時(shí)。
3)檢查句子是否超長。
漢語句子長度大于500或英語句子長度大于800的可認(rèn)為超長。
4)檢查漢語句子中英文是否太多。
一個(gè)漢語句子中含有非漢字和標(biāo)點(diǎn)的字符數(shù)超過40認(rèn)為英文太多了,如下述句子,中文部分全是英文或數(shù)字。
Peak withstand of current transformer:KD=(Icn/Ie)*√(tj/t)=2.5X10000/200/1.07=135
電流互感器動(dòng)穩(wěn)定:KD=(Icn/Ie)*√(tj/t)=2.5X10000/200/1.07=135
5)檢查漢語句子中漢字是否太少。
一般認(rèn)為漢語句子中漢字?jǐn)?shù)量少于2,該句子就不合格,如,如下述句子中漢字?jǐn)?shù)量為零:
%D8`7I4g0K0Y0j9s'
%D8`7I4g0K0Y0j9s'。
本發(fā)明采用多維度數(shù)據(jù)分析外加語義分析相結(jié)合的方法,可保證校對(duì)后的語料庫既整齊,又正確。
本發(fā)明采用對(duì)語料庫進(jìn)行語義校對(duì)的方法,并利用了規(guī)則機(jī)器翻譯引擎的翻譯結(jié)果。
以上所述僅為本發(fā)明的較佳實(shí)施例而已,并不用以限制本發(fā)明,凡在本發(fā)明的精神和原則之內(nèi)所作的任何修改、等同替換和改進(jìn)等,均應(yīng)包含在本發(fā)明的保護(hù)范圍之內(nèi)。