Paper : https://arxiv.org/abs/2006.00753

SMA 首先使用结构图表示去编码图像中的 object-object,object-text 和 text-text 之间的关系,然后使用一 个多模态图注意力网络去理解,最后,由全局-局部注意回答模块处理来自上述模块的输出,以迭代地产生包含OCR和固定词汇的答案。

Pipeline

SMA 模型对具有多种关系类型的图进行推理。

  1. Question Self-Attention Module 把问题分解为六个子组件,包括 objects, object-object relations, object-text relations, texts, text-text relations and text-object relations。
  2. 使用 objects/text 节点构建一个 role-aware graph。节点之间的连接由相对距离决定。使用 question-conditioned graph attention module 更新这个图。在 SMA 中,没有使用整个问题指导图更新,只是使用了确定类型的问题组件更新对应的图组件。例如,与问题相关的 object 只更新object 节点,与问题相关的 object-text 只更新 object-text 边。
  3. 使用 global-local attentional module 产生一个不定长的答案。

Question Self-Attention Module

使用问题序列生成自注意权重,用于生成以问题为条件的 object 和 text 特征;和 6 个分解后的问题特征,用来指导 question conditioned graph attention.

因为问题 QQQ 不仅包含 object 和 text 节点信息,也包含他们之间的 4 类关系 ( object-object, object-text, text-object, text-object ),此模块把问题分解为 6 个子组件。

给定 TTT 个单词 q={qt}t=1Tq = \{ q_t\}_{t=1}^Tq={qt​}t=1T​ 的问题 QQQ ,首先使用预训练的 BERT 把单词嵌入到特征序列 {et}t=1T\{e_t\}_{t=1}^T{et​}t=1T​ 中获得 {xtbert}t=1T\{\mathbf{x}_t^{bert}\}_{t=1}^T{xtbert​}t=1T​。然后使用 6 个单独的带有 softmax 层的双层 MLP 生成 6 组注意力权重,例如 {ato}t=1T,{atoo}t=1T,{atot}t=1T,{att}t=1T,{attt}t=1T,{atto}t=1T\{a_t^o\}_{t=1}^T,\{a_t^{oo}\}_{t=1}^T,\{a_t^{ot}\}_{t=1}^T,\{a_t^{t}\}_{t=1}^T,\{a_t^{tt}\}_{t=1}^T,\{a_t^{to}\}_{t=1}^T{ato​}t=1T​,{atoo​}t=1T​,{atot​}t=1T​,{att​}t=1T​,{attt​}t=1T​,{atto​}t=1T​ 。使用这些权重计算 6 个 {xtbert}t=1T\{\mathbf{x}_t^{bert}\}_{t=1}^T{xtbert​}t=1T​ 的注意力权重和:so,soo,sot,st,stt,stos^o, s^{oo}, s^{ot}, s^{t}, s^{tt}, s^{to}so,soo,sot,st,stt,sto,为分解后的问题表示 object 节点,object-object ( oo ) 边,object-text ( ot ) 边,text 节点,text-text ( tt ) 边缘和 text-object ( to ) 边缘。以 {ato}t=1T\{a_t^o\}_{t=1}^T{ato​}t=1T​ 和 sos^oso 作为例子:
ato=exp⁡(MLPobja(xtbert))∑i=1Texp⁡(MLPobja(xtbert)),t=1,...,T;so=∑t=1Tatoxtbert(1)a_t^o = \frac{\exp(MLP_{obj}^a(\mathbf{x}_t^{bert}))}{\sum_{i=1}^T \exp(MLP_{obj}^a(\mathbf{x}_t^{bert}))}, t=1,...,T; \;\;\; s^o = \sum_{t=1}^T a_t^o \mathbf{x}_t^{bert} \tag{1} ato​=∑i=1T​exp(MLPobja​(xtbert​))exp(MLPobja​(xtbert​))​,t=1,...,T;so=t=1∑T​ato​xtbert​(1)
使用分解后的问题特征指导 question conditioned graph attention 。

