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

基于sequence to sequence的神經機器翻譯模型研究

2019-12-20 03:03:30侯悅文
價值工程 2019年33期
關鍵詞:深度學習

侯悅文

摘要:深度學習是機器學習的技術和研究領域之一,通過創設具有階層結構的人工神經網絡,在計算機系統中實現人工智能,近幾年越來越為人們所關注。機器翻譯也可以使用神經網絡中的循環神經網絡中sequence to sequence架構[3]進行實驗。本文使用基于循環神經網絡的編碼器-解碼器模型將一個語言的句子編碼成固定長度向量,并使用一個語言模型來解碼為另一個語言的句子。我基于這個模型構建了一個英法的機器翻譯模型,經過評估能實現機器翻譯的效果。

Abstract:? Deep learning is one of the techniques and research fields of machine learning. Artificial intelligence has been realized in computer systems by creating artificial neural networks with hierarchical structure, which has attracted more and more attention in recent years. Machine translation can also use the sequence to sequence architecture[3] in the recurrent neural network in neural networks for test. In this paper, a cyclic neural network based encoder-decoder model is used to encode a language sentence into a fixed length vector and a language model is used to decode a sentence into another language. Based on this model, the author built an English-French machine translation model that was evaluated to achieve machine translation.

關鍵詞:機器翻譯;sequence to sequence;深度學習

Key words: machine translation;sequence to sequence;deep learning

中圖分類號:TP18? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?文獻標識碼:A? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 文章編號:1006-4311(2019)33-0294-03

1? 定義

1.1 深度學習

深度學習是一種特殊的機器學習,性能十分高而且非常靈活,能夠表示高階抽象概念的復雜函數,解決目標識別、語音感知和語言理解等人工智能相關的任務。相較于傳統的機器學習,深度學習可以實現無監督學習[1]。而且相較于傳統的機器學習在面對大量數據時性能有限的問題,深度學習可以通過輸入數據量的增加或是訓練一個規模更加大的神經網絡來使性能隨之不斷提高,因此在數據量巨大的數字化時代,深度學習也得以快速興起。深度學習的典型模型有:深度信念網絡、深度玻爾茲曼機、自動編碼器、卷積神經網絡、循環神經網絡等。[4]

1.2 機器翻譯

機器翻譯是指利用計算機將一種自然源語言轉變為另一種自然目標語言的過程。法國科學家G.B.阿爾楚尼最早提出了機器翻譯的設想。機器翻譯發展至今,從一開始的基于規則到后來的基于語料庫,即基于統計學和概率學[4]翻譯效率和準確率均有了明顯的提升。

2? 模型

2.1 循環神經網絡(RNN)

循環神經網絡是一類以序列數據為輸入,在序列的演進方向進行遞歸且所有節點(循環單元)按鏈式連接的遞歸神經網絡。圖1為一個單向循環神經網絡。

要開始整個流程,首先要在零時刻構造一個激活值a<0>,a<0>通常為零向量。激活值a<0>通過前向傳播輸出

a<1>。同時將第一個單詞x<1>輸入在第一層神經網絡中計算后將結果y<1>輸出。在每次當它讀到句中的第二個單詞時,假設是x<2>,循環神經網絡不是僅用x<2>就預測出y<2>,它也會輸入一些來自時間步 1 的信息。具體而言,時間步 1 的激活值就會傳遞到時間步 2。然后,在下一個時間步,循環神經網絡輸入了單詞x<3>,然后它嘗試預測輸出了預測結果y<3>等等,一直到最后一個時間步,輸入了x,輸出了y。在每一個時間步中,循環神經網絡傳遞一個激活值到下一個時間步中用于計算。用Wax 來表示管理著從x<1>到隱藏層連接的一系列參數,每個時間步使用的都是相同的參數Wax。而激活值也就是水平聯系是由參數Waa決定。循環神經網絡的激活函數通常是tanh,ReLU,sigmoid,softmax等。在t時刻,a和y的計算公式如下

這些等式定義了循環神經網絡的前向傳播,通過構造a<0>,并輸入x<1.2.3...t>來完成循環神經網絡從左到右的前向傳播。

2.2 Sequence to sequence模型架構

最簡單的sequence to sequence模型由encoder和decoder組成。

2.2.1 Encoder

Encoder實際上是一個RNN,接受輸入句子的每一個單詞作為輸入并產生一個向量作為輸出。對于每個輸入的單詞,encoder都會輸出一個向量和一個隱藏態(實際上隱藏態也是一個向量),并用于下一個時間步的計算。如圖2所示。

其中GRU為門控制單元,GRU有兩個門,分別為更新門和遺忘門。其作用是通過門來決定當從左到右掃描一個句子的時候,這個時機是要更新某個記憶細胞,還是不更新。GRU單元輸入c,假設它正好等于a,將這個作為輸入并將x也作為輸入,將這兩個用合適權重結合在一起,用tanh計算,算出c,■

