栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Python

论文阅读—Visual Semantic Reasoning for Image-Text Matching

Python 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

论文阅读—Visual Semantic Reasoning for Image-Text Matching

Visual Semantic Reasoning for Image-Text Matching
    • 介绍
    • 模型
      • 图像特征表示
      • 文本特征表示
      • 区域关系推理
      • 全局语义推理
      • 损失函数
    • 实验结果

论文发表时间:2019
论文作者:Kunpeng Li, Yulun Zhang, Kai Li, Yuanyuan Li and Yun Fu
论文地址:https://openaccess.thecvf.com
代码地址:https://github.com/KunpengLi1994/VSRN

介绍

    考虑到当前图文匹配缺少图像全局语义概念(就像文中标题一样),作者提出首先建立图像区域之间的联系,再使用图卷积网络进行推理,生成具有语义关系的特征。随后使用门和记忆机制对这些关系增强的特征进行全局予以推理,选择有区别的信息并逐步生成全局场景表示

模型

    整体结构如下图所示:

    分成几步:

  • 自下而上的注意力模型生成的图像区域及其特征
  • VSRN首先在这些图像区域之间建立联系,并使用图形卷积网络(GCN)进行推理,以生成具有语义关系信息的特征
  • 对这些关系增强的特征进行全局语义推理,以选择有区别的信息,并过滤掉不重要的信息,从而生成整个图像的最终表示
  • 对于文本标题部分,我们学习使用RNNs表示句子,最终通过图像-句子匹配和句子生成的联合优化对整个模型进行训练
图像特征表示

    自下而上的注意力模型Faster-RCNN

    V = { v 1 , . . . , v k } V={v_{1},...,v_{k}} V={v1​,...,vk​}, v i = W f f i + b f v_{i}=W_{f}f_{i}+b_{f} vi​=Wf​fi​+bf​

文本特征表示

    双向GRU网络

区域关系推理

    这一部分使用到了图卷积网络GCN

    原GCN中使用的邻接矩阵在本文中用亲和矩阵替代,计算公式为

    R ( v i , v j ) = φ ( v i ) T ϕ ( v j ) R(v_{i},v_{j})=varphi (v_{i})^{T}phi (v_{j}) R(vi​,vj​)=φ(vi​)Tϕ(vj​)
    其中 φ ( v i ) = W φ v i varphi (v_{i})=W_{varphi}v_{i} φ(vi​)=Wφ​vi​, ϕ ( v j ) = W ϕ v j phi (v_{j})=W_{phi}v_{j} ϕ(vj​)=Wϕ​vj​

    这样,对于一个图来说,其表示为 G r = ( V , E ) G_{r}=(V,E) Gr​=(V,E),V为检测出来的区域,E为亲和矩阵。这就意味着,如果图像区域之间的关系越紧密,相关度越高,那么它们之间的亲和矩阵的系数应该越大

    最后GCN的表示为: V ∗ = W r ( R V W g ) + V V^{*}=W_{r}(RVW_{g})+V V∗=Wr​(RVWg​)+V,其中 W g W_{g} Wg​为GCN的权重矩阵,维度为 D × D D×D D×D, W r W_{r} Wr​为残差结构的权重矩阵, R R R为亲和矩阵,大小为 k × k k×k k×k。最终输出为图像区域节点的关系增强表示 V ∗ = { v 1 ∗ , . . . , v k ∗ } V^{*}={v_{1}^{*},...,v_{k}^{*}} V∗={v1∗​,...,vk∗​}

全局语义推理

    这里作者说是使用了门和记忆机制,实际上也就将第二部得到的增强了的图像区域节点关系送入GRU网络中去

    其中更新门为: z i = σ z ( W z v i ∗ + U z m i − 1 + b z ) z_{i}=sigma _{z}(W_{z}v_{i}^{*}+U_{z}m_{i-1}+b_{z}) zi​=σz​(Wz​vi∗​+Uz​mi−1​+bz​)
    重置门: r i = σ r ( W r v i ∗ + U r m i − 1 + b r ) r_{i}=sigma _{r}(W_{r}v_{i}^{*}+U_{r}m_{i-1}+b_{r}) ri​=σr​(Wr​vi∗​+Ur​mi−1​+br​)
    新增的内容: m ~ i = σ m ( W m v i ∗ + U z ( r i ∘ m i − 1 ) + b m ) tilde{m}_{i}=sigma _{m}(W_{m}v_{i}^{*}+U_{z}(r_{i}circ m_{i-1})+b_{m}) m~i​=σm​(Wm​vi∗​+Uz​(ri​∘mi−1​)+bm​)
    最后整个场景的描述: m i = ( 1 − z i ) ∘ m i − 1 + z i ∘ m ~ i m_{i}=(1-z_{i})circ m_{i-1}+z_{i}circ tilde{m}_{i} mi​=(1−zi​)∘mi−1​+zi​∘m~i​

    如果对照着GRU网络的公式来看,是一模一样的

损失函数

    最终的损失函数为: L M = [ α − S ( I , C ) + S ( I , C ^ ) ] + + [ α − S ( I , C ) + S ( I ^ , C ) ] + L_{M}=[alpha -S(I,C)+S(I,hat{C})]_{+}+[alpha -S(I,C)+S(hat{I},C)]_{+} LM​=[α−S(I,C)+S(I,C^)]+​+[α−S(I,C)+S(I^,C)]+​
    这里其实就是三元组损失函数

实验结果

    MS-COCO 1k test

    MS-COCO 5k test

    Flicker30K

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/316485.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号