还学习了分解后的子组件的两组自注意力权重,即 {wo,woo,wot},{wt,wtt,wto}\{w^o, w^{oo}, w^{ot}\}, \{w^t, w^{tt}, w^{to}\}{wo,woo,wot},{wt,wtt,wto},其中每个 www 是一个标量。 它们计算如下:
wo,oo,ot=1Zobjexp⁡(Wwo,oo,ots),wt,tt,to=1Ztextexp⁡(Wwt,tt,tos),(2)w^{o,oo,ot} = \frac{1}{Z^{obj}} \exp(\mathbf{W}_{w}^{o,oo,ot} \mathbf{s}), w^{t,tt,to} = \frac{1}{Z^{text}} \exp(\mathbf{W}_{w}^{t,tt,to} \mathbf{s}), \tag{2} wo,oo,ot=Zobj1​exp(Wwo,oo,ot​s),wt,tt,to=Ztext1​exp(Wwt,tt,to​s),(2)
其中 s=1T∑t=1Txtbert,Zobj=exp⁡(Wwos)+exp⁡(Wwoos)+exp⁡(Wwots),Ztext=exp⁡(Wwts)+exp⁡(Wwtts)+exp⁡(Wwtos)\mathbf{s} = \frac{1}{T}\sum_{t=1}^T \mathbf{x}_t^{bert}, Z^{obj} = \exp(\mathbf{W}_w^o \mathbf{s})+ \exp(\mathbf{W}_w^{oo} \mathbf{s})+\exp(\mathbf{W}_w^{ot} \mathbf{s}), Z^{text} = \exp(\mathbf{W}_w^t \mathbf{s})+ \exp(\mathbf{W}_w^{tt} \mathbf{s})+\exp(\mathbf{W}_w^{to} \mathbf{s})s=T1​∑t=1T​xtbert​,Zobj=exp(Wwo​s)+exp(Wwoo​s)+exp(Wwot​s),Ztext=exp(Wwt​s)+exp(Wwtt​s)+exp(Wwto​s) 在某种程度上,这些权重扮演着先验概率的角色,因为它们只能通过问题来计算。 两组问题自注意力权重将分别用于生成以问题为条件的 object 和 text 特征 gobj\mathbf{g}_{obj}gobj​ 和 gtext\mathbf{g}_{text}gtext​

Question Conditioned Graph Attention Module

生成并理解一个 objects 和 texts 的异构图

Role-aware Heterogeneous Graph Construction

‘Role’ 表示节点的类型。首先构建一个节点为 objects 和 texts 的异构图,边表示在两个特殊节点之间的关系,每一个节点可以连接 5 个 object 节点和 5 个 text 节点,边可以分为四种类型表示不同的 role : object-object, object-text, text-text, text-object 。以构建 object-object 边为例,对于 object 节点 oio_ioi​ ,对剩下的 object 根据它们到 oio_ioi​ 的空间距离排序,把排名前 5 的 object 节点作为邻居 Nioo\mathcal{N}_i^{oo}Nioo​。根据它们的相对位置关系建立两个节点的边的关系。oio_ioi​ 的位置表示为 [xic,yic,wi,hi][x_i^c, y_i^c, w_i, h_i][xic​,yic​,wi​,hi​] (中心坐标,高,宽),另一个节点 ojo_joj​ 的位置表示为 [xitl,yitl,xjbr,yjbr,wj,hj][x_i^{tl}, y_i^{tl}, x_j^{br}, y_j^{br}, w_j, h_j][xitl​,yitl​,xjbr​,yjbr​,wj​,hj​] ( 左上角坐标,右下角坐标,宽,高 ),然后它们的边关系为 eij=[xjtl−xicwi,yjtl−yichi,xjbr−xicwi,yjbr−xichi,wj⋅hjwi⋅hi]\mathbf{e}_{ij} = [\frac{x_j^{tl} - x_i^c}{w_i}, \frac{y_j^{tl} - y_i^c}{h_i}, \frac{x_j^{br} - x_i^c}{w_i}, \frac{y_j^{br} - x_i^c}{h_i}, \frac{w_j \cdot h_j}{w_i \cdot h_i}]eij​=[wi​xjtl​−xic​​,hi​yjtl​−yic​​,wi​xjbr​−xic​​,hi​yjbr​−xic​​,wi​⋅hi​wj​⋅hj​​]

