神奇寶貝最好用的最強平民精靈(我用GPT-2創造了3000個寵物小精靈)
2023-11-08 16:09:42 1
既然你誠心誠意的發問了,我們就大發慈悲的告訴你!
為了防止世界被破壞,為了守護世界的和平,貫徹愛與真實的邪惡,可愛又迷人的反派角色....
聽到這段臺詞,相信很多朋友都會不由自主地接上一句.......
我們是穿梭在銀河的火箭隊!白洞!白色的明天在等著我們!
就這樣~喵~
沒錯,它就是《神奇寶貝》中火箭隊每次出場都讓人忍不住發笑的經典臺詞。
1997年上映的《神奇寶貝》已經陪伴了我們二十年之久,給不少80、90後的童年留下了美好的回憶,尤其是那800多隻寵物小精靈。
會放電的皮卡丘、經常酣睡的妙蛙種子、不好惹的小火龍,還有喵喵、超夢、可達鴨。
這些可可愛愛又奇奇怪怪的動漫小精靈讓人記憶猶新,相信很多人小時候都幻想過擁有一支屬於自己的精靈寶貝。
最近,一位名為Matthew Rayfield的程式設計師就滿足了自己的願望。他用《神奇寶貝》中的788隻動漫形象作為原型,通過AI生成了3000個全新的寵物小精靈。
而這個AI正是自然語言模型GPT-2.
GPT-2:「精靈製造機」
提到NLP模型,我們印象最深的可能是GPT-3。今年該模型因1750億超大參數量和超強應用,在各大媒體平臺頻頻刷屏。GPT-2,與GPT-3師出同門,都是OpenAI研發的自然語言處理模型,兩個模型最大的不同是它的參數量,GPT-2僅為15億。
但這並不影響它的應用範圍。與GPT-3類似,GPT-2也可以用來寫故事、畫圖表,或者玩西洋棋。
最近Rayfield受到GPT-2在西洋棋和民間音樂上應用的啟發,也想來搞點不一樣的事情。
他突發奇想決定用GPT-2來生成全新的寵物精靈形象,結果效果還不錯。Rayfield從3000個生成圖像中挑選出了6個,如圖:
emm...看起來,小精靈原型還不錯,但就是清晰度太差。Rayfield又邀請了業內知名動漫設計師雷切爾•布裡格斯(Rachel Briggs)來幫他完成這些精靈的「重繪」工作。
最終,基於GPT-2生成的原型,這些寵物小精靈就變成了這樣:
感覺第二個和第六個可以直接成為《神奇寶貝》的一員了,你覺得呢?
Rayfield簡單介紹了他利用GPT-2創建這些精靈的實現過程。大致就是:搜尋了788張小精靈圖片(均為64x64像素)作為數據源,然後:
將圖像轉換為基於文本的格式。
用輸入文本訓練GPT-2模型。
使用經過訓練的模型生成圖像。
將基於文本的圖像格式轉換為PNG。
在這個過程中也出現了一些問題。比如在文本格式轉換時,出現了很多嘈雜的像素,因此最終調整成了如下格式。
不過,用文字訓練GPT-2的過程還相對簡單,最棘手的環節是通過代碼將輸出結果變成規範化的圖像格式。這部分代碼Rayfield已將其在GitHub開源,感興趣的朋友可以了解一下。
https://github.com/MatthewRayfield/pokemon-gpt-2
Image GPT:語言模型處理圖像任務
需要說明的是,上述Rayfield用GPT-2語言模型來學習圖像表徵的方法,早已被OpenAI驗證。
無監督和自監督的學習,或沒有人為標記的數據的學習,在自然語言處理領域取得了令人矚目的成功,因為像BERT、GPT-2、RoBERTa、T5 等 Transformer 模型,在廣泛的語言任務中取得了最佳成績,但同類的模型在圖像分類任務中,不能生成較為有用的特徵。
出於這一目的,OpenAI嘗試利用GPT-2處理圖像分類任務,以探究用 Transformer 模型在學習圖像表徵方面的可行性。
他們發現,當用展開成像素序列——被稱為 iGPT(image GPT) 的圖像來訓練 GPT-2 模型時,模型似乎能夠捕捉二維圖像特徵,並且能夠在沒有人類提供的數據標註下,自動生成各種邏輯連續的圖像樣本。實驗結果如圖:
人類提供上半圖(第一列),GPT-2自動補全下半圖,右側為原始圖像
同時,該模型的特徵在多個分類任務的數據集上也取得了不錯的成績,尤其是在 ImageNet 上取得了接近於最優的成績,如下圖。
在自然語言處理中,依賴於單詞預測的無監督學習算法(如 GPT-2 和 BERT)之所以成功,一個可能的原因是下遊語言任務的實例出現在訓練用的文本中。但相比之下,像素序列並不直接地包含它們所屬的圖像的標籤。
而即使沒有明確的監督,圖像上的 GPT-2 仍然起作用。OpenAI研究團隊認為其原因是足夠大的 Transformer 模型,通過訓練來預測下一個像素,最終它能夠學會根據清晰可識別對象來生成具有多樣性的樣本。
他們採用一種通用的無監督學習算法—生成序列建模進行了測試。具體來說,他們在 ImageNet 上分別訓練包含 76M、455M 和 1.4B 參數的 iGPT-S、iGPT-M 和 iGPT-L Transformer;還在來自 ImageNet 和網際網路的圖像的混合數據集上訓練 iGPT-XL ——一個 68 億參數的 Transformer。由於對長序列採用密集注意力(dense attention)的建模計算成本高,他們用 32x32、48x48 和 64x64 的低解析度進行了訓練。
最終實驗結果表明,通過計算量來代替二維知識,以及通過從網絡中選擇的特徵,序列 Transformer 可以與最優的卷積網競爭,實現無監督圖像分類。此外,通過將 GPT-2 語言模型直接應用於圖像生成的結果,也進一步表明由於其簡單性和通用性,序列 Transformer 在足夠的計算量下,有可能成為學習到不同領域的特徵的有效方法。
更多OpenAI團隊實驗內容可參見論文: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/
雷鋒網雷鋒網雷鋒網
,