中科院計(jì)算所副研究員馮洋:神經(jīng)機(jī)器翻譯的訓(xùn)練改進(jìn)和解碼提速
2. 非自回歸解碼
最后介紹一下基于非自回歸的解碼方法,傳統(tǒng)的解碼方法是順序生成的。如果能夠使得解碼的時(shí)候并行的方式生成,這速度將會(huì)大大的提升。
傳統(tǒng)的非自回歸模型的做法是,在Transformer Encoder端頭部加一個(gè)Fertility預(yù)測(cè),用來預(yù)測(cè)每個(gè)源端Token能翻譯成一個(gè)目標(biāo)端的Token,然后根據(jù)預(yù)測(cè)的結(jié)果,將源端的Token拷貝到Decoder的輸入,如果一個(gè)源端Token能夠翻譯兩個(gè)目標(biāo)Token,那就拷貝兩次,如果源端Token不會(huì)翻譯成目標(biāo)端Token,那就不拷貝。由于每一步輸出的譯文是沒有給到下一步的,所以是可以并行的。對(duì)于Fertility的訓(xùn)練是采用某種對(duì)齊模型,通過計(jì)算源端和目標(biāo)端的對(duì)齊關(guān)系,然后就可以得到源端和目標(biāo)端的對(duì)齊結(jié)果,就可以采用監(jiān)督的方式來訓(xùn)練Fertility分支。
該方法有一個(gè)問題,就是在翻譯當(dāng)前步的時(shí)候沒有考慮上一步的翻譯信息。這樣就可能導(dǎo)致翻譯結(jié)果的流暢度不夠好。我們的方法就是在該方法的基礎(chǔ)上添加了序列上的信息。這樣模型既能并行執(zhí)行,又能考慮的到前后的序列關(guān)系。
我們的工作分為兩個(gè)方面,一個(gè)是在訓(xùn)練上添加序列信息,一個(gè)是在模型上面同樣也添加序列信息。序列訓(xùn)練采用的是Reinforce的方法,Reinforce的方法非常難以訓(xùn)練,這是因?yàn)槠浞讲罘浅4,方差大的原因是?qiáng)化學(xué)習(xí)episode(一條軌跡從開始到結(jié)束)的搜索空間非常大,我們每次只是采樣出一個(gè)episode,然后根據(jù)這個(gè)episode進(jìn)行計(jì)算,通過大數(shù)定律,我們可以假設(shè)這最終得到的是一個(gè)梯度的無偏估計(jì)。但是在實(shí)際情況下,抖動(dòng)是非常大的。
將Reinforce算法應(yīng)用到我們這個(gè)場(chǎng)景,首先看第一個(gè)公式,由于目標(biāo)端詞的概率是獨(dú)立的,所以就可以寫成連乘的形式,第二個(gè)公式就是傳統(tǒng)的Reinforce公式,就是翻譯的reward。是通過前向后向算法計(jì)算出來的當(dāng)前步的reward。
上面的slides介紹的是計(jì)算reward時(shí)候的不同,接下來看sampling機(jī)制的區(qū)別。根據(jù)生成前后詞的獨(dú)立性,每一步我們并不是采樣出一個(gè)詞,而是采樣出K+1個(gè)詞。這樣的話就可以看做我們一次更新的過程中考慮到更多的episode,而不是僅用一個(gè)episode就去訓(xùn)練了。具體的做法是,每一步,我們先取Top-K,計(jì)算一下?lián)p失函數(shù)的值,然后從剩下的Token中再采樣出來一個(gè)。我們將這兩部分的loss合起來,是為了保證無偏估計(jì)。為前k個(gè)翻譯的概率的和。
另外一個(gè)方法就是模型上的改進(jìn),在非自回歸層的上面加上自回歸層。具體的做法是,模型分為 Bottom Layer,F(xiàn)usion Layer,Top Layer。Bottom Layer就是之前介紹的非自回歸模型,F(xiàn)usion Layer的作用是將非自回歸模型的輸出和其Embedding整合起來,Top-Layer和Transformer 的解碼器基本一致。
實(shí)驗(yàn)結(jié)果:AR(Transformer),NAT(非自回歸的方法),IRNAT(迭代的非自回歸方法),最后是我們提出的方法,第一種是在訓(xùn)練的過程中引入序列信息,第二是在模型上進(jìn)行改進(jìn)。作為對(duì)比的數(shù)據(jù)集有三個(gè),前兩個(gè)數(shù)據(jù)集比較小。主要關(guān)注第三個(gè)數(shù)據(jù)集?梢钥闯,使用NAT來代替AR模型的話,效果會(huì)降6個(gè)點(diǎn)左右,迭代的方法會(huì)帶來1到2個(gè)點(diǎn)的提升。我們提出的reinforce方法和傳統(tǒng)的reinforce方法相比,有0.6個(gè)點(diǎn)的提升。加上回歸層的模型已經(jīng)接近Transformer的效果了。關(guān)于速度的提升,如果僅訓(xùn)練的時(shí)候采用序列信息,速度可以提升10倍。如果是NAT加上自回歸層的方法,速度也可以提高4倍左右。
這里有一些翻譯實(shí)例,可以看出 NAT-base的方法流暢性不夠好,重復(fù)很多“more more …”,因?yàn)闆]有考慮序列信息,所以導(dǎo)致結(jié)果的流暢度不行。使用我們提出的reinforce方法,能夠一定程度上的緩解流暢度的問題,但是問題還是存在。通過使用NAT+AR的方法,能夠更好的緩解流暢度的問題。

發(fā)表評(píng)論
請(qǐng)輸入評(píng)論內(nèi)容...
請(qǐng)輸入評(píng)論/評(píng)論長(zhǎng)度6~500個(gè)字
最新活動(dòng)更多
-
7月8日立即報(bào)名>> 【在線會(huì)議】英飛凌新一代智能照明方案賦能綠色建筑與工業(yè)互聯(lián)
-
7月22-29日立即報(bào)名>> 【線下論壇】第三屆安富利汽車生態(tài)圈峰會(huì)
-
7月31日免費(fèi)預(yù)約>> OFweek 2025具身機(jī)器人動(dòng)力電池技術(shù)應(yīng)用大會(huì)
-
7.30-8.1火熱報(bào)名中>> 全數(shù)會(huì)2025(第六屆)機(jī)器人及智能工廠展
-
免費(fèi)參會(huì)立即報(bào)名>> 7月30日- 8月1日 2025全數(shù)會(huì)工業(yè)芯片與傳感儀表展
-
即日-2025.8.1立即下載>> 《2024智能制造產(chǎn)業(yè)高端化、智能化、綠色化發(fā)展藍(lán)皮書》
推薦專題
- 1 AI 眼鏡讓百萬 APP「集體失業(yè)」?
- 2 豆包前負(fù)責(zé)人喬木出軌BP后續(xù):均被辭退
- 3 一文看懂視覺語言動(dòng)作模型(VLA)及其應(yīng)用
- 4 “支付+”時(shí)代,支付即生態(tài) | 2025中國跨境支付十大趨勢(shì)
- 5 中國最具實(shí)力AI公司TOP10
- 6 特斯拉Robotaxi上路,馬斯克端上畫了十年的餅
- 7 國家數(shù)據(jù)局局長(zhǎng)劉烈宏調(diào)研格創(chuàng)東智
- 8 AI的夏天:第四范式VS云從科技VS地平線機(jī)器人
- 9 張勇等人退出阿里合伙人
- 10 深圳跑出40億超級(jí)隱形冠軍:賣機(jī)器人年入6.1億,港股上市