(每日一讀2019.10.18)向人類學習如何抓取:數據驅動的架構 擬人軟手自主抓握

原論文:

摘要

軟手是將順應性元素嵌入其機械設計中的機器人系統。這樣可以有效地適應物品和環境,並最終提高其抓握性能。如果與經典的剛性手相比,這些手在人性化操作方面具有明顯的優勢,即易於使用和堅固耐用。但是,由於缺乏合適的控制策略,它們在自主控制方面的潛力仍未得到開發。爲了解決這個問題,在這項工作中,我們提出了一種方法,可以從觀察人類策略開始,使軟手能夠自主地抓握物體。通過深度神經網絡實現的分類器將要抓取的物體的視覺信息作爲輸入,並預測人類將執行哪些操作來實現目標。因此,此信息用於從一組人類啓發的原語中選擇一個,這些原語將軟手姿勢的演變定義爲預期動作和基於觸摸的反應性抓握的組合。該體系結構的硬件組件包括用於觀察場景的RGB攝像頭,7自由度操縱器和柔性手。柔性手在指甲處裝有IMU,用於檢測與物體的接觸。我們使用20個對象對提出的體系結構進行了廣泛的測試,在111個抓取過程中,成功率爲81.1%。

引用

由於實際相關性和理論複雜性,用人工手執行可靠和穩定的抓握是機器人領域的主要挑戰。 用於用剛性機械手抓握的經典方法通常偏向於以對象爲中心的分析解決方案。 更具體地說,假設一組可用的接觸點,同時根據對象知識評估它們的位置和接觸力[1]。 儘管這種方法非常優雅並且在理論上是合理的,但在實踐中尚未產生預期的結果。 爲了解決這些侷限性,通過有目的地引入彈性元件和欠驅動模式[2],[3],將柔軟的人工手的控制智能部分直接嵌入其機制中。 由於其固有的柔韌性,軟手可以在外部物品周圍塑形並利用其環境,從而增加了其抓握能力。

幾篇論文表明,柔軟的末端執行器在人爲操作時可以達到高水平的抓握性能(例如,參見[4],[5])。 但是,這種靈活性水平在自主抓握執行中仍然是無與倫比的。 確實,經典方法無法應用於此類手,因爲它們本身的特性,因此不允許以要求的精度和相對獨立性放置指尖。 相反,數據驅動的方法可能是向人類學習如何管理軟手,實現更高級別的自主抓握能力的關鍵。

近年來,機器學習已變得非常流行,並獲得了積極的成果[6],[7],[8]。但是,到目前爲止,文獻中只有很少的作品將學習方法應用於軟手的控制。在[9]中,通過示範學習與強化學習相結合,將已知物體的抓取能力從操作員轉移到機器人系統。在[10]中,自動編碼器和廣義迴歸神經網絡用於從操作員生成的示例中學習如何使用軟抓手操作以前看不見的薄物體。儘管非常有前途,但是這兩篇作品都沒有關於要掌握的對象的泛化能力。最近有兩項工作試圖超越這一限制。在[11]中,從操作軟手的對象中收集了一個反應策略庫,並在人機交接的情況下成功地將其翻譯爲機器人對新項目的掌握。在[12]中,使用成千上萬個標記圖像訓練3D卷積神經網絡。網絡輸出爲手接近方向提供控制輸入。

這些作品不僅在性能方面,而且在從根本上來說,代表着向前邁出的重要一步,以認識到機器學習方法和軟手的互補但相互交織的本質。 確實,基於學習的技術只能獲得與所需解決方案足夠接近的解決方案,而不是精確的解決方案。 這種不確定性可以通過軟手局部適應未知環境的能力來自然補償。

這項工作的目的是建立在這一原理的基礎上,並充分利用硬件的適應性來掌握各種各樣非常不同的對象。 爲此,我們提出了一種受人類啓發的多模式,多層體系結構(圖1),該體系結構將前饋組件與無功傳感器觸發的動作結合在一起。 我們在網絡以前看不見的20個對象上對提議的體系結構進行了廣泛的測試。 放在桌子上的物體的方向也不同。 對於每種條件,我們進行了3次重複,總共進行了111次測試,總的抓取成功率爲81.1%。

人類可以通過採用各種不同的策略來完成非常複雜的抓握[13]。 這就帶來了一個挑戰性的問題,即找到適用於給定場景的正確策略。 通常建議動物大腦通過首先構建用於做出決定的世界表示,然後通過計算和執行行動計劃來應對這一挑戰[14]。

提出的方法

