大模型勇闖洛圣都,加封「GTA五星好市民」!南洋理工、清華等發(fā)布視覺可編程智能體Octopus:打游戲、做家務(wù)全能干
隨著游戲制作技術(shù)的不斷發(fā)展,電子游戲已然成為現(xiàn)實世界的模擬舞臺。
以游戲《俠盜獵車手》(GTA)為例,在GTA的世界里,玩家可以以第一人稱視角,在洛圣都(游戲虛擬城市)當中經(jīng)歷豐富多彩的生活。
然而,既然人類玩家能夠在洛圣都里盡情遨游完成若干任務(wù),我們是否也能有一個AI視覺模型,操控GTA中的角色,成為執(zhí)行任務(wù)的「玩家」呢?
GTA的AI玩家又是否能夠扮演一個五星好市民,遵守交通規(guī)則,幫助警方抓捕罪犯,甚至做個熱心腸的路人,幫助流浪漢找到合適的住所?
目前的視覺-語言模型(VLMs)在多模態(tài)感知和推理方面取得了實質(zhì)性的進步,但它們往往基于較為簡單的視覺問答(VQA)或者視覺標注(Caption)任務(wù)。這些任務(wù)設(shè)定顯然無法使VLM真正完成現(xiàn)實世界當中的任務(wù)。
因為實際任務(wù)不僅需要對于視覺信息的理解,更需要模型具有規(guī)劃推理以及根據(jù)實時更新的環(huán)境信息做出反饋的能力。同時生成的規(guī)劃也需要能夠操縱環(huán)境中的實體來真實地完成任務(wù)。
盡管已有的語言模型(LLMs)能夠根據(jù)所提供的信息進行任務(wù)規(guī)劃,但其無法理解視覺輸入,極大的限制了語言模型在執(zhí)行現(xiàn)實世界的具體任務(wù)時的應(yīng)用范圍,尤其是對于一些具身智能任務(wù),基于文本的輸入往往很難詳盡或過于復(fù)雜,從而使得語言模型無法從中高效地提取信息從而完成任務(wù)。
而當前的語言模型對于程序生成已經(jīng)進行了若干探索,但是根據(jù)視覺輸入來生成結(jié)構(gòu)化,可執(zhí)行,且穩(wěn)健的代碼的探索還尚未深入。
為了解決如何使大模型具身智能化的問題,創(chuàng)建能夠準確制定計劃并執(zhí)行命令的自主和情境感知系統(tǒng)。
來自新加坡南洋理工大學(xué),清華大學(xué)等的學(xué)者提出了一種基于視覺的可編程智能體Octopus,其目的是通過視覺輸入學(xué)習、理解真實世界,并以生成可執(zhí)行代碼的方式完成各種實際任務(wù)。
論文地址:https://arxiv.org/abs/2310.08588
項目網(wǎng)頁:https://choiszt.github.io/Octopus/
開源代碼:https://github.com/dongyh20/Octopus
通過在大量視覺輸入和可執(zhí)行代碼的數(shù)據(jù)對的訓(xùn)練,Octopus學(xué)會了如何操控電子游戲的角色完成游戲任務(wù),或者完成復(fù)雜的家務(wù)活動。
數(shù)據(jù)采集與訓(xùn)練
為了訓(xùn)練能夠完成具身智能化任務(wù)的視覺-語言模型,研究者們還開發(fā)了OctoVerse,其包含兩個仿真系統(tǒng)用于為Octopus的訓(xùn)練提供訓(xùn)練數(shù)據(jù)以及測試環(huán)境。
這兩個仿真環(huán)境為VLM的具身智能化提供了可用的訓(xùn)練以及測試場景,對模型的推理和任務(wù)規(guī)劃能力都提出了更高的要求。具體如下:
1. OctoGibson:
基于斯坦福大學(xué)開發(fā)的OmniGibson進行開發(fā),一共包括了476個符合現(xiàn)實生活的家務(wù)活動。整個仿真環(huán)境中包括16種不同類別的家庭場景,涵蓋155個實際的家庭環(huán)境實例。模型可以操作其中存在的大量可交互物體來完成最終的任務(wù)。
2. OctoGTA:
基于《俠盜獵車手》(GTA)游戲進行開發(fā),一共構(gòu)建了20個任務(wù)并將其泛化到五個不同的場景當中。通過預(yù)先設(shè)定好的程序?qū)⑼婕以O(shè)定在固定的位置,提供完成任務(wù)必須的物品和NPC,以保證任務(wù)能夠順利進行。
下圖展示了OctoGibson的任務(wù)分類以及OctoGibson和OctoGTA的一些統(tǒng)計結(jié)果。
為了在構(gòu)建的兩個仿真環(huán)境中高效的收集訓(xùn)練數(shù)據(jù),研究者構(gòu)建了一套完整的數(shù)據(jù)收集系統(tǒng)。
通過引入GPT-4作為任務(wù)的執(zhí)行者,研究者們使用預(yù)先實現(xiàn)的函數(shù)將在仿真環(huán)境當中采集到的視覺輸入處理為文本信息提供給GPT-4,在GPT-4返回當前一步的任務(wù)規(guī)劃和可執(zhí)行代碼后,再在仿真環(huán)境當中執(zhí)行代碼,并判斷當前一步的任務(wù)是否完成。
如果成功,則繼續(xù)采集下一步的視覺輸入;如果失敗,則回到上一步的起始位置,重新采集數(shù)據(jù)。
上圖以O(shè)ctoGibson環(huán)境當中的Cook a Bacon任務(wù)為例,展示了收集數(shù)據(jù)的完整流程。
需要指出的是,在收集數(shù)據(jù)的過程中,研究者不僅記錄了任務(wù)執(zhí)行過程中的視覺信息,GPT-4返回的可執(zhí)行代碼等,還記錄了每一個子任務(wù)的成功情況,這些將作為后續(xù)引入強化學(xué)習來構(gòu)建更高效的VLM的基礎(chǔ)。
GPT-4的功能雖然強大,但并非無懈可擊,錯誤可以以多種方式顯現(xiàn),包括語法錯誤和模擬器中的物理挑戰(zhàn)。
例如,如圖3所示,在狀態(tài)#5和#6之間,由于agent拿著的培根與平底鍋之間的距離過遠,導(dǎo)致「把培根放到平底鍋」的行動失敗,此類挫折會將任務(wù)重置到之前的狀態(tài)。
如果一個任務(wù)在10個步驟之后仍未完成,則被認定為不成功,我們會因預(yù)算問題而終止這個任務(wù),而這個任務(wù)的所有子任務(wù)的數(shù)據(jù)對都會認為執(zhí)行失敗。
在收集一定規(guī)模的訓(xùn)練數(shù)據(jù)后,研究者利用這些數(shù)據(jù)訓(xùn)練出了一個具身智能化的視覺-語言模型Octopus,上圖展現(xiàn)了完整的數(shù)據(jù)采集和訓(xùn)練流程。
在第一階段,通過使用采集的數(shù)據(jù)進行監(jiān)督式微調(diào),研究者構(gòu)建出了一個能夠以視覺信息作為輸入,遵從固定格式進行輸出的VLM模型。在這一階段,模型能夠完成視覺輸入信息到任務(wù)計劃以及可執(zhí)行代碼的映射。
在第二階段,研究者引入了RLEF(Reinforcement Learning with Environmental Feedback),通過利用先前采集的子任務(wù)的成功情況作為獎勵信號,采用強化學(xué)習的算法更進一步的提升VLM的任務(wù)規(guī)劃能力,從而提高整體任務(wù)的成功率。
實驗結(jié)果
研究者在構(gòu)建的OctoGibson環(huán)境中,對于當前主流的VLM和LLM進行了測試,下表展示了主要實驗結(jié)果。
對于不同的測試模型,Vision Model列舉了不同模型所使用的視覺模型,對于LLM來說,研究者將視覺信息處理為文本作為LLM的輸入,其中O代表提供了場景中可交互物體的信息,R代表提供了場景中物體相對關(guān)系的信息,GT代表使用真實準確的信息,而不引入額外的視覺模型來進行檢測。
對于所有的測試任務(wù),研究者報告了完整的測試集成功率,并進一步將其分為四個類別,分別記錄在訓(xùn)練集中存在的場景中完成新任務(wù),在訓(xùn)練集中不存在的場景中完成新任務(wù)的泛化能力,以及對于簡單的跟隨任務(wù)以及復(fù)雜的推理任務(wù)的泛化能力。
對于每一種類別的統(tǒng)計,研究者報告了兩種評價指標,其中第一個為任務(wù)的完成率,以衡量模型完成具身智能任務(wù)的成功率;第二個為任務(wù)規(guī)劃準確率,用于體現(xiàn)模型進行任務(wù)規(guī)劃的能力。
此外,研究者還展示了不同模型對于OctoGibson仿真環(huán)境中采集的視覺數(shù)據(jù)的響應(yīng)實例。下圖展示了TAPA+CodeLLaMA,Octopus以及GPT-4V對于OctoGibson當中視覺輸入生成的回復(fù)。
可以看到,相較于TAPA+CodeLLaMA以及只進行了監(jiān)督式微調(diào)的Octopus模型,使用RLEF進行訓(xùn)練之后的Octopus模型的任務(wù)規(guī)劃更加合理,即使是對于較為模糊的任務(wù)指令(find a carboy)也能提供更加完善的計劃,這些表現(xiàn)都更進一步說明了RLEF訓(xùn)練策略對于提升模型的任務(wù)規(guī)劃能力以及推理能力的有效性。
總體來說,現(xiàn)有的模型在仿真環(huán)境中表現(xiàn)出的實際任務(wù)完成度和任務(wù)規(guī)劃能力依舊有很大的提升空間。研究者們總結(jié)了一些較為關(guān)鍵的發(fā)現(xiàn):
1. CodeLLaMA能夠提升模型的代碼生成能力,但不能提升任務(wù)規(guī)劃能力。
研究者指出,通過實驗結(jié)果可以看出,CodeLLaMA能夠顯著的提升模型的代碼生成能力。
然而,盡管一些模型使用了CodeLLaMA進行代碼生成,但整體任務(wù)的成功率依然會受到自身任務(wù)規(guī)劃能力的限制。
而反觀Octopus,盡管未使用CodeLLaMA,代碼的可執(zhí)行率有所下降,但得益于其強大的任務(wù)規(guī)劃能力,整體任務(wù)成功率依舊優(yōu)于其他模型。
2. LLM在面對大量的文本信息輸入時,處理較為困難。
在實際的測試過程中,研究者通過對比TAPA和CodeLLaMA的實驗結(jié)果得出了一個結(jié)論,即語言模型很難較好地處理長文本輸入。
研究者們遵從TAPA的方法,使用真實的物體信息來進行任務(wù)規(guī)劃,而CodeLLaMA使用物體和物體之間的相對位置關(guān)系,以期提供較為完整的信息。
但在實驗過程中,研究者發(fā)現(xiàn)由于環(huán)境當中存在大量的冗余信息,因此當環(huán)境較為復(fù)雜時,文本輸入顯著增加,LLM難以從大量的冗余信息當中提取有價值的線索,從而降低了任務(wù)的成功率。
這也體現(xiàn)了LLM的局限性,即如果使用文本信息來表示復(fù)雜的場景,將會產(chǎn)生大量冗余且無價值的輸入信息。
3. Octopus表現(xiàn)出了較好的任務(wù)泛化能力。
通過實驗結(jié)果可以得出,Octopus具有較強的任務(wù)泛化能力,其在訓(xùn)練集當中未出現(xiàn)的新場景中完成任務(wù)的成功率和任務(wù)規(guī)劃的成功率均優(yōu)于已有的模型,也展現(xiàn)出了視覺-語言模型的一些內(nèi)在優(yōu)勢,針對同一類別的任務(wù),其泛化性優(yōu)于傳統(tǒng)的LLM。
4. RLEF能夠增強模型的任務(wù)規(guī)劃能力。
在實驗結(jié)果中,研究者們提供了只經(jīng)過第一階段監(jiān)督式微調(diào)的模型以及經(jīng)過RLEF訓(xùn)練之后模型的性能比。
可以看出,在經(jīng)過RLEF訓(xùn)練之后,模型在需要較強的推理能力和任務(wù)規(guī)劃能力的任務(wù)上,整體成功率和規(guī)劃能力有了顯著提升。
與已有的VLM訓(xùn)練策略相比,RLEF也更加的高效。上圖所展示的示例也能夠體現(xiàn)RLEF訓(xùn)練之后模型在任務(wù)規(guī)劃能力上的提升,經(jīng)過RLEF訓(xùn)練之后的模型能夠懂得在面對較為復(fù)雜的任務(wù)時,如何在環(huán)境當中進行探索;
此外,模型在任務(wù)規(guī)劃上能夠更加遵從仿真環(huán)境中的實際要求(如,模型需要先移動到要交互的物體,才能開始交互),從而降低任務(wù)規(guī)劃的失敗比率。
討論
消融實驗
在對模型的實際能力進行評估之后,研究者們更進一步探究了一些影響模型性能的可能因素。如下圖所示,研究者從三個方面開展了實驗。
1. 訓(xùn)練參數(shù)的比重
研究者對比了只訓(xùn)練視覺模型與語言模型的連接層,訓(xùn)練連接層和語言模型,以及完整訓(xùn)練的模型的性能。
可以看出,隨著訓(xùn)練參數(shù)的增加,模型的性能逐漸獲得了提升。這說明,訓(xùn)練參數(shù)的多少對于模型是否能夠在一些固定的場景當中完成任務(wù)至關(guān)重要。
2. 模型的大小
研究者們比較了較小的3B參數(shù)模型與基線7B模型在兩個訓(xùn)練階段的性能差異。通過比較可以看出,當模型整體參數(shù)量較大時,模型的性能也會得到明顯的提升。
如何選定合適的模型訓(xùn)練參數(shù),使得模型能夠擁有完成對應(yīng)任務(wù)的能力,同時也能夠保證模型的輕量化和較快的推理速度,將是未來VLM領(lǐng)域研究中較為關(guān)鍵的一點。
3. 視覺輸入的連續(xù)性
為了探究不同的視覺輸入對于實際VLM性能的影響,研究者對視覺信息的輸入順序進行了實驗。
在測試的過程中,模型會在仿真環(huán)境當中順序轉(zhuǎn)動,采集第一視角圖像,并采集兩張鳥瞰圖,之后這些視覺圖像會按順序輸入VLM當中。
而在實驗中,當研究者隨機打亂視覺圖像順序再輸入VLM中時,VLM產(chǎn)生了較大的性能損失。
這一方面說明了完整且結(jié)構(gòu)化的視覺信息對于VLM的重要性,另一方面也從某種程度上反映了VLM在對視覺輸入進行響應(yīng)時需要依靠視覺圖像的內(nèi)在聯(lián)系,而一旦這種視覺上的聯(lián)系被破壞,將會極大的影響VLM的表現(xiàn)。
GPT-4 & GPT-4V(ision)
此外,研究者還對GPT-4以及GPT-4V在仿真環(huán)境當中的性能進行了測試和統(tǒng)計。
1. GPT-4
針對GPT-4,在測試過程中研究者提供與使用其采集訓(xùn)練數(shù)據(jù)時完全相同的文本信息作為輸入。在測試任務(wù)上,GPT-4能夠完成一半的任務(wù),這一方面說明現(xiàn)有的VLM相對于GPT-4這樣的語言模型,從性能上還有很大的提升空間;
另一方面也說明,即使是GPT-4這樣性能較強的語言模型,在面對具身智能任務(wù)時,其任務(wù)規(guī)劃能力和任務(wù)執(zhí)行能力依然需要更進一步的提升。
2. GPT-4V
由于GPT-4V剛剛發(fā)布可以直接調(diào)用的API,研究者還沒來得及嘗試,但是研究者們之前也手動測試了一些實例來展現(xiàn)GPT-4V的性能。
通過一些示例,研究者認為GPT-4V對于仿真環(huán)境當中的任務(wù)具有較強的零樣本泛化能力,也能夠根據(jù)視覺輸入生成對應(yīng)的可執(zhí)行的代碼,但其在一些任務(wù)規(guī)劃上稍遜色于在仿真環(huán)境采集的數(shù)據(jù)上微調(diào)之后的模型。
局限性
研究者們指出了目前工作的一些局限性。
1. 當前的Octopus模型在較為復(fù)雜的任務(wù)上性能并不令人滿意。在面對復(fù)雜任務(wù)時,Octopus往往會做出錯誤的規(guī)劃,并且嚴重依賴于環(huán)境給出的反饋信息,最終往往難以完成整體的任務(wù)。
2. Octopus模型僅在仿真環(huán)境當中進行訓(xùn)練,而如何將其遷移到真實世界當中將會面臨一系列的問題。例如,真實環(huán)境當中模型將難以得到較為準確的物體相對位置信息,如何構(gòu)建起物體對于場景的理解將變得更加困難
3. Octopus目前的視覺輸入為離散的靜態(tài)圖片,如何使其能夠處理連續(xù)的視頻將是未來的挑戰(zhàn)。
連續(xù)的視頻可以更進一步提高模型完成任務(wù)的性能,但如何高效地處理和理解連續(xù)視覺輸入將成為進一步提升VLM性能的關(guān)鍵。