0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

如此強(qiáng)大的機(jī)器翻譯架構(gòu)內(nèi)部的運(yùn)行機(jī)制究竟是怎樣的?

DPVg_AI_era ? 來源:lq ? 2019-01-26 09:36 ? 次閱讀

近年來,神經(jīng)機(jī)器翻譯的突飛猛進(jìn)讓越來越多的人類翻譯感到壓力山大,瑟瑟發(fā)抖,那么如此強(qiáng)大的機(jī)器翻譯架構(gòu)內(nèi)部的運(yùn)行機(jī)制究竟是怎樣的?本文用一系列動(dòng)圖帶你看個(gè)明白。

過去幾十年來,統(tǒng)計(jì)機(jī)器翻譯一直是占據(jù)主導(dǎo)地位的機(jī)器翻譯模型[9],直到神經(jīng)機(jī)器翻譯(NMT)誕生。神經(jīng)機(jī)器翻譯(NMT)是近幾年來新興的機(jī)器翻譯模式,該模式試圖構(gòu)建和訓(xùn)練能夠讀取輸入文本,并輸出翻譯結(jié)果的單個(gè)大型神經(jīng)網(wǎng)絡(luò)。

NMT的最初來自Kalchbrenner和Blunsom(2013)等人的提議。今天更為人所知的框架是從Sutskever等人提出的seq2seq框架。本文就將重點(diǎn)介紹seq2seq框架以及如何構(gòu)建基于seq2seq框架的注意力機(jī)制。

總體來說,注意力層的部署可以分為4步(其實(shí)是5步)

第0步:準(zhǔn)備隱藏狀態(tài)。

首先準(zhǔn)備第一個(gè)解碼器隱藏狀態(tài)(紅色)和所有可用的編碼器隱藏狀態(tài)(綠色)。在我們的例子中有4個(gè)編碼器隱藏狀態(tài)和當(dāng)前解碼器隱藏狀態(tài)。

步驟1:獲取每個(gè)編碼器隱藏狀態(tài)的分?jǐn)?shù)

通過評(píng)分函數(shù)(也稱為比對(duì)評(píng)分函數(shù)或比對(duì)模型)獲得評(píng)分(標(biāo)量)。在該示例中,得分函數(shù)是解碼器和編碼器隱藏狀態(tài)之間的點(diǎn)積。

步驟2:通過softmax圖層運(yùn)行所有分?jǐn)?shù)。

我們將得分放到softmax函數(shù)層,使softmax處理后的得分(標(biāo)量)之和為1。這些得分代表注意力的分布。

步驟3:將每個(gè)編碼器隱藏狀態(tài)乘以其softmax得分。

通過將每個(gè)編碼器隱藏狀態(tài)與其對(duì)應(yīng)的softmax得分(標(biāo)量)相乘,獲得對(duì)齊向量或注釋向量。這就是對(duì)齊的機(jī)制。

步驟4:總結(jié)對(duì)齊向量。

對(duì)齊向量的總結(jié)可以生成上下文向量。上下文向量反映的是前一步的對(duì)齊向量的聚合信息。

步驟5:將上下文向量送到解碼器。

具體傳送方式取決于翻譯系統(tǒng)的架構(gòu)設(shè)計(jì)。我們將在下文示例中看到不同的架構(gòu)如何利用解碼器的上下文向量。

下面來看看幾種seq2seq模型的運(yùn)行機(jī)制,為便于理解,我們采用比較直觀的描述(對(duì)于每種模型,均以德-英翻譯為例)。

seq2seq

翻譯會(huì)從頭至尾把德語文本閱讀一遍,讀完開始逐詞翻譯成英語,如果句子過長,他可能會(huì)忘了文章開始時(shí)都讀過哪些內(nèi)容。

一個(gè)簡單的seq2seq模型就是這樣了,至于面向注意力層的逐級(jí)計(jì)算,是下面要講的seq2seq+注意力模型,下面是這個(gè)模型的直觀表述。

seq2seq+ 注意力

翻譯一遍閱讀德文文本,一邊從頭至尾地記錄關(guān)鍵詞,然后開始翻譯成英語。每翻譯一個(gè)德語詞匯,都要用一次記下來的關(guān)鍵詞。