2.2.2 Decoder

Decoder實際上是另一個RNN,用于接收向量并輸出單詞的序列。對于最簡單形式的Seq2Seq的decoder僅僅使用encoder的最后一個時間步的隱藏態作為輸入。最后一個時間步的輸出向量有時候被稱為上下文向量,因為它代表整個輸入序列的上下文。上下文向量被用于decoder的第一個時間步的輸入。

解碼的每一個時間步,decoder接收一個輸入的token和隱藏態,初始的輸入token是特殊單詞start-of-sentence--,初始的輸入隱藏態是encoder生成的上下文向量。

3? 實驗

本次實驗基于sequence to sequence架構構建了法語-英語的平行句對的翻譯模型并對之進行了訓練和評估。本次實驗使用的編程語言為Python。Python通過附加的工具可以轉換成可以適合科學和工程代碼的高級語言,速度通常足夠快且靈活。[2]實現模型使用的深度學習框架是PyTorch。PyTorch是作為一個Python包提供如下兩個優點:①具有強GPU加速度的張量計算(如numpy);②定義的網絡結構簡單。

3.1 數據預處理

用于訓練機器翻譯模型的數據是許多英語-法語的平行句對。訓練數據保存在文件中,其中每一行是一個英語-法語的平行句對。英語與法語句子之間使用tab鍵分割,例如:I am cold.? ? J'ai froid.

本次實驗對語料進行了如下的數據預處理工作:首先我將語言中的單詞使用one-hot編碼進行表示,即除了單詞索引位為1其他位全為0的向量表示并在開頭添加在結尾添加來表示開始讀取和結束讀取。由于一種語言中的單詞非常的多,所以這個使用one-hot編碼的向量非常的長。由于該項目為演示項目,所以本次實驗只使用幾千個單詞作為演示,實際工業機器翻譯使用的詞表往往有數萬或十多萬單詞,需要在多張顯卡上并行訓練一個星期以上。為了方便將單詞在字符串和索引之間的轉換,我維護一個名為Lang的類,其中維護了一個將單詞轉換為索引的字典(word2index)和縮影轉換為單詞的字典(index2word)。為了簡化本文的模型,我將所有法語中的字符轉化為ASCII(僅包含英文字符),此外,我還將所有字符轉化為小寫,并刪除音標符號。我給模型設定句子的最大長度(應為GPU需要并行計算,實際上輸入的每個句子最后都會被預處理為相同的形式)。為了使計算得到簡化,快速得到一個觀感上可接受的結果,我設定最大長度為10個token(分詞后的每個單詞稱為token)。此外我將輸入的句子限定為一些簡單開頭的句子(為了減小模型規模所采用的強限定),如只使用“I am”或“He is”開頭的句子等。

3.2 訓練

3.2.1 訓練數據的準備

為了進行訓練,我會將句對轉化為輸入tensor(源語言句子單詞的索引列表)和輸入tensor(目標語言句子單詞的索引列表),句子的末尾還會加上特殊的token標記句子的結尾

3.2.2 訓練模型

訓練時,我將源語言句子作為序列輸入給encoder,并維護encoder每個時間步的隱藏態。之后,decoder使用作為第一個時間步的輸入,以及encoder的最后一個時間步的輸出隱藏態作為decoder的第一個時間步隱藏態的輸入。

在訓練時,decoder的輸入token實際上是正確的目標語言單詞,而不是像訓練完成后進行翻譯是使用的是上一個時間步decoder輸出的單詞。其中本次實驗調用的損失函數為nn.L1Loss。nn.L1Loss函數的計算方法為取預測值和真實值的絕對誤差的平均值在本次實驗中預測值和平均值分別為模型預測的單詞和正確的單詞,函數的公式如下。(學習率為0.5)。同時我使用了一個輔助函數來顯示進度。整個訓練的過程可以簡單的分為如下幾步:①啟動計時器;②初始化優化器和訓練目標;③生成訓練數據(句對);④保持loss到列表并繪圖。在最后繪制結果時我使用了matplotlib庫來繪圖,使用之前保持的損失列表,繪圖函數為plot_losses。

3.2.3 評估

評估的過程和訓練非常像,但是由于模型不知道正確的翻譯結果是什么,所以解碼的每個時間步使用上一個時間步輸出的token作為該時間步的輸入token。每個時間步都會預測一個單詞輸出,將這個單詞加入到最終要輸出的源語言句子,當預測到特殊token--表示decoder認為該句子翻譯完成,我會將解碼時的計算的注意力權重保存并用于繪圖。我使用訓練集中隨機的句子作為輸入并測試翻譯的結果,結果我們可以較為直觀地看出翻譯質量。

4? 實驗過程及結果

本文模型使用的隱藏態hidden_size為256,在正式實驗中一共訓練了75000次,花費了48m22s,loss=0.5797。

