AI鍵盤俠來(lái)了:DeepMind開始訓(xùn)練智能體像人一樣「玩」電腦
如果機(jī)器可以像人類一樣使用計(jì)算機(jī),則可以幫助我們完成日常任務(wù)。在這種情況下,我們也有可能利用大規(guī)模專家演示和人類對(duì)交互行為的判斷,它們是推動(dòng)人工智能最近取得成功的兩個(gè)因素。
最近關(guān)于 3D 模仿世界中自然語(yǔ)言、代碼生成和多模態(tài)交互行為的工作(2021 年 DeepMind 交互智能體團(tuán)隊(duì))已經(jīng)產(chǎn)生了具備卓越表達(dá)能力、上下文感知和豐富常識(shí)的模型。這項(xiàng)研究有力地證明了以下兩種組件的力量:機(jī)器與人類之間一致的豐富、組合輸出空間;為機(jī)器行為提供信息的大量人類數(shù)據(jù)和判斷。
具備這兩種組件但受到較少關(guān)注的一個(gè)領(lǐng)域是數(shù)字設(shè)備控制(digital device control),它包括使用數(shù)字設(shè)備來(lái)完成大量有用任務(wù)。由于幾乎完全使用數(shù)字信息,該領(lǐng)域在數(shù)據(jù)采集和控制并行化方面具有很好的擴(kuò)展性(與機(jī)器人或聚變反應(yīng)堆相比)。該領(lǐng)域還將多樣化、多模態(tài)輸入與富有表達(dá)能力、可組合且兼容人類的可供性相結(jié)合。
近日,在 DeepMind 的新論文《A Data-driven Approach for Learning to Control Computers》,研究者重點(diǎn)探究了訓(xùn)練智能體像人一樣進(jìn)行鍵盤和鼠標(biāo)的基本計(jì)算機(jī)控制。
論文地址:https://arxiv.org/pdf/2202.08137.pdf
DeepMind 對(duì)計(jì)算機(jī)控制進(jìn)行初步調(diào)查采用的基準(zhǔn)是 MiniWob++ 任務(wù)套件(一組具有挑戰(zhàn)性的計(jì)算機(jī)控制問題),它包含一組執(zhí)行點(diǎn)擊、打字、填寫表格和其他此類基本計(jì)算機(jī)交互任務(wù)的指令(下圖 1 b)。MiniWob++ 進(jìn)一步提供了以編程方式定義的獎(jiǎng)勵(lì)。這些任務(wù)是邁向更開放人機(jī)交互的第一步,其中人類使用自然語(yǔ)言指定任務(wù)并提供有關(guān)性能的后續(xù)判斷。
研究者重點(diǎn)訓(xùn)練智能體來(lái)解決這些任務(wù),使用的方法在原則上適用于任何在數(shù)字設(shè)備上執(zhí)行的任務(wù),并且具備符合預(yù)期的數(shù)據(jù)和計(jì)算擴(kuò)展特性。因此,他們直接結(jié)合強(qiáng)化學(xué)習(xí)(RL)和行為克隆(BC)兩種技術(shù),其中行為克隆通過人類與智能體行動(dòng)空間之間的對(duì)齊來(lái)輔助完成(也就是鍵盤和鼠標(biāo))。
具體地,研究者探究使用鍵盤和鼠標(biāo)進(jìn)行計(jì)算機(jī)控制,并通過自然語(yǔ)言指定對(duì)象。并且,他們沒有專注于手工設(shè)計(jì)的課程和專門的行動(dòng)空間,而是開發(fā)了一種基于強(qiáng)化學(xué)習(xí)的可擴(kuò)展方法,并結(jié)合利用實(shí)際人機(jī)交互提供的行為先驗(yàn)。
這是 MiniWob(2016 年由 OpenAI 提出的一種與網(wǎng)站交互的強(qiáng)化學(xué)習(xí)智能體的基準(zhǔn),MiniWob++ 是它的擴(kuò)展版本)構(gòu)想中提出的一種組合,但當(dāng)時(shí)并未發(fā)現(xiàn)可以生成高性能智能體。因此,之后的工作試圖通過讓智能體訪問特定 DOM 的操作來(lái)提升性能,并通過受限的探索技術(shù)使用精心策劃的指導(dǎo)來(lái)減少每個(gè)步驟中可用的行動(dòng)數(shù)量。通過重新審視模仿與強(qiáng)化學(xué)習(xí)的簡(jiǎn)單可擴(kuò)展組合,研究者發(fā)現(xiàn)實(shí)現(xiàn)高性能主要的缺失因素僅是用于行為克隆的人類軌跡數(shù)據(jù)集的大小。隨著人類數(shù)據(jù)的增加,性能會(huì)可靠地提升,使用的數(shù)據(jù)集大小是以往研究中的 400 倍。
研究者在 MiniWob++ 基準(zhǔn)測(cè)試中的所有任務(wù)上都實(shí)現(xiàn)了 SOTA 和人類平均水平,并找到了跨任務(wù)遷移的強(qiáng)有力證據(jù)。這些結(jié)果證明了訓(xùn)練機(jī)器使用計(jì)算機(jī)過程中統(tǒng)一的人機(jī)界面非常有用。總之,研究者結(jié)果展示了一種超越 MiniWob++ 基準(zhǔn)測(cè)試能力以及像人類一樣控制計(jì)算機(jī)的方案。
對(duì)于 DeepMind 的這一研究,網(wǎng)友大都驚呼「不可思議」。
方法
MiniWob++
MiniWob++ 是 Liu 等人在 2018 年提出的基于 web 瀏覽器的套件,是早期 MiniWob(Mini World of Bits)任務(wù)套件的擴(kuò)展,而 MiniWoB 是一個(gè)用于與網(wǎng)站交互的強(qiáng)化學(xué)習(xí)基準(zhǔn),其可以感知小網(wǎng)頁(yè)(210x160 像素)的原始像素和產(chǎn)生鍵盤和鼠標(biāo)動(dòng)作。MiniWob++ 任務(wù)范圍從簡(jiǎn)單的按鈕點(diǎn)擊到復(fù)雜的表單填寫,例如,在給出特定指令時(shí)預(yù)訂航班(圖 1a)。
之前關(guān)于 MiniWob++ 的研究已經(jīng)考慮了能夠訪問 DOM 特定動(dòng)作的架構(gòu),從而允許智能體直接與 DOM 元素交互而無(wú)需鼠標(biāo)或鍵盤導(dǎo)航到它。DeepMind 的研究者選擇僅使用基于鼠標(biāo)和鍵盤的操作,并進(jìn)一步假設(shè)該接口將更好地遷移到計(jì)算機(jī)控制任務(wù),而無(wú)需與緊湊的 DOM 進(jìn)行交互。最后,MiniWob++ 任務(wù)需要單擊或拖動(dòng)操作,而這些操作無(wú)法通過基于 DOM 元素的操作來(lái)實(shí)現(xiàn)(參見圖 1b 中的示例)。
與之前的 MiniWob++ 研究一樣,DeepMind 的智能體可以訪問由環(huán)境提供的文本字符串字典,該字典被輸入到給定任務(wù)的輸入字段中(參見附錄圖 9 示例)。
下圖為運(yùn)行 MiniWob++ 的計(jì)算機(jī)控制環(huán)境。人類和智能體都使用鍵盤和鼠標(biāo)控制計(jì)算機(jī),人類提供用于行為克隆的示范行為,智能體受過訓(xùn)練以模仿這種行為或表現(xiàn)出追求獎(jiǎng)勵(lì)的行為。人類和智能體嘗試解決 MiniWob++ 任務(wù)套件,其中包括需要單擊、鍵入、拖動(dòng)、填寫表格等。
環(huán)境接口
如果想要智能體像人類一樣使用計(jì)算機(jī),它們需要接口來(lái)傳輸和接收觀察結(jié)果和動(dòng)作。最初的 MiniWob++ 任務(wù)套件提供了一個(gè)基于 Selenium 的接口。DeepMind 決定實(shí)現(xiàn)一個(gè)可替代環(huán)境堆棧,旨在支持智能體可以在 web 瀏覽器中實(shí)現(xiàn)各種任務(wù)。該接口從安全性、特性和性能方面進(jìn)行了優(yōu)化 (圖 1a)。
原來(lái)的 MiniWob++ 環(huán)境實(shí)現(xiàn)通過 Selenium 訪問內(nèi)部瀏覽器狀態(tài)并發(fā)出控制命令。相反,DeepMind 的智能體直接與 Chrome DevTools 協(xié)議 (CDP) 交互,以檢索瀏覽器內(nèi)部信息。
智能體架構(gòu)
DeepMind 發(fā)現(xiàn)沒有必要基于專門的 DOM 處理架構(gòu),相反,受最近關(guān)于多模態(tài)架構(gòu)的影響,DeepMind 應(yīng)用了最小模態(tài)特定處理,其主要依靠多模態(tài) transformer 來(lái)靈活處理相關(guān)信息,如圖 2 所述。
感知。智能體接收視覺輸入(165x220 RGB 像素)和語(yǔ)言輸入(示例輸入顯示在附錄圖 9 中)。像素輸入通過一系列四個(gè) ResNet 塊,具有 3×3 內(nèi)核,strides 為 2、2、2、2,以及輸出通道(32、128、256、512)。這產(chǎn)生了 14×11 的特征向量,DeepMind 將其展平為 154 個(gè) token 列表。
三種類型的語(yǔ)言輸入任務(wù)指令、DOM 和任務(wù)字段使用同一個(gè)模塊處理:每個(gè)文本字符串被分成 token,每個(gè) token 映射被到大小為 64 的嵌入。
策略:智能體策略由 4 個(gè)輸出組成:動(dòng)作類型、光標(biāo)坐標(biāo)、鍵盤鍵索引和任務(wù)字段索引。每個(gè)輸出都由單個(gè)離散概率分布建模,除光標(biāo)坐標(biāo)外,光標(biāo)坐標(biāo)由兩個(gè)離散分布建模。
動(dòng)作類型是從一組 10 種可能的動(dòng)作中選擇的,其中包括一個(gè)無(wú)操作(表示無(wú)動(dòng)作)、7 個(gè)鼠標(biāo)動(dòng)作(移動(dòng)、單擊、雙擊、按下、釋放、上滾輪、下滾輪)和兩個(gè)鍵盤動(dòng)作(按鍵、發(fā)出文本)。
DeepMind 從 77 名人類參與者那里收集了超過 240 萬(wàn)個(gè) 104 MiniWob++ 任務(wù)演示,總計(jì)大約 6300 小時(shí),并使用模仿學(xué)習(xí)和強(qiáng)化學(xué)習(xí) (RL) 的簡(jiǎn)單混合來(lái)訓(xùn)練智能體。
實(shí)驗(yàn)結(jié)果
MiniWob++ 上的人類水平性能
由于大部分研究通常只解決了 MiniWob++ 任務(wù)的一個(gè)子集,因此該研究在每個(gè)單獨(dú)的任務(wù)上采用已公開的最佳性能,然后將這些子任務(wù)的聚合性能與該研究提出的智能體進(jìn)行比較。如下圖 3 所示,該智能體大大超過了 SOTA 基準(zhǔn)性能。
此外, 該智能體在 MiniWob++ 任務(wù)組件中實(shí)現(xiàn)了人類水平的平均性能。這種性能是通過結(jié)合 BC 和 RL 聯(lián)合訓(xùn)練來(lái)實(shí)現(xiàn)的。
研究者發(fā)現(xiàn),雖然該智能體的平均性能與人類相當(dāng),但有些任務(wù)人類的表現(xiàn)明顯優(yōu)于該智能體,如下圖 4 所示。
任務(wù)遷移
研究者發(fā)現(xiàn),與在每個(gè)任務(wù)上單獨(dú)訓(xùn)練的智能體相比,在 MiniWob++ 的全部 104 個(gè)任務(wù)上訓(xùn)練一個(gè)智能體可以顯著提升性能,如下圖 5 所示。
擴(kuò)展
如下圖 7 所示,人類軌跡數(shù)據(jù)集(human trajectory dataset)的大小是影響智能體性能的關(guān)鍵因素。使用 1/1000 的數(shù)據(jù)集,大約相當(dāng)于 6 小時(shí)的數(shù)據(jù),會(huì)導(dǎo)致快速過擬合,并且與僅使用 RL 的性能相比沒有顯著提升。隨著該研究將此基線的數(shù)據(jù)量增加到三個(gè)數(shù)量級(jí)直至完整數(shù)據(jù)集大小,智能體的性能得到了持續(xù)的提升。
此外,研究者還注意到,隨著算法或架構(gòu)的變化,在數(shù)據(jù)集大小上的性能可能會(huì)更高。
消融實(shí)驗(yàn)
該智能體使用像素和 DOM 信息,并且可以配置為支持一系列不同的操作。該研究進(jìn)行了消融實(shí)驗(yàn)以了解各種架構(gòu)選擇的重要性。
該研究首先消融不同的智能體輸入(圖 8a)。當(dāng)前的智能體配置強(qiáng)烈依賴 DOM 信息,如果刪除此輸入,性能會(huì)下降 75%。相反,視覺信息的輸入對(duì)該智能體的影響不太顯著。
如圖 8b 所示,該研究移除了智能體使用環(huán)境給定的文本輸入選項(xiàng)(任務(wù)字段)的能力。有趣的是,移除之后的智能體仍然能夠解決涉及表單填寫的任務(wù),但它是通過 highlight 文本,并將其拖動(dòng)到相關(guān)的文本框,以從人類軌跡中學(xué)會(huì)完成這個(gè)任務(wù)。值得注意的是,在原始 Selenium 版本的環(huán)境中智能體實(shí)現(xiàn)這種拖動(dòng)操作并不簡(jiǎn)單。
圖 8b 還展示了一個(gè)消融實(shí)驗(yàn)結(jié)果,其中智能體使用與特定 DOM 元素交互的替代動(dòng)作。這意味著智能體無(wú)法解決涉及單擊畫布內(nèi)特定位置、拖動(dòng)或 highlight 文本的任務(wù)。