锐单电子商城 , 一站式电子元器件采购平台!
  • 电话:400-990-0325

【论文笔记】Supersizing Self-supervision: Learning to Grasp from 50K Tries and 700 Robot Hours

时间:2023-07-21 08:07:00 lb膜视觉传感器基础

目录

  • Abstract
  • 1. INTRODUCTION
  • 2. RELATED WORK
  • 3. APPROACH
      • Robot Grasping System
      • Gripper Configuration Space and Parametrization
    • A. Trial and Error Experiments
      • Region of Interest Sampling
      • Grasp Configuration Sampling
      • Grasp Execution and Annotation
    • B. Problem Formulation
      • CNN's INPUT
      • CNN's OUTPUT
      • Testing
    • C. Training Approach
      • Data preparation
      • Network Design
      • Loss Function
    • D. Multi-Staged Learning
  • 4. RESULTS
    • A. Training dataset
    • B. Testing and evaluation setting
    • C. Comparison with heuristic baselines
    • D. Comparison with learning based baselines
    • E. Ablative analysis
      • Effects of data
      • Effects of pretraining
      • Effects of multi-staged learning
      • Effects of data aggregation
    • F. Robot testing results
      • Re-ranking Grasps
      • Grasp Result
      • Clutter Removal
  • 5. CONCLUSION

Abstract

