熱點 | 大三學(xué)生獨自破解逆天AI模型
本文經(jīng)AI新媒體量子位(公眾號ID:QbitAI)授權(quán)轉(zhuǎn)載,轉(zhuǎn)載請聯(lián)系出處。
GPT-2,一個逆天的 AI。
今年 2 月,OpenAI 首次對外公布了這個模型的存在。GPT-2 寫起文章來文思泉涌毫無違和感,無需針對性訓(xùn)練就能橫掃各種特定領(lǐng)域的語言建模任務(wù),還具備閱讀理解、問答、生成文章摘要、翻譯等等能力。
但不同尋常的是,這個模型并沒有真的開源。OpenAI 給的解釋是,它太過強(qiáng)大,我們不敢放出完整模型……盡管因此被外界嘲笑,但 GPT-2 仍然封閉至今。
現(xiàn)在,有人單槍匹馬,破解了 OpenAI 不欲人知的秘密。
而且,是一個大三的學(xué)生。
來自慕尼黑工業(yè)大學(xué)的 Connor Leahy 同學(xué),在兩個月的時間里,付出了 200 個小時的時間,花費了大約 6000 人民幣,復(fù)現(xiàn)了 GPT-2 項目。
這件事在推特上引發(fā)了眾多關(guān)注。稱贊 Awesome 的有之,深入討論的有之,甚至連 OpenAI 的幾位資深研究員,都趕來溝通。
另外讓人佩服的是,Connor Leahy 同學(xué)關(guān)于機(jī)器學(xué)習(xí)的知識,都是利用空閑時間自學(xué)而成。他形容自己是一個充滿好奇心的本科生。
“我只是把別人出去撩妹的時間,用來搞 AI 實驗了而已。”
一氣之下
GPT-2 是 OpenAI 最棒的研究成果。
這個模型是 GPT 的“進(jìn)化版”,最大區(qū)別就在于規(guī)模大小。GPT-2 參數(shù)達(dá)到了 15 億個,使用了包含 800 萬個網(wǎng)頁的數(shù)據(jù)集來訓(xùn)練,共有 40GB。
使用語言建模作為訓(xùn)練信號,以無監(jiān)督的方式在大型數(shù)據(jù)集上訓(xùn)練一個 Transformer,然后在更小的監(jiān)督數(shù)據(jù)集上微調(diào)這個模型,以幫助它解決特定任務(wù)。
GPT 模型
OpenAI 的研究人員表示,在各種特定領(lǐng)域數(shù)據(jù)集的語言建模測試中,GPT-2 都取得了優(yōu)異的分?jǐn)?shù)。作為一個沒有經(jīng)過任何領(lǐng)域數(shù)據(jù)專門訓(xùn)練的模型,它的表現(xiàn),比那些專為特定領(lǐng)域打造的模型還要好。
除了能用于語言建模,GPT-2 在問答、閱讀理解、摘要生成、翻譯等等任務(wù)上,無需微調(diào)就能取得非常好的成績。
GPT-2 發(fā)布后,深度學(xué)習(xí)之父 Hinton 獻(xiàn)出了他注冊 Twitter 以來的第三次評論:“這應(yīng)該能讓硅谷的獨角獸們生成更好的英語了。”
關(guān)于這個模型的強(qiáng)大表現(xiàn),可以參考量子位之前的報道,這里不再贅述。
總之,就是一個字:強(qiáng)。
就是因為強(qiáng),OpenAI 做了一個艱難的決定:不把完整的模型放出來給大家。他們先是放出了不到十分之一規(guī)模、1.17 億個參數(shù)的小型版本,被吐槽幾個月后又放出了 3.45 億參數(shù)的中型版本。
毫無疑問,GPT-2 激發(fā)了 Connor Leahy 同學(xué)的好奇心,同時,OpenAI 私藏這個模型的決定,也讓他非常生氣。“信息應(yīng)該是自由的。”
于是他決定自己動手復(fù)現(xiàn)出來。
他不只是因為一時沖動。對于為什么要復(fù)現(xiàn) GPT-2,Connor Leahy 同學(xué)在自己的博客里有長長的思考,其中包括與其害怕 AI 編造的假新聞,不如積極行動起來,讓大家意識到這個問題,勇敢面對然后想辦法解決。
當(dāng)然還有另一個原因,他覺得這么做:
很酷。
復(fù)現(xiàn)版 GPT-2
“你怎么知道自己成功復(fù)現(xiàn)了 15 億參數(shù)的 GPT-2 模型?”
這個問題,恐怕絕大多數(shù)人都想知道答案。
Connor Leahy 同學(xué)給出的回應(yīng)是:兩個模型的大小和參數(shù)量相同,基于相似的數(shù)據(jù)源訓(xùn)練,使用了類似的計算資源,而且輸出結(jié)果質(zhì)量相仿。
他也給出了兩者的一些明確不同,比方:
1、dropout 和 learning rate 官方?jīng)]有披露,所以設(shè)置可能不一樣。
2、模型訓(xùn)練使用了 Adafactor 而不是 Adam。Connor Leahy 同學(xué)不知道怎么把 15 億參數(shù) +Adam 塞進(jìn) TPU,即便 16bit 精度也不行。
哎?等下……
一個普普通通的大三學(xué)生,怎么能用到 TPU 搞這種研究?
感謝 Google。
Google 有一個 Tensorflow Research Cloud(TFRC)計劃。這個計劃面向研究人員,提供 1000 個 Cloud TPU 組成的集群,完全免費。這個計劃用于支持多種需要大量計算并且無法通過其他途徑實現(xiàn)的研究項目。
當(dāng)時 Connor Leahy 同學(xué)在研究 GPT-2 復(fù)現(xiàn)的時候,遇到了計算資源的瓶頸,然后隨口跟 TFRC 團(tuán)隊提了一嘴,結(jié)果卻得到了 Google 慷慨的支持。
實際上,在推進(jìn)這個項目之前,Connor Leahy 同學(xué)從來沒有使用過 TPU。所以,他在博客中熱情的對 Google 團(tuán)隊表達(dá)了感謝。
不過,他還是在云端花費了大約 600-800 歐元(人民幣 6000 元左右),用于創(chuàng)建數(shù)據(jù)集、測試代碼和運(yùn)行實驗。
他用的筆記本是一臺舊的 ThinkPad。
Connor Leahy 同學(xué)還對降噪耳機(jī)表達(dá)了感謝:讓我保持寧靜。
目前,復(fù)現(xiàn)版的 GPT-2 已經(jīng)放在 GitHub 上開源,代碼可以在 GPU、TPU 以及 CPU 上跑(不建議)。現(xiàn)在作者放出了兩個版本,一個是 1.17 億參數(shù)的小型版本,一個是稱為 PrettyBig 的版本,比 3.45 億參數(shù)的官方中型版稍大一點,也是目前公開的最大 GPT-2 模型。
至于 15 億參數(shù)的完整版,作者計劃 7 月 1 日發(fā)布。
現(xiàn)階段,Connor Leahy 同學(xué)邀請大家下載試用,跟他一起討論復(fù)現(xiàn)版 GPT-2 到底還有什改進(jìn)空間。在關(guān)于這件的博客文章里,他說:我 100% 能接受大家指出的任何錯誤,如果你發(fā)現(xiàn)問題請與我聯(lián)系。
關(guān)于作者和傳送門
Connor Leahy 同學(xué) 2017 年考入德國慕尼黑工業(yè)大學(xué),目前是一名大三的計算機(jī)本科學(xué)生。在 LinkedIn 上,他說自己對人工智能充滿熱情。
從 2018 年 9 月迄今,他還在馬克思普朗克研究所實習(xí),也在用來自 Google 的 TPU,研究正經(jīng)的 AI 課題。
最后,放一下傳送門。
Connor Leahy 同學(xué)充滿思考的博客:
https://medium.com/@NPCollapse/gpt2-counting-consciousness-and-the-curious-hacker-323c6639a3a8
與他在 GitHub 相見吧:
https://github.com/ConnorJL/GPT2