田大雕 阮心如 王可豪
(西南民族大學(xué) 四川 成都 610225)
民族語(yǔ)言翻譯工作是促進(jìn)民族事業(yè)發(fā)展的重要內(nèi)容之一,是促進(jìn)民族地區(qū)經(jīng)濟(jì)、文化和社會(huì)建設(shè)尤其是國(guó)家安全的客觀需要[1]。
Android平臺(tái)作為現(xiàn)今最新、應(yīng)用最為廣泛的移動(dòng)操作系統(tǒng),因具有能支持強(qiáng)大的硬件配置和多種無(wú)線通信方式等優(yōu)勢(shì)功能,被運(yùn)用于各種移動(dòng)終端設(shè)備中[2]。本系統(tǒng)基于Android平臺(tái)開(kāi)發(fā),同時(shí),我們收集了近50000條彝語(yǔ)和漢語(yǔ)的對(duì)應(yīng)的平行語(yǔ)料庫(kù),并結(jié)合Tensorflow框架構(gòu)建神經(jīng)網(wǎng)絡(luò)作為訓(xùn)練框架來(lái)實(shí)現(xiàn)翻譯功能。
本翻譯系統(tǒng)的總構(gòu)架包塊客戶端設(shè)備、無(wú)線訪問(wèn)點(diǎn)、交換機(jī)以及服務(wù)器和數(shù)據(jù)庫(kù)。用戶端是用戶可直觀使用的設(shè)備,無(wú)線訪問(wèn)點(diǎn)和交換機(jī)用于數(shù)據(jù)通道的傳輸,服務(wù)器負(fù)責(zé)和客戶機(jī)連接以及Tensorflow算法程序的封裝,語(yǔ)料庫(kù)負(fù)責(zé)存儲(chǔ)和管理彝漢雙語(yǔ)平行語(yǔ)料庫(kù)。
在該結(jié)構(gòu)系統(tǒng)中,客戶端使用Android 4.0版本以上的設(shè)備,連接服務(wù)器的方式可以采用ADSL有線連接或WIFI無(wú)線連接的方式訪問(wèn)服務(wù)器。當(dāng)用戶在手機(jī)端輸入需要翻譯的文字后,發(fā)送HTTP請(qǐng)求給服務(wù)器進(jìn)行翻譯,服務(wù)器接受請(qǐng)求響應(yīng)后,向語(yǔ)料庫(kù)查詢匹配語(yǔ)料數(shù)據(jù),并將數(shù)據(jù)通過(guò)模型訓(xùn)練,以得到翻譯的結(jié)果,最后服務(wù)器將翻譯結(jié)果反饋給用戶端,從而實(shí)現(xiàn)翻譯的功能。
由于在線翻譯需要運(yùn)行大量框架程序,內(nèi)存空間需求大,所以本文在軟件系統(tǒng)設(shè)計(jì)中采用C/S結(jié)構(gòu)并將程序封裝在服務(wù)器端[3]??蛻魴C(jī)通過(guò)局域網(wǎng)與服務(wù)器相連,當(dāng)接受到用戶的請(qǐng)求數(shù)據(jù)后,會(huì)通過(guò)網(wǎng)絡(luò)向服務(wù)器提出請(qǐng)求。當(dāng)服務(wù)器接受到客戶機(jī)的請(qǐng)求后,會(huì)調(diào)取語(yǔ)料庫(kù)的數(shù)據(jù),并進(jìn)行模型訓(xùn)練得出結(jié)果,最后將翻譯結(jié)果提交給客戶機(jī),客戶機(jī)再將數(shù)據(jù)結(jié)果直接呈現(xiàn)給用戶,這樣便完成了翻譯的全部流程。
使用這種結(jié)構(gòu)可以提高系統(tǒng)的通信速度,并結(jié)合Android的操作機(jī)制,大大減輕了前端界面的操作壓力;同時(shí),這種結(jié)構(gòu)還可以合理有效的分配客戶機(jī)和服務(wù)器端的任務(wù),充分利用系統(tǒng)硬件配置[3],從而減少了系統(tǒng)的通信開(kāi)銷(xiāo)[4]。
深度可分離卷積是引入深度可分離卷積的Inception,通常稱(chēng)之為“Xception”。它將傳統(tǒng)卷積分解成一個(gè)深度卷積和一個(gè)1*1的卷積。
深度卷積通過(guò)在每個(gè)獨(dú)立的輸入通道上執(zhí)行空間卷積,在比傳統(tǒng)卷積減少參數(shù)數(shù)量的同時(shí),也對(duì)每個(gè)通道進(jìn)行了學(xué)習(xí)。通過(guò)采用1*1的窗口逐點(diǎn)卷,從而把深度卷積的輸出映射到一個(gè)新的通道空間[5]。具體過(guò)程如圖1所示:
長(zhǎng)短期記憶循環(huán)神經(jīng)網(wǎng)絡(luò)(LSTM)是一種循環(huán)神經(jīng)網(wǎng)絡(luò)(RNN)[6],內(nèi)部有四個(gè)網(wǎng)絡(luò)層。它能夠?qū)W習(xí)利用以前的信息來(lái)對(duì)當(dāng)前任務(wù)進(jìn)行相應(yīng)的操作。與傳統(tǒng)的RNN網(wǎng)絡(luò)相比,它是為了解決訓(xùn)練過(guò)程中的梯度消失和長(zhǎng)依賴(lài)問(wèn)題,因此提出了一種“記憶機(jī)制”,即對(duì)狀態(tài)進(jìn)行選擇與處理。
LSTM網(wǎng)絡(luò)結(jié)構(gòu)可以分成輸入門(mén)、輸出門(mén)、遺忘門(mén)和輸入輸出神經(jīng)網(wǎng)絡(luò)這幾個(gè)部分。而這種特殊的門(mén)結(jié)構(gòu)可以選擇讓哪些信息通過(guò),通過(guò)丟棄、添加、更新細(xì)胞狀態(tài)等來(lái)達(dá)到使用目的[7]。其作用公式如下:
其中,i(t)表示輸入門(mén)輸出、o(t)代表輸出門(mén)輸出、f(t)表示遺忘門(mén)輸出、c(t)表示細(xì)胞狀態(tài)、h(t)表示t時(shí)刻隱藏層的輸出數(shù)據(jù)、a表示激活函數(shù)。
4.1.1 實(shí)驗(yàn)思路
神經(jīng)機(jī)器翻譯(NMT)是機(jī)器翻譯的重要方向。由循環(huán)神經(jīng)網(wǎng)絡(luò)演化而來(lái)的神經(jīng)網(wǎng)絡(luò)機(jī)器翻譯模型可以綜合語(yǔ)言的語(yǔ)法、語(yǔ)義以及連貫性等方面進(jìn)行機(jī)器翻譯、語(yǔ)義提取、文本摘要等任務(wù)[7]。
彝語(yǔ)屬于資源稀缺型的語(yǔ)言,其語(yǔ)料收集困難,地方種類(lèi)繁雜,使得數(shù)據(jù)稀疏問(wèn)題嚴(yán)重。本工作首先將彝語(yǔ)切分為詞、音節(jié)、字符、字詞4種不同的粒度。通過(guò)采用雙向長(zhǎng)短時(shí)記憶(LSTM)神經(jīng)網(wǎng)絡(luò)形成詞語(yǔ)表示,將深度卷積神經(jīng)網(wǎng)絡(luò)應(yīng)用于源語(yǔ)言,對(duì)不同的粒度序列進(jìn)行卷機(jī)運(yùn)算,使編碼器完整地捕獲源語(yǔ)言句子語(yǔ)義信息。
4.1.2 實(shí)驗(yàn)設(shè)置
本實(shí)驗(yàn)中訓(xùn)練的彝漢雙語(yǔ)語(yǔ)料規(guī)模為5萬(wàn)句對(duì)。隨機(jī)劃分測(cè)試集和訓(xùn)練集,訓(xùn)練之前對(duì)語(yǔ)料進(jìn)行了人工校對(duì)。實(shí)驗(yàn)分為漢語(yǔ)——彝語(yǔ)和彝語(yǔ)——漢語(yǔ)兩個(gè)翻譯方向。卷積神經(jīng)網(wǎng)絡(luò)CNN由五層編碼器和九層解碼器構(gòu)成,batch_size的大小為128。深度可分離卷積翻譯模型卷積核為3*3,每層核的寬度為3。實(shí)驗(yàn)使用雙語(yǔ)互譯評(píng)估(BLEU)值作為模型效果的指標(biāo)。
4.1.3 結(jié)果展示
本模型得到的BLEU值在20%左右,效果較好。漢彝的翻譯效果較彝漢好,平均高出0.805個(gè)百分點(diǎn)。其原因可能是漢語(yǔ)組詞復(fù)雜,訓(xùn)練過(guò)程中涉及到的詞數(shù)量有限,造成BLEU值偏低。此外,實(shí)驗(yàn)中子詞粒度的效果最優(yōu),這是因?yàn)樽釉~粒度可以由低頻詞切分成高頻詞片段,緩解數(shù)據(jù)稀疏的問(wèn)題。而字符粒度的BLEU較低的原因是彝語(yǔ)切分為字符后,雖然緩解了數(shù)據(jù)稀疏問(wèn)題,但是增加了句子長(zhǎng)度,使得長(zhǎng)距離依賴(lài)學(xué)習(xí)的更加困難[8]。
本文根據(jù)已經(jīng)構(gòu)建好的Android端軟件和服務(wù)器端,進(jìn)行翻譯測(cè)試實(shí)驗(yàn)。在界面中通過(guò)輸入文本(用戶可以根據(jù)需要選擇翻譯類(lèi)型),然后數(shù)據(jù)將傳輸?shù)椒?wù)器端,并使用LSTM算法返回翻譯結(jié)果。結(jié)果在翻譯界面中可以實(shí)時(shí)查看。
在軟件上對(duì)中文和彝文進(jìn)行幾次翻譯后,就可以實(shí)現(xiàn)從中文到彝文,從彝文到中文的雙向翻譯,本文通過(guò)給能夠識(shí)別彝漢雙語(yǔ)的人識(shí)別,結(jié)果顯示許多測(cè)試翻譯結(jié)果大致一樣。但是由于系統(tǒng)和模型的內(nèi)在缺陷存在,本系統(tǒng)的準(zhǔn)確性和文學(xué)性與陳述的實(shí)際條目和含義之間存在一定偏差,但不會(huì)影響整體閱讀。
綜上所述,經(jīng)反復(fù)測(cè)試,采用深度可分離網(wǎng)絡(luò)、LSTM等算法的翻譯結(jié)果測(cè)試集準(zhǔn)確度達(dá)到86%,并且系統(tǒng)在Android方面也顯示了翻譯的完整性和可行性。
本文中設(shè)計(jì)的翻譯系統(tǒng),可以實(shí)現(xiàn)彝語(yǔ)和漢語(yǔ)之間的互譯功能。在技術(shù)上,主要基于Android平臺(tái)開(kāi)發(fā)、數(shù)據(jù)庫(kù)開(kāi)發(fā)和當(dāng)前流行的機(jī)器翻譯框架,并利用Flask框架搭建了數(shù)據(jù)交互的橋梁;從翻譯的結(jié)果來(lái)看,該系統(tǒng)有較準(zhǔn)確的翻譯結(jié)果。
此外,本項(xiàng)目在后期開(kāi)發(fā)時(shí),可以根據(jù)現(xiàn)有框架,并結(jié)合各種語(yǔ)言的特有語(yǔ)法結(jié)構(gòu)進(jìn)行分析,優(yōu)化翻譯模型;以便加入更多的民族語(yǔ)言,比如藏語(yǔ)、維吾爾語(yǔ)、回文等;當(dāng)系統(tǒng)達(dá)到一定規(guī)模后,這將在促進(jìn)民族地區(qū)交流溝通的同時(shí),還可以極大的保護(hù)我國(guó)少數(shù)民族語(yǔ)言的多樣性。