大三學生獨自破解逆天AI模型:我只是把撩妹的時間,都用來研究機器學習了_風聞
量子位-量子位官方账号-2019-06-09 12:39
問耕 發自 雁棲湖
量子位 出品 | 公眾號 QbitAI

GPT-2,一個逆天的AI。
今年2月,OpenAI首次對外公佈了這個模型的存在。GPT-2寫起文章來文思泉湧毫無違和感,無需針對性訓練就能橫掃各種特定領域的語言建模任務,還具備閲讀理解、問答、生成文章摘要、翻譯等等能力。
但不同尋常的是,這個模型並沒有真的開源。OpenAI給的解釋是,它太過強大,我們不敢放出完整模型……儘管因此被外界嘲笑,但GPT-2仍然封閉至今。
現在,有人單槍匹馬,破解了OpenAI不欲人知的秘密。
而且,是一個大三的學生。
來自慕尼黑工業大學的Connor Leahy同學,在兩個月的時間裏,付出了200個小時的時間,花費了大約6000人民幣,復現了GPT-2項目。
這件事在推特上引發了眾多關注。稱讚Awesome的有之,深入討論的有之,甚至連OpenAI的幾位資深研究員,都趕來溝通。
另外讓人佩服的是,Connor Leahy同學關於機器學習的知識,都是利用空閒時間自學而成。他形容自己是一個充滿好奇心的本科生。
“我只是把別人出去撩妹的時間,用來搞AI實驗了而已。”
一氣之下
GPT-2是OpenAI最棒的研究成果。
這個模型是GPT的“進化版”,最大區別就在於規模大小。GPT-2參數達到了15億個,使用了包含800萬個網頁的數據集來訓練,共有40GB。
使用語言建模作為訓練信號,以無監督的方式在大型數據集上訓練一個Transformer,然後在更小的監督數據集上微調這個模型,以幫助它解決特定任務。
**△**GPT模型
OpenAI的研究人員表示,在各種特定領域數據集的語言建模測試中,GPT-2都取得了優異的分數。作為一個沒有經過任何領域數據專門訓練的模型,它的表現,比那些專為特定領域打造的模型還要好。
除了能用於語言建模,GPT-2在問答、閲讀理解、摘要生成、翻譯等等任務上,無需微調就能取得非常好的成績。
GPT-2發佈後,深度學習之父Hinton獻出了他註冊Twitter以來的第三次評論:“這應該能讓硅谷的獨角獸們生成更好的英語了。”
關於這個模型的強大表現,可以參考量子位之前的報道,這裏不再贅述。
總之,就是一個字:強。
就是因為強,OpenAI做了一個艱難的決定:不把完整的模型放出來給大家。他們先是放出了不到十分之一規模、1.17億個參數的小型版本,被吐槽幾個月後又放出了3.45億參數的中型版本。
毫無疑問,GPT-2激發了Connor Leahy同學的好奇心,同時,OpenAI私藏這個模型的決定,也讓他非常生氣。“信息應該是自由的。”
於是他決定自己動手復現出來。
他不只是因為一時衝動。對於為什麼要復現GPT-2,Connor Leahy同學在自己的博客裏有長長的思考,其中包括與其害怕AI編造的假新聞,不如積極行動起來,讓大家意識到這個問題,勇敢面對然後想辦法解決。
當然還有另一個原因,他覺得這麼做:
很酷。
復現版GPT-2
“你怎麼知道自己成功復現了15億參數的GPT-2模型?”
這個問題,恐怕絕大多數人都想知道答案。
Connor Leahy同學給出的回應是:兩個模型的大小和參數量相同,基於相似的數據源訓練,使用了類似的計算資源,而且輸出結果質量相仿。
他也給出了兩者的一些明確不同,比方:
1、dropout和learning rate官方沒有披露,所以設置可能不一樣。
2、模型訓練使用了Adafactor而不是Adam。Connor Leahy同學不知道怎麼把15億參數+Adam塞進TPU,即便16bit精度也不行。
哎?等下……
一個普普通通的大三學生,怎麼能用到TPU搞這種研究?
感謝Google。
Google有一個Tensorflow Research Cloud(TFRC)計劃。這個計劃面向研究人員,提供1000個Cloud TPU組成的集羣,完全免費。這個計劃用於支持多種需要大量計算並且無法通過其他途徑實現的研究項目。
當時Connor Leahy同學在研究GPT-2復現的時候,遇到了計算資源的瓶頸,然後隨口跟TFRC團隊提了一嘴,結果卻得到了Google慷慨的支持。
實際上,在推進這個項目之前,Connor Leahy同學從來沒有使用過TPU。所以,他在博客中熱情的對Google團隊表達了感謝。
不過,他還是在雲端花費了大約600-800歐元(人民幣6000元左右),用於創建數據集、測試代碼和運行實驗。
他用的筆記本是一台舊的ThinkPad。
Connor Leahy同學還對降噪耳機表達了感謝:讓我保持寧靜。
目前,復現版的GPT-2已經放在GitHub上開源,代碼可以在GPU、TPU以及CPU上跑(不建議)。現在作者放出了兩個版本,一個是1.17億參數的小型版本,一個是稱為PrettyBig的版本,比3.45億參數的官方中型版稍大一點,也是目前公開的最大GPT-2模型。
至於15億參數的完整版,作者計劃7月1日發佈。
— 完 —