Question Conditioned Graph Attention

使用分解的问题特征 s\mathbf{s}s 来理解 role-aware graph 。把当做一个注意力机制。用不同的问题特征根据它们的角色 ( role ) 更新图的不同部分。例如,使用与 object 相关的问题特征 so\mathbf{s}^oso 指导 object 节点的注意力权重,使用 sto\mathbf{s}^{to}sto 指导 text-object 边的注意力权重。分别计算图中 6 个角色的注意力权重:object 节点 ( po\mathbf{p}^opo ),text 节点 ( pt\mathbf{p}^tpt ),object-object 边 ( poo\mathbf{p}^{oo}poo ),object-text 边 ( pot\mathbf{p}^{ot}pot ),text-text 边 ( ptt\mathbf{p}^{tt}ptt ),text-object 边 ( pto\mathbf{p}^{to}pto ),可以写成
pm=Attm({xobj},{xtext},{eij},sm)(3)\mathbf{p}^m = \text{Att}_m (\{\mathbf{x}^{obj}\}, \{\mathbf{x}^{text}\}, \{\mathbf{e}^{ij}\}, \mathbf{s}^m) \tag{3} pm=Attm​({xobj},{xtext},{eij},sm)(3)
Attm\text{Att}_mAttm​ 是使用问题特征和图中特殊的节点/边计算注意力权重的注意力机制,m={o,oo,ot,t,tt,to}m = \{o,oo,ot,t,tt,to\}m={o,oo,ot,t,tt,to}。

  1. object 节点注意力权重 object 表示为 2048 维的外形特征 {xfr,io}i=1N\{\mathbf{x}_{fr,i}^o\}_{i=1}^N{xfr,io​}i=1N​ 和相对位置坐标 {xbbox,io}i=1N\{\mathbf{x}_{bbox,i}^o\}_{i=1}^N{xbbox,io​}i=1N​ ,在 so\mathbf{s}^oso 的指导下计算 object 节点的注意力权重 :
    {x^iobj=LN(Wfroxfr,io)+LN(Wboxbbox,io),pio′=wo⊤[ReLU(Wsoso)∘ReLU(Wxox^iobj)],pio=exp⁡(pio′)/∑j=1Nexp⁡(pjo′),i=1,...,N,(4)\begin{cases} & \hat{\mathbf{x}}_i^{obj} = \text{LN}(\mathbf{W}_{fr}^o \mathbf{x}_{fr,i}^o) + \text{LN}(\mathbf{W}_{b}^o \mathbf{x}_{bbox,i}^o), \\ & p_i^{o'} = \mathbf{w}_o^{\top}[\text{ReLU}(\mathbf{W}_s^o \mathbf{s}^o) \circ \text{ReLU}(\mathbf{W}_x^o \hat{\mathbf{x}}^{obj}_i)], \\ & p_i^o = \exp(p_i^{o'}) / \sum_{j=1}^N \exp(p_j^{o'}), i =1,...,N, \end{cases} \tag{4} ⎩⎪⎨⎪⎧​​x^iobj​=LN(Wfro​xfr,io​)+LN(Wbo​xbbox,io​),pio′​=wo⊤​[ReLU(Wso​so)∘ReLU(Wxo​x^iobj​)],pio​=exp(pio′​)/∑j=1N​exp(pjo′​),i=1,...,N,​(4)
    其中 LN(⋅)\text{LN}(\cdot)LN(⋅) 是层正则化,W∗∗,w∗\mathbf{W}_*^*, \mathbf{w}_*W∗∗​,w∗​ 是要学习的线性转换参数。最后,获得 object 节点的注意力权重 po={pio}i=1N\mathbf{p}^o = \{p_i^o\}_{i=1}^Npo={pio​}i=1N​

  2. text 节点注意力权重 与 M4C 相似,使用多个特征的结合丰富 OCR 的表示。300 维的 FastText 特征 {xft,it}i=N+1N+M\{\mathbf{x}_{ft,i}^t\}_{i=N+1}^{N+M}{xft,it​}i=N+1N+M​,2048 维的外形特征 {xfr,it}i=N+1N+M\{\mathbf{x}_{fr,i}^t\}_{i=N+1}^{N+M}{xfr,it​}i=N+1N+M​ ,604 维的 PHOC 特征 {xp,it}i=N+1N+M\{\mathbf{x}_{p,i}^t\}_{i=N+1}^{N+M}{xp,it​}i=N+1N+M​ ,4 维的边框特征 {xbbox,it}i=N+1N+M\{\mathbf{x}_{bbox,i}^t\}_{i=N+1}^{N+M}{xbbox,it​}i=N+1N+M​ ,除此之外还有 512 维的 CNN 特征 {xtr,it}i=N+1N+M\{\mathbf{x}_{tr,i}^t\}_{i=N+1}^{N+M}{xtr,it​}i=N+1N+M​ ( 来自于 RecogCNN ) 。 在 st\mathbf{s}^tst 的指导下计算 text 节点的注意力权重 :
    {x^itext=LN(Wfttxft,it+Wfrtxfr,it+Wptxp,it+Wtrtxtr,it)+LN(Wbtxbbox,it),pit′=wt⊤[ReLU(Wstst)∘ReLU(Wxtx^itext)],pit=exp⁡(pit′)/∑j=N+1N+Mexp⁡(pjt′),i=N+1,...,N+M,(5)\begin{cases}& \hat{\mathbf{x}}_i^{text} = \text{LN}(\mathbf{W}_{ft}^t \mathbf{x}_{ft,i}^t + \mathbf{W}_{fr}^t \mathbf{x}_{fr,i}^t + \mathbf{W}_{p}^t \mathbf{x}_{p,i}^t + \mathbf{W}_{tr}^t \mathbf{x}_{tr,i}^t) + \text{LN}(\mathbf{W}_{b}^t \mathbf{x}_{bbox,i}^t), \\& p_i^{t'} = \mathbf{w}_t^{\top}[\text{ReLU}(\mathbf{W}_s^t \mathbf{s}^t) \circ \text{ReLU}(\mathbf{W}_x^t \hat{\mathbf{x}}^{text}_i)], \\& p_i^t = \exp(p_i^{t'}) / \sum_{j=N+1}^{N+M} \exp(p_j^{t'}), i =N+1,...,N+M,\end{cases} \tag{5} ⎩⎪⎨⎪⎧​​x^itext​=LN(Wftt​xft,it​+Wfrt​xfr,it​+Wpt​xp,it​+Wtrt​xtr,it​)+LN(Wbt​xbbox,it​),pit′​=wt⊤​[ReLU(Wst​st)∘ReLU(Wxt​x^itext​)],pit​=exp(pit′​)/∑j=N+1N+M​exp(pjt′​),i=N+1,...,N+M,​(5)

    最后,获得 text 节点的注意力权重 pt={pit}i=N=1N+M\mathbf{p}^t = \{p_i^t\}_{i=N=1}^{N+M}pt={pit​}i=N=1N+M​

  3. 边的注意力权重 边的注意力权重需要考虑两个节点之间的关系,以计算 object-object 的注意力权重 poo\mathbf{p}^{oo}poo 为例,其他的类似。主要有两步,首先,计算所有连接节点 oio_ioi​ 的边的注意力权重 qioo={qijoo}j∈Nioo\mathbf{q}_i^{oo} = \{q_{ij}^{oo}\}_{j \in \mathcal{N}_i^{oo}}qioo​={qijoo​}j∈Nioo​​
    {x^ijoo=foo([eij;x^iobj]),qijoo′=woo⊤[ReLU(Wsoosoo)∘ReLU(Wxoox^ijoo)],qijoo=exp⁡(qijoo′)/∑k∈Niooexp⁡(qikoo′),j∈Nioo,(6)\begin{cases}& \hat{\mathbf{x}}_{ij}^{oo} = \text{f}^{oo} ([\mathbf{e}_{ij} ; \hat{\mathbf{x}}_i^{obj}]), \\& q_{ij}^{oo'} = \mathbf{w}_{oo}^{\top}[\text{ReLU}(\mathbf{W}_s^{oo} \mathbf{s}^{oo}) \circ \text{ReLU}(\mathbf{W}_x^{oo} \hat{\mathbf{x}}^{oo}_{ij})], \\& q_{ij}^{oo} = \exp(q_{ij}^{oo'}) / \sum_{k \in \mathcal{N}_i^{oo}} \exp(q_{ik}^{oo'}), j \in \mathcal{N}_i^{oo},\end{cases} \tag{6} ⎩⎪⎨⎪⎧​​x^ijoo​=foo([eij​;x^iobj​]),qijoo′​=woo⊤​[ReLU(Wsoo​soo)∘ReLU(Wxoo​x^ijoo​)],qijoo​=exp(qijoo′​)/∑k∈Nioo​​exp(qikoo′​),j∈Nioo​,​(6)
    foo\text{f}^{oo}foo 是一个 MLP,编码初始化 oooooo 边特征 ( 由关系特征 eij\mathbf{e}_{ij}eij​ 和连接节点特征 x^iobj\hat{\mathbf{x}}_i^{obj}x^iobj​ 拼接 ),边的注意力权重 qioo\mathbf{q}_{i}^{oo}qioo​ 。然后,计算所有 object 节点的 oooooo 边的注意力权重
    {x~ioo=∑j∈Niooqijoox^ijoo,pioo′=woo′⊤[ReLU(Wsoo′soo)∘ReLU(Wxoo′x~ioo)],pioo=exp⁡(pioo′)/∑j=1Nexp⁡(pjoo′),i=1,...,N,(7)\begin{cases}& \tilde{\mathbf{x}}_{i}^{oo} = \sum_{j \in \mathcal{N}_{i}^{oo}} q_{ij}^{oo} \hat{\mathbf{x}}_{ij}^{oo}, \\& p_{i}^{oo'} = \mathbf{w}_{oo'}^{\top}[\text{ReLU}(\mathbf{W}_s^{oo'} \mathbf{s}^{oo}) \circ \text{ReLU}(\mathbf{W}_x^{oo'} \tilde{\mathbf{x}}^{oo}_{i})], \\& p_{i}^{oo} = \exp(p_{i}^{oo'}) / \sum_{j=1}^N \exp(p_{j}^{oo'}), i = 1, ...,N,\end{cases} \tag{7} ⎩⎪⎨⎪⎧​​x~ioo​=∑j∈Nioo​​qijoo​x^ijoo​,pioo′​=woo′⊤​[ReLU(Wsoo′​soo)∘ReLU(Wxoo′​x~ioo​)],pioo​=exp(pioo′​)/∑j=1N​exp(pjoo′​),i=1,...,N,​(7)
    x~ijoo\tilde{\mathbf{x}}_{ij}^{oo}x~ijoo​ 是以问题为条件的节点oio_ioi​ 的 oooooo 边的特征。使用相同的方法计算 pot,ptt,pto\mathbf{p}^{ot}, \mathbf{p}^{tt}, \mathbf{p}^{to}pot,ptt,pto 。

Weighting Module

每个 object 和 text 节点通过图注意力模块输出三个注意力权重。每个 object 节点 oio_ioi​ ,都有 pio,pioo,pitop_i^o, p_i^{oo}, p_i^{to}pio​,pioo​,pito​ ;每个 text 节点 tit_iti​ ,都有 pit,pitt,pitop_i^t, p_i^{tt}, p_i^{to}pit​,pitt​,pito​ 。使用问题自注意力权重和它们结合,每一个 object 节点,最终的权重分数通过三部分的权重和计算:
αio=wopio+woooioo+wotpiot,i=1,...,N,(8)\alpha_i^o = w^o p_i^o + w^{oo} o_i^{oo} + w^{ot} p_i^{ot} , i=1,...,N, \tag{8} αio​=wopio​+woooioo​+wotpiot​,i=1,...,N,(8)
每一个 text 节点最终的权重:
αit=wtpit+wttoitt+wtopito,i=1,...,N,(9)\alpha_i^t = w^t p_i^t + w^{tt} o_i^{tt} + w^{to} p_i^{to} , i=1,...,N, \tag{9} αit​=wtpit​+wttoitt​+wtopito​,i=1,...,N,(9)
注意 ∑i=1Nαio=1\sum_{i=1}^N \alpha_i^o = 1∑i=1N​αio​=1,因为 wo+woo+wot=1,∑i=1Npio=1,∑i=1Npioo=1,∑i=1Npiot=1w^o + w^{oo} + w^{ot} = 1, \sum_{i=1}^N p_i^o =1, \sum_{i=1}^N p_i^{oo} =1, \sum_{i=1}^N p_i^{ot} =1wo+woo+wot=1,∑i=1N​pio​=1,∑i=1N​pioo​=1,∑i=1N​piot​=1 。也有 ∑i=N+1N+Mαit=1\sum_{i=N+1}^{N+M} \alpha_i^t = 1∑i=N+1N+M​αit​=1 。权重 {αio}i=1N\{\alpha_i^o\}_{i=1}^N{αio​}i=1N​ 和 {αit}i=N+1N+1\{\alpha_i^t\}_{i=N+1}^{N+1}{αit​}i=N+1N+1​ 计算了 object/text 节点和问题的相关性,用来生成以问题为条件的 object 和 text 特征:
gobj=∑i=1Nαio⋅x^iobj,gtext=∑i=N+1N+Mαit⋅x^itext(10)\mathbf{g}_{obj} = \sum_{i=1}^N \alpha_i^o \cdot \hat{\mathbf{x}}_i^{obj}, \;\;\;\;\ \mathbf{g}_{text} = \sum_{i=N+1}^{N+M} \alpha_i^t \cdot \hat{\mathbf{x}}_i^{text} \tag{10} gobj​=i=1∑N​αio​⋅x^iobj​, gtext​=i=N+1∑N+M​αit​⋅x^itext​(10)

Global-Local Attentional Answering Module

全局图特征 gobj\mathbf{g}_{obj}gobj​ 和 gtext\mathbf{g}_{text}gtext​ 不是直接和全局问题特征 so,soo,sot,st,stt,sto\mathbf{s}^{o}, \mathbf{s}^{oo}, \mathbf{s}^{ot}, \mathbf{s}^{t}, \mathbf{s}^{tt}, \mathbf{s}^{to}so,soo,sot,st,stt,sto 融合,而是通过和局部的 OCR 节点嵌入输入到 transformer 的答案模块中进行更新。与 object 相关的和与 text 相关的问题特征拼接在一起:
s‾o=[so;soo,sot],s‾t=[st,stt,sto](11)\overline{\mathbf{s}}^o = [s^o; s^{oo}, s^{ot}], \;\; \overline{\mathbf{s}}^t = [s^t,s^{tt}, s^{to}] \tag{11} so=[so;soo,sot],st=[st,stt,sto](11)
s‾o,s‾t,gobj,gtext\overline{\mathbf{s}}^o, \overline{\mathbf{s}}^t, \mathbf{g}_{obj}, \mathbf{g}_{text}so,st,gobj​,gtext​ 是一起输入到 transformer 层,更新为 s~o,s~t,g~obj,g~text\tilde{\mathbf{s}}^o, \tilde{\mathbf{s}}^t, \tilde{\mathbf{g}}_{obj}, \tilde{\mathbf{g}}_{text}s~o,s~t,g~​obj​,g~​text​ 。

然后,我们将更新的特征 g~obj\tilde{\mathbf{g}}_{obj}g~​obj​ 和 g~text\tilde{\mathbf{g}}_{text}g~​text​ 与它们各自的问题表示形式融合在一起,如下所示
gOBJ=g~obj∘s~o,gTEXT=g~text∘s~t(12)\mathbf{g}_{OBJ} = \tilde{\mathbf{g}}_{obj} \circ \tilde{\mathbf{s}}^o, \;\;\; \mathbf{g}_{TEXT} = \tilde{\mathbf{g}}_{text} \circ \tilde{\mathbf{s}}^t \tag{12} gOBJ​=g~​obj​∘s~o,gTEXT​=g~​text​∘s~t(12)
在第一步预测答案概率 pans1\mathbf{p}_{ans}^1pans1​
pans1=fpred(Wg[gOBJ;gTEXT]),(13)\mathbf{p}_{ans}^1 = \text{f}_{pred} (\mathbf{W}_g[\mathbf{g}_{OBJ}; \mathbf{g}_{TEXT}]), \tag{13} pans1​=fpred​(Wg​[gOBJ​;gTEXT​]),(13)
fpred\text{f}_{pred}fpred​ 是一个两分支分数函数,它解决了 TextVQA 任务中答案可能是动态文本在不同问题中发生变化的难题。答案空间是两部分的结合:一个包含 5000 个词的固定词典和从每个特定的图像中提取的动态 OOV OCR tokens。两个分支计算各自的分数。一个分支是一个简单的线性层,把输入映射到 5000 维的分数向量,另一个分支计算输入和每一个更新的 OCR 嵌入的点积。然后两个分支的分数拼接在一起,选择最高的分数作为结果。

在第一步,融合特征的拼接作为输入,在剩下的步骤,使用前一个更新的输出作为输入迭代解码:
panst=fpred(gdec),t=2,...,T,(14)\mathbf{p}_{ans}^t = \text{f}_{pred} (\mathbf{g}_{dec}), t=2,...,T, \tag{14} panst​=fpred​(gdec​),t=2,...,T,(14)
其中 gdec\mathbf{g}_{dec}gdec​ 是以前一个输出 gdec\mathbf{g}^{dec}gdec 作为输入的答案模块的输出。如果前一个输出来自于 OCR,则 gdec\mathbf{g}^{dec}gdec 是 OCR 嵌入,然后输入到答案模块。否则,通用词汇表的相应线性层权重将变为 gdec\mathbf{g}^{dec}gdec 。我们还将位置嵌入和类型嵌入添加到解码输入中,其中类型嵌入表示此输入是固定词汇还是OCR token。

Experiments

在 TextVQA 上的结果

使用 GT OCR 在 TextVQA 上的结果

在 ST-VQA 上的结果

SMA :Structured Multimodal Attentions for TextVQA --- 论文阅读笔记相关推荐

  1. SA-M4C : Spatially Aware Multimodal Transformers for TextVQA --- 论文阅读笔记

    Paper : https://arxiv.org/abs/2007.12146 [ECCV2020] spatially aware self-attention layer : 使用空间图定义每一 ...

  2. Dynamic Head Unifying Object Detection Heads with Attentions 论文阅读笔记

    Dynamic Head Unifying Object Detection Heads with Attentions论文阅读笔记 这是微软在CVPR2021发表的文章,在coco数据集上取得了目前 ...

  3. 论文阅读笔记(8):Structured Sparse Subspace Clustering: A Joint Affinity Learning and Subspace Clustering

    论文阅读笔记(8):Structured Sparse Subspace Clustering: A Joint Affinity Learning and Subspace Clustering F ...

  4. Dynamic MDETR: A Dynamic Multimodal Transformer Decoder for Visual Grounding 论文阅读笔记

    Dynamic MDETR: A Dynamic Multimodal Transformer Decoder for Visual Grounding 论文阅读笔记 一.Abstract 二.引言 ...

  5. [论文阅读笔记15]Recognizing Complex Entity Mentions:A Review and Future Directions

    一,题目 Recognizing Complex Entity Mentions:A Review and Future Directions 识别复杂实体mentions:回顾与未来方向 Dai X ...

  6. [论文阅读笔记53]2021深度神经方法的关系三元组抽取综述

    1. 题目 Deep Neural Approaches to Relation Triplets Extraction: A Comprehensive Survey Tapas Nayak†, N ...

  7. 全卷积(FCN)论文阅读笔记:Fully Convolutional Networks for Semantic Segmentation

    论文阅读笔记:Fully Convolutional Networks forSemantic Segmentation 这是CVPR 2015拿到best paper候选的论文. 论文下载地址:Fu ...

  8. DnCNN论文阅读笔记【MATLAB】

    DnCNN论文阅读笔记 论文信息: 论文代码:https://github.com/cszn/DnCNN Abstract 提出网络:DnCNNs 关键技术: Residual learning an ...

  9. Learning Multiview 3D point Cloud Registration论文阅读笔记

    Learning multiview 3D point cloud registration Abstract 提出了一种全新的,端到端的,可学习的多视角三维点云配准算法. 多视角配准往往需要两个阶段 ...

  10. FCGF论文阅读笔记

    FCGF论文阅读笔记 0. Abstract 从三维点云或者扫描帧中提取出几何特征是许多任务例如配准,场景重建等的第一步.现有的领先的方法都是将low-level的特征作为输入,或者在有限的感受野上提 ...

最新文章

  1. 茫茫IT,我们努力,在努力。
  2. 二维稳态热传导 代码实现_博世壁挂炉发生故障代码及处理办法
  3. php强大的函数,PHP中一些功能强大却很少使用的函数
  4. python pyquery安装_win7下python安装pyquery
  5. nginx 判断手机端跳转_Nginx系列:配置跳转的常用方式
  6. java二级为什么没题库_为什么刷了那么多二级java试题,却依然提高不了分数?...
  7. python截图保存到内存卡_没有长截图功能,一招即可截下来!
  8. java隐式参数的作用_隐式参数_scala教程_田守枝Java技术博客
  9. 虚幻4 ai蓝图_高效AI自我监督学习的迷人蓝图
  10. 淘宝手淘搜索怎么做?大神导航,一个神奇的网站,从此开启大神之路!
  11. 番外篇--1. 简历优化
  12. u-boot-1.1.6源码分析
  13. Visual studio 无法连接网络解决方法
  14. 关于js中的类式继承
  15. 甲醇合成技术的研究进展
  16. php scada,科远风场SCADA系统的应用
  17. Platt scaling
  18. 统计学习方法 学习笔记(1)统计学习方法及监督学习理论
  19. 均州古城(走遍中国08.10.27)
  20. 微商利用淘宝评价怎么引流?如何利用淘宝买低价产品刷评价引流?

热门文章

  1. 数据库安全性控制及控制流程和常用方法
  2. JVM——垃圾回收算法
  3. [乐意黎原创] 2018年度CSDN博客排名前一百五十强
  4. 论如何用Python让你的同桌骂人...
  5. 百度竞价账户关键词分类
  6. protobuf3使用,golang语言实现
  7. python手写板_Python3使用PyQt5制作简单的画板/手写板的代码详解
  8. vue文件在服务器上乱码,解决vue-pdf查看pdf文件及打印乱码的问题
  9. 关于vcard通讯录格式解析-微信二维码解析
  10. Windows server 2016 Windows 10 离线下载与离线安装补丁教程 支持批量安装(其他win系统类似)