中科院計算所副研究員馮洋:神經(jīng)機器翻譯的訓(xùn)練改進和解碼提速
2. 可導(dǎo)的序列級目標(biāo)
接下來介紹如果解決詞級匹配的對于好一點的匹配和差的匹配一視同仁的問題。
這個是我們在EMNLP 2018上所做的工作。通過使用可導(dǎo)的序列級目標(biāo)來解決詞級匹配的問題。
首先介紹一下傳統(tǒng)的序列級損失函數(shù)。傳統(tǒng)的序列級損失函數(shù)基本上都是基于N-gram正確率的損失函數(shù),比如,BLEU,GLEU等等。計算方法為,命中n-gram的個數(shù)/總共的n-gram的個數(shù)(candidate),其中n-gram的個數(shù)為其每個詞語出現(xiàn)頻次的乘積。
直接使用BLEU不可到的原因是因為操作中有argmax,為了使其可導(dǎo),我們使用token的預(yù)測概率,而非使用argmax。這個方法和直接用BLEU作為Score,然后reinforce算法直接訓(xùn)練對比有啥優(yōu)勢?由于reinforce算法的方差比較大,所以在訓(xùn)練的時候是很難收斂的。而使用傳統(tǒng)的梯度下降的方法,訓(xùn)練過程就會平穩(wěn)的多。
這里是3-gram的例子,其中output是概率最高的詞,3-gram概率的是由獨立Token的輸出概率相乘得到結(jié)果,然后求和會得到The total probabilistic count of 3-grams。將匹配上的3-gram的概率拿出來求和作為分子,Total probabilistic count作為分母,計算得到 Precision of 3-grams。這就是我們的loss。
這個例子用來展示整個的訓(xùn)練過程,這里需要注意的一點就是,和傳統(tǒng)的teacher forcing方式不同,這里當(dāng)前步輸入的為上一步預(yù)測的結(jié)果(貪心搜索得到的結(jié)果),而不是ground truth的值。剩下的就是按照上頁slides介紹的來計算loss。對于loss采用傳統(tǒng)的梯度下降算法即可。下面貼的是在數(shù)據(jù)集上的結(jié)果。
從結(jié)果中可以看出,2-gram比4-gram的效果要好,這里我們給出的解釋是,過多的使用自己生成的去計算的話,會存在一定程度上的錯誤累積。
在訓(xùn)練的時候,也是可以通過teacher forcing的方式來訓(xùn)練的,但是從圖中可以看出,teacherforcing的方式收斂的比較快,但是效果不如greedy search的方式好。

請輸入評論內(nèi)容...
請輸入評論/評論長度6~500個字
最新活動更多
-
7月22-29日立即報名>> 【線下論壇】第三屆安富利汽車生態(tài)圈峰會
-
7.30-8.1火熱報名中>> 全數(shù)會2025(第六屆)機器人及智能工廠展
-
7月31日免費預(yù)約>> OFweek 2025具身智能機器人產(chǎn)業(yè)技術(shù)創(chuàng)新應(yīng)用論壇
-
免費參會立即報名>> 7月30日- 8月1日 2025全數(shù)會工業(yè)芯片與傳感儀表展
-
即日-2025.8.1立即下載>> 《2024智能制造產(chǎn)業(yè)高端化、智能化、綠色化發(fā)展藍皮書》
-
8月5日立即報名>> 【在線會議】CAE優(yōu)化設(shè)計:醫(yī)療器械設(shè)計的應(yīng)用案例與方案解析
推薦專題