ECCV 2020 Oral
源码暂未开放
motivation
传统的原型网络是将support集里面每个类的所有样本的特征的平均作为该类的原型representation,通过query集合的特征representation与support集中每个类别的原型representation进行欧式距离计算,在经过softmax得出最后所属类别。
作者认为简单的求平均会产生很大的bias,因此提出了对原型网络进行修正。从两个角度:intra-class bias和cross-class bias
contribution
-
提出基于余弦相似度的原型网络用于计算novel类的基本原型
-
bias diminishing module (BD)
-
过程
-
training stage:
CSPN(cosine similarity based prototypical network),基于余弦分类器使用base类训练一个特征提取器 F θ F_\theta Fθ以及余弦分类器 C w C_w Cw
-
inference stage:
- 使用类均值作为novel 类的基础原型,计算和样本的余弦相似度进行分类
- 基础原型和预期原型存在偏差,要消去intra-class bias和cross-class bias
- intra-class bias
- 是指类的预期无偏差原型表达与可用数据实际计算出的原型表达之间的距离。
- 通过伪标签策略把具有高置信度的没有标签的样本添加到support集合中。但是伪标签可能会带来其他误差,所以采用 weighted sum代替简单的平均
- cross-class bias:
- 是指support set和query set的代表之间的距离,通常由均值向量表示的
- 通过引入一个 ξ \xi ξ 解决
- intra-class bias
其对于特征提取器的训练是基于整个训练集的,仅在预测过程中使用N-way K-shot的形式(也可以称之为Episode),这也意味着网络训练的参数仅仅为特征提取器的参数。两个bias消除机制作用下的prototypes产生过程没有其他需学习的参数
-
methodology
CSPN
-
基于余弦分类器使用base类训练一个特征提取器 F θ ( ⋅ ) F_\theta(·) Fθ(⋅)以及余弦分类器 C ( ⋅ ∣ W ) C(·|W) C(⋅∣W)
C ( F θ ( x ) ∣ W ) = Softmax ( τ ⋅ Cos ( F θ ( x ) , W ) ) C\left(F_{\theta}(x) \mid W\right)=\operatorname{Softmax}\left(\tau \cdot \operatorname{Cos}\left(F_{\theta}(x), W\right)\right) C(Fθ(x)∣W)=Softmax(τ⋅Cos(Fθ(x),W))
-
W W W是可学习的权重, τ \tau τ是一个标量参数
-
损失函数: L ( θ , W ∣ D ) = E [ − log C ( F θ ( x ) ∣ W ) ] L(\theta, W \mid \mathcal{D})=\mathbb{E}\left[-\log C\left(F_{\theta}(x) \mid W\right)\right] L(θ,W∣D)=E[−logC(F<