论文阅读笔记(visual relation相关)—Visual Relationship Detection with Language Priors

Visual Relationship Detection with Language Priors (ECCV 2016)

​ 视觉关系主要是关于图像中,对象与对象之间的各种相互作用。

​ 视觉关系检测包含检测图像中的对象,定位,并对于两者之间的predicate或者是interaction进行分类。

​ 但是由于对象的个数本身已经很多,关系的种类也非常多,那么如果按照<subject,predicate,object>这种形式进行关系预测,那么所具有的可能性的情况将会非常庞大,很难获得所有关系的训练样例,并且训练样例并不足够。

那么传统的对于视觉关系的检测就存在这样两个问题,①如果按照传统的relationship的分类方式,分类器的数量将会非常庞大 ( O ( N 2 K ) ) (O(N^2 K)) O(N2K)); ②由于一些relationship的出现并不频繁,常出现的可能仅有一些种类,那么就会出现relationships的long-tail分布问题,这种长尾分布问题就导致训练样本非常少,从而会造成分类器训练不充分这种问题的出现。

本文的主要工作是,区别于传统的关系检测,不再直接对于关系元组进行训练和预测,而是将其进行拆分。尽管许多relationships因为长尾问题并不常见,但是它们中的object和predicate却可以更频繁独立的出现。因此本文基于这种想法,分别独立训练object和predicate的模型,然后进行组合,最终进行relationship的预测。

​ 文章的另一个发现是,relationships之间是存在语义相关性的,比如person riding a horse和person riding an elephant在语义上式相似的,因为horse和elephant都是animal,即使模型没有见过很多person riding an elephant,也可以从person riding a horse进行推断。

除了提出新的模型以外,另一个贡献是提出了一个新的数据集,VRD

​ 这个数据库解决了传统的用于视觉关系检测的数据库的平均每个实体所涉及的关系不充分,关系类型少,谓词具有歧义性的问题,丰富了实体对之间的关系且关系的种类也变得丰富,可以是动词,空间关系的短语,介词,比较级,行为,介词短语等。

模型:

在这里插入图片描述

​ 训练时模型的输入是一组图像集,并且每一张图片都有关系的标注,给出每一个object的bounding box定位。

visual appearance module

​ 用这个模块主要学习object和predicate的appearance表示,然后将两者融合,联合预测关系。相比于视觉短语的 O ( n 2 k ) O(n^2k) O(n2k)的预测方法,作者的这种方法只需要 O ( n + k ) O(n+k) O(n+k)就可以,大大降低了分类器的数量。

​ 首先训练一个CNN(VGG)来进行分类对象实例。然后训练第二个CNN(VGG)来分类谓语predicate。使用的是两个对象实例objects的并集区域union。

对于关系的建模形式如下:
1562676597783

R<i,k,j>表示的是真实关系,i,j表示对象类别,对应的bounding box是O1 和O2,k是predicate的类别;

Θ \Theta Θ是参数
在这里插入图片描述
的集合形式,这两部分参数是要学习的,将CNN提取的特征转化为关系可能性的参数。

P i ( O 1 ) P_i(O_1) Pi(O1) P j ( O 2 ) P_j(O_2) Pj(O2)是第一个VGG网络的输出,分别表示的是O1和O2这两个边界框对应的object属于类别i和j的概率;

在这里插入图片描述
表示的是在已知O1和O2的前提下,两者之间存在关系k的概率。

因为两个objects和predicate都是预测的,不是确定的,所以建模是将三者的概率相乘。

最后的结果值越大,表示relationship这个三元组成立的概率就越大。

V()这个函数的作用就是预测object的种类,以及他们之间发生关系的概率,最后值越大,表明这两个object的类别发生关系的概率越大。

language module

​ 作者提出的,relationships之间是有语义相关性的,例如上面提到的大象和马,都是动物。

​ 单词向量嵌入能够很自然的将这些关系联系起来,因为它能够获取语言中的语义相似性。

​ 该模块是使用预训练的词向量将关系转换到向量空间,在这个空间中,相似的关系之间会距离比较近。正是由于这个词向量嵌入的空间,才可以优化关系预测的分数,甚至可以实现zero-shot的关系检测。

