在 VTT (Video to Text) 任務中,需要衡量模型輸出的視頻描述語句的準確性,因爲衡量的對象是一個個的自然語言文本,所以通常會選擇自然語言處理領域的相關評價指標。這些指標原先都是用來度量機器翻譯結果質量的,並且被證明可以很好的反映待評測語句的準確性,主要包含4種:BLEU,METEOR,ROUGE,CIDEr。
1、BLEU
BLEU(Bilingual Evaluation understudy,雙語互譯質量評估)是一種流行的機器翻譯評價指標,一種基於精確度的相似度量方法,用於分析候選譯文中有多少 元詞組出現在參考譯文中,由IBM於2002年提出。假設, 表示候選譯文(也就是GT),該候選譯文對應的一組參考譯文(也就是模型預測出來的語句)可以表示爲 ;將候選譯文 中所有相鄰的 個單詞提取出來組成一個集合 ,一般取 ;用 表示 中的第 個詞組, 表示第 個詞組 在候選譯文 中出現的次數, 表示第 個詞組 在參考譯文 中出現的次數。此時,在 下參考譯文和候選譯文 的匹配度計算公式就可以表示爲分子表示先取詞組 在參考譯文中出現的最大次數,然後取它和 在候選譯文中出現次數的較小者,也就是該詞組在參考譯文和候選譯文中出現的最小次數,最後將每個 對應的最小次數求和;分母則表示所有詞組在候選譯文中出現的次數。下圖給出了一個具體的示例,分別是 1-gram、2-gram、3-gram 和 4-gram 時的匹配度:
一般來說, 取值越大,參考譯文就越難匹配上,匹配度就會越低。 能夠反映候選譯文中有多少單詞被單獨翻譯出來,也就代表了參考譯文的充分性; 值越高說明參考譯文的可讀性越好,也就代表了參考譯文的流暢性。
當參考譯文比候選譯文長(單詞更多)時,這種匹配機制可能並不準確,例如上面的參考譯文如果是 ,匹配度就會變成1,這顯然是不準確的;爲此我們引入一個懲罰因子 表示各自的長度。最終,BLEU的計算公式就是 代表每一個 n-gram 的權重,一般 最大取4,所以 。(參考)
BLEU 更偏向於較短的翻譯結果,它看重準確率而不注重召回率(n-gram 詞組是從候選譯文中產生的,參考譯文中出現、候選譯文中沒有的詞組並不關心);原論文提議數據集多設置幾條候選譯文,4條比較好,但是一般的數據集只有一條。
2、ROUGE
BLEU 是統計機器翻譯時代的產物,因爲機器翻譯出來的結果往往不通順,所以BLEU更關注翻譯結果的準確性和流暢度;到了神經網絡翻譯時代,神經網絡很擅長腦補,自己就把語句梳理得很流暢了,這個時候人們更關心的是召回率,也就是參考譯文中有多少詞組在候選譯文中出現了。
ROUGE(recall-oriented understanding for gisting evaluation)就是這樣一種基於召回率的相似性度量方法,主要考察參考譯文的充分性和忠實性,無法評價參考譯文的流暢度,它跟BLEU的計算方式幾乎一模一樣,但是 n-gram 詞組是從參考譯文中產生的。分爲4種類型:
ROUGE | 解釋 |
---|---|
ROUGE-N | 基於 N-gram 的共現(共同出現)統計 |
ROUGE-L | 基於最長共有子句共現性精度和召回率 Fmeasure 統計 |
ROUGE-W | 帶權重的最長共有子句共現性精度和召回率 Fmeasure 統計 |
ROUGE-S | 不連續二元組共現性精度和召回率 Fmeasure 統計 |
3、METEOR
相比於上面兩個標準而言,METEOR 顯得更加人性化,它關注到那些翻譯準確、但是和候選譯文還是對不上的參考譯文,比如參考譯文用了候選譯文的同義詞。METEOR 需要 WordNet 擴充同義詞集,同時需要考慮單詞詞性(比如like、likes應該都算對);在計算方式上它融合了準確率、召回率,利用二者的調和平均值來作爲評判標準。
其中,
分別就對應着 BLEU、ROUGE 的準確率、召回率計算方法, 爲用於評價的默認參數。詳細的算法查看原論文,計算的話可以調用已有的java庫,免去了手動實現的麻煩。
4、CIDEr
CIDEr 首先將 n-grams 在參考譯文中出現的頻率編碼進來,通過TF-IDF 計算每個 n-gram 的權重,將句子用 n-gram 表示成向量的形式,然後計算參考譯文和候選譯文之間的 TF-IDF 向量餘弦距離,以此度量二者的相似性。