999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

計算機算法類資料的中英文智能翻譯

2021-08-02 03:49:14陳家樂張艷玲
計算機技術與發展 2021年7期
關鍵詞:詞匯文本效果

陳家樂,張艷玲

(廣州大學 計算機科學與網絡工程學院,廣東 廣州 510006)

0 引 言

自2014年以后,端到端的神經機器翻譯(end to end neural machine translation)質量較統計機器翻譯有了顯著提升[1],端到端的訓練使得深度學習方法區別于傳統機器學習方法,成為了自然語言處理的強大工具[2]。Google、有道、百度等商用在線機器翻譯系統核心技術均由統計機器翻譯轉型為神經機器翻譯。端到端的編碼器-解碼器(Encoder-Decoder)[3]模型結構成為神經機器翻譯的主流模型[4]。Google首次提出基于Encoder-Decoder結構的seq2seq[5](sequence to sequence)模型。其基本工作原理就是編碼器將輸入序列轉換為中間向量C,解碼器將中間向量C轉換為輸出序列。seq2seq在編碼器和解碼器中均使用循環神經網絡(recurrent neural networks,RNN),理論上RNN可以解決長句遠距離信息依賴的問題[6],但在實際應用時反向傳播過程中存在梯度爆炸和梯度消失的問題。梯度爆炸會導致模型無法收斂;梯度消失會導致模型捕捉不到長距離項的依賴信息。梯度爆炸一般可以使用梯度裁剪或權重正則化處理。梯度消失目前最好的處理方法是使用門控單元來構建RNN。其中,應用最廣的門控單元是長短時記憶(long short-term memory,LSTM)和門控循環單元(gated recurrent unit,GRU)[4]。雖然應用門控單元使得RNN能有效捕捉到長距離項的依賴信息,但是由于句子中任意單詞對生成某個目標單詞的影響占比是相同的,所以即使采用了門控單元,seq2seq模型依然在長句的翻譯質量上顯著下降。為了優化長句的翻譯質量,Bahdanau等人[7]于2014年首次將注意力機制應用于NLP領域,翻譯效果有了進一步提升。谷歌團隊[8]拋棄RNN和CNN等網絡結構,僅僅采用注意力機制進行機器翻譯,在翻譯質量上取得了顯著的效果,因此注意力機制成為了神經機器翻譯中的研究熱點。但是,由于通用翻譯接口對垂直領域缺乏針對性,同一個詞匯在不同的語義環境下有不同的翻譯結果,而通用翻譯則無法識別該詞匯所在的語義環境,從而使得翻譯效果不佳。并且垂直領域下的專業詞匯繁多且復雜,若沒有對應的詞匯的語料訓練,會讓最終的訓練模型對含有該詞匯的句子沒有好的翻譯效果。這就是現階段對垂直領域的語句翻譯效果不好的原因。所以針對某一領域實現翻譯成為了當下重要的研究方向。

該文將收集與計算機算法類相關的中英雙語例句文本,利用Word2Vec算法生成詞向量,將詞向量嵌入GNMT[9]訓練帶有注意力機制的LSTM seq2seq的中英翻譯模型。以此來優化計算機算法類語料的翻譯效果,為此后垂直領域的神經機器翻譯提供一個可行的優化思路。

1 數據獲取

數據樣本的好壞很大程度上決定了模型的訓練效果,要實現計算機算法類資料的中英翻譯,就需要獲取與計算機算法類相關的中英雙語例句。現在各大在線翻譯網站能夠檢索特定關鍵詞的中英雙語例句,但是大多數的雙語例句沒有分門別類。為了得到最符合計算機算法類的中英雙語例句,需要收集計算機算法類相關度高的關鍵詞。

該文通過中文書籍《算法導論第三版》(Introduction to Algorithms Third Edition)和計算機算法題網站力扣(LeetCode)收集關鍵詞。收集了1 618個關鍵詞在百度翻譯、有道翻譯、知網例句進行檢索并爬取,最終獲取98 120條中英雙語例句作為模型訓練的數據基礎。

2 數據預處理

獲取的數據還不能直接用于數據訓練,中文例句詞匯與詞匯之間并沒有明確的分隔;英文例句雖然詞匯間有天然的空格分割,但是標點符號與詞匯間仍然有連接,因此也需要進行分詞處理。分詞處理完成后還需要獲取訓練所需的數據集和詞匯表。