該機(jī)制下會(huì)為每個(gè)單詞分配一個(gè)得分,根據(jù)分?jǐn)?shù)高低投入不同的注意力。然后根據(jù)Softmax函數(shù)處理過的分?jǐn)?shù),使用編碼器隱藏狀態(tài)的加權(quán)和來聚合編碼器隱藏狀態(tài),獲得上下文向量。注意力層的實(shí)現(xiàn)可以分為4個(gè)步驟。

注意力機(jī)制的運(yùn)行究竟是怎樣的?

答案是:反向傳播,沒想到吧。反向傳播將盡一切努力確保產(chǎn)出成果接近實(shí)際情況。通過改變RNN中的權(quán)重和得分函數(shù)(如果有的話)來實(shí)現(xiàn)這一目標(biāo)。這些權(quán)重將影響編碼器隱藏狀態(tài)和解碼器隱藏狀態(tài),進(jìn)而影響注意力得分。

帶雙向編碼器的seq2seq+注意力

這一機(jī)制相當(dāng)于有兩名翻譯。翻譯A一邊閱讀德語文本,一邊記錄關(guān)鍵詞。翻譯B(比A更高級(jí)的翻譯,可以從后往前倒著閱讀然后進(jìn)行翻譯)也在逐詞閱讀同樣的德語文本,同時(shí)記下關(guān)鍵詞。

這兩個(gè)翻譯會(huì)定期討論到目前為止閱讀的每一個(gè)詞。一旦閱讀完畢,翻譯B會(huì)負(fù)責(zé)根據(jù)討論結(jié)果和選擇的綜合關(guān)鍵詞,將德語的句子逐字翻譯成英語。

翻譯A就是前向RNN,翻譯B就是后向RNN。

采用雙層堆疊編碼器的seq2seq+注意力

翻譯A一邊閱讀德語文本,一邊記錄關(guān)鍵詞。翻譯B(比A更高級(jí)的翻譯,可以從后往前倒著閱讀然后進(jìn)行翻譯)也在逐詞閱讀同樣的德語文本,同時(shí)記下關(guān)鍵詞。注意,初級(jí)翻譯A必須把閱讀到的每個(gè)單詞向翻譯B報(bào)告。閱讀完成后,兩位翻譯都會(huì)根據(jù)他們所選擇的綜合關(guān)鍵詞,逐字逐句地將句子翻譯成英語。

谷歌的神經(jīng)機(jī)器翻譯:帶8個(gè)堆疊編碼器的seq2seq(+雙向+剩余連接)+注意力

相當(dāng)于翻譯A、B、...到H一共8位翻譯,從下到上排成一列。每位翻譯都閱讀相同的德語文本。每閱讀一個(gè)單詞,翻譯A會(huì)與翻譯B分享發(fā)現(xiàn),翻譯B對(duì)發(fā)現(xiàn)內(nèi)容進(jìn)行改進(jìn),并與翻譯C分享,以此類推重復(fù)這個(gè)過程,直到翻譯H為止。此外,在閱讀德語文本時(shí),翻譯H會(huì)根據(jù)自己的知識(shí)和收到的信息記錄下相關(guān)的關(guān)鍵詞。

在每個(gè)翻譯都閱讀過英文文本之后,命令翻譯A開始翻譯第一個(gè)單詞。首先,翻譯A試圖回憶起,然后他與譯者B分享他的答案,譯者B改進(jìn)答案并與譯者C分享,以此類推重復(fù)這一過程,直到翻譯H。然后,翻譯H根據(jù)記錄的關(guān)鍵詞寫出第一個(gè)翻譯。重復(fù)這個(gè)過程,直到翻譯完成為止。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報(bào)投訴
  • 編碼器
    +關(guān)注

    關(guān)注

    45

    文章

    3645

    瀏覽量

    134579
  • 神經(jīng)網(wǎng)絡(luò)

    關(guān)注

    42

    文章

    4772

    瀏覽量

    100808
  • 機(jī)器翻譯
    +關(guān)注

    關(guān)注

    0

    文章

    139

    瀏覽量

    14886

原文標(biāo)題:五張動(dòng)圖,看清神經(jīng)機(jī)器翻譯里的Attention!

