2024-08-02|閱讀時間 ‧ 約 25 分鐘

AI說書 - 從0開始 - 110 | BLEU 使用方式與邏輯介紹

我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。


以下提供範例說明 BLEU 怎麼使用:

#Example 1 
reference = [['the', 'cat', 'likes', 'milk'], ['cat', 'likes' 'milk']]
candidate = ['the', 'cat', 'likes', 'milk']
score = sentence_bleu(reference, candidate)
print('Example 1', score)

#Example 2
reference = [['the', 'cat', 'likes', 'milk']]
candidate = ['the', 'cat', 'likes', 'milk']
score = sentence_bleu(reference, candidate)
print('Example 2', score)


輸出結果為:


以下來介紹 BLEU 的核心精神,BLEU 的計算公式為:

其中

  • BP 計算方式為:令 c 為 Model 產生的翻譯長度、r 為參考句子長度,則當 c > r 時,BP = 1,否則 BP = exp(1 - r/c)
  • wn 為 1/N,這裡的 N 代表 N-Gram,通常只取到 N = 4
  • pn 的計算舉例如下:

機器翻譯:Going to play basketball this afteroon?

人工翻譯:Going to play basketball in the afternoon?

則按照 N-Gram 的切割,可以得到下表:

以及

則 1-Gram 分數 p1 = 6/7、2-Gram 分數 p2 = 4/6、3-Gram 分數 p3 = 2/4、4-Gram 分數 p4 = 1/4


資料出自:

https://mycollegenotebook.medium.com/bleu%E8%A9%95%E4%BC%B0%E6%96%B9%E6%B3%95-2509c2149387



分享至
成為作者繼續創作的動力吧!
© 2024 vocus All rights reserved.