2.1 英文文本處理

英文存在大小寫的區別,而大寫的寫法和小寫的寫法指的是同一個單詞,例如“The”與“the”。經過小寫化處理后,獲取詞集時能夠減少大量的重復單詞,從而降低訓練的成本,一定程度上優化訓練效果。還需要對英文文本分詞,將標點符號與詞匯間進行分隔。

2.2 中文文本分詞

中文分詞正確率會大大影響模型訓練的效果,因為分詞階段的錯誤在翻譯過程中將會被“放大”,放大的倍數約等于句子的平均長度[10]。jieba庫是一個簡單易用的漢語自然語言處理分詞庫,通過在全切分所得的所有結果中求某個切分方案S,使得P(S)最大的概率進行分詞。jieba分詞的算法流程為:(1)基于特定詞匯表構建字典樹,實現高效的詞圖掃描;(2)基于字典樹生成句子中漢字所有可能成詞情況所構成的有向無環圖(DAG);(3)采用了動態規劃尋找最大概率路徑,找出基于詞頻的最大切分組合;(4)對于未登錄詞,使用了Viterbi算法并采用了基于漢字成詞能力的HMM模型[11]。jieba分詞有三個分詞模式,分別是精確模式、全模式、搜索引擎模式。其中精確模式適合用于自然語言處理。

中文一詞多意的情況非常多,同一個句子在不同的語義環境下有不同的分詞方案,因此如果不制作對應的分詞詞典,會大大增加分詞出錯的概率。制作分詞詞典步驟如下:(1)對中文文本進行默認分詞;(2)人工將分詞出錯的詞匯添加到詞典中。

2.3 數據集分割

在模型訓練之前,首先要劃分訓練集、驗證集、測試集。其中訓練集用于模型訓練,驗證集和測試集用于衡量模型訓練的效果。該文采用的分割方式是生成長度為0~N-1(N為句子總數)的亂序序列,將亂序序列按14∶3∶3的比例進行分割,分別對應訓練集、驗證集、測試集。再根據分割后的亂序序列取出對應下標值的句子存入到對應的文件當中。

2.4 基于訓練集的中英文詞集提取

首先,定義三個標簽:,;其中表示未定義詞匯,表示語句的開頭,表示語句的結束。由于文本已經經過分詞處理,故只需按行讀取句子,根據空格進行分割就能夠獲取到詞匯,并且按照詞匯的頻率由高到底排序。

3 詞向量訓練

3.1 文本表示方法

文本表示方法一直是自然語言處理研究范疇中的一個熱點問題,總體來講主要分為兩大類:獨熱編碼和分布式表示。

獨熱編碼(one-hot representation)又稱為一位有效編碼,這種編碼格式是建立一個全局完備的字典,但在計算上面臨著兩個問題,一個是這種表示方法的向量維度是字典的大小,而字典中的詞匯數目往往很大,從而在計算時避免不了維數災難的問題,給計算機帶來極大的負擔;另一個是這種表示只包含詞匯在字典中的索引和詞頻信息,未考慮詞的上下文信息,無法從向量上判斷兩個詞匯是否相似,不能為后續的模型訓練提供更多有用的信息。

分布式表示(distributed representation)是一種稠密、低維的實值向量表示,由Hinton[12]在1986年提出,能夠有效克服獨熱編碼的缺點。每個維度表示單詞的不同句法和語義特征。詞向量是一種詞匯的分布式表示形式,通過對文本語料庫進行訓練,將每個詞用N維的實值向量表示,向量可以看作空間上的一條線,通過計算向量之間形成的角度,就可以判斷兩個單詞之間的相似度。其中Word2Vec是一個可以快速訓練詞向量的算法。

3.2 Word2Vec算法

Word2Vec算法是Tomas Mikolov帶領的研究團隊發明的[13]。其基本思想是利用上下文信息,即使用與當前詞相鄰的若干個詞,來生成當前詞的特征向量。其中包含了跳字模型(Skip-gram)和連續詞袋模型(CBOW)兩種訓練模型,CBOW是通過上下文來預測當前詞,而Skip-gram則相反,它是通過當前詞來預測上下文。同時,Word2Vec提供了兩套優化方法來提高詞向量的訓練效率,分別是Hierachy Softmax和Negative Sampling[14]。通過將訓練模型與優化方法進行組合可以得到4種訓練詞向量的架構。

