機器人運動控制原理淺析-UC Berkeley超視覺模態模型

加州伯克利發布的超視覺多感知模態融合(FuSe, Fuse Heterogeneous Sensory Data)模型,基于視覺、觸覺、聽覺、本體及語言等模態,利用自然語言跨模態對齊(Cross-Modal Grounding)優調視覺語言動作等通用模型,提高模型任務成功率。
在這里插入圖片描述

總體框架

基于預訓練的Octo模型或PaliGemma視覺語言動作模型,利用機器人第三方視角相機及腕部相機圖像,觸覺感知圖像,麥克風語譜圖像(Spectrogram)及自然語言指令等,通過多模態對比損失、語言生成損失及動作損失,進行模型優調,實現自然語言指令或圖像目標任務。
[圖片來自網絡]
在這里插入圖片描述

一、硬件環境
[圖片來自網絡]
機械臂, WidowX 250 6-DoF。
第三方視角相機, RGB相機。
腕部相機, RGB相機。
觸覺傳感器, DIGIT,2個,分置于終端鉗。
麥克風, 標準型。
慣性測量單元, 9-DoF IMU。

二、訓練環境及數據
TPU, Google v5e-128 TPU pod。
機器人任務軌跡收集器, Meta Quest 2 VR headset。
任務數據集,基于遙操作收集大概3萬條軌跡。
每條軌跡通過模板化的語言指令(Templated Language Instruction)標記。
三類任務,兩類抓取任務具備視覺、觸覺及動作數據,一類具備聲音的按鈕任務。觸覺觀測信息去掉靜態背景圖。音頻包括最近1秒的麥克風采樣數據,頻率44K。

三、機器學習框架
Google Research 發布的 JAX,基于自動梯度(Autograd)及線代加速器(XLA, Accelerated Linear Algebra)、自動向量實現自動微分(Automatic Differentiation)、實時編譯(JIT, Just-In-Time)及并行計算,提高基于TPU等的大規模、高性能計算。不過易用性似不好。

四、觸覺傳感器(DIGIT)
GelSight DIGIT基于視覺的觸覺傳感器,利用相機捕獲彈性材料的形變圖像來測量接觸力(Contact Forces).
[圖片來自網絡]
拆解圖,左至右,彈性材料(Elastomer),窗(Acrylic Window),卡座(Snap-Fit Holder),照明電路板(Lighting PCB),外殼(Plastic Housing),相機電路板(Camera PCB),背殼(Back Housing)。

超態模型

一、模型框架
[圖片來自網絡]
框架圖,頂部,自然語言標記化作任務標記(原圖似未正確表示);相機圖像、觸覺圖像、語音譜圖標記化作觀測標記(Observation Tokens);取讀標記(Readout Tokens)添加到變換器輸入,用于注意此前任務及觀測標記;任務標記、觀測標記及取讀標記基于遮擋碼方法實現注意力規則,通過多模態編碼變換器生成注意力嵌量;底部,基于動作頭(Action Head)生成動作; 基于多模態對比損失對齊視觸覺與語言指令,基于語言生成損失對齊多模態與語言語義,基于動作損失對齊多模態與動作; 基于注意力嵌量,利用累加損失訓練模型。
取讀標記(Readout Tokens)作用類似基于變換器的雙向編碼器表征模型(BERT, Bidirectional Encoders Representations From Transformers)中的[CLS]標記(Token)。可存在多個取讀(Readout),一個取讀可對應多個標記(Tokens)。取讀標記實例化時等價于位置嵌量。
動作頭(Action Head)基于標準去噪擴散概率模型(DDPM, Denoising Diffusion Probabilistic Models),利用變換器生成的動作取讀(Action Readout)注意力嵌量等信息學習去噪神經網絡,通過對標準高斯噪聲多步去噪預測動作。
在這里插入圖片描述

二、多模態模型Octo
基于視覺變換器(ViT, Vision Transformer)及開源具身數據集(Open X-Embodiment Dataset)預訓練實現的機器人通用控制策略模型。
[圖片來自網絡]
在這里插入圖片描述

模型框架定義。
[圖片來自網絡]
框架圖,左側,分別基于預訓練語言模型與輕型卷積神經網絡標記化任務及觀測信息;頂部,預訓練框架,任務及觀測標記序列通過變換器骨干網絡生成取讀標記(Readout Tokens);取讀標記基于動作頭(Action Head)生成動作;底部,優調框架,基于變換器的塊注意力結構(Block-Wise Attention Structure),優調過程中可添加或移走輸入、輸出量,比方,新的觀測量或動作空間。
在這里插入圖片描述

