訂閱
糾錯
加入自媒體

中科院計(jì)算所副研究員馮洋:神經(jīng)機(jī)器翻譯的訓(xùn)練改進(jìn)和解碼提速

2. 可導(dǎo)的序列級目標(biāo)

接下來介紹如果解決詞級匹配的對于好一點(diǎn)的匹配和差的匹配一視同仁的問題。

這個是我們在EMNLP 2018上所做的工作。通過使用可導(dǎo)的序列級目標(biāo)來解決詞級匹配的問題。

首先介紹一下傳統(tǒng)的序列級損失函數(shù)。傳統(tǒng)的序列級損失函數(shù)基本上都是基于N-gram正確率的損失函數(shù),比如,BLEU,GLEU等等。計(jì)算方法為,命中n-gram的個數(shù)/總共的n-gram的個數(shù)(candidate),其中n-gram的個數(shù)為其每個詞語出現(xiàn)頻次的乘積。

直接使用BLEU不可到的原因是因?yàn)椴僮髦杏衋rgmax,為了使其可導(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概率的是由獨(dú)立Token的輸出概率相乘得到結(jié)果,然后求和會得到The total probabilistic count of 3-grams。將匹配上的3-gram的概率拿出來求和作為分子,Total probabilistic count作為分母,計(jì)算得到 Precision of 3-grams。這就是我們的loss。

這個例子用來展示整個的訓(xùn)練過程,這里需要注意的一點(diǎn)就是,和傳統(tǒng)的teacher forcing方式不同,這里當(dāng)前步輸入的為上一步預(yù)測的結(jié)果(貪心搜索得到的結(jié)果),而不是ground truth的值。剩下的就是按照上頁slides介紹的來計(jì)算loss。對于loss采用傳統(tǒng)的梯度下降算法即可。下面貼的是在數(shù)據(jù)集上的結(jié)果。

從結(jié)果中可以看出,2-gram比4-gram的效果要好,這里我們給出的解釋是,過多的使用自己生成的去計(jì)算的話,會存在一定程度上的錯誤累積。

在訓(xùn)練的時候,也是可以通過teacher forcing的方式來訓(xùn)練的,但是從圖中可以看出,teacherforcing的方式收斂的比較快,但是效果不如greedy search的方式好。

<上一頁  1  2  3  4  5  下一頁>  余下全文
聲明: 本文由入駐維科號的作者撰寫,觀點(diǎn)僅代表作者本人,不代表OFweek立場。如有侵權(quán)或其他問題,請聯(lián)系舉報。

發(fā)表評論

0條評論,0人參與

請輸入評論內(nèi)容...

請輸入評論/評論長度6~500個字

您提交的評論過于頻繁,請輸入驗(yàn)證碼繼續(xù)

  • 看不清,點(diǎn)擊換一張  刷新

暫無評論

暫無評論

    掃碼關(guān)注公眾號
    OFweek人工智能網(wǎng)
    獲取更多精彩內(nèi)容
    文章糾錯
    x
    *文字標(biāo)題:
    *糾錯內(nèi)容:
    聯(lián)系郵箱:
    *驗(yàn) 證 碼:

    粵公網(wǎng)安備 44030502002758號