论文阅读 (28):Loss-Based Attention for Deep Multiple Instance Learning (2020)

时间:2025-02-19 08:06:36
  假设一: 包中至少包含两类实例,即 y i , t = 0 y_{i,t}=0 yi,t=0和一个其他类别的实例 y i , t ∈ { 1 , … , K − 1 } y_{i,t}\in\{1,\dots,K-1\} yi,t{1,,K1},则:
y i = max ⁡ 1 ≤ t ≤ n i y i , t . (4) \tag{4} y_i = \max_{1\leq t\leq n_i}y_{i,t}. yi=1tnimaxyi,t.(4)  假设二: 包中的每一个实例拥有相同的意义,且一个 L L L层带有平均操作网络可以获取实例的低维表示。
  给定一个实例 x i , t \mathbf{x}_{i,t} xi,t,令 h i , t l ( 1 ≤ l ≤ L − 1 ) h_{i,t}^l(1\leq l\leq L-1) hi,tl(1lL1)表示第 l l l层的特征表示。例如 h i , t L − 1 = g ( h i , t L − 2 ) ∈ R d \mathbf{h}_{i,t}^{L-1}=g(\mathbf{h}_{i,t}^{L-2})\in\mathbb{R}^d hi,tL1=g(hi,tL2)Rd是第 L − 1 L-1 L1层的输出和第 L L L层的输入,其中 g ( ⋅ ) g(\cdot) g()是激活函数, h i , 2 L − 2 \mathbf{h}_{i,2}^{L-2} hi,2L2 L − 1 L-1 L1层的输入。
  假设三: W ∈ R d × K \mathbf{W}\in\mathbb{R}^{d\times K} WRd×K b ∈ R K \mathbf{b}\in\mathbb{R}^K bRK分别 L L L层表示权重矩阵和偏置向量,则神经网络的最终输出为 z i = h i L − 1 W + b \mathbf{z}_i = \mathbf{h}_i^{L-1}\mathbf{W}+\mathbf{b} zi=hiL1W+b,其中 h i L − 1 = 1 n i ∑ t = 1 n i h i , t L − 1 \mathbf{h}_i^{L-1}=\frac{1}{n_i}\sum_{t=1}^{n_i}\mathbf{h}_{i,t}^{L-1} hiL1=ni1t=1nihi,tL1,以及 z i ∈ R K \mathbf{z}_i\in\mathbb{R}^K ziRK表示包的类别预测向量。
  当每个包中的实例的重要性不同时,我们引入注意力机制如下:
α i , j = ∑ c = 0 K − 1 exp ⁡ ( h i , j L − 1 w c + b c ) ∑ t = 1 n i ∑ c = 0 K − 1 exp ⁡ ( h i , t L − 1 w c + b c ) h i , j L − 1 ← α i , j h i , j L − 1 h i L − 1 = ∑ t = 1 n i h i , t L − 1 , (5) \tag{5} \begin{array}{r} \alpha_{i, j}=\frac{\sum_{c=0}^{K-1} \exp \left(\mathbf{h}_{i, j}^{L-1} \mathbf{w}_{c}+b_{c}\right)}{\sum_{t=1}^{n_{i}} \sum_{c=0}^{K-1} \exp \left(\mathbf{h}_{i, t}^{L-1} \mathbf{w}_{c}+b_{c}\right)} \\ \\ \mathbf{h}_{i, j}^{L-1} \leftarrow \alpha_{i, j} \mathbf{h}_{i, j}^{L-1} \\ \\ \mathbf{h}_{i}^{L-1}=\sum_{t=1}^{n_{i}} \mathbf{h}_{i, t}^{L-1}, \end{array} αi,j=t=1nic=0K1exp(hi,tL1wc+bc)c=0K1exp(hi,jL1wc+bc)hi,jL1αi,jhi,jL1hiL1=t=1nihi,tL1,(5)其中 α i , j \alpha_{i,j} αi,j表示实例 x i , j \mathbf{x}_{i,j} xi,j的权重, w c ∈ R d \mathbf{w}_c\in\mathbb{R}^d wcRd是是 W \mathbf{W} W的第 c c c列, b c b_c bc b \mathbf{b} b的第 c c c个值。
  最终的损失函数如下:
