索尼承諾將“增加PS5主機(jī)供應(yīng)”
2023-01-31
更新時(shí)間:2022-08-19 15:10:52作者:佚名
我訓(xùn)練了誰,誰又訓(xùn)練了我?
今年6月底,知名科技公司OpenAI發(fā)布了一篇論文,主要圍繞著一項(xiàng)名為 “視頻預(yù)訓(xùn)練”(VPT:Video PreTraining)的AI技術(shù)展開討論。
這項(xiàng)研究的成果相當(dāng)喜人,例如,在看了7萬多個(gè)小時(shí)《我的世界》視頻后,案例中的AI已經(jīng)成功學(xué)會(huì)了求生所需的大部分必備技能:游泳、狩獵、建房、下礦,甚至搜刮村莊。
盡管依然存在著一些人類難以理解的操作,但就結(jié)果來說,這已經(jīng)比許多同類AI表現(xiàn)得要好多了。
AI搜到東西后興奮地?cái)]起了天花板
當(dāng)然,相比起背后堆積如山的代碼與“逆動(dòng)力模型”等看了就讓人迷茫的技術(shù)詞匯,作為普通玩家的我們,更關(guān)心的可能還是這么一款高智能、饒有趣味的AI到底什么時(shí)候才能實(shí)裝進(jìn)游戲里。
“給俺也整一個(gè)”
1
無須等待,AI走進(jìn)千萬家的場(chǎng)景就在當(dāng)下。
雖然OpenAI的模型目前僅提交給了專門負(fù)責(zé)研究《我的世界》AI的MineRL大賽,但就在他們論文發(fā)布的前后幾天,另一個(gè)功能類似的AI也同樣出現(xiàn)在了網(wǎng)上。更重要的是,研究團(tuán)隊(duì)直接將他們的代碼放在了Github上供所有人下載研究。
MineDojo的Github頁面
這個(gè)名叫MineDojo的項(xiàng)目由英偉達(dá)的工程師進(jìn)行開發(fā),同樣是通過觀看網(wǎng)上的視頻資料進(jìn)行訓(xùn)練,但與OpenAI略有不同的是,他們的資料庫要龐大得多。
MineDojo一共搜集了73萬個(gè)油管上的游戲視頻、7000多個(gè)維基網(wǎng)頁,甚至還有上百萬條和《我的世界》有關(guān)的Reddit評(píng)論。
“互聯(lián)網(wǎng)規(guī)?!?/p>
這么做的目的,當(dāng)然在于幫助AI理解人類語境中“建造“”求生“等詞匯的意義,油管主們?cè)诮虒W(xué)視頻中聲情并茂地教導(dǎo)觀眾從哪里出發(fā),到哪里尋找神廟,再到如何攻略末影龍——
對(duì)于AI來說,這就是上好的“網(wǎng)課”。
支持這一行為的,是一個(gè)被稱為MineCLIP的學(xué)習(xí)算法。它可以幫助AI把主播的解說與視頻中展示的操作聯(lián)系起來,以此達(dá)到訓(xùn)練的目的;同樣的,訓(xùn)練好的AI也能理解玩家直接下達(dá)的任務(wù)。
這是MineDojo最有趣的部分,工程師們準(zhǔn)備了3000個(gè)可以直接下達(dá)給AI的指令,一類是程序化任務(wù),例如“生存3天”或“收集兩塊木頭”,這是可以用數(shù)字和名詞客觀衡量的任務(wù);另一類是抽象化任務(wù),例如“建造一座漂亮的海濱別墅”。
AI可能很難理解“漂亮”“海濱”“別墅”到底是什么意思,不過通過視頻畫面的講解,再搜索玩家們相關(guān)評(píng)論的關(guān)鍵詞之后,大多數(shù)時(shí)刻AI都能有模有樣地完成目標(biāo)。
在這些任務(wù)中,玩家可以給AI下令“把牛羊圈起來”“去沼澤里找雞”“盡可能地活久一點(diǎn)”,或者干脆讓它去搜刮一個(gè)海底神廟。因?yàn)槭褂昧嘶ヂ?lián)網(wǎng)上的常用語言,AI對(duì)某些人類特有的幽默感學(xué)得挺到位的。
下達(dá)”玩”的指令
和OpenAI的模型比起來,MineDojo的技術(shù)難度或許并沒有那么高,畢竟它直接接入了游戲端口,利用游戲內(nèi)的數(shù)據(jù)直接控制AI行動(dòng)要簡(jiǎn)單許多;而OpenAI則是從零開始建立了一個(gè)模仿人類的行動(dòng)模型,指令都是直接模擬人類的鍵鼠操作。
并且MineDojo在部分時(shí)刻依然要借助修改游戲數(shù)據(jù)才能達(dá)到目的,比如攻略末影龍的時(shí)候,只有“作弊”讓末影龍站在原地挨打才能通關(guān)。
手足相殘的殘忍錄像
不過,MineDojo依然呈現(xiàn)出了AI可以通過現(xiàn)有視頻、資料進(jìn)行學(xué)習(xí)的能力。唯一遺憾的是,目前還沒有看到多少M(fèi)ineDojo實(shí)裝后的反饋,因此實(shí)際效果如何也存在一定的疑問。好處是它供所有人免費(fèi)下載,當(dāng)作AI入門的免費(fèi)資料試試未嘗不可。
2
得益于當(dāng)代互聯(lián)網(wǎng)的發(fā)展,AI能從視頻資料中獲取自己想要的知識(shí)。人類也是如此,制作一個(gè)會(huì)玩游戲的AI,有時(shí)候看視頻就夠了。
視頻比教科書更進(jìn)一步的是,哪怕觀眾什么也不明白,不知道python語言、架構(gòu)、蒙特卡洛算法是什么,每個(gè)人依然能從視頻里得到樂趣,隨后潛移默化地了解知識(shí)。
在這一領(lǐng)域起代表性作用的,是那些致力于設(shè)計(jì)游戲AI的視頻制作者們。
首先要提到的是人們或許更為熟知的“遺傳算法”,一個(gè)在上個(gè)世紀(jì)的六十年代提出,被這個(gè)世紀(jì)所發(fā)揚(yáng)廣大的技術(shù)。
它類似生物學(xué)意義上的進(jìn)化論,具體來說,就是通過系統(tǒng)生成一堆什么也不懂的嬰兒,讓他們?cè)诖笞匀唬ǔ绦颍┦澜缋飮L試各種操作,通過選擇表現(xiàn)更好的子代,達(dá)到不斷優(yōu)化AI表現(xiàn)的目的。
用油管上一條《AI學(xué)習(xí)玩JUMP KING》的視頻舉例,大致場(chǎng)景就是這樣的。
先生500個(gè)孩子試試
視頻作者Code Bullet(下文簡(jiǎn)稱CB)已經(jīng)用這個(gè)算法成功制作出了不少AI通關(guān)游戲的視頻,《吃豆人》《Flappy Bird》這類強(qiáng)調(diào)優(yōu)化AI行動(dòng)的游戲都可以沿著類似的思路走下去。
思路是清晰的,做起來也很“簡(jiǎn)單”。翻閱一下CB大部分制作AI的視頻,都可以看到他的過程主要分為了三個(gè)部分。
“制作一個(gè)會(huì)玩游戲的AI僅需要三步”
重做游戲的原因我們稍后再進(jìn)行討論,CB視頻中展現(xiàn)的精髓部分在于遺傳算法的“篩選”功能。不同于物競(jìng)天擇的大自然,這里我們才是負(fù)責(zé)挑選AI的上帝。
剛出生的AI當(dāng)然是什么也不懂得的小嬰兒,給它們添加行動(dòng)指令,AI也不會(huì)懂得往哪里行動(dòng)有什么意義。因此常見的做法是給隨機(jī)行動(dòng)的AI設(shè)置獎(jiǎng)勵(lì)和懲罰,例如跳躍一次加1分、達(dá)到下一關(guān)加2分、左右移動(dòng)加0.5分,向下跌落則扣1分。
“往上走就好,往下是壞,這很簡(jiǎn)單”
每代AI只有五次行動(dòng)機(jī)會(huì),五次行動(dòng)結(jié)束后,跳躍高度最高的AI就會(huì)成為下一代的模范,此后的每一代AI都會(huì)遵循上一代摸索出最好的路徑前進(jìn)——這就是很簡(jiǎn)單的進(jìn)化了。
不過這么簡(jiǎn)單的規(guī)則還沒有辦法解決某些“思考”問題,如果某關(guān)需要先下降,再向上跳躍的話,死腦筋的AI就會(huì)因?yàn)榭鄯衷瓌t而拒絕往下跳。
解決辦法可以是在降落地點(diǎn)設(shè)置同樣可以提供獎(jiǎng)勵(lì)的收集品,引導(dǎo)AI通過收集獎(jiǎng)勵(lì),前往更高的場(chǎng)景。
跟游戲引導(dǎo)玩家的方式其實(shí)很像
等所有程序都準(zhǔn)備好之后,只要讓AI自己跑起來就行了,它們自然會(huì)一代代地找到最好走的路線,最終完成游戲通關(guān)的任務(wù)。
經(jīng)歷862代的演變后,就能到頂啦
3
自AlphaGo 2017年從賽場(chǎng)“退役”,已經(jīng)過去了五年。自那之后,“民用AI”在游戲領(lǐng)域可謂發(fā)光發(fā)熱,在油管上用AI玩《VALORANT》《大富翁》《糖豆人》的博主們也大有人在。
雖然沒有公司的資金支持,也沒有流著血淚幫忙標(biāo)注數(shù)據(jù)的研究生們,但得益于Github的開放性,每個(gè)網(wǎng)民隨手就可以下到一大堆經(jīng)過一定訓(xùn)練的神經(jīng)網(wǎng)絡(luò)程序。
以一位油管上僅有7000粉絲的小博主River為例,他的一期視頻就很簡(jiǎn)潔地展現(xiàn)了AI技術(shù)的低門檻。
前期準(zhǔn)備非常簡(jiǎn)單:你只需要兩臺(tái)電腦、一段網(wǎng)上下載的程序、一個(gè)視頻采集卡,再加一個(gè)無線鼠標(biāo)信號(hào)接收器。
而要做的工作也無非是標(biāo)注一些供AI訓(xùn)練識(shí)別能力的圖片,一“小”段指示行為模式的代碼,然后直接掃描小地圖指示方位,再把鍵盤信號(hào)都通過無線鼠標(biāo)傳送到電腦里。
雖然信號(hào)發(fā)送是麻煩了點(diǎn),但好處也有,因?yàn)闆]有額外程序接入游戲,自然也不會(huì)被判斷出使用了外掛。
一切操作都是由另一臺(tái)電腦根據(jù)實(shí)時(shí)圖像作出的
當(dāng)然,在目前的表現(xiàn)上來看,River的AI也和普通的AI機(jī)器人差不多,并沒有AlphaGo那種神奇的自我進(jìn)化能力。
不過,只是想簡(jiǎn)單體驗(yàn)AI設(shè)計(jì),已經(jīng)沒有了那么高的門檻。不斷設(shè)計(jì)更新更強(qiáng)的AI也是一件頗有樂趣的行為,其中一項(xiàng)就是分辨正確與錯(cuò)誤之間的“邊界”。
那是人(確信)
正如MineDojo要區(qū)分程式化任務(wù)與抽象類任務(wù)的區(qū)別,我們?cè)诮虒?dǎo)AI時(shí),同樣能從AI分辨的結(jié)果當(dāng)中,得到自己對(duì)于事物的定義和由此產(chǎn)生的解釋,或許能啟發(fā)人類解決生活中的矛盾。
朋友問你今天過得怎么樣、相親時(shí)怎么向?qū)Ψ浇榻B自己,如果每個(gè)問題都能用程序解答,未嘗不是人類也已經(jīng)進(jìn)化到更高一層的體現(xiàn)。
誰訓(xùn)練了我,我又訓(xùn)練了誰?