導(dǎo)讀: 本文是機(jī)器人領(lǐng)域頂級會議 IROS 2021入選論文《 基于無監(jiān)督學(xué)習(xí)環(huán)境模型的機(jī)器人運動控制 (DMotion: Robotic Visuomotor Control with Unsupervised Forward Model Learned from Videos)》的解讀。該論文由北京大學(xué)前沿計算研究中心董豪課題組主導(dǎo)完成。
項目主頁: https://hyperplane-lab.github.io/dmotion/ 論文地址: https://arxiv.org/abs/2103.04301
在機(jī)器人控制、基于模型的強(qiáng)化學(xué)習(xí)領(lǐng)域,學(xué)習(xí)環(huán)境的模型是重要的問題。現(xiàn)有方法學(xué)習(xí)環(huán)境模型通常需要大量從環(huán)境中采集的帶標(biāo)簽的數(shù)據(jù),如智能體動作、物體位置、運動的真實標(biāo)注,在許多現(xiàn)實場景的應(yīng)用中有局限性。 而認(rèn)知科學(xué)的研究認(rèn)為,人類嬰兒能夠僅通過視覺觀察,建立物理世界的模型、進(jìn)行預(yù)測。 無監(jiān)督地建立物理模型能夠幫助人類與環(huán)境交互、操控工具來完成各種任務(wù)。 如圖1的例子所示:玩家 B 通過觀察玩家 A 操作,學(xué)習(xí)如何玩一個游戲。為學(xué)會玩游戲,玩家 B 需要建立游戲的模型,知道鍵盤上的操作(動作標(biāo)注)與畫面中主角動作的對應(yīng)關(guān)系、采取某個動作會如何影響游戲的狀態(tài)?,F(xiàn)實中,玩家 B 大部分時間都會只關(guān)注游戲畫面,而不去觀察玩家 A 操作鍵盤的每一個動作。對游戲模型的理解,例如哪個是主角、主角和游戲環(huán)境是怎么互動的,大多是通過觀看游戲畫面完成的;觀察鍵盤的操作僅僅是為了知道如何去控制主角的每個動作。 受此啟發(fā),我們研究如何利用缺少動作標(biāo)注的視頻數(shù)據(jù)學(xué)會環(huán)境模型,來實現(xiàn)基于模型的機(jī)器人運動控制。 如下圖所示,我們提出的方法(DMotion) 首先從無監(jiān)督的視頻中解耦智能體的運動、學(xué)習(xí)物體之間的交互規(guī)律;最后通過少量的帶有動作標(biāo)注的數(shù)據(jù),DMotion 建立動作標(biāo)注到智能體運動的映射,學(xué)會環(huán)境模型。 圖2. DMotion學(xué)習(xí)“機(jī)器人推物體”環(huán)境的過程 圖3. DMotion的訓(xùn)練框架,由Object Extractor和Interaction Learner組合,進(jìn)行端到端的學(xué)習(xí) 問題定義: 環(huán)境是馬爾可夫決策過程 ,假設(shè)只有一個智能體,動作 控制智能體的位移,觀測空間是 RGB 圖像 。提供環(huán)境中采集的視頻數(shù)據(jù) 和少量帶動做標(biāo)注的數(shù)據(jù) 作為訓(xùn)練數(shù)據(jù),任務(wù)的目標(biāo)是得到環(huán)境的模型 。物體解耦模塊(Object Extractor): 圖像編碼器(Image Encoder)將輸入圖像 分解為一組特征圖 ,來表示不同物體的空間位置信息。運動編碼器(Motion Encoder)輸入連續(xù)幾幀圖像 ,輸出一組空間變換矩陣 ,來表示每個物體從時刻 到 發(fā)生的位置變換。 是2*3矩陣,由2*2旋轉(zhuǎn)矩陣和 方向的平移組成??臻g變換器(Spatial Transformer)對特征圖進(jìn)行仿射變換 ,以得到 時刻的特征圖,再通過解碼器(Image Decoder)對圖像 進(jìn)行重構(gòu)。交互學(xué)習(xí)模塊(Interaction Learner): 此模塊輸入歷史觀測 和第一張變換后的特征圖 ,輸出對 的預(yù)測。為準(zhǔn)確預(yù)測 時刻所有物體的位置,輸入 中必須含有智能體的動作信息 。而僅當(dāng) 是智能體的特征圖時,此模塊的輸入才含有充分的動作信息。Object Extractor 和 Interaction Learner 在視頻數(shù)據(jù)集上端到端地訓(xùn)練,優(yōu)化目標(biāo)是: 直觀地,最小化前一項能夠激勵圖像編碼器解耦不同的物體、運動編碼器分解不同物體的位移,最小化后一項能夠激勵第一張?zhí)卣鲌D表示智能體的空間位置信息、交互學(xué)習(xí)模塊學(xué)習(xí)用 代替 的環(huán)境模型。 動作映射(Action-Transformation Mapping): 為將交互學(xué)習(xí)模塊轉(zhuǎn)化為輸入真實動作 的環(huán)境模型,我們利用少量的帶動作標(biāo)注的數(shù)據(jù)學(xué)習(xí)映射 。環(huán)境模型做預(yù)測的流程如下:輸入歷史觀測 和智能體動作 ,通過動作映射將 轉(zhuǎn)換為矩陣 ,通過圖像編碼器提取 ,用空間變換器得到 ,最后通過交互學(xué)習(xí)模塊輸出下一時刻的觀測 。圖4. DMotion應(yīng)用于機(jī)器人運動控制的框架 機(jī)器人運動控制: DMotion 應(yīng)用于機(jī)器人運動控制的框架如圖4所示。給定一個目標(biāo)圖像,規(guī)劃算法利用學(xué)習(xí)的環(huán)境模型(Forward Model),搜索出最優(yōu)的決策動作 ,從而控制環(huán)境中的機(jī)械臂推動物體,達(dá)到目標(biāo)圖像的物體擺放位置。視頻預(yù)測: 我們以圖像均方誤差(MSE)和物體位置的平均誤差(Pos err.)為指標(biāo),在 Grid World、Robot Pushing 環(huán)境中測試視頻預(yù)測的準(zhǔn)確性。表1顯示了我們方法的表現(xiàn)比所有使用10%標(biāo)注數(shù)據(jù)的有監(jiān)督方法更好。在多數(shù)指標(biāo)上,我們方法的準(zhǔn)確性超過了使用全部標(biāo)注數(shù)據(jù)的監(jiān)督學(xué)習(xí)方法。表1. 視頻預(yù)測的定量結(jié)果,數(shù)字越小表示越準(zhǔn)確 機(jī)器人運動控制: 我們在 Robot Pushing 環(huán)境中測試基于模型的機(jī)器人運動控制。圖6顯示,只有用我們的方法作為環(huán)境模型時,能夠有效地完成任務(wù),使環(huán)境中物體位置與目標(biāo)位置的距離顯著下降。圖7對此進(jìn)行了解釋:可視化不同模型做多步預(yù)測的過程,只有我們的方法保證了機(jī)械臂始終是清晰的,其他方法在多步預(yù)測后機(jī)械臂的部分均出現(xiàn)模糊,導(dǎo)致規(guī)劃算法不能有效執(zhí)行。我們認(rèn)為,我們的方法對智能體的空間位置和運動進(jìn)行顯式地表示,有利于模型輸出智能體不模糊的圖像。圖5. DMotion在機(jī)器人運動控制中的部分效果 圖6. 機(jī)器人運動控制的定量結(jié)果,縱軸表示與目標(biāo)的差距,橫軸表示運行步數(shù) 圖7. 機(jī)器人運動控制的規(guī)劃過程中,不同環(huán)境模型的預(yù)測 特征圖可視化: 在對圖像編碼器輸出的第一張?zhí)卣鲌D 進(jìn)行可視化后,我們看到特征圖顯示了智能體的 mask,丟棄了其他物體的空間位置信息,與我們方法的假設(shè)相一致。圖8. DMotion首張?zhí)卣鲌D可視化的結(jié)果 本文提出了一種無監(jiān)督地用視頻數(shù)據(jù)學(xué)習(xí)環(huán)境模型的新方法,在視頻預(yù)測、機(jī)器人運動控制的任務(wù)中表現(xiàn)了相比監(jiān)督學(xué)習(xí)的優(yōu)越性。未來的研究可以將該方法推廣到連續(xù)動作空間、多智能體、多關(guān)節(jié)智能體的場景,以適應(yīng)更復(fù)雜的任務(wù)需要。 雷鋒網(wǎng)雷鋒網(wǎng)雷鋒網(wǎng)
雷峰網(wǎng)特約稿件,未經(jīng)授權(quán)禁止轉(zhuǎn)載。詳情見轉(zhuǎn)載須知 。