文章出處:【微信號(hào):AI_era,微信公眾號(hào):新智元】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏

    評(píng)論

    相關(guān)推薦

    tas5756m使用GPIO口加內(nèi)部PLL產(chǎn)生MCLK的方法究竟是怎么樣的?

    tas5756m使用GPIO口加內(nèi)部PLL產(chǎn)生MCLK的方法究竟是怎么樣的?
    發(fā)表于 08-19 06:06

    機(jī)器翻譯三大核心技術(shù)原理 | AI知識(shí)科普

    翻譯新時(shí)代;2015年,蒙特利爾大學(xué)引入Attention機(jī)制,神經(jīng)機(jī)器翻譯達(dá)到實(shí)用階段;2016年,谷歌GNMT發(fā)布,訊飛上線NMT系統(tǒng),神經(jīng)翻譯開始大規(guī)模應(yīng)用。03
    發(fā)表于 07-06 10:30

    圖解:IGBT究竟是什么?

    圖解:IGBT究竟是什么? IGBT究竟是什么?
    發(fā)表于 08-10 08:01

    神經(jīng)機(jī)器翻譯的方法有哪些?

    目前,神經(jīng)機(jī)器翻譯(NMT)已經(jīng)成為在學(xué)術(shù)界和工業(yè)界最先進(jìn)的機(jī)器翻譯方法。最初的這種基于編碼器-解碼器架構(gòu)機(jī)器翻譯系統(tǒng)都針對(duì)單個(gè)語言對(duì)進(jìn)行翻譯
    發(fā)表于 11-23 12:14

    S參數(shù)究竟是什么?

    S參數(shù)究竟是什么?起決定性作用的S參數(shù)將S參數(shù)擴(kuò)展到多端口器件和差分器件
    發(fā)表于 03-01 11:46

    我們仿真DDR究竟是仿真什么

    我們仿真DDR究竟是仿真什么?
    發(fā)表于 03-04 07:32

    電感飽和究竟是什么

    電感飽和究竟是什么
    發(fā)表于 03-11 08:13

    真正軟件定義無線電究竟是怎樣的?

    真正軟件定義無線電究竟是怎樣的?
    發(fā)表于 05-14 06:47

    分貝究竟是什么?如何去理解它?

    分貝究竟是什么?如何去理解它?
    發(fā)表于 05-31 07:05

    一文讀懂eMMC究竟是啥?

    eMMC究竟是啥?eMMC長什么樣?eMMC用在哪?主要是干嘛用的?eMMC究竟是如何工作的呢?
    發(fā)表于 06-18 06:04

    增量式編碼器倍頻技術(shù)的M法究竟是怎樣測速的

    增量式編碼器輸出的脈沖波形信號(hào)形式常見的有哪幾種?增量式編碼器倍頻技術(shù)的M法究竟是怎樣測速的?
    發(fā)表于 11-09 07:08

    暴風(fēng)電視拆機(jī)圖解 內(nèi)部結(jié)構(gòu)究竟是怎樣

    繼樂視、小米之后,國內(nèi)另一家互聯(lián)網(wǎng)公司--暴風(fēng)影音也發(fā)布了旗下的智能電視產(chǎn)品,而且同樣是分體式設(shè)計(jì)。而今天我們就來看看愛玩客帶來的暴風(fēng)電視的內(nèi)部結(jié)構(gòu)究竟是怎樣的。
    的頭像 發(fā)表于 09-04 14:32 ?3.1w次閱讀

    超聲波熔接原理究竟是怎樣

    超聲波熔接理論基礎(chǔ)不變,就會(huì)有模貝搭建原則的共通點(diǎn)。而超聲波熔接原理究竟是怎樣的?
    發(fā)表于 04-20 10:03 ?3231次閱讀

    S參數(shù)究竟是什么?

    S參數(shù)究竟是什么?
    發(fā)表于 11-01 08:24 ?2次下載
    S參數(shù)<b class='flag-5'>究竟是</b>什么?

    半導(dǎo)體內(nèi)部電荷運(yùn)動(dòng)的機(jī)制究竟是什么呢?

    半導(dǎo)體內(nèi)部電荷運(yùn)動(dòng)的機(jī)制究竟是什么呢? 半導(dǎo)體材料的內(nèi)部電荷運(yùn)動(dòng)機(jī)制是半導(dǎo)體物理學(xué)和固體物理學(xué)的重要研究領(lǐng)域之一。在這篇文章中,我們將詳細(xì)、
    的頭像 發(fā)表于 11-30 11:28 ?947次閱讀