这个模型的功能就是将关系relationship映射到一个嵌入空间中,在这个空间中进行优化,使得相似的关系距离更近,相近的relationships映射成相似的数值,语义差距大的映射成不同的数值,同时,值越大,表示关系元组的成立概率就越高(从语义角度)。

​ 首先是通过一个映射函数来将关系映射到一个向量空间中:

​ Projection function:

1562677810602

​ 使用预训练的word2vec将标注中的关系里面的objects映射成为对应的向量表示(300 dim),然后将两个向量联结后,将其转换为关系向量空间,这个转换通过参数W来进行映射,参数W是要学习的。

​ ti和tj表示的是实体object对应的单词类别。

1562678206908
​ 其中第k行表示的是在我们总的K个predicate类别中的第k个对应的语义嵌入,是要学习的参数。

​ Training projection function:

​ 上面的映射函数完成了关系信息的嵌入,但是还需要对嵌入的关系进行优化,使得相似的关系距离更近。

​ 作者使用了一种启发式的方法来进行建模,希望是两个relationships之间的距离和他们对应的objects以及predicate之间的word2vec的距离成正比。

​ 为了实现这种聚类的作用,训练方法如下:

1562678513865

d ( R , R ′ ) d(R,R&#x27;) d(R,R)表示的是两个relationship的object和predicate在词嵌入空间的余弦距离之和。
在这里插入图片描述
​ 那么依据上面的训练公式,比值是常数,语义相近的relationships对应的 d ( R , R ′ ) d(R,R&#x27;) d(R,R)就小,因而分子的部分也就小,即使得语义相近的relationships经过映射函数f()后投影的距离就近。

​ 根据训练公式可以看到,这个式子比较关键的值在于等号右边的常数值,这个常数值不是人为设定的,而是通过学习后得到的。

在这里插入图片描述
​ 就是希望W能够使得R,R’的组合能够尽量的满足训练公式。但是就作者提出的数据集而言,这种关系的对已经数量非常庞大。因此为了减少计算量,只是随机采样了所有关系对中的500K个。然后按照这个式子进行计算,通过最小化方差,来实现更多的关系对能够满足训练公式。训练公式中的常数就是上面公式的均值。

likelihood of relationship

​ 按照上面的这些计算,已经实现了关系的嵌入,并且相似的relationship在映射后有相近的投影值。但是还没有实现投影值越大,成立概率越高这个目的。

​ 这个目标的实现是通过下面的公式来完成的:

1562682809178

​ 建模这种功能是通过强制认为在训练集中出现频率越高的relationship的类别,成立的概率就高,有更大的投影值。这个公式中的R和R’与前面的定义不太一样,R表示频率更高的关系,R‘表示出现频率低的关系。

​ 实现这种功能就是通过最小化上面函数,目的是使低频的投影值低,高频的高。

上面整个这个language 模块,就是预测两个物体之间发生的是什么样的关系,功能就是通过f()这个函数实现的,这个函数中的参数W是通过下面的这些式子定义,需要完成哪些功能,按照这种目标进行训练,得到f()函数的参数W,过程与视觉模块的参数theta相似,参数都是最后通过最小化损失函数,随机梯度下降进行参数更新得到的最后参数。

objective function

​ 前面我们已经表示出来了视觉外观模型和语言模型,这里就将两部分相结合,定义损失函数:
在这里插入图片描述

​ 使用这个损失函数,让模型能够选择更正确的关系。其中R’表示生成的关系。最小化损失函数,就是使生成的关系的概率更高。参数 Θ \Theta Θ和W分别是视觉外观模块和语言模块要学习的参数。

​ 最终的目标函数:
1562684465865

λ 1 \lambda_1 λ1 λ 2 \lambda_2 λ2是超参数。

测试阶段:

​ 对图片提取一系列的候选对象,然后通过之前学习的参数对每一个对象对来预测视觉关系,

在这里插入图片描述
训练过程总结:

在这里插入图片描述

思考:

论文利用了语言先验word embedding,对预测起到了很大的帮助,但是先验知识可能会使得关系预测倾向于频繁的关系,而忽略了视觉方面的信息。

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: PaddleDetection VisualDL 是一个可视化开发工具,用于在深度学习任务中分析和可视化模型的训练过程和结果。它提供了丰富的可视化功能,可以帮助用户更好地理解、分析和优化模型。 使用 PaddleDetection VisualDL,用户可以在训练过程中实时监测模型的训练效果。通过可视化工具,用户可以查看训练损失、准确率等指标的变化情况,并可以通过图表对比不同模型的训练情况。这可以帮助用户及时发现模型训练过程中的问题和错误,以便进行调整和优化。 此外,PaddleDetection VisualDL 还提供了可视化的模型结构、权重分布图等功能。通过可视化工具,用户可以直观地了解模型的结构和参数分布情况,帮助用户更好地理解并优化模型。 PaddleDetection VisualDL 还支持高级的可视化功能,如可视化过程特征图、可视化数据增强等。通过可视化过程特征图,用户可以深入理解模型的工作原理,进一步优化模型的性能。同时,通过可视化数据增强,用户可以直观地查看不同数据增强策略对模型性能的影响,有助于选择合适的数据增强方法。 总之,PaddleDetection VisualDL 是一个强大的可视化开发工具,可以帮助用户更好地理解和优化深度学习模型。通过可视化的方式,用户可以实时监测训练过程,分析模型的训练效果,并深入了解模型的结构和参数分布情况,从而优化模型的性能。 ### 回答2: PaddleDetection 是一个基于PaddlePaddle深度学习框架开发的目标检测工具包。它提供了丰富的预训练模型和数据增强方法,可用于各种目标检测任务。 使用 PaddleDetection 进行目标检测,首先需要准备训练和测试数据集。可以使用 PaddleDetection 提供的数据集,也可以自己创建数据集。然后,选择合适的预训练模型,如YOLOv3、Faster R-CNN等,并根据数据集进行模型训练。在训练过程中,可以根据需要设置训练参数和优化策略。 完成训练后,可以使用 PaddleDetection 进行目标检测的推理。通过加载已训练好的模型和测试图像,PaddleDetection 可以实时地检测输入图像中的目标,并输出检测结果。可以根据需要调整模型的阈值和置信度来控制检测的准确性和召回率。 PaddleDetection 还提供了模型优化和部署的相关工具。可以使用模型优化工具对训练好的模型进行优化,以提高推理速度和降低模型大小。然后,使用模型部署工具将优化后的模型部署到目标设备上,以实现在嵌入式设备、服务器等不同环境中进行目标检测。 总之,PaddleDetection 是一个功能强大的目标检测工具包,提供了训练、测试、推理、优化和部署等一系列的功能,可用于各种目标检测任务,并且具有易于使用的接口和灵活的扩展性。 ### 回答3: PaddleDetection是一个高效、灵活和可扩展的目标检测工具包,由百度公司开源。它基于PaddlePaddle深度学习框架,提供了丰富的目标检测模型和算法,具有较高的精度和速度。 使用PaddleDetection进行目标检测的步骤包括数据准备、模型选择、模型训练和模型预测。 首先,需要准备目标检测的数据集。PaddleDetection提供了数据集转换工具,可以将常见的目标检测数据集(如COCO、VOC)转换成PaddleDetection所需的格式。数据集中应包含训练集和验证集,并根据目标类别进行标注。 接下来,根据实际应用需求选择适合的目标检测模型。PaddleDetection提供了多种预训练模型,如Faster R-CNN、YOLOv3等。可以选择合适的模型作为基础模型,然后根据数据集进行微调或训练新模型。 进行模型训练时,需要配置训练参数,如学习率、批大小等。PaddleDetection提供了训练脚本,可以根据需求进行修改和配置。在训练过程中,可以使用分布式训练来加快训练速度,提高训练效果。 完成模型训练后,可以使用训练好的模型进行目标检测预测。PaddleDetection提供了预测脚本,可以加载训练好的模型,并对图像或视频进行目标检测。预测结果可以包括目标框、类别和得分等信息,可以根据需求进行后续处理和应用。 总而言之,PaddleDetection是一个强大的目标检测工具包,可以帮助用户快速构建和训练目标检测模型,并进行目标检测预测。使用PaddleDetection可以大大简化目标检测的开发流程,提高开发效率。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值