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