iT邦幫忙

第 12 屆 iThome 鐵人賽

DAY 24
0
AI & Data

花甲老頭學 AI系列 第 24

[鐵人12:Day 24] Transformer 7:訓練及測試

  • 分享至 

  • xImage
  •  

Tansformer 的介紹已經接近尾聲了,最後來談談它的訓練參數及測試結果。

訓練

論文中,作者使用了以下的資料集來訓練 Transformer:

- WMT 2014 English-German:4.5 million sentence pairs
- WMT 2014 English-French:36 million sentence pairs

句子的編碼採用 byte-pair 方式 (byte-pair encoding)。將句子長度類似的訓練資料放在同一個訓練批次 (training batch) 內,每個批次大約有 25000 個 source token 及 25000 個 target token。

訓練時使用 8 片 Nvidia P100 GPU 的系統,預設的基本模型訓練時間為 12 小時,訓練次數為 100,000 次。(註一)

作者在論文中提到,Transformer 所需的訓練時間,遠小於同等規模的其他模型,以 English-French 翻譯訓練為例,其只需其他模型的 1/4 。

其他的訓練參數老頭就不在這裏抄錄了,有興趣的 AI 人可自行參閱論文。

測試結果

英文-德文 翻譯:較當時最好的結果好 2.0 BLEU 以上,達 28.4 。
英文-法文 翻譯:超越當時所有的其他模型,達 41.0 BLEU。

稍微跟大家介紹一下 BLEU(老頭是在看這篇論文的時候才了解它是什麼),它的全名是 Bilingual Evaluation Understudy,維基百科中文版上稱之為「雙語替換評測」,顧名思義,它提供了評量翻譯好壞的一種演算法。BLEU 分數越高,表示其翻譯越接近「標準答案」。BLUE 的值介於 0 到 1,所以上面的 28.4 ,事實上應該是 28.4%。在 iT邦幫忙 2018鐵人賽時, renewang 曾經說明過 BLUE 可供大家參考(註二)。

程式碼

作者開放出他們的程式碼: https://github.com/tensorflow/tensor2tensor

對於 Transformer 的介紹就在這裏打住,有很多細節並沒有一一說明,主要是想給大家一個 Transformer 大架構的說明,不想讓太多細節來干擾。最後還是那句話,有機會大家還是要讀論文原文,原汁原味,收穫更多!

(註一:論文中實際上做了多個不同參數及超參數的的模型,在本文中,我們主要介紹的是「基本模型」,其他模型可參閱論文 Table 3)
(註二:renewang 的文章 https://ithelp.ithome.com.tw/articles/10208981


上一篇
[鐵人12:Day 23] Transformer 6:模型架構 (5)
下一篇
[鐵人12:Day 25] 「AI 的未來十年」摘要 1 :源起及簡介
系列文
花甲老頭學 AI30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言