三、編碼器
1、自然語言編碼器
T5-Base變換器模型。

2、圖像編碼器
卷積棧(Shallow Convolution Stack)。

3、觸覺編碼器(Tactile Encoder)
基于每對模態之間,比方視覺語言、觸覺語言及觸覺視覺的對比損失訓練模型。
[圖片來自網絡]

4、音頻編碼器(Audio Encoder)
基于快速傅立葉變換(FFT, Fast Fourier Transform)得到語譜圖,利用ResNet26編碼器進行編碼。

在這里插入圖片描述

模型訓練

參數更新基于余弦學習率調度器(Cosine Learning Rate Scheduler)。
一、標記序列
標記序列定義。
[task, observation 0, observation 1, observation 2, …]

標記序列示例。
[ , <t=0 “image_primary” tokens>, <t=0 “image_wrist” tokens>, <t=0 readout_action tokens>, … <t=1 “image_primary” tokens>, <t=1 “image_wrist” tokens>, <t=1 readout_action tokens>, … <t=2 “image_primary” tokens>, <t=2 “image_wrist” tokens>, <t=2 readout_action tokens>, … …]

二、遮擋規則
Octo模型是塊因果變換器(Block-Wise Casual Transformer),每個時步只注意當前及此前時步。
觀測標記注意任務標記,當前及此前時步的所有觀測標記。
取讀標記只注意該標記前的標記序列。

三、損失函數
[圖片來自網絡]
優調過程的損失函數程序實現。
def loss_fn(params, batch, rng, train=True, use_action_loss=True, use_contrastive_loss=True, use_generative_loss=True, **kwargs): info = {} loss = 0.0 bound_module = model.module.bind({“params”: params}, rngs={“dropout”: rng}) if use_action_loss: ac_loss, ac_metrics = loss_fn_action(bound_module, batch, train, **kwargs) info.update(ac_metrics) loss += ac_loss if use_contrastive_loss: lang_loss, lang_metrics = loss_fn_contrastive(bound_module, batch, train, **kwargs) info.update(lang_metrics) loss += lang_loss if use_generative_loss: gen_loss, gen_metrics = loss_fn_generative(model=model, params=params, rng=rng, batch=batch, **kwargs) info.update(gen_metrics) loss += gen_loss info[‘loss_total’] = loss return loss, info

淺析: Nvidia GR00T模型及Physical Intelligence模型,基于動作狀態,通過擴散變換器或流匹配生成未來動作;利用視覺語言模態注意力嵌量直接調控動作生成;利用行為克隆進行總對齊。

超視覺模態模型基于多模態圖像及語言,通過編碼變換器(Transformer Encoder)及標準擴散模型進行嵌量化及生成動作;基于行為克隆對齊的同時,利用對比損失及生成損失進行嵌量對齊,間接調控動作生成。
超視覺模態模型框架似過冗,多模態注意力嵌量直接調控擴散變換器或流匹配模型可能是更適合的方法。
基于觸覺、聽覺等模態信息及遮擋碼注意力規則可提供更全面的語義對齊能力;同時,利于基于多樣化的環境反饋實現機器人操作控制約束條件。
新發布的觸覺傳感器DIGIT360可實現全向感知、近千萬級感素(Taxels),空間特征分辨率可到7微米,法向力(Normal Forces)及切向力(Shear Forces)分辨率可到近1毫牛,可感知振動、熱,甚至異味。
基于U-Net骨干神經網絡的標準去噪擴散概率模型應可替換成擴散變換器(DiT, Diffusion Transformer)或流匹配模型,以提高性能或平滑性。
人形機器人基于慣性測量單元的超視覺模態注意力對齊,似有利于實現多任務操作時的整機平衡。

參考:
Beyond Sight: Finetuning Generalist Robot Policies with Heterogeneous Sensors via Language Grounding.
A Touch, Vision, and Language Dataset for Multimodal Alignment.
Octo: An Open-Source Generalist Robot Policy.
DIGIT: A Novel Design for a Low-Cost Compact High-Resolution Tactile Sensor with Application to In-Hand Manipulation.
Digitizing Touch with an Artificial Multimodal Fingertip.

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/bicheng/80598.shtml
繁體地址,請注明出處:http://hk.pswp.cn/bicheng/80598.shtml
英文地址,請注明出處:http://en.pswp.cn/bicheng/80598.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

