0
本文作者: 貝爽 | 2020-11-23 17:31 |
既然你誠(chéng)心誠(chéng)意的發(fā)問了,我們就大發(fā)慈悲的告訴你!
為了防止世界被破壞,為了守護(hù)世界的和平,貫徹愛與真實(shí)的邪惡,可愛又迷人的反派角色....
聽到這段臺(tái)詞,相信很多朋友都會(huì)不由自主地接上一句.......
我們是穿梭在銀河的火箭隊(duì)!白洞!白色的明天在等著我們!
就這樣~喵~
沒錯(cuò),它就是《神奇寶貝》中火箭隊(duì)每次出場(chǎng)都讓人忍不住發(fā)笑的經(jīng)典臺(tái)詞。
1997年上映的《神奇寶貝》已經(jīng)陪伴了我們二十年之久,給不少80、90后的童年留下了美好的回憶,尤其是那800多只寵物小精靈。
會(huì)放電的皮卡丘、經(jīng)常酣睡的妙蛙種子、不好惹的小火龍,還有喵喵、超夢(mèng)、可達(dá)鴨。
這些可可愛愛又奇奇怪怪的動(dòng)漫小精靈讓人記憶猶新,相信很多人小時(shí)候都幻想過擁有一支屬于自己的精靈寶貝。
最近,一位名為Matthew Rayfield的程序員就滿足了自己的愿望。他用《神奇寶貝》中的788只動(dòng)漫形象作為原型,通過AI生成了3000個(gè)全新的寵物小精靈。
而這個(gè)AI正是自然語(yǔ)言模型GPT-2.
提到NLP模型,我們印象最深的可能是GPT-3。今年該模型因1750億超大參數(shù)量和超強(qiáng)應(yīng)用,在各大媒體平臺(tái)頻頻刷屏。GPT-2,與GPT-3師出同門,都是OpenAI研發(fā)的自然語(yǔ)言處理模型,兩個(gè)模型最大的不同是它的參數(shù)量,GPT-2僅為15億。
但這并不影響它的應(yīng)用范圍。與GPT-3類似,GPT-2也可以用來寫故事、畫圖表,或者玩國(guó)際象棋。
最近Rayfield受到GPT-2在國(guó)際象棋和民間音樂上應(yīng)用的啟發(fā),也想來搞點(diǎn)不一樣的事情。
他突發(fā)奇想決定用GPT-2來生成全新的寵物精靈形象,結(jié)果效果還不錯(cuò)。Rayfield從3000個(gè)生成圖像中挑選出了6個(gè),如圖:
emm...看起來,小精靈原型還不錯(cuò),但就是清晰度太差。Rayfield又邀請(qǐng)了業(yè)內(nèi)知名動(dòng)漫設(shè)計(jì)師雷切爾?布里格斯(Rachel Briggs)來幫他完成這些精靈的“重繪”工作。
最終,基于GPT-2生成的原型,這些寵物小精靈就變成了這樣:
感覺第二個(gè)和第六個(gè)可以直接成為《神奇寶貝》的一員了,你覺得呢?
Rayfield簡(jiǎn)單介紹了他利用GPT-2創(chuàng)建這些精靈的實(shí)現(xiàn)過程。大致就是:搜尋了788張小精靈圖片(均為64x64像素)作為數(shù)據(jù)源,然后:
將圖像轉(zhuǎn)換為基于文本的格式。
用輸入文本訓(xùn)練GPT-2模型。
使用經(jīng)過訓(xùn)練的模型生成圖像。
將基于文本的圖像格式轉(zhuǎn)換為PNG。
在這個(gè)過程中也出現(xiàn)了一些問題。比如在文本格式轉(zhuǎn)換時(shí),出現(xiàn)了很多嘈雜的像素,因此最終調(diào)整成了如下格式。
不過,用文字訓(xùn)練GPT-2的過程還相對(duì)簡(jiǎn)單,最棘手的環(huán)節(jié)是通過代碼將輸出結(jié)果變成規(guī)范化的圖像格式。這部分代碼Rayfield已將其在GitHub開源,感興趣的朋友可以了解一下。
https://github.com/MatthewRayfield/pokemon-gpt-2
需要說明的是,上述Rayfield用GPT-2語(yǔ)言模型來學(xué)習(xí)圖像表征的方法,早已被OpenAI驗(yàn)證。
無監(jiān)督和自監(jiān)督的學(xué)習(xí),或沒有人為標(biāo)記的數(shù)據(jù)的學(xué)習(xí),在自然語(yǔ)言處理領(lǐng)域取得了令人矚目的成功,因?yàn)橄馚ERT、GPT-2、RoBERTa、T5 等 Transformer 模型,在廣泛的語(yǔ)言任務(wù)中取得了最佳成績(jī),但同類的模型在圖像分類任務(wù)中,不能生成較為有用的特征。
出于這一目的,OpenAI嘗試?yán)肎PT-2處理圖像分類任務(wù),以探究用 Transformer 模型在學(xué)習(xí)圖像表征方面的可行性。
他們發(fā)現(xiàn),當(dāng)用展開成像素序列——被稱為 iGPT(image GPT) 的圖像來訓(xùn)練 GPT-2 模型時(shí),模型似乎能夠捕捉二維圖像特征,并且能夠在沒有人類提供的數(shù)據(jù)標(biāo)注下,自動(dòng)生成各種邏輯連續(xù)的圖像樣本。實(shí)驗(yàn)結(jié)果如圖:
人類提供上半圖(第一列),GPT-2自動(dòng)補(bǔ)全下半圖,右側(cè)為原始圖像
同時(shí),該模型的特征在多個(gè)分類任務(wù)的數(shù)據(jù)集上也取得了不錯(cuò)的成績(jī),尤其是在 ImageNet 上取得了接近于最優(yōu)的成績(jī),如下圖。
在自然語(yǔ)言處理中,依賴于單詞預(yù)測(cè)的無監(jiān)督學(xué)習(xí)算法(如 GPT-2 和 BERT)之所以成功,一個(gè)可能的原因是下游語(yǔ)言任務(wù)的實(shí)例出現(xiàn)在訓(xùn)練用的文本中。但相比之下,像素序列并不直接地包含它們所屬的圖像的標(biāo)簽。
而即使沒有明確的監(jiān)督,圖像上的 GPT-2 仍然起作用。OpenAI研究團(tuán)隊(duì)認(rèn)為其原因是足夠大的 Transformer 模型,通過訓(xùn)練來預(yù)測(cè)下一個(gè)像素,最終它能夠?qū)W會(huì)根據(jù)清晰可識(shí)別對(duì)象來生成具有多樣性的樣本。
他們采用一種通用的無監(jiān)督學(xué)習(xí)算法—生成序列建模進(jìn)行了測(cè)試。具體來說,他們?cè)?ImageNet 上分別訓(xùn)練包含 76M、455M 和 1.4B 參數(shù)的 iGPT-S、iGPT-M 和 iGPT-L Transformer;還在來自 ImageNet 和互聯(lián)網(wǎng)的圖像的混合數(shù)據(jù)集上訓(xùn)練 iGPT-XL ——一個(gè) 68 億參數(shù)的 Transformer。由于對(duì)長(zhǎng)序列采用密集注意力(dense attention)的建模計(jì)算成本高,他們用 32x32、48x48 和 64x64 的低分辨率進(jìn)行了訓(xùn)練。
最終實(shí)驗(yàn)結(jié)果表明,通過計(jì)算量來代替二維知識(shí),以及通過從網(wǎng)絡(luò)中選擇的特征,序列 Transformer 可以與最優(yōu)的卷積網(wǎng)競(jìng)爭(zhēng),實(shí)現(xiàn)無監(jiān)督圖像分類。此外,通過將 GPT-2 語(yǔ)言模型直接應(yīng)用于圖像生成的結(jié)果,也進(jìn)一步表明由于其簡(jiǎn)單性和通用性,序列 Transformer 在足夠的計(jì)算量下,有可能成為學(xué)習(xí)到不同領(lǐng)域的特征的有效方法。
更多OpenAI團(tuán)隊(duì)實(shí)驗(yàn)內(nèi)容可參見論文:https://cdn.openai.com/papers/Generative_Pretraining_from_Pixels_V2.pdf
引用鏈接:
https://www.reddit.com/r/MachineLearning/comments/jyh0h4/p_generating_pokemon_sprites_with_gpt2/
https://matthewrayfield.com/articles/ai-generated-pokemon-sprites-with-gpt-2/
https://openai.com/blog/image-gpt/
雷鋒網(wǎng)雷鋒網(wǎng)雷鋒網(wǎng)
雷峰網(wǎng)原創(chuàng)文章,未經(jīng)授權(quán)禁止轉(zhuǎn)載。詳情見轉(zhuǎn)載須知。