L = L 1 + L 2 = − log ⁡ exp ⁡ ( h i L − 1 w k + b k ) ∑ c = 0 K − 1 exp ⁡ ( h i L − 1 w c + b c ) − λ ∑ t = 1 n i α i , t log ⁡ exp ⁡ ( h i , t L − 1 w k + b k ) ∑ c = 0 K − 1 exp ⁡ ( h i , t L − 1 w c + b c ) , (6) \tag{6} \begin{gathered} L=L_{1}+L_{2} \\ =-\log \frac{\exp \left(\mathbf{h}_{i}^{L-1} \mathbf{w}_{k}+b_{k}\right)}{\sum_{c=0}^{K-1} \exp \left(\mathbf{h}_{i}^{L-1} \mathbf{w}_{c}+b_{c}\right)} \\ -\lambda \sum_{t=1}^{n_{i}} \alpha_{i, t} \log \frac{\exp \left(\mathbf{h}_{i, t}^{L-1} \mathbf{w}_{k}+b_{k}\right)}{\sum_{c=0}^{K-1} \exp \left(\mathbf{h}_{i, t}^{L-1} \mathbf{w}_{c}+b_{c}\right)}, \end{gathered} L=L1+L2=logc=0K1exp(hiL1wc+bc)exp(hiL1wk+bk)λt=1niαi,tlogc=0K1exp(hi,tL1wc+bc)exp(hi,tL1wk+bk),(6)其中 L 1 L_1 L1是包损失, L 2 L_2 L2是融合的实例损失,作为正则项, λ > 0 \lambda>0 λ>0则用于平衡两个优化项。需要说明的是,由于 z i = h i L − 1 W + b \mathbf{z}_i=\mathbf{h}_i^{L-1}\mathbf{W}+\mathbf{b} zi=hiL1W+b h i L − 1 = ∑ t = 1 n i h i , t L − 1 \mathbf{h}_i^{L-1}=\sum_{t=1}^{n_i}\mathbf{h}_{i,t}^{L-1} hiL1=t=1nihi,tL1,故 z i , k = h i L − 1 w k + b k z_{i,k}=\mathbf{h}_i^{L-1}\mathbf{w}_k+b_k zi,k=hiL1wk+bk z i , t , k = h i , t L − 1 w k + b k z_{i,t,k}=\mathbf{h}_{i,t}^{L-1}\mathbf{w}_k+b_k zi,t,k=hi,tL1wk+bk z i , k = ∑ t = 1 n i z i , t , k z_{i,k}=\sum_{t=1}^{n_i}z_{i,t,k} zi,k=t=1nizi,t,k,其中 t ∈ [ 1.. n i ] t\in[1..n_i] t[1..ni] c ∈ [ 0.. K − 1 ] c\in[0..K-1] c[0..K1]
  式 (5) (6)主要的启发点如下:
  1)实例权重在其标签与所属包不一致时,应该趋近于零;
  2)当 L 2 → L_2\to L2时,如果第 j j j个实例的 α i j ≫ 0 \alpha_{ij}\gg0 αij0且属于第 k k k类,则必有 e x p ( z i , j , k ) ≈ ∑ c = 0 K − 1 e x p ( z i , j , c ) exp(z_{i,j,k})\approx\sum_{c=0}^{K-1}exp(z_{i,j,c}) exp(zi,j,k)c=0K1exp(zi,j,c)
  3)如第 r r r个实例的 α i , r → 0 \alpha_{i,r}\to0 αi,r0,则意味着 ∑ c = 0 K − 1 e x p ( z i , r , c ) \sum_{c=0}^{K-1}exp(z_{i,r,c}) c=0K1exp(zi,r,c) e x p ( z i , r , k ) exp(z_{i,r,k}) exp(zi,r,k)可以忽略。
  为了平衡训练过程,我们首次加入集成目标到实例权重。具体的,对于 α i , t \alpha_{i,t} αi,t,对于每一个训练批次,将累积作为集成权重 α ~ i , t = β α i , t ~ + ( 1 − β ) α i , t \tilde{\alpha}_{i,t}=\beta\tilde{\alpha_{i,t}}+(1-\beta)\alpha_{i,t} α~i,t=βαi,t~+(1β)αi,t,其中 β ≥ 0 \beta\geq0 β0用于决定集成权重与历史记录的偏离程度。然后,利用一致性代价 ∥ α i , t − α ~ i , t ∥ 2 2 \|\alpha_{i,t}-\tilde{\alpha}_{i,t}\|_2^2 αi,tα~i,t22来为每个实例制定一致性预测。最终的损失函数如下:
L p = L 1 + L 2 + L 3 = − log ⁡ exp ⁡ ( h i L − 1 w k + b k ) ∑ c = 0 K − 1 exp ⁡ ( h i L − 1 w c + b c ) − λ ∑ t = 1 n i α i , t log ⁡ exp ⁡ ( h i , t L − 1 w k + b k ) ∑ c = 0 K − 1 exp ⁡ ( h i , t L − 1 w c + b c ) + ω ( m ) ∑ t = 1 n i ∥ α i , t − α ~ i , t ∥ 2 2 , \begin{gathered} L_{p}=L_{1}+L_{2}+L_{3} \\ =-\log \frac{\exp \left(\mathbf{h}_{i}^{L-1} \mathbf{w}_{k}+b_{k}\right)}{\sum_{c=0}^{K-1} \exp \left(\mathbf{h}_{i}^{L-1} \mathbf{w}_{c}+b_{c}\right)} \\ -\lambda \sum_{t=1}^{n_{i}} \alpha_{i, t} \log \frac{\exp \left(\mathbf{h}_{i, t}^{L-1} \mathbf{w}_{k}+b_{k}\right)}{\sum_{c=0}^{K-1} \exp \left(\mathbf{h}_{i, t}^{L-1} \mathbf{w}_{c}+b_{c}\right)} \\ +\omega(m) \sum_{t=1}^{n_{i}}\left\|\alpha_{i, t}-\tilde{\alpha}_{i, t}\right\|_{2}^{2} , \end{gathered} Lp=L1+L2+L3=logc=0K1exp(hiL1wc+bc)exp(hiL1wk+bk)λt=1niαi,tlogc=0K1exp(hi,tL1wc+bc)exp(hi,tL1wk+bk)+ω(m)t=1niαi,tα~i,t22,其中 ω ( m ) \omega(m) ω(m)依赖于训练轮次 m m m,用于逐渐提升 L 3 L_3 L3的权重。