本發(fā)明涉及機器翻譯技術(shù)領(lǐng)域,特別涉及一種語言文本翻譯方法及系統(tǒng)。
背景技術(shù):
隨著國際化的進行,不同語言人群之間的交流與日俱增,翻譯成為了交流中至關(guān)重要的工具。機器翻譯因為便捷簡單并且免費等優(yōu)點,極大地滿足了人們的翻譯需求,提高了國際交流的效率,使得人們對機器翻譯的正確性提出了更高的要求。
機器翻譯大致可以分為:基于規(guī)則的機器翻譯方法與基于語料庫的機器翻譯?;谡Z料庫的機器翻譯,它的一個關(guān)鍵問題就在于建立一個完整的語料庫,也可稱為高質(zhì)量的訓(xùn)練樣本。高質(zhì)量的訓(xùn)練樣本直接影響翻譯的正確率。然而,建立高質(zhì)量的訓(xùn)練樣本并不是一件容易的事情,原因在于樣本數(shù)據(jù)是有限的,不能很好地刻畫原始數(shù)據(jù)的分布;另外,即使樣本數(shù)據(jù)足夠,也不能避免其中存在錯誤樣本,即噪聲數(shù)據(jù)?;谠撚?xùn)練樣本得到的神經(jīng)網(wǎng)絡(luò)難以準(zhǔn)備體現(xiàn)原模型,甚至?xí)霈F(xiàn)違反先驗知識的情況。在這種情況下,先驗知識的引入就變得十分重要。對翻譯規(guī)則而言,例如,“不應(yīng)重復(fù)翻譯,也不應(yīng)漏翻”,這樣的規(guī)則就可稱為先驗知識。許多研究表明,在神經(jīng)網(wǎng)絡(luò)模型中融入先驗知識以對其約束,可以提高神經(jīng)網(wǎng)絡(luò)的性能。
基于注意力機制的神經(jīng)網(wǎng)絡(luò)的機器翻譯方法(attention-basedneuralmachinetranslation;簡稱attention-basednmt)是基于語料庫的機器翻譯的一個分支,也是目前主流翻譯系統(tǒng)所使用的一種機器翻譯方法。其基本思想為使用一個端到端的非線性神經(jīng)網(wǎng)絡(luò)直接將源語言文本映射成目標(biāo)語言文本,即構(gòu)建一個“編碼-解碼”的新框架:給定一個源語言句子,首先使用一個編碼器將其映射為一個連續(xù)、稠密的向量,然后再使用一個解碼器將該向量轉(zhuǎn)化為一個目標(biāo)語言句子。但是,這種方法很難將先驗知識融入到神經(jīng)網(wǎng)絡(luò)之中。
目前也有一些將先驗知識融入到神經(jīng)網(wǎng)絡(luò)中的技術(shù)。例如,一些技術(shù)將先驗知識用額外的神經(jīng)網(wǎng)絡(luò)模塊表示;一些技術(shù)通過在訓(xùn)練目標(biāo)中添加限制項以融入先驗知識。雖然這些技術(shù)可以顯著地提升翻譯效果,但是前者要求不同先驗知識之間的相關(guān)性也需要被建模,后者只能夠添加少量簡單的限制項。這些問題導(dǎo)致這些技術(shù)不能被應(yīng)用于將任意、復(fù)雜的先驗知識融入神經(jīng)網(wǎng)絡(luò)機器翻譯模型。
因此,如何提供一種可以將任意先驗知識融入神經(jīng)網(wǎng)絡(luò)機器翻譯模型的翻譯方法是一個亟需解決的問題。
技術(shù)實現(xiàn)要素:
為解決現(xiàn)有技術(shù)存在的無法將任意先驗知識融入神經(jīng)網(wǎng)絡(luò)翻譯模型的問題,本發(fā)明提供一種語言文本翻譯方法及系統(tǒng)。
一方面,本發(fā)明提供一種語言文本翻譯方法,該方法包括:
根據(jù)預(yù)設(shè)的翻譯候選集合確定規(guī)則,確定源語言文本對應(yīng)的翻譯候選集合,所述翻譯候選集合包括源語言文本的多個翻譯文本;所述源語言文本為待翻譯的語言文本;
基于所述翻譯候選集合、預(yù)設(shè)的翻譯模型及預(yù)設(shè)的先驗知識模型,確定第一概率分布及第二概率分布;所述第一概率分布用于指示所述翻譯文本符合先驗知識模型的概率,所述第二概率分布用于指示所述翻譯文本符合翻譯模型的概率;
基于所述第一概率分布及所述第二概率分布,從所述翻譯候選集合中確定所述源語言文本的翻譯文本。
另一方面,本發(fā)明提供一種語言文本翻譯系統(tǒng),該系統(tǒng)包括:
翻譯候選集合模塊,用于根據(jù)預(yù)設(shè)的翻譯候選集合確定規(guī)則,確定源語言文本對應(yīng)的翻譯候選集合,所述翻譯候選集合包括源語言文本的多個翻譯文本;所述源語言文本為待翻譯的語言文本;
訓(xùn)練模塊,用于基于所述翻譯候選集合、預(yù)設(shè)的翻譯模型及預(yù)設(shè)的先驗知識模型,確定第一概率分布及第二概率分布;所述第一概率分布用于指示所述翻譯文本符合先驗知識模型的概率,所述第二概率分布用于指示所述翻譯文本符合翻譯模型的概率;
翻譯模塊,用于基于所述第一概率分布及所述第二概率分布,從所述翻譯候選集合中確定所述源語言文本的翻譯文本。
本發(fā)明提供的語言文本翻譯方法及系統(tǒng),通過分別計算先驗知識模型和翻譯模型在翻譯候選集合上的概率分布,并將兩個概率分布的差異作為語言訓(xùn)練目標(biāo)的一部分,從而使得機器翻譯模型可以學(xué)習(xí)到任意的先驗知識,提高了機器翻譯結(jié)果的準(zhǔn)確性和可靠性。
附圖說明
圖1為本發(fā)明實施例提供的語言文本翻譯方法的流程示意圖;
圖2為本發(fā)明實施例提供的語言文本翻譯系統(tǒng)的結(jié)構(gòu)示意圖;
具體實施方式
為使本發(fā)明實施例的目的、技術(shù)方案和優(yōu)點更加清楚,下面將結(jié)合本發(fā)明實施例中的附圖,對本發(fā)明實施例中的技術(shù)方案進行清楚地描述,顯然,所描述的實施例是本發(fā)明一部分實施例,而不是全部的實施例。基于本發(fā)明中的實施例,本領(lǐng)域普通技術(shù)人員在沒有做出創(chuàng)造性勞動前提下所獲得的所有其他實施例,都屬于本發(fā)明保護的范圍。
圖1為本發(fā)明實施例提供的語言文本翻譯方法的流程示意圖。如圖1所示,該方法包括以下步驟:
步驟101、根據(jù)預(yù)設(shè)的翻譯候選集合確定規(guī)則,確定源語言文本對應(yīng)的翻譯候選集合,所述翻譯候選集合包括源語言文本的多個翻譯文本;所述源語言文本為待翻譯的語言文本;
步驟102、基于所述翻譯候選集合、預(yù)設(shè)的翻譯模型及預(yù)設(shè)的先驗知識模型,確定第一概率分布及第二概率分布;所述第一概率分布用于指示所述翻譯文本符合先驗知識模型的概率,所述第二概率分布用于指示所述翻譯文本符合翻譯模型的概率;
步驟103、基于所述第一概率分布及所述第二概率分布,從所述翻譯候選集合中確定所述源語言文本的翻譯文本。
具體地,首先,預(yù)設(shè)的翻譯候選集合確定規(guī)則是指翻譯是一個序列生成的任務(wù),源語言文本x中有多個字或單詞,在生成翻譯候選集合時,前一個生成的字或單詞會作為后一個字或單詞的輸入。根據(jù)不同長度的源語言文本x,其真實的翻譯候選集合的大小是指數(shù)級的,無法有效計算。在實際應(yīng)用中,通過隨機采樣或者beamsearch,從而得到該源語言文本的多個翻譯文本,即翻譯候選集合s(x),利用現(xiàn)有技術(shù)即可實現(xiàn),此處不再贅述;
然后,根據(jù)該翻譯候選集合s(x)和預(yù)設(shè)的先驗知識模型q(y|x;γ),確定第一概率分布
為了表述清楚,若源語言文本x作為輸入,翻譯文本y作為輸出,這樣就組成了句對(x,y)。在實際應(yīng)用中,不同的語境下同一個單詞或字存在不同的語義,而源語言文本x是由多個單詞或字按照不同的排列順序組成的,而單詞或字的多義性及順序的不確定性導(dǎo)致一個源語言文本可能對應(yīng)多個翻譯文本(y1、y2、y3等),在這多個翻譯文本中概率最高的則為最佳翻譯文本,為了與其他翻譯文本進行區(qū)分,稱為目標(biāo)語言文本。
例如,預(yù)設(shè)的先驗知識模型q(y|x;γ),可以根據(jù)不同的特征函數(shù)φ(x,y)得到不同的模型,第一概率分布可以按照下式確定:
其中,x表示源語言文本,y為目標(biāo)語言文本,y′為翻譯文本,γ為先驗知識模型的預(yù)設(shè)參數(shù)。
特征函數(shù)φ(x,y)表示在先驗知識數(shù)據(jù)庫中源語言文本與翻譯文本的對應(yīng)關(guān)系,基于具體的特征函數(shù),利用先驗知識模型對每個翻譯文本y1、y2和y3進行打分,即計算每個翻譯文本符合先驗知識模型的概率。其中,越符合先驗知識模型的翻譯文本,概率越高。
翻譯模型p(y|x;θ)則是機器翻譯常用到的打分模型,該翻譯模型可通過訓(xùn)練平行語料庫得到,表示平行語料庫中源語言文本x與翻譯文本y的對應(yīng)關(guān)系,用于計算每個翻譯文本符合翻譯模型的概率,屬于現(xiàn)有技術(shù),此處不再贅述。
根據(jù)翻譯候選集合s(x)和翻譯模型p(y|x;θ),第二概率分布可以通過下式確定:
其中,x表示源語言文本,y為目標(biāo)語言文本,y′為翻譯文本,θ為翻譯模型的參數(shù);α是用來控制第二概率分布陡峭程度的預(yù)設(shè)超參數(shù)。
本發(fā)明實施例提供的語言文本翻譯方法,通過綜合利用先驗知識模型和翻譯模型,從兩個方面對多個翻譯文本進行打分,從而鼓勵越符合先驗知識模型的翻譯文本在翻譯模型下的概率也越高,從而從翻譯候選集合中最終確定目標(biāo)語言文本,提高了翻譯模型的性能和翻譯結(jié)果的準(zhǔn)確性。
在上述實施例的基礎(chǔ)上,該語言文本翻譯方法中的所述第一概率分布及所述第二概率分布,從所述翻譯候選集合中確定所述源語言文本的翻譯文本,包括:
基于所述第一概率分布及所述第二概率分布,確定概率差異參數(shù)值;所述概率差異參數(shù)用于指示所述第一概率分布及所述第二概率分布的差異;
基于所述概率差異參數(shù)值,從所述翻譯候選集合中確定所述源語言文本的翻譯文本。
具體地,首先,根據(jù)預(yù)設(shè)的翻譯候選集合確定規(guī)則,確定源語言文本x對應(yīng)的翻譯候選集合s(x);然后,基于該翻譯候選集合、翻譯模型及先驗知識模型,確定第一概率分布
例如,用戶登錄翻譯系統(tǒng)后,在中-英翻譯窗口的中文輸入欄中輸入源語言文本x為“很多機場都被迫關(guān)閉了”,根據(jù)x確定翻譯候選集合s(x)有兩個翻譯文本:y1為“manyairportswereclosedtoclose”和y2為“manyairportswereforcedtoclosedown”;
根據(jù)先驗知識模型,確定第一概率分布
其中,q(y1|x)=0.2,即句對(x,y1)符合先驗知識模型的概率為0.2;q(y2|x)=0.8,即句對(x,y2)符合先驗知識模型的概率為0.8;
根據(jù)翻譯模型,確定第二概率分布:
其中,p(y1|x)=0.6,即句對(x,y1)符合翻譯模型的概率為0.6;p(y2|x)=0.4,即句對(x,y2)符合翻譯模型的概率為0.4;
通過第一概率分布和第二概率分布,可以確定二者之間的差異參數(shù)值;基于該差異參數(shù)值對翻譯模型進行調(diào)整并對上述兩個翻譯文本重新打分,得到p(y1|x)=0.3,p(y2|x)=0.7;
因此,確定源語言文本x:“很多機場都被迫關(guān)閉了”的翻譯文本y:“manyairportswereforcedtoclosedown”。
由上述實施例可以看到,本發(fā)明實施例提供的語言文本翻譯方法,基于第一概率分布和第二概率分布的差異參數(shù)值,并根據(jù)翻譯模型對多個翻譯文本重新打分,從而提高符合先驗知識的翻譯文本在翻譯模型概率分布中的概率,進而得到更準(zhǔn)確的源語言文本的翻譯文本。
在上述實施例的基礎(chǔ)上,所述第一概率分布和所述第二概率分布的差異參數(shù)值為kl(kullback-leibler)距離,可通過下式確定:
在上述各實施例的基礎(chǔ)上,該語言文本翻譯方法中的基于所述概率差異參數(shù)值,從所述翻譯候選集合中確定所述源語言文本的翻譯文本,包括:
基于所述差異參數(shù)值,確定訓(xùn)練目標(biāo);所述訓(xùn)練目標(biāo)用于指示所述翻譯模型向所述先驗知識模型逼近;
基于所述訓(xùn)練目標(biāo)和預(yù)設(shè)的重排序模型,從所述翻譯候選集合中確定所述源語言文本的翻譯文本。
具體地,首先,根據(jù)預(yù)設(shè)的翻譯候選集合確定規(guī)則,確定源語言文本x對應(yīng)的翻譯候選集合s(x);然后,基于該翻譯候選集合、翻譯模型及先驗知識模型,確定第一概率分布
一般來講,在對翻譯文本進行打分時,通常采用翻譯模型p(y|x;θ)的對數(shù)似然估計作為標(biāo)準(zhǔn)訓(xùn)練準(zhǔn)則,即傳統(tǒng)的訓(xùn)練目標(biāo)為對數(shù)似然函數(shù)l(θ)=logp(y|x;θ)。
通過確定第一概率分布和第二概率分布的差異參數(shù)值,將該差異參數(shù)值加入傳統(tǒng)訓(xùn)練目標(biāo)中,確定新的訓(xùn)練目標(biāo)為j(θ,γ),該訓(xùn)練目標(biāo)認(rèn)為最優(yōu)的參數(shù)θ和γ會鼓勵最符合先驗知識的翻譯文本在翻譯模型的第二概率分布中的概率最高,從而使得翻譯模型更傾向于從翻譯候選集合s(x)中確定符合先驗知識的翻譯文本為源語言文本x的目標(biāo)語言文本y。
可選地,若該差異參數(shù)值為kl距離,訓(xùn)練目標(biāo)可根據(jù)下式確定:
其中,λ1和λ2是平衡訓(xùn)練目標(biāo)的預(yù)設(shè)超參數(shù),n為訓(xùn)練數(shù)據(jù)的句對數(shù)。
通過新的訓(xùn)練目標(biāo)得到最優(yōu)的參數(shù)θ和γ,利用下面的重排序模型,從翻譯候選中確定源語言文本的翻譯文本。
y=argmaxy∈s(x){logp(y|x;θ)+γ·φ(x,y)}
例如,假設(shè)源語言文本x為“布什與沙龍舉行了會談”,根據(jù)x確定翻譯候選集合s(x)有三個翻譯文本:y1為“bushheldatalkwithsharon”,y2為“bushheldatalkwithbush”,y3為“bushhadlunchwithsharon”。
假設(shè)特征函數(shù)φ(x,y)表示句對中源語言文本x和目標(biāo)語言文本y中出現(xiàn)的詞語對的數(shù)量,詞語對集合為{(布什,bush),(舉行,held),(會談,talk),(沙龍,sharon)},則在第一個翻譯文本y1中,4個詞語對均出現(xiàn),因此φ(x,y1)=4;同理,φ(x,y2)=3,φ(x,y3)=2。
根據(jù)先驗知識模型可以確定第一概率分布
其中,翻譯文本y1的概率為:
同理可得:q(y2|x)=e3/(e2+e3+e4);q(y3|x)=e2/(e2+e3+e4)。最終q(y1|x)=0.67,q(y2|x)=0.24,q(y3|x)=0.09。
通過上述概率可知,翻譯文本y1最符合先驗知識模型,并且事實上也是正確的翻譯文本;翻譯文本y2則明顯違背了“不應(yīng)重復(fù)翻譯,不應(yīng)漏翻”的先驗知識,因此概率較低;翻譯文本y3則偏離了源語言文本的語義,因此概率更低。
假設(shè)通過調(diào)整前的翻譯模型得到第二概率分布
其中,p(y1|x)=0.4,p(y2|x)=0.5,p(y3|x)=0.1,翻譯模型會翻譯出“bushheldatalkwithbush”。
此時,若預(yù)設(shè)超參數(shù)λ1、λ2的數(shù)值均為1,通過公式計算上述兩個概率分布之間kl(p||q),基于該kl距離確定新的訓(xùn)練目標(biāo)j(θ,γ);
基于該訓(xùn)練目標(biāo)和重排序模型,對翻譯模型進行調(diào)整,經(jīng)過訓(xùn)練后p(y1|x)=0.6,p(y2|x)=0.31,p(y3|x)=0.09,可見,新的訓(xùn)練目標(biāo)提高了翻譯文本y1的概率,而降低了翻譯文本y2和y3的概率,使得越符合先驗知識的翻譯文本在翻譯模型中的概率分布中概率越高,即使翻譯模型向先驗知識模型逼近。
因此,最終輸出的目標(biāo)語言文本y為“bushheldatalkwithsharon”。
由上述實施例可以看到,本發(fā)明實施例提供的語言文本翻譯方法,通過將符合先驗知識模型的概率分布和符合翻譯模型的概率分布之間的kl距離加入傳統(tǒng)的訓(xùn)練目標(biāo),鼓勵越符合先驗知識模型的翻譯文本在翻譯模型下的概率也越高,進而得到更為優(yōu)化的翻譯模型參數(shù),從而從翻譯候選集合中最終確定目標(biāo)語言文本,提高了翻譯模型的性能和翻譯結(jié)果的準(zhǔn)確性。
圖2為本發(fā)明實施例提供的語言文本翻譯系統(tǒng)的結(jié)構(gòu)示意圖。如圖2所示,該系統(tǒng)包括:翻譯候選集合模塊21、訓(xùn)練模塊22及翻譯模塊23。其中,翻譯候選集合模塊21用于根據(jù)預(yù)設(shè)的翻譯候選集合確定規(guī)則,確定源語言文本對應(yīng)的翻譯候選集合,所述翻譯候選集合包括源語言文本的多個翻譯文本;所述源語言文本為待翻譯的語言文本;訓(xùn)練模塊22用于基于所述翻譯候選集合、預(yù)設(shè)的翻譯模型及預(yù)設(shè)的先驗知識模型,確定第一概率分布及第二概率分布;所述第一概率分布用于指示所述翻譯文本符合先驗知識模型的概率,所述第二概率分布用于指示所述翻譯文本符合翻譯模型的概率;翻譯模塊23用于基于所述第一概率分布及所述第二概率分布,從所述翻譯候選集合中確定所述源語言文本的翻譯文本。
需要說明的是,該語言文本翻譯系統(tǒng)是為了實現(xiàn)上述方法實施例的,其功能具體可參考上述方法實施例,此處不再贅述。
在上述實施例的基礎(chǔ)上,該系統(tǒng)中的翻譯模塊23具體用于基于所述第一概率分布及所述第二概率分布,確定概率差異參數(shù)值;所述概率差異參數(shù)用于指示所述第一概率分布及所述第二概率分布的差異;基于所述概率差異參數(shù)值,從所述翻譯候選集合中確定所述源語言文本的翻譯文本??蛇x地,所述概率差異參數(shù)為kl距離。
在上述各實施例的基礎(chǔ)上,該系統(tǒng)中的翻譯模塊23具體用于基于所述差異參數(shù)值,確定訓(xùn)練目標(biāo);所述訓(xùn)練目標(biāo)用于指示所述翻譯模型向所述先驗知識模型逼近;基于所述訓(xùn)練目標(biāo)和預(yù)設(shè)的重排序模型,從所述翻譯候選集合中確定所述源語言文本的翻譯文本。
通過本發(fā)明提供的語言文本翻譯方法和系統(tǒng),在訓(xùn)練階段將先驗知識融入到翻譯模型中,改善了翻譯模型的性能,進而將先驗知識運用到翻譯過程中,從而無需增加額外的網(wǎng)絡(luò)模塊就可實現(xiàn)將任意先驗知識運用到機器翻譯中,最終提高翻譯結(jié)果的準(zhǔn)確性和可靠性。
最后應(yīng)說明的是:以上實施例僅用以說明本發(fā)明的技術(shù)方案,而非對其限制;盡管參照前述實施例對本發(fā)明進行了詳細(xì)的說明,本領(lǐng)域的普通技術(shù)人員應(yīng)當(dāng)理解:其依然可以對前述各實施例所記載的技術(shù)方案進行修改,或者對其中部分技術(shù)特征進行等同替換;而這些修改或者替換,并不使相應(yīng)技術(shù)方案的本質(zhì)脫離本發(fā)明各實施例技術(shù)方案的精神和范圍。