本文隨機輸入句子對模型進行評估,結果如圖3。

可以看出該模型在翻譯時仍有較多的錯誤,其錯誤類型主要為譯文選詞錯誤,譯文和原文意思相反以及詞序不對。原因可能在于在翻譯較短句子時由于模型難以得到所有的詞,而翻譯較長的句子時由于句子太復雜導致模型在翻譯短句和長句時都會出現錯誤。

5? 總結與展望

本文首先介紹了機器翻譯常用的工具和模型,并使用基于循環神經網絡的編碼器-解碼器模型實現了法語-英語的翻譯。證明了神經網絡對于自然語言的強大學習能力。其優點在于成本低、效率高。但是翻譯的結果中還有一些問題,之后為了解決這些問題我會嘗試引入注意力機制(attention model)。

參考文獻:

[1]劉建偉,劉媛,羅雄麟.深度學習研究進展[J].計算機應用研究,2014,31(7):1921-1930.

[2]Oliphant, Travis E . Python for Scientific Computing[J]. Computing in Science & Engineering, 2007, 9(3):10-20.

[3]Sutskever I , Vinyals O , Le Q V . Sequence to Sequence Learning with Neural Networks[J]. 2014.

[4]周志華.機器學習[M].北京:清華大學出版社,2016.

[5]潘登.CNKI翻譯助手和Wordnet分析中國政治詞匯的英譯[J].價值工程,2013,32(04):322-324.

猜你喜歡
深度學習
從合坐走向合學:淺議新學習模式的構建
面向大數據遠程開放實驗平臺構建研究
基于自動智能分類器的圖書館亂架圖書檢測
搭建深度學習的三級階梯
有體驗的學習才是有意義的學習
電子商務中基于深度學習的虛假交易識別研究
現代情報(2016年10期)2016-12-15 11:50:53
利用網絡技術促進學生深度學習的幾大策略
考試周刊(2016年94期)2016-12-12 12:15:04
MOOC與翻轉課堂融合的深度學習場域建構
大數據技術在反恐怖主義中的應用展望
深度學習算法應用于巖石圖像處理的可行性研究
軟件導刊(2016年9期)2016-11-07 22:20:49
主站蜘蛛池模板: 激情六月丁香婷婷| 国产一级无码不卡视频| 国产主播福利在线观看| 久久精品国产电影| 在线观看视频99| 欧美日韩第三页| 亚洲天堂日韩在线| 国产免费久久精品99re不卡| 色屁屁一区二区三区视频国产| 欧美影院久久| 亚洲人成色77777在线观看| 大乳丰满人妻中文字幕日本| 国产成人AV男人的天堂| 国产精品尹人在线观看| 天堂岛国av无码免费无禁网站 | 激情无码字幕综合| 国产成人乱无码视频| 四虎在线观看视频高清无码| 久久精品无码中文字幕| 好吊妞欧美视频免费| 欧美色香蕉| 在线观看亚洲天堂| 国产成人精品无码一区二| 精品国产亚洲人成在线| 亚洲男人的天堂网| av在线人妻熟妇| 亚洲无码视频一区二区三区| 国产精品无码作爱| 欧美一区二区自偷自拍视频| 在线日本国产成人免费的| 成人国产精品一级毛片天堂| 国产精品私拍99pans大尺度| 亚洲综合在线最大成人| 欧美全免费aaaaaa特黄在线| 日韩最新中文字幕| 99九九成人免费视频精品| 玩两个丰满老熟女久久网| 国产精品久久久久久久久| 久久这里只精品热免费99| 日韩成人午夜| 免费看a级毛片| 亚洲欧洲免费视频| 8090成人午夜精品| 九色综合伊人久久富二代| 亚洲人在线| 无码人妻热线精品视频| 免费激情网址| 日本黄色不卡视频| 国产成人综合网| 日韩免费成人| 91丝袜乱伦| 欧美午夜性视频| 一级看片免费视频| 欧美精品亚洲精品日韩专区va| 亚洲IV视频免费在线光看| 亚洲午夜综合网| 日韩区欧美国产区在线观看| 久久综合干| 欧美午夜在线视频| 日本欧美在线观看| 国产性爱网站| 国产欧美日韩专区发布| 自拍亚洲欧美精品| 国产精品综合色区在线观看| 92午夜福利影院一区二区三区| 免费毛片视频| 国产一级二级在线观看| 深夜福利视频一区二区| 欧美日韩免费| 一级一级一片免费| 国产欧美性爱网| 三级欧美在线| 国产XXXX做受性欧美88| 日韩成人高清无码| 亚洲天堂网站在线| 99精品在线看| 18禁不卡免费网站| 久久久亚洲色| 91在线免费公开视频| 黄片在线永久| 欧美成人国产| 亚洲天堂首页|