論文閱讀筆記《One-Shot Imitation from Observing Humans via Domain-Adaptive Meta-Learning》

核心思想

  經過多篇文章的鋪墊,小樣本模仿學習終於走到了最後一步,通過觀察一次人類完成某個新任務的示教動作,機器人就可以學會該任務。完成這一艱鉅的任務面臨兩大困難:人類示教動作相比於機器人存在外表和形態學上的變化,即存在一致性問題;其次,從原始的視覺輸入中學習需要依賴大量的數據,通常需要用成千上萬張圖像進行訓練。而本文采取了一種領域自適應的元學習算法(Domain-Adaptive Meta-Learning)解決了這兩大難題。
  作者首先還是回顧了一下MAML算法,並且將內層次訓練的損失函數成爲自適應目標(Adaptation Objective),將外層次訓練的目標成爲元目標(Meta-Objective)。從人類動作視頻中學習的問題可以看做一個推斷的問題,目的就是利用人類示教動作中的線索信息推斷出完成任務TiT_i應採取的策略參數ϕTi\phi_{T_i}。在過去的模仿學習方法中需要認真編碼大量的先驗知識,如預先設定的視覺系統,預先選定的人類目標和已知的動態模型等。而這種方法只能針對特定的任務,而且費時費力。本文選擇直接從人類和機器人的示教動作中自動地學習到這些先驗知識。將示教動作分爲兩類:人類示教動作dhd^h包含一系列觀察到的圖像,和機器人示教動作drd^r不僅包含一系列的圖像而且還有每個時刻對應的機器人狀態state和動作action。因爲人類示教動作不包含對應的動作信息(這裏指機器人完成該動作應採取的動作指令),因此不能採用簡單的監督訓練方式。在上一篇文章中,作者提出了一種雙頭結構可在無示教動作的條件下完成模仿學習,這裏正好可以利用這一點。作者將人類示教動作用於內層次訓練過程,也就是上文說到的自適應目標,而相同任務中的機器人示教動作用於外層次訓練過程,也就是元目標。上篇文章中介紹過,爲解決無示教動作的學習問題,作者利用pre-update head 去學習一種損失函數,可以實現只觀察示教圖像序列,就能輸出對應的梯度信息來幫助策略網絡的參數進行更新。本文依舊延續了這一思想,但不同的是從人類動作視頻中學習,必須有效地捕捉視頻中相關聯的信息,要同時觀察多幀圖像,原來簡單的線性組合的方式並不能滿足這一需求,因此作者提出一種採用時間卷積(Temporal Convolution)的pre-update head結構,如下圖所示。
在這裏插入圖片描述
  動作視頻序列經過策略網絡(Policy Architecture, 下文將介紹)後轉變成多個一維的特徵向量,經過三層時間卷積後再求L2範數的平方得到自適應目標損失LψL_{\psi}。對於外層次訓練過程,即元目標而言,機器人的示教圖像和對應的狀態與動作都是具備的,因此可以採用簡單的行爲克隆(Behavior Cloning)損失來進行監督,損失函數如下:
在這裏插入圖片描述
整個任務的訓練目標爲
在這裏插入圖片描述
  在元訓練過程中對於每個任務先利用人類動作視頻進行內層次訓練,並由自適應目標損失LψL_{\psi}更新得到任務TT對應的策略網絡中的參數ϕT\phi_T,然後再由機器人動作視頻進行外層次訓練,利用行爲克隆損失LBCL_{BC}在進一步更新策略網絡中的參數θ\theta和自適應目標損失函數中的參數ψ\psi。在元測試過程中,只需輸入一個人類動作視頻序列,就能由LψL_{\psi}輸出梯度信息對策略網絡進行微調,以滿足新的任務要求。

實現過程

網絡結構

在這裏插入圖片描述
  上文提到的策略網絡的結構如圖所示,人類示教動作視頻和機器人示教動作視頻輸入到一個由多個卷積層構成的特徵提取網絡之中(兩者不是同時輸入的!在內訓練階段輸入人類動作,外訓練階段輸入機器人動作),然後經過一個空間softmax函數轉爲一維的特徵向量ff,並與機器人配置信息(夾具上3個非軸向點的三維位置)級聯起來,經過三個全連接層後得到隱藏層的輸出向量hh,此時網絡分成兩個支路,一個hh與前面提取的特徵向量ff在此級聯起來,經過三層時間卷積和範數計算(前面介紹的pre-update head)得到自適應目標損失LψL_{\psi};另一個hh經過一個全連接層後輸出預測的動作指令,在外訓練過程中計算克隆損失LBCL_{BC}。除此之外,可以看到本文利用特徵向量ff預測了在接觸到目標對象或容器時夾具的位姿,並對此進行監督(只在外訓練過程中進行)。

損失函數

  內訓練過程損失函數LψL_{\psi}由學習得到,外訓練過程LBCL_{BC}對於連續動作採用混合密度網絡(MDN)表示輸出動作的分佈,對於離散動作(如夾具的開或關)採用sigmoid層輸出和交叉熵損失函數。對於接觸到目標對象或容器時夾具的位姿的監督訓練採用平方差損失函數。

訓練策略

  上文已介紹過,分成內外訓練兩個階段,並在多個任務中進行反覆迭代訓練,卷積神經網絡在ImageNet數據集上做了預訓練。

網絡推廣

  根據作者的試驗該算法能在不同的背景環境,不同的人類示教者,不同的機器人上實現模仿學習的一眼學習,具有強大的適應能力和魯棒性。

創新點

  • 實現了通過觀察人類動作視頻完成模仿學習的一眼學習的任務
  • 利用時間卷積實現自適應目標損失函數的學習,使得網絡能夠同時捕捉多幀人類動作圖像信息
  • 對夾具位姿進行了額外的監督

算法評價

  經過兩年多時間的研究,該團隊終於實現了對於人類示教動作的模仿學習,整個過程也展現出清晰的研究脈絡:先提出一種不受模型限制的小樣本元學習算法MAML爲後續的研究奠定了基礎,然後實現了在輸入示教動作信息(物體的三維座標和機器人的狀態)的條件下實現少樣本模仿學習任務,接着實現了通過觀察機器人示教動作視頻完成模仿學習任務,最後實現了對於人類示教動作的模仿學習。中間關於策略網絡的結構和梯度的傳遞也做了非常詳實的研究,發表了一系列的文章,這展示了一個強大團隊的團隊協作能力和執行能力。回到本文,該算法利用領域自適應元學習算法實現了在不同環境下,不同任務中的一眼模仿學習,具有較強的實際應用價值和研究價值。作者也指出該算法目前只能對與訓練任務比較接近的任務進行一眼學習,並且訓練過程還是需要大量的示教動作,因此未來作者希望能夠設計出一種通用性機器人,能夠對更大範圍內的任務進行快速的一眼學習。

如果大家對於深度學習與計算機視覺領域感興趣,希望獲得更多的知識分享與最新的論文解讀,歡迎關注我的個人公衆號“深視”。在這裏插入圖片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章