目前,基于模型自由学习的机器人捕获方法使用人工标记的数据集来训练模型。这会带来一些缺点。

  1. 由于每个物体都可以通过多种方式被抓住,所以手动标记抓取位置并不是一项简单的任务;
  2. 人类的标签会被接受语义学影响。(如下所述:一个杯子可以从多个位置取出,但手柄上默认设置了人工标签。
  3. 尽管试图使用试错实验来训练机器人,但这些实验中使用的数据量仍然很低,因此学习者很容易过度拟合

针对这些问题,作者提出了一些方法:

  1. 我们将可用的训练数据增加到以前工作的40倍,从而获得了700小时机器人抓取试验收集的50倍K数据点的数据集大小。
  2. 训练卷积神经网络(CNN),抓取位置可以预测,没有严重的过度拟合。
  3. 将回归问题重新定义为图像补丁上的18个二值分类。
  4. 在一个阶段的训练中提出了一种多阶段的学习方法CNN收集后续阶段的硬负信息。

1. INTRODUCTION

论文图片1

如何预测物体的抓取位置?

  • 拟合这些对象3D图形或使用3D执行3的深度传感器D推理预测抓取位置。然而,这种方法有两个缺点:(a)拟合3D模型本身就是一个极其困难的问题;(b)一种基于几何的方法忽略了物体的密度和质量分布,这对预测抓取位置至关重要。
  • 使用视觉识别来预测捕获的位置和配置,因为它不需要显式对象建模。它可以创建一个捕获位置训练数据集,并使用标准的机器学习算法,如CNNs或者自动编码器来预测测试数据中的捕获位置。但是人工标签的机器学习会受到上述两个缺点的影响。
  • 即使是基于视觉的最大数据集(2016年)也只有1左右K孤立的物体图像(只有一个物体可见,没有任何混乱)。

加强学习(reinforcement learning)和人类经验学习(imitation learning)通过试错预测抓取位置,我们提出了一种自我监督算法。

在我们看来,这种方法中,训练数据远低于模型参数的数量,必然会过拟合,不能推广到新的看不见的对象。因此,我们需要的是一种有意义的收集数百个数据点的方法(可以让机器人每天24小时交互7天)来学习这项任务。

我们提出了一项大规模的实验研究,不仅大大增加了学习要掌握的数据量,而且提供了一个完整的标记,标记物体是否可以在特定的位置和角度掌握。

我们使用这个数据集ImageNet提前训练AlexNet-CNN微调模型,学习全连接层1800万新参数,预测抓取位置。

我们没有使用回归损失,而是将抓取问题表示为18个以上角度的182元分类。受加强学习范式的启发,我们还提出了一个基础阶段-课程我们学习如何掌握学习算法,并使用最近的学习模型收集更多数据。

2. RELATED WORK

利用分析方法和三维推理来预测捕获的位置和配置。 物体的表面摩擦特性和质量分布需要三维建模。 来自三维模型和其他属性的感知和推断RGB或RGBD相机的摩擦/质量是一个极其困难的问题。 为了解决这些问题,人们建立了捕获数据集。根据相似性对捕获值进行采样和排序,以捕获现有数据集中的例子。
预测抓取包括使用模拟器,如Graspit 采样抓取候选动作,并通过分析对其进行排序。 然而,模拟环境如何反映现实世界往往存在问题。 一些论文分析了为什么模拟环境不能与高度非结构化的现实世界平行。
直接使用视觉学习RGB或RGB-d图像中预测抓取位置。 使用基于视觉特征的逻辑回归器(边缘和纹理过滤器响应),并在合成数据中学习。使用人类注释捕获数据RGB-D数据训练捕获合成模型。 但是,如上所述,大规模收集训练数据以抓取预测任务并不是很简单,存在几个问题。 因此,上述任何方法都不能扩展到使用大数据。(2016年)
利用机器人自己的试错经验。 前人的工作只使用数百次试错操作来训练高容量的深度网络。但拟合和泛化能力较差。 用强化学习来学习混乱场景深度图像的掌握属性。 捕获属性是基于超体素分割和小面检测。这就产生了捕获合成过程,可能不适合复杂对象。

我们提出了一个分阶段的端到端自我监督——学习系统,它使用数千次试错来学习深度网络。然后,学习到的深度网络被用来收集更多的正负数据(模型认为可用,但通常不是),这有助于网络更快地学习。

3. APPROACH

Robot Grasping System

实验是在Rethink机器人公司Baxter在特殊机器人上使用。ROS作为我们的开发系统。
对于夹持器,我们使用双指平行夹持器,最大宽度(开启状态)为 75 m m 75mm 75mm,最小宽度(闭合状态)为 37 m m 37mm 37mm

一个KinectV2连接到机器人的头部,可以提供 1920 × 1280 1920 \times 1280 1920×1280分辨率的工作空间图像(暗白色的桌面)。此外,一个 1280 × 720 1280 \times 720 1280×720分辨率的相机被连接到每个Baxter的末端执行器上,它提供了与Baxter交互的对象的丰富图像。

为了进行轨迹规划,使用了扩展空间树(Expansive Space Tree)规划器。使用这两个机器人臂来更快地收集数据。

在实验过程中,人类的参与仅限于打开机器人,并以任意的方式将物体放在桌子上。除了初始化之外,我们没有人类参与数据收集的过程。

Gripper Configuration Space and Parametrization

在本文中,我们只关注平面上的抓取力。

平面抓取是指抓取配置沿着并垂直于工作空间。因此,抓取配置为三维, ( x , y ) (x,y) (x,y):抓取点在桌子表面的位置,以及 θ \theta θ:抓取点的角度。

A. Trial and Error Experiments


该工作空间首先设置了多个不同难度的对象,随机放置在一张背景为暗白的桌子上。然后连续执行多次随机试验。

Region of Interest Sampling

从头戴式Kinect查询的桌面图像通过现成的高斯混合(MOG)背景减影算法识别该算法识别图像中感兴趣的区域。

这样做仅仅是为了减少在附近没有物体的空地上进行的随机试验的次数。

然后选择该图像中的一个随机区域作为特定试验实例的感兴趣区域。

Grasp Configuration Sampling

给定一个特定的感兴趣区域,机器人手臂移动到物体上方25厘米。

现在,从感兴趣区域的空间中均匀地采样一个随机点。这将是机器人的抓取点。

为了完成抓握配置,现在在范围 ( 0 , π ) (0,\pi) (0,π)内随机选择一个角度,因为两个指握器是对称的。

Grasp Execution and Annotation

现在给定抓取配置,机器人臂对对象执行抓取。

然后将物体抬高20厘米,并根据握把的力传感器读数标注为成功或失败。

在执行这些随机试验过程中,所有摄像机的图像、机器人手臂轨迹和握历史都被记录到磁盘上。

B. Problem Formulation

抓取综合问题被表述为在给定一个对象 I I I的图像时找到一个成功的抓取配置 ( x S , y S , θ S ) (x_{S},y_{S},\theta_{S}) (xS,yS,θS)

CNN’s INPUT

我们的CNN的输入是一个在抓取点周围提取的图像补丁。

在我们的实验中,我们使用的补丁是指尖在图像上投影的 1.5 1.5 1.5倍,也包括上下文。

实验中使用的贴片尺寸为 380 × 380 380 \times 380 380×380。这个补丁的大小被调整为 227 × 227 227 \times 227 227×227,这是图像网络训练的AlexNet的输入图像大小。

CNN’s OUTPUT

首先学习一个二元分类器模型,该模型将物体分为可抓取与否,然后选择物体的抓取角。

然而,图像贴片的可抓性是夹持器角度的函数,因此图像贴片可以被标记为可抓的和不可抓的。

相反,在我们的例子中,给定一个图像补丁,我们估计一个18维似然向量,其中每个维度表示补丁的中心是否在 0 ° , 10 ° , ⋯ 170 ° 0°, 10°, \cdots170° 0°,10°,170°。因此,我们的问题可以看作是一个18元二分类问题。

Testing

给定一个图像补丁,我们的CNN输出18个抓取角度的中心。

在机器人的测试时间,给定一个图像,我们对抓取位置进行采样提取补丁输入CNN

对于每个补丁,输出是18个值,它们描述了18个角度中的每个角度的可抓取性得分

C. Training Approach

Data preparation

给定一个试验实验数据点 ( x i , y i , θ i ) (x_{i},y_{i},\theta_{i}) (xi,yi,θi),我们以 ( x i , y i ) (x_{i},y_{i}) (xi,yi)为中心抽取 380 × 380 380 \times 380 380×380贴片。

为了增加网络所看到的数据量,我们使用了旋转转换:通过 θ r a n d \theta_{rand} θrand旋转数据集补丁,并将相应的抓取方向标记为 θ i + θ r a n d θ_{i}+θ_{rand} θi+θrand。其中一些补丁可以在图4中看到。

Network Design


我们的CNN,是一个标准的网络架构。

我们的前五个卷积层取自预先训练过的AlexNet。我们还使用了两个完全连接的层,分别有4096个和1024个神经元。

这两个完全连接的层,fc6和fc7,用高斯初始化进行训练。

Loss Function

L B = ∑ i = 1 B ∑ j = 1 N = 18 δ ( j , θ i ) ⋅ s o f t m a x ( A j i , l i ) L_{B} = \sum_{i=1}^{B} \sum_{j=1}^{N=18} \delta(j, θ_{i})·softmax(A_{ji}, l_{i}) LB=i=1Bj=1N=18δ(j,θi)softmax(Aji,li)
其中, δ ( j , θ i ) = 1 \delta(j,θ_{i})=1 δ(j,θi)=1时, θ i θ_{i} θi对应于第 j j j个类。

请注意,网络的最后一层包含18个二进制层,而不是一个多层分类器来预测最终的可抓取性分数。

因此,对于单个补丁,只有试验对应类的损失能被反向传播。

D. Multi-Staged Learning

在数据收集的这个阶段,我们同时使用以前看到的对象和新对象。这确保了在下一次迭代中,机器人纠正不正确的抓取模式,同时加强正确的抓取模式。

需要注意的是,在这一阶段的每次对象抓取试验中,都会随机抽取800块补丁,并由上一次迭代中学习到的深度网络进行评估。

这就产生了一个 800 × 18 800\times18 800×18的抓取能力先验矩阵,其中输入 ( i , j ) (i,j) (i,j)对应于第 i i i个补丁的第 j j j个类上的网络激活。抓取执行现在是由抓取能力先验矩阵的重要性抽样决定的。

数据聚合技术的启发,在第 k k k次迭代的训练过程中,数据集 D k D_{k} Dk { D k } = { D k − 1 , Γ d k } \{D_{k}\}=\{D_{k−1},\Gamma d_{k}\} { Dk}={ Dk1,Γdk}给出,其中 d k d_{k} dk是使用第 k − 1 k−1 k1次迭代的模型收集的数据。

注意, D 0 D_{0} D0是随机抓取数据集,第 0 0 0次迭代只是简单地在 D 0 D_{0} D0上进行训练。

作为设计选择,重要性因素 Γ \Gamma Γ保持为3。

4. RESULTS

A. Training dataset

B. Testing and evaluation setting

通过3k次物理机器人交互收集了15个新颖的、不同的测试对象的多个位置。

这个测试集是通过从收集到的机器人交互中随机抽样来平衡的。

用于评估的精度度量是二元分类,即在测试集中给定一个补丁并执行抓取角,以预测对象是否被抓取。

该方法的评估保留了抓取的两个重要方面:(a)它确保了测试数据完全相同的比较,这与真实的机器人实验是不可能的;(b)数据来自一个真实的机器人,这意味着在这个测试集上工作良好的方法应该在真实的机器人上工作良好。

我们的基于深度学习的方法,然后是多阶段强化,在这个测试集上产生了 79.5 % 79.5\% 79.5%的准确率。

C. Comparison with heuristic baselines

为RGB图像输入任务修改的启发式算法,编码了明显的抓取规则。

  1. 抓住补丁的中心。这一规则隐含在我们的基于补丁的抓取公式中。
  2. 掌握最小的物体宽度。这是通过目标分割和特征向量分析来实现的。
  3. 不要抓住太薄的物体,因为抓手没有完全关闭。

获得的最大准确率为 62.11 % 62.11\% 62.11%,明显低于本方法的精度。

D. Comparison with learning based baselines

我们在以下两个baseline中都使用了HoG特征,因为它保留了旋转方差,这对抓取很重要。

  1. k最近邻(kNN):对于测试集中的每一个元素,对训练集中属于同一角度类的元素进行基于kNN的分类。不同k值情况下的最大准确率为 69.4 % 69.4\% 69.4%
  2. 线性SVM:为18个角度箱中的每一个学习18个二进制支持向量机。通过验证选择正则化参数后,得到的最大准确率为 73.3 % 73.3\% 73.3%

E. Ablative analysis

Effects of data

添加更多的数据肯定有助于提高准确性。这种增长更为显著,直到大约20K个数据点,之后增长幅度很小。

Effects of pretraining

我们的实验表明,这种提升是显著的:从网络的准确率为 64.6 % 64.6\% 64.6%到预训练网络的 76.9 % 76.9\% 76.9%。这意味着从图像分类任务中学习到的视觉特征辅助了抓取对象的任务

Effects of multi-staged learning

经过一个阶段的加固后,测试精度从 76.9 % 76.9\% 76.9%提高到 79.3 % 79.3\% 79.3%。这显示了训练中硬负的效果,只有2K抓取比20K随机抓取提高更多。然而,在3个阶段后,准确率的提高饱和到 79.5 % 79.5\% 79.5%

Effects of data aggregation

我们注意到,在没有对数据进行聚合,并且仅使用当前阶段的数据来训练抓取模型的情况下,准确率从 76.9 % 76.9\% 76.9%下降到了 72.3 % 72.3\% 72.3%

F. Robot testing results

Re-ranking Grasps

因此,为了考虑不精度,我们对前10个抓取进行采样,并基于邻域分析对其进行重新排序:给定一个顶部补丁的实例 ( P t o p K i , θ t o p K i ) (P^{i}_{topK},\theta^{i}_{topK}) (PtopKi,θtopKi),我们进一步在 P t o p K i P^{i}_{topK} PtopKi的邻域采样10个补丁。邻域斑块的最佳角度得分的平均值被分配为由 ( P t o p K i , θ t o p K i ) (P^{i}_{topK},\theta^{i}_{topK}) (Pto<

相关文章