简介:该文是2018年改进NCM的一篇文章。NCM是长尾学习里面十分经典的一个方法,到了2018年还能有人根据这个方法发到 ICLR2018,我认为必定有可取之处。故找来读,记录精要之处。
NCM最大的缺点是,它是一个线性分类器,而且它不能学习深度特征(deep representation)。
2017年的icarl,虽然用了NCM分类器,但是他们的特征是基于softmax分类器学出来的。而且他们是在一个固定大小的训练集里训练——来满足内存限制(代码里是每个epoch只有50个样本)。最后,他们使用蒸馏损失函数,来避免灾难性遗忘。相比之下,我们的deep NCM分类器,可以直接学习visual representation。
2017年的Prototypical Networks(用于小样本学习),虽然是直接基于NCM分类器来学习deep representation的,但是他们的方法很难扩展到大规模的分类。如果在一个minibatch里没有包含所有类的样本,他们的方法就很难使用。
对于NCM分类器,使用哪一种距离函数是对于最终效果至关重要的。
2013年PAMI的Distance-based image classification: Generalizing to new classes at near-zero cost
,采用马氏距离。这里d代表距离,L代表待优化的损失函数,uy代表特征均值。