人類能夠通過使用各種不同的策略來完成非常複雜的抓取[13]。這就帶來了一個具有挑戰性的問題,即如何爲給定的場景找到正確的策略。人們普遍認爲,動物的大腦通過首先構建用於做出決定的世界表象,然後通過計算和執行行動計劃來應對這一挑戰[14]。我們沒有學習一個完整的端到端映射,而是將所提出的體系結構構建爲可解釋的基本元素的組合,如圖1所示。這裏的智能分佈在三個抽象層次上:一)高層次:在所有可用的分類中計劃正確動作的分類器;二)中等層次:一組實現接近階段和傳感器觸發反應的受人啓發的低層次策略,iii)低水平:一隻軟手,其具體智能機械地管理局部不確定性。這三個層次都是受人類啓發的。

我們通過一個深度神經網絡實現了分類器。這是訓練,以預測對象定向抓取行動中選擇的九個人類標記的策略,使用作爲輸入只有第一人稱rbg圖像的場景。這些動作是在機器人一側實現的,以再現視頻中觀察到的動作。隨後,根據[11]的原理,引入了反應性成分。該組件以放置在軟手上的六個IMU產生的加速度作爲輸入,以生成所需的手姿態演化。較低層次的智能由軟手本身組成,軟手可以依靠其內在的順應性來處理局部的不確定性。任何一個機器人手,無論是在運動還是在運動學上都是柔軟的和擬人的,都可以達到這個範圍。在不喪失一般性的情況下,我們在這裏使用PISA/IIT軟件[15]。我們將在下一節報告這些組件的詳細說明。

這項工作的主要貢獻是:

  • 一種深度神經網絡,它能夠使用場景的第一人稱rgb圖像,以高精度預測人類抓取對象的策略。然後利用這個結果在機器人側規劃合適的原始的執行;
  • 一組反應性原語,能複製人類的抓握動作,基本上擴展了[11];
  • 自主抓取系統的定義和廣泛的實驗驗證,它結合了這兩個模塊和軟手的適應性。

深度分類器

這種深層神經網絡的目的是將從場景中檢測到的物體與人類正確掌握的原始物體(即手的姿勢進化)聯繫起來。深度學習模型包括兩個階段,如圖1所示:一個用於檢測對象,另一個用於執行與所需運動的實際關聯。

在討論這兩個組件的細節之前,我們簡要描述了從人類視頻中提取和標記原始信息的各個階段.

  • 頂部:從頂部接近物體,手掌向下與桌子平行。對象中心近似於中指骨的水平。當接觸建立時,受試者同時閉合他們的所有手指,獲得一種像握力一樣的穩固力量。
  • 左上角:與上手相同,但手掌順時針旋轉至少π=9弧度。
  • 右上角:對於頂部抓取,但手掌逆時針旋轉至少π=9弧度。
  • 底部:物體從右側接近。手掌大致垂直於桌子,但略微傾斜,使指尖比手腕更接近物體。當接觸時,手用拇指抵住四個長手指合上。這個原語用於抓取大的和凹的物體,例如沙拉碗。
  • 夾持:與頂部相同,但原語以夾持結束。
  • 捏左:與左上角相同,但原語以捏握結束。
  • 捏右:與右上角相同,但原語以捏握結束。
  • 滑動:將手從上方放在物體上,以便將其推向表面。保持這種手的姿勢,物體向桌子邊緣移動,直到它部分突出。然後,通過將拇指移到物體下方,並與長手指相對,實現抓取。此策略用於抓取厚度小於其他尺寸的對象,例如書本或光盤。
  • 翻轉:拇指與一側的環境一起使用,另一側的索引和/或中間用於旋轉對象。這個項目旋轉大約π=2,然後用捏住它。這個策略是用來抓住小而薄的物體,如硬幣。
  • 橫向:與頂部抓握相同,但在接近階段手掌垂直於物體。此策略用於抓取高的物體,如瓶子

這些原語的選擇是從文獻[16]、[13]中獲得靈感,並提供了一個對人類行爲有代表性但簡潔的描述,而沒有任何窮盡的要求。請注意,動作原語的選擇不僅依賴於對象,還依賴於配置。對於左/右修改器,這是清楚的。例如,考慮一個瓶子;如果放在它的底部,它會觸發一個橫向抓取,而當放在它的側面時,會誘導一個頂部抓取。

提取每個視頻的第一幀,僅顯示環境中的對象,並通過網絡的對象檢測部分進行闡述(見下一小節)。裁剪後的圖像被標上視頻剩餘部分中被攝對象使用的策略。這是我們用來訓練網絡的數據集。

A 目標檢測

