论文阅读:Towards Open-vocabulary Scene Graph Generation with Prompt-based Finetuning(ECCV22)

第一次看这种prompt的论文,虽然好久没写论文笔记了但是这篇有必要记录一下()

pipeline如下:在这里插入图片描述
先看左边的Pretraining VRM
这部分分为两个encoder,分别是上方的图像encoder(εi)和下方的文本encoder(εt)

1.图像encoder
图像encoder分为两个部分,分别是区域proposal特征提取器(Faster RCNN)和关系Transformer(RelTrans)

对于一对主客体对(s-o),使用关系Transformer对其编码,编码过程如下:

其中,rt是主客体对中左上角的区域,rb是右下角的区域,[r1,…rm]是与主客体对的union box有重叠的其他区域。区域来自Faster RCNN的输出。l是每个区域的位置embedding。经过关系Transformer的编码后,得到了[ht,h1,…hm,hb]的编码结果,我们需要的是ht和hb(即hs和ho)。

对于主客体对的union box,也需要用关系Transformer对其编码,编码过程跟上面的公式基本一样,只是将rt和rb换成了rso(即主客体的union box),编码结果为[hso,h1,…,hm],我们需要的是hso。然后对hso再执行下面的公式,得到hr。hr计算公式如下:

综上,hs,ho和hr是图像encoder的输出


2.文本encoder
这里应该用的是预训练好的文本encoder。使用的训练数据是VG里的dense caption,每张图像平均有50个caption,只是描述对应区域的,如下图左侧的框。

文本encoder也分为两个部分,先是embedding,再是文本Transformer,前面的embedding我觉得是下式的W2。下式的[w1,w2,…wk]是第i个caption的单词。l’是每个单词的位置embedding。[CLS]和[EOF]是可学习的特殊token,表示第一个单词和最后一个单词。ei是对第i个caption的编码结果。

综上,ei是文本encoder的输出


3.预训练的loss

loss分为三个部分:
(1)Lmrl,针对图像encoder里的关系Transformer,将输入的任一区域用特殊标记[mask]代替,通过对比损失使h[mask]尽可能和h[ground truth]接近,训练的是图像encoder
(2)Lmtl,针对文本encoder里的文本Transformer,使用的交叉熵,也是将任一token mask掉,训练的是文本encoder
(3)Lc,图像encoder的输出和文本encoder的输出尽可能接近,使用的余弦对比损失

至此,预训练结束。在后续的微调过程中,这两个encoder的参数不更新。


再看右边的基于prompt的微调
1.基于hard prompt的微调
模板如下,[CLS]表示第一个单词,[SEP]是句子和句子之间的分隔词。xs是主语的类别,xo是宾语的类别,[mask]是给谓语类别留出来的slot。

谓语的预测公式如下式所示:

其中,模板是Xpro,y是caption中的单词,用M()把它从caption的单词集合中映射到了谓语类别的集合中,ffill()是已经填充完slot的prompt。hr是关系Transformer里的,计算方式为hr=LN(hs,hso,ho)。θ是线性投影函数LN的参数,只有这部分参数更新。P()是得分函数,y_hat是置信度最高的谓语。

得分函数计算如下:

其中,ein( p )是p这个prompt经过文本Transformer的编码结果。这个公式是评估主客体的视觉区域主语-谓语-宾语这种形式的prompt的余弦相似度,然后做了一个softmax。q是所有填充完的prompt。

1.基于soft视觉-关系prompt的微调
模板如下:

其中,xs’,…,xo’来自下图的V2T decoder。注意下图的εi/εt和预训练VRM那里的εi/εt是一个东西。

谓语的预测公式如下式所示:

相比hard prompt,少了hr。θ‘是V2T decoder的参数,只有这部分参数更新。

得分函数P如下:

其中,wr是数据集的谓语类别经过文本encoder的embedding,e[mask]是prompt中[mask]这个token的文本encoder输出

------------------------------------------------一些碎碎念----------------------------------------------------
在做新实验了
想方设法证明加的都是有用的()
最近沉迷史莱姆的视频
但是史莱姆都好贵啊。
感觉我的实验就像做史莱姆一样
加一堆胶水 搅和搅和 面多了加水水多了加面(bushi
最后变成一块()

### 回答1: Faster R-CNN是一种基于区域建议网络(Region Proposal Networks,RPN)的物体检测算法,旨在实现实时物体检测。它通过预测每个区域是否含有物体来生成候选框,并使用卷积神经网络(CNN)来确定候选框中的物体类别。Faster R-CNN在提高检测精度的同时,也显著提高了检测速度。 ### 回答2: 在计算机视觉领域中,目标检测一直是热门研究的方向之一。近年来,基于深度学习的目标检测方法已经取得了显著的进展,并且在许多实际应用中得到了广泛的应用。其中,Faster R-CNN 是一种基于区域建议网络(Region Proposal Networks,RPN)的目标检测方法,在检测准确率和速度之间取得了很好的平衡,能够实现实时目标检测。 Faster R-CNN 的基本框架由两个模块组成:区域建议网络(RPN)和检测模块。RPN 主要负责生成候选目标框,而检测模块则利用这些候选框完成目标检测任务。具体来说,RPN 首先在原始图像上以多个尺度的滑动窗口为基础,使用卷积网络获取特征图。然后,在特征图上应用一个小型网络来预测每个位置是否存在目标,以及每个位置的目标边界框的坐标偏移量。最终,RPN 根据预测得分和位置偏移量来选择一部分具有潜在对象的区域,然后将这些区域作为候选框送入检测模块。 检测模块的主要任务是使用候选框来检测图像中的目标类别和位置。具体来说,该模块首先通过将每个候选框映射回原始图像并使用 RoI Pooling 算法来获取固定大小的特征向量。然后,使用全连接神经网络对这些特征向量进行分类和回归,以获得每个框的目标类别和精确位置。 相比于传统的目标检测方法,Faster R-CNN 具有以下优点:首先,通过使用 RPN 可以自动生成候选框,避免了手动设计和选择的过程;其次,通过共享卷积网络可以大大减少计算量,提高效率;最后,Faster R-CNN 在准确率和速度之间取得了很好的平衡,可以实现实时目标检测。 总之,Faster R-CNN 是一种高效、准确的目标检测方法,是深度学习计算机视觉领域中的重要应用之一。在未来,随着计算机视觉技术的进一步发展,Faster R-CNN 这类基于深度学习的目标检测方法将会得到更广泛的应用。 ### 回答3: Faster R-CNN是一种结合了深度学习和传统目标检测算法的新型目标检测方法,旨在提高目标检测速度和准确率。Faster R-CNN采用了Region Proposal Network(RPN)来生成候选区域,并通过R-CNN网络对候选区域进行分类和定位。 RPN是一种全卷积神经网络,用于在图像中生成潜在的候选区域。RPN通常在卷积特征图上滑动,对每个位置预测k个候选区域和其对应的置信度得分。这样,对于输入图像,在不同大小和宽高比的Anchor上预测候选框,可以在计算上更有效率。 R-CNN网络利用卷积特征图作为输入,对RPN生成的候选区域进行分类和精确定位。与以前的目标检测方法相比,Faster R-CNN使用了共享卷积特征,使得整个检测网络可以端到端地进行训练和优化,缩短了训练时间,同时也更便于理解和改进。 Faster R-CNN不仅具有较高的准确性,还具有较快的检测速度。在各种基准测试中,Faster R-CNN与其他目标检测算法相比,都取得了优异的性能表现。总之,Faster R-CNN将目标检测引入了一个新的阶段,为实时目标检测提供了一个良好的基础。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值