【Bootstrap V4系列】學習入門教程之 組件-媒體對象(Media object)

Bootstrap V4系列 學習入門教程之 組件-媒體對象&#xff08;Media object&#xff09; 媒體對象&#xff08;Media object&#xff09;一、Example二、Nesting 嵌套三、Alignment 對齊四、Order 順序五、Media list 媒體列表 媒體對象&#xff08;Media object&#xff09; B…

解決VirtualBox中虛擬機(ubuntu)與主機(windows)之間互相復制粘貼(文本)

一.開始的設置 1.在VirtualBox中打開設置&#xff0c;常規中修改主機與虛擬機交互設置 2.虛擬機關閉狀態下&#xff0c;存儲中選中控制器SATA&#xff0c;勾選‘使用主機輸入輸出’ 3.選中操作系統對應的虛擬文件&#xff0c;.vdi文件&#xff0c;勾選右邊的固態驅動器。 4.啟…

java 多核,多線程,分布式 并發編程的現狀 :從本身的jdk ,到 spring ,到其它第三方。

Java 在多核、多線程和高性能編程領域提供了豐富的現成框架和工具&#xff0c;既有標準庫中的并發組件&#xff0c;也有第三方框架。以下是一些關鍵框架及其應用場景的總結&#xff1a;便于后面我們站在巨人的肩膀上&#xff0c;繼續前行 一、Java 標準庫中的多線程框架 Execut…

Nodejs核心機制

文章目錄 前言 前言 結合 Node.js 的核心機制進行說明&#xff1a; 解釋事件循環的各個階段。 答案 Node.js 事件循環分為 6 個階段&#xff0c;按順序執行&#xff1a; Timers&#xff1a;執行 setTimeout 和 setInterval 的回調。 Pending I/O Callbacks&#xff1a;處理系…

C++筆記6:數字字面量后綴和前綴總結

在C中&#xff0c;可以在數字字面量后面添加字母后綴&#xff08;或前綴&#xff09;來表示特定的數據類型。這些后綴能夠明確指定字面量的類型&#xff0c;避免類型轉換帶來的潛在問題。以下是常見的幾種類型后綴及其含義&#xff1a; 1. 整數后綴 u 或 U&#xff1a;表示 u…

50.輻射抗擾RS和傳導抗擾CS測試環境和干擾特征分析

輻射抗擾RS和傳到抗擾CS測試環境和干擾特征分析 1. 輻射抗擾RS2. 傳導抗擾CS 1. 輻射抗擾RS 輻射抗擾RS考察對外界電磁場干擾得抗擾能力&#xff0c;測試頻段為80MHz~2000MHz&#xff0c;用1KHz得正弦波進行調幅&#xff0c;在電波暗室內進行。測試標準&#xff1a;IEC 61000-…

Java多態詳解

Java多態詳解 什么是多態&#xff1f; 比如我們說&#xff1a;“駕駛一輛車”&#xff0c;有人開的是自行車&#xff0c;有人開的是摩托車&#xff0c;有人開的是汽車。雖然我們都說“開車”&#xff0c;但“怎么開”是由具體的車類型決定的&#xff1a;“開”是統一的動作&a…

問題及解決01-面板無法隨著窗口的放大而放大

在MATLAB的App Designer中&#xff0c;默認情況下&#xff0c;組件的位置是固定的&#xff0c;不會隨著父容器的大小變化而改變。問題圖如下圖所示。 解決&#xff1a; 為了讓Panel面板能夠隨著UIFigure父容器一起縮放&#xff0c;需要使用布局管理器&#xff0c;我利用 MATLA…

【GESP真題解析】第 20 集 GESP 二級 2025 年 3 月編程題 2:時間跨越

大家好,我是莫小特。 這篇文章給大家分享 GESP 二級 2025 年 3 月編程題第 2 題:時間跨越。 題目鏈接 洛谷鏈接:B4260 時間跨越 一、完成輸入 根據題意,輸入包含五行,每行一個正整數,分別代表 y,m,d,h,k。 注意到數據范圍:對于全部數據,保證有 2000≤y≤3000,1≤m≤…

GTS-400 系列運動控制器板卡介紹(二十一)---電子齒輪跟隨

運動控制器函數庫的使用 運動控制器驅動程序、dll 文件、例程、Demo 等相關文件請通過固高科技官網下載,網 址為:www.googoltech.com.cn/pro_view-3.html 1 Windows 系統下動態鏈接庫的使用 在 Windows 系統下使用運動控制器,首先要安裝驅動程序。在安裝前需要提前下載運動…