3.3 基于Word2Vec算法訓練詞向量

通過Python中gensim庫里封裝的Word2Vec進行詞向量的訓練。主要的訓練參數說明如表1所示。

表1 Word2Vec訓練參數說明

使用訓練集作為訓練語料,主要的調試參數為詞向量的維度,固定參數:sg=1,min_count=1,work-ers=4,hs=1。其中參數window若設置得過小,將無法捕捉句子中較長距離的依賴信息,若設置得過大,將捕捉到過多的無效依賴,從而降低了有效依賴的權重,因此將固定window參數為8。通過將詞向量的維度設置為1,2,4,8,16,32,64,128,256,512進行訓練,從而探究詞向量維度對計算詞匯間文本相似度的影響。對于中文文本,將使用“算法”,“復雜度”,“排序”對模型進行測試。對于英文文本,將使用“algorithm”,“complexity”,“sort”對模型進行測試。

3.4 訓練結果

對不同詞向量維度模型進行相似度測試后,通過對前十的相似度詞匯的相似度取平均數畫出相似度變化折線,如圖1所示。

圖1 平均相似度變化折線

由圖1可以得出:同一個單詞,詞向量維度越高,計算所得的單詞相似度越低。通過對測試結果中的實際相似單詞進行分析,可以看出:當詞向量維度為1時,無論使用哪個詞匯進行測試的結果都是一樣的;當詞向量維度過低時,測試結果含有實際意義的詞匯較少;隨著詞向量維度的增加,相似度測試結果具有實際意義的詞匯漸漸變多。因此,剔除維度為1,2,4,8,16的詞向量,保留維度為32,64,128,256,512的詞向量進行下一步的翻譯模型訓練。

4 基于GNMT訓練翻譯模型

神經機器翻譯(neural machine translation,NMT)存在致命的缺點,即計算成本非常昂貴,并且大多數NMT系統對罕見詞的處理效果不好且在處理長句有翻漏的現象。谷歌發布的GNMT(Google’s neural machine translation)解決了上述問題,翻譯誤差平均降低了60%。在推理過程中采用低精度算法以及TPU進行計算還可以解決翻譯速度問題。為了更好地處理罕見詞,將罕見詞拆分為常見子詞單元分別進行處理。為了減少長句翻漏的現象,在波束搜索中使用長度規范化過程和覆蓋度懲罰機制[3]。使用Google在GitHub上開源的代碼訓練帶有注意力機制的兩層LSTM seq2seq模型,首先探究詞向量對模型訓練的影響,再探究隱藏單元數num_unit以及批尺寸batch_size對模型訓練的影響。最終選取最佳的參數進行訓練。具體實驗步驟為:

(1)使用詞向量維度為32,64,128,256,512進行訓練,選取效果最佳的詞向量維度進入下一個實驗;

(2)使用num_unit為32,64,128,256,512進行訓練,選取效果最佳的num_unit進入下一個實驗;

(3)使用batch_size為4,32,64,128,192,256進行訓練,選取效果最佳的batch_size;

(4)綜合實驗結果,選取最優參數進行訓練,直到模型不再優化為止。

5 實驗結果

模型訓練的環境如表2所示。

表2 模型訓練環境

5.1 翻譯指標ppl和bleu

ppl指的是困惑度(perplexity),是統計機器翻譯中的評價指標,用于評判機器翻譯的譯文是不是一個合理的語句。它是通過對概率平均數取倒數計算獲得,所以當模型的翻譯結果越合理,困惑度越低。

bleu(bilingual evaluation understudy)[15]是由IBM于2001年提出的一種文本評估算法,用來評估機器翻譯與專業人工翻譯之間的接近程度,核心思想就是當機器翻譯越接近人工翻譯,bleu分數越高,說明機器翻譯與人工翻譯之間越接近。

5.2 詞向量維度對模型訓練的影響

將使用詞向量維度為32,64,128,256,512進行模型訓練?;趐pl及bleu進行對照的折線變化如圖2所示。

圖2 不同詞向量維度模型的ppl及bleu對照折線變化