使用最先進的探測器yolov2實現目標檢測[17]。給定rgb輸入圖像,yolov2生成一組帶標籤的邊界框,其中包含場景中的所有對象。我們首先丟棄所有標有“人”的盒子。我們假設目標位於圖像中心附近。因此,我們選擇離場景中心最近的邊界框。一旦識別出感興趣的對象,圖像將自動在邊界框周圍裁剪,並調整大小爲416×416像素(後續層預期的大小)。結果被輸入下面的塊進行分類。

B 原始分類

a)架構:我們遵循遷移學習方法,而不是從頭開始構建一個全新的架構。這個想法是利用現有的知識從一個環境中學習,以解決一個新的問題,這是不同的,但相關的。這樣,較小的數據量就足以訓練模型,在較短的訓練時間內達到較高的精度。我們選擇inception-v3[18]作爲起點,對imagenet數據集進行訓練,從圖像中對對象進行分類。我們保留輸入層和中間層,刪除SoftMax層。通過這種方式,我們可以直接訪問inception-v3用來執行其分類的高度精煉和信息豐富的神經特性集。需要注意的是,對象簽名不是一對一的,而是旨在提取可應用於具有相似特徵的對象的高級語義描述。在原始架構的基礎上,我們添加了兩個完全連接的層,每個層包含2048個神經元(具有relu激活功能)。這些層操作由卷積層和池層發現的高級特徵的自適應非線性組合,進一步細化信息。通過這種方式,幾何特徵被隱式地聯繫在一起,作爲分類的基礎。最後一個完全連接層的輸出因此被輸入到softmax中,它在所考慮的運動原語集上產生概率分佈。我們選擇了最大概率的網絡作爲輸出。

b)訓練和驗證:我們使用上述標記的數據集來培訓網絡。inceptionv3架構頂部的兩個完全連接層的參數是從頭開始訓練的,而網絡的原始參數是經過微調的。爲此,我們規定了特定層次的學習率。更具體地說,我們在預先訓練的網絡的前172層(總共249層)中凍結權重。這些層捕獲了一些與我們的問題相關的通用特性,如曲線和邊。相反,我們使用隨後的77層來捕獲特定於數據集的特性。然而,如果與隨機初始化的權重相比,我們希望預訓練的權重已經很好了。因此,我們避免使用相對較小的學習率λftλ_{ft}突然改變它們。最後,考慮到最後兩個完全連接層的權重是從頭開始訓練的,我們隨機初始化它們並使用更高的學習率λtrλ_{tr} w.r.t。我們在以前的層中使用的學習率。我們通過使用dropout進一步降低了過度擬合的風險;在向網絡呈現訓練樣本之前,我們隨機地將神經元與其結構斷開(實際上,這是通過屏蔽它們的激活來實現的)。每個神經元用概率pdrop去除。這樣,每次訓練網絡時都會產生一個新的拓撲結構,引入變異性並減少病理性權值協同適應的產生。我們使用Keras庫進行網絡設計和訓練。所有的程序都是在12GB板載內存的nvidia tesla m40 gpu執行的。

爲了驗證原始分類的泛化性和魯棒性,我們使用了hold-out驗證。目標是獨立於用於訓練模型的數據來估計模型預測精度的預期水平。我們將數據集分成:70%的對象用於培訓,20%的對象用於驗證,10%用於測試。我們在三個以上的數據集中爲每個類維護了均衡的對象數。我們使用交叉熵代價函數訓練30種不同的網絡配置,通過計算SoftMax層的輸出與給定樣本類別的標籤向量之間的誤差來調整權重。通過改變最相關的模型學習超參數,即學習率λft 2 f10-3;10-4;10-5;10-6g和λtr 2 f10-2;10-3;10-4g,輟學概率pdrop 2 f0:4;0:5;0:6g,f10中的學時數;20;30;40g,以及f10中的批大小,獲得每個網絡的訓練時間從1到5小時不等。我們選擇的配置在驗證數據集上提供了最高的F1分數精度[19],即97%。所選的超參數爲λft=10-5、λtr=10-3、pdrop=0:5、30個階段和20個批次。

利用這些參數,網絡能夠對測試集中的原語進行分類,準確率從86%到100%,取決於原語,平均95%。圖4示出了所有十個類的分類器的標準化精度。目測結果揭示了網絡偶發故障背後的兩個主要原因。第一個是問題公式本身的侷限性,這使得本質上不可能達到100%的分類精度。事實上,很少有兩個被試以兩種不同的方式掌握同一結構中的同一物體。例如,這種情況發生在硬幣上,硬幣通常是通過翻蓋抓住的,而有時使用滑動原語代替。第二個原因是由於只使用一個rgb圖像,網絡有時會誤解對象的大小。例如,這可能導致預測碗的頂部抓取而不是底部抓取,因爲此對象可能被解釋爲類球項目。在今後的工作中,我們將考慮使用立體相機來防止這個問題。

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