1. 程式人生 > >[DeeplearningAI筆記]序列模型3.6Bleu得分/機器翻譯得分指標

[DeeplearningAI筆記]序列模型3.6Bleu得分/機器翻譯得分指標

5.3序列模型與注意力機制

覺得有用的話,歡迎一起討論相互學習~Follow Me

3.6Bleu得分

  • 在機器翻譯中往往對應有多種翻譯,而且同樣好,此時怎樣評估一個機器翻譯系統是一個難題。 常見的解決方法是通過BLEU得分來進行判斷

評價機器翻譯Evaluating machine translation

Papineni K. Bleu:A Method for Automatic Evaluation of Machine Translation[J]. Proc Acl, 2002.

  • 示例 法語句子 :Le chat est sur le tapis

    • 人工翻譯參考1

      The cat is on the mat

    • 人工翻譯參考2 There is a cat on the mat

    • 實際上兩個翻譯都能準確地翻譯了這個法語句子,BLEU得分做的就是給定一個機器生成的翻譯,這個演算法能夠自動地計算一個分數來評價機器翻譯的好壞。如果機器翻譯的語句能夠與任意一個人工翻譯參考相近,其就會得到很高的BLEU分數。

  • BLEU 代表 bilingual evalution understudy–雙語評估替補 在戲劇界,替補演員通過學習資深演員以能夠在適當時機替代資深演員。 BLEU 相當於請評估員人工評估機器翻譯系統,BLEU得分 相當於一個候補者代替人類來評估機器翻譯的每一個翻譯結果。 BLEU得分

    背後的理念是 觀察機器生成的翻譯,然後看生成的詞是否至少出現在一個人工翻譯參考之中 因此這些人工翻譯的參考會包含在開發集或測試集中

觀察輸出結果的每一個詞看起是否出現在人工參考中

  • 衡量機器翻譯輸出質量的方法之一是 觀察輸出結果的每一個詞看起是否出現在人工參考中,這被定義為機器翻譯的精確度

    • 機器翻譯結果MT 假設機器翻譯得到一個極端的解:the the the the the the the

      • 這種情況下,得到了7個單詞,並且這七個單詞都出現在了兩個參考中,因此根據定義這個輸出的精確度是7/7 ,看上去這個結果十分好但是實際結果卻不是這樣。

      • 所以把出現在參考中的詞在MT輸出的所有詞中所佔的比例作為精確度評估標準並不是很有用

改良後的精確度評估方法

  • 把每個詞的計分上限定位它在參考句子中出現的最多次數, 在參考一中單詞 the 出現了2次,所以上限是2。參考二中,單詞the只出現了1次,取參考句子中單詞出現的最大值,所以單詞“the”的計分上限是2 所以機器翻譯結果最終的分數是 2/7

二元組BLEU得分 Bleu score on bigrams

  • 考慮BLEU得分不僅只考慮單個單詞,還應該考慮成對的單詞(相鄰的單片語)的得分

  • 示例 法語句子 :Le chat est sur le tapis

    • 人工翻譯參考1 The cat is on the mat

    • 人工翻譯參考2 There is a cat on the mat

    • MT機器翻譯 The cat the cat on the mat

  • 機器翻譯中的二元組

    • Count_Clip(截斷計數) 定義為演算法的得分上限,上限值為二元片語出現在參考1和參考2中的最大次數。

    • 所以改進後的 Bleu分數 即為 Count_Clip之和除以Count之和

    Bigrams Count Count_Clip
    the cat 2 1
    cat the 1 0
    cat on 1 1
    on the 1 1
    the mat 1 1
    • 此例中 Bleu分數46

N元組BLEU得分

  • 一元組Bleu得分

    P1=unigramy^countclip(unigram)unigramy^count(unigram)
  • N元組Bleu得分

    Pn=ngramy^countclip(ngram)ngramy^count(ngram)

Bleu 得分細節

  • Pn 表示n元片語這一項的BLEU得分,為了使用一個數值來評價一個機器翻譯系統,需要將P1,P2,P3,P4...的數值整合進行計算。

  • Bleuscore=BPexp(14n=14Pn)
  • 使用BP進行 簡短懲罰(brevity penalty) ,意思是 如果機器翻譯輸出了一個非常簡短的翻譯,則其很容易得到一個高分的Bleu值(輸出的大部分詞可能都出現在參考之中,但是如果我不想要很簡短的翻譯,則需要使用到簡短懲罰) ,其是一個懲罰項,能夠懲罰輸出了太短的 機器翻譯系統

  • 公式

    • 即如果 機器翻譯的長度 大於 人工翻譯輸出的長度 ,BP=1,而其他情況下 BP的定義會遵從一個式子,從而減小Bleu得分的值。
  • Bleu得分 是一個 單一實數評價指標 ,其在 機器翻譯圖片描述 中應用廣泛,用以評價機器生成的語句和實際人工生成的結果是否相近。