iT邦幫忙

2022 iThome 鐵人賽

DAY 25
0
自我挑戰組

來創造一個AI角色吧-新手的探尋之路系列 第 25

Day24 [GPT-2]寫作的培養-心中有劍,則信手拈來,草木皆可為劍

  • 分享至 

  • xImage
  •  

那我們就來看如何將GPT-2訓練成一位作家,如果喜歡走理論派的可以看這篇,如果走實作派可以看這篇以及搭配影片,我喜歡速成所以走實作派,簡介如下。

內容引述了一包Github的project,可以兩部分,第一部分是環境設定,簡單說有3個重點,第一,新版的code設定必須要用GPU跑,所以也可以選舊版的可以用CPU跑,第二,若用GPU跑則要注意對應的軟體、驅動程式、和環境的版本,第三,沒課金的玩家像本人我沒有GPU,也可以考慮如之前練習課程中所提,用Colab跑,但它有提供一定的額度。所以第一步環境就不詳細介紹,有需要再請自行點連結看原文和影片。

第二部分就是實作結果,由於此project已經分別包好一個訓練的py程式碼和一個生成的py程式碼,所以只需要根據文件下對應的參數。
在訓練的部分,作者有提供金庸全集文本,或是我們也可以自行提供資料庫,而根據作者的經驗分享,他的電腦在有GPU訓練一個epoch就要約80分鐘,而他建議至少30個epoch以上,最好100個epoch,所以是需要大約6天等級的時間,訓練期間可儲存各次epoch結果的模型。
在生成方面,作者也有提供兩個訓練好的模型,一個是根據剛所說金庸小說,另一個是經濟日報,真是佛心來的!我們直接來看他所提供金庸小說模型,以"張無忌見三名老僧在片刻間連斃崑崙派四位高手,"作為開頭,創作的250字極短篇4組:
https://ithelp.ithome.com.tw/upload/images/20220929/20141158b6irBAC4qf.png

可以看到語意確實寫得有模有樣!所以只要我們有模型和程式碼,隨口一句都能七步成詩。但仔細看,在語句長時,段落和段落間連結性薄弱,轉折會有些突兀,這跟我們之前在課程中訓練英文生成句子時,看到的缺陷仍是存在的。

我們比對剛才理論那篇作者的另一篇文章,是用TensorFlow的LSTM架的模型,也就是我們訓練課程時所用的,他有提供一個線上的把玩成果,我們設定同樣參數250個字和溫度0.7,但它引言無法輸入只能自己亂數產生,我試了個結果如下:
https://ithelp.ithome.com.tw/upload/images/20220929/20141158EvwyJeaPqH.jpg

可以看到單句語意都是可以理解的,但同樣在段落和段落間轉折會很突兀,而且語句和語句間的連結性較差。
另外也有被我測出有fail情況產生:
https://ithelp.ithome.com.tw/upload/images/20220929/20141158QcvNS3T0ov.jpg


上一篇
Day23 [GPT-2]寫作的培養-引言
下一篇
Day25 [Python]講出來
系列文
來創造一個AI角色吧-新手的探尋之路30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言