1 写在前面
未经允许,不得转载,谢谢~~~
这篇是发在CVPR2020 workshop上的paper,文章提出了一个one-shot learning很强的baseline模型,可以用很简单的方法就达到SOTA。
2 主要内容
2.1 motivation
- Deep learning仍不能泛化到unseen的环境中;
- One-shot learning:样本充足的base class dataset用来学习必要知识 --> 识别少量标注的unseen novel dataset;
- One-shot learning最早的通用范式就是pretrain-based method:在base class先用标准的分类任务训练,然后再用这个FC训练。之后meta-learning成为了主流的方法。但是meta learning可能会导致mean shift的问题。也有一些工作发现在meta learning的训练过程中引入原始的分类loss会极大提升性能。 因此,这篇文章重新关注了pretrain-based method。
2.2 this paper
- 主要pipeline:1)用base class来训练模型,然后冻住训练好的模型参数; 2)在测试阶段,探索了不同的分类器:logistic regression (LR), support vector machine (SVM), nearest neighbor (NN).
- 提出对pretrained model的特征做normalization可以很大的提升性能;
- 提出pretrained model提取出来的特征也许包含某些domain-specific的信息,而这些信息可能是对target class的识别有害的,所以用random pruning stategy随机剪枝策略通过去除negaitive的信息来提升模型性能;
3 方法
这个部分的方法其实很简单,主要就是2.2介绍的两点。
- baseline:对extractor提取出来的feature做L2 normalization;
- random pruniing: 对提取出来的feature随机加mask,(0-1 mask),当然对mask之后的特征也做L2 normalization。
4 实验
4.1 Comparison with alternatives.
这个baseline加上L2 normalization之后就比之前SOTA的meta-learning的方法都好了。
与更近提出的方法比。找到最佳的特征prune方法能够达到SOTA。
网友评论