軟件工程之需求分析涉及的圖與工具

需求分析與規格說明書是一項十分艱巨復雜的工作。用戶與分析員之間需要溝通的內容非常的多&#xff0c;在雙方交流信息的過程中很容易出現誤解或遺漏&#xff0c;也可能存在二義性。如何才能更加準確的表達雙方的意思&#xff0c;且清楚明了&#xff0c;繪制各類圖形就顯得非常…

藍橋杯14屆 數三角

問題描述 小明在二維坐標系中放置了 n 個點&#xff0c;他想在其中選出一個包含三個點的子集&#xff0c;這三個點能組成三角形。然而這樣的方案太多了&#xff0c;他決定只選擇那些可以組成等腰三角形的方案。請幫他計算出一共有多少種選法可以組成等腰三角形&#xff1f; 輸…

在Fiddler中添加自定義HTTP方法列并高亮顯示

在Fiddler中添加自定義HTTP方法列并高亮顯示 Fiddler 是一款強大的 Web 調試代理工具&#xff0c;允許開發者檢查和操作 HTTP 流量。一個常見需求是自定義 Web Sessions 列表&#xff0c;添加顯示 HTTP 方法&#xff08;GET、POST 等&#xff09;的列&#xff0c;并通過顏色區…

數據庫分庫分表實戰指南:從原理到落地

1. 為什么要分庫分表&#xff1f; 1.1 單庫瓶頸表現 存儲瓶頸&#xff1a;單表數據超過5000萬行&#xff0c;查詢性能急劇下降性能瓶頸&#xff1a;單庫QPS超過5000后響應延遲顯著增加可用性風險&#xff1a;單點故障導致全系統不可用 1.2 突破性優勢 --------------------…

Selenium的driver.get_url 和 手動輸入網址, 并點擊的操作,有什么不同?

我在搞爬取的時候&#xff0c;發現有些網站直接用driver.get(url) 跳轉到目標特定的網址的時候&#xff0c;會被強制跳轉到其他的網址上&#xff0c;但是如果是自己手動&#xff0c;在網址欄那里輸入網址&#xff0c;并點回車&#xff0c;卻能完成跳轉。 這是在使用 Selenium …

Java【06】數組查找(二分查找)、排序(冒泡排序、簡單選擇排序)

1. 數組的操作 1.1 數組的反轉 int[] arrs{3,5,7,8,9}; 編寫程序&#xff0c;讓arrs中的數據進行反轉{9,8,7,5,3} 1.2數組的查找 ① 順序查找 從頭到尾一個一個的找&#xff01; ② 二分查找 對數組有一個要求&#xff1a;數組必須是有序(大小)的&#xff01; int num3; int[]…

Redis 基礎詳解:從入門到精通

在當今互聯網應用開發領域&#xff0c;數據存儲與處理的性能和效率至關重要。Redis&#xff08;Remote Dictionary Server&#xff09;作為一款開源的、基于內存的鍵值存儲系統&#xff0c;憑借其出色的性能和豐富的功能&#xff0c;被廣泛應用于數據庫、緩存、消息中間件等場景…

圖片轉ICO圖標工具

圖片轉ICO圖標 可批量操作 下載地址&#xff1a; 鏈接&#xff1a;https://pan.quark.cn/s/6312c565ec98 這個工具是一個批量圖片轉ICO圖標的神器&#xff0c;有了它&#xff0c;以后再也不用為ICO格式的轉換煩惱&#xff01;而且這個軟件特別小巧&#xff0c;完全不用安裝。…

0基礎 | L298N電機驅動模塊 | 使用指南

引言 在嵌入式系統開發中&#xff0c;電機驅動是一個常見且重要的功能。L298N是一款高電壓、大電流電機驅動芯片&#xff0c;廣泛應用于各種電機控制場景&#xff0c;如直流電機的正反轉、調速&#xff0c;以及步進電機的驅動等。本文將詳細介紹如何使用51單片機來控制L298N電…

Flink 系列之十五 - 高級概念 - 窗口

之前做過數據平臺&#xff0c;對于實時數據采集&#xff0c;使用了Flink。現在想想&#xff0c;在數據開發平臺中&#xff0c;Flink的身影幾乎無處不在&#xff0c;由于之前是邊用邊學&#xff0c;總體有點混亂&#xff0c;借此空隙&#xff0c;整理一下Flink的內容&#xff0c…