由圖2可見,隨著訓練步數的增大,ppl的變化越來越小,慢慢趨近于沒有變化。隨著詞向量維度的增大,最終的ppl變小。隨著訓練步數的增大,每個模型的bleu值都呈上升趨勢。在模型訓練中期,詞向量維度低的模型的bleu值超越了詞向量維度高的模型的bleu值,但只是暫時的,隨著訓練步數的增加,最終詞向量維度高的模型bleu值變大。

綜上所述,在詞向量維度取值為32,64,128,256,512時,詞向量維度為512時的模型訓練效果最優。并根據圖像顯示,繼續增大詞向量維度,模型有進一步優化的可能。

5.3 超參數num_unit對模型訓練的影響

超參數num_unit指的是隱藏層單元數,過小的num_unit會使神經網絡的表達能力差,從而導致模型訓練效果不佳;而過大的num_unit會帶來過擬合并且訓練時間過長的缺點。由圖2可知,當詞向量維度為512時模型效果最優,因此對固定詞向量維度取為512,其他參數為默認參數,取num_unit為32,64,128,256,512進行模型訓練嘗試找到最佳的取值。基于ppl及bleu進行對照的折線變化如圖3所示。

由圖3可見,在訓練初期,num_unit高的模型與num_unit低的模型的ppl變化折線圖像會有一個交點。在交點以前,num_unit越小,ppl越小。在交點以后,num_unit越小,ppl越大。當訓練步數足夠大時,隨著num_unit的增大,最終的ppl變小。num_unit越大,bleu變化折線圖整體在num_unit小的bleu變化折線圖上方。

圖3 不同num_unit模型的ppl及blue對照折線變化

綜上所述,在num_unit取值為32,64,128,256,512時,num_unit為512時的模型訓練效果最優。并根據圖像顯示,繼續增大num_unit的取值,模型有進一步優化的可能。

5.4 超參數batch_size對模型訓練的影響

超參數batch_size代表了一次輸入給神經網絡的樣本數,在合理范圍內,越大的batch_size使得參數修正的方向越準確,震蕩越小;而過大的batch_size會使得一次epoch內所需的迭代次數變少,從而對參數的修正變得更加緩慢;而過小的batch_size會使得隨機性較大,震蕩較大,難以達到收斂。將固定詞向量維度設為512,num_unit為512,其他為默認參數,由于機器性能的限制,無法選用更大的batch_size進行實驗,因此分別選取batch_size為4,32,64,128,192,256進行訓練嘗試找到batch_size的合理范圍和最佳的選值。

基于ppl及bleu進行對照的折線變化如圖4所示。

圖4 不同batch_size模型的ppl及bleu對照折線

由圖4可見,當batch_size過小時,曲線震蕩較大,模型的訓練效果較差。當batch_size在范圍[32,256]內時,曲線震蕩較小,模型訓練效果相近,因此范圍為[32,256]是batch_size的合適選值范圍。當batch_size過小時,模型訓練效果非常差。隨著batch_size的增大,最終的bleu值變大。

綜上所述,batch_size在取值為4,32,64,128,192,256時,batch_size為256時的模型訓練效果最優。并根據圖像顯示,繼續增大詞向量維度,模型有進一步優化的可能。

5.5 最終的模型訓練

根據以上的實驗結果,最終選取詞向量維度為512,num_unit為512,batch_size為256進行最終的模型訓練。

模型的bleu值詳細變化如圖5所示。

圖5 模型的bleu詳細變化折線

由圖5所示,當模型訓練步數到達120 000步左右時,bleu漸漸達到峰值。

6 翻譯結果

將該文的英譯漢模型與百度翻譯進行翻譯效果對比,如表3所示。

由表3可以看到,使用訓練模型翻譯的語句均能將專業詞匯翻譯正確,而百度翻譯會將專業詞匯翻譯錯。如測試語句1中的“binary search”翻譯成了二進制搜索,測試語句2中的“greedy”翻譯成了貪婪,測試語句3中的“memoization”更是直接沒有翻譯。由此可見使用文中訓練的翻譯模型在計算機算法類領域比百度翻譯的效果更好。

表3 翻譯對比結果

7 結束語

該文主要進行了計算機算法類垂直領域的中英翻譯優化。以關鍵詞進行檢索并爬取中英雙語例句,通過收集與計算機算法類相關度高的文本優化翻譯效果。對英文文本進行小寫化處理,避免詞匯表出現重復單詞,降低訓練成本以及優化訓練效果。通過jieba庫對中文文本分詞和nltk庫對英文文本分詞。通過制作計算機算法類分詞字典,增加計算機算法類文本的分詞正確率。通過Word2Vec算法訓練不同維度的詞向量,進行詞匯間文本相似度測試得出,詞向量維度越大,詞匯間相似度越低,但所得出的測試結果越具有實際意義。通過實驗分析發現,詞向量維度為512,num_unit為512,batch_size為256時模型效果最佳。

猜你喜歡
詞匯文本效果
按摩效果確有理論依據
本刊可直接用縮寫的常用詞匯
一些常用詞匯可直接用縮寫
山東醫藥(2020年34期)2020-12-09 01:22:24
在808DA上文本顯示的改善
本刊可直接用縮寫的常用詞匯
迅速制造慢門虛化效果
基于doc2vec和TF-IDF的相似文本識別
電子制作(2018年18期)2018-11-14 01:48:06
抓住“瞬間性”效果
中華詩詞(2018年11期)2018-03-26 06:41:34
模擬百種唇妝效果
Coco薇(2016年8期)2016-10-09 02:11:50
文本之中·文本之外·文本之上——童話故事《坐井觀天》的教學隱喻
主站蜘蛛池模板: 国产亚洲一区二区三区在线| 伊人久久福利中文字幕| 国产精品亚洲欧美日韩久久| 国产流白浆视频| 中文字幕在线永久在线视频2020| 亚洲日产2021三区在线| 国产在线高清一级毛片| 成人一区专区在线观看| 欧美国产视频| 欧美日韩北条麻妃一区二区| 99精品影院| 成人毛片在线播放| 久久黄色毛片| 熟妇人妻无乱码中文字幕真矢织江 | 国产精品微拍| 欧美 国产 人人视频| 无码中文字幕乱码免费2| 国产日本欧美在线观看| 国产午夜福利片在线观看| 国产自视频| 999在线免费视频| 国产凹凸一区在线观看视频| 久久这里只有精品8| 亚洲成aⅴ人片在线影院八| 欧类av怡春院| 亚洲视频四区| 精品一区二区三区水蜜桃| 91精品福利自产拍在线观看| 丝袜久久剧情精品国产| 无码电影在线观看| 国产精品一老牛影视频| 国产综合精品一区二区| 亚洲第一区精品日韩在线播放| av在线手机播放| 亚洲欧美日韩精品专区| 中文字幕永久在线观看| 欧美福利在线观看| 天天综合网色中文字幕| 在线欧美a| 国产欧美成人不卡视频| 99热亚洲精品6码| 国产乱视频网站| a在线观看免费| 91美女在线| 亚洲欧美成aⅴ人在线观看| 最新亚洲人成无码网站欣赏网 | 精品久久久久久久久久久| 久久人搡人人玩人妻精品| 色综合久久久久8天国| 在线无码av一区二区三区| 一级毛片在线免费视频| 久久综合婷婷| 狠狠色香婷婷久久亚洲精品| 免费国产一级 片内射老| 亚洲中文字幕国产av| 色婷婷啪啪| 91成人在线观看视频| 久久99久久无码毛片一区二区| 欧美视频免费一区二区三区| 国产av色站网站| 欧美亚洲日韩不卡在线在线观看| 国产一级特黄aa级特黄裸毛片| 成人毛片免费观看| 久久天天躁狠狠躁夜夜2020一| 久久综合伊人 六十路| 美女被躁出白浆视频播放| 欧美va亚洲va香蕉在线| 国产福利小视频在线播放观看| 亚洲乱码在线播放| 国产va视频| 国产香蕉在线视频| 亚洲成肉网| 99伊人精品| 国产精品成人AⅤ在线一二三四| 日本欧美精品| 999精品免费视频| 日日拍夜夜操| 亚洲欧美人成电影在线观看| 亚洲美女视频一区| 强奷白丝美女在线观看| 国产成人狂喷潮在线观看2345| 久久久久久尹人网香蕉|