Sha-Lab / FEAT

The code repository for "Few-Shot Learning via Embedding Adaptation with Set-to-Set Functions"
MIT License
418 stars 84 forks source link

有关transductive FSL 的设置 #68

Closed DongYY127 closed 2 years ago

DongYY127 commented 3 years ago

首先和感谢您的工作以及代码的开源,帮助学习到了很多,但是对论文中的transductive FSL 的描述很迷惑,还望帮忙解决下: 论文附录里关于transductive的描述如下: When classifying test instance xtest in the transdutive scenario, other test instances Xtest from the N categories would also be available. Therefore, we enrich the transformer’s query and key/value sets Q=K=V=Xtrain∪ Xtest In this manner, the embedding adaptation procedure would also consider the structure among unlabeled test instances.When the number of shots K >1, we average the embedding of labeled instances in each class first before combining them with the test set embeddings. 针对以上描述,有以下几个困惑: 1、other test instances Xtest from the N categories would also be available中other test instances Xtest是指什么,是来自支持集5类中的其他图片吗,那这不是相当于扩充了训练时候支持集的shot数? 2、other test instances Xtest有标签吗?需要进行预测的是test instance xtest,那没有标签的xtest的信息就未用到,所以怎么体现transductive呢。 3、When the number of shots K >1, we average the embedding of labeled instances in each class first before combining them with the test set embeddings.中,先平均支持集嵌入,然后与test set embeddings结合计算更好的类中心,这样把test set用来计算类中心了不是就已经知道它的标签了,还怎么预测呢。

在实验介绍部分描述如下: Based on the adapted embedding by the joint set of labeled training instances and unlabeled test instances, we can make predictions with two strategies. First, we still compute the center of the labeled instances, while such adapted embeddings are influenced by the unlabeled instances (we denote this approach asFEAT†,which works the same way as standardFEATexcept the augmented input of the embedding transformation function);Second, we consider to take advantage of the unlabeled instances and use their adapted embeddings to construct a better class prototype as in Semi-ProtoNet (we denote this approach asFEAT‡).

1、Based on the adapted embedding by the joint set of labeled training instances and unlabeled test instances,问题同上面3,这种和unlabeled test instances怎么进行结合,如果是一起用来计算类原型的,那岂不是已经知道它的标签就无需预测了; 2、FEAT、FEAT†和FEAT‡的具体区别是哪里不同?

综上就是,在transductive的设置上具体是怎样进行设置,怎样来进行查询集的预测的? 读了很多遍都没理清其关系,真的很困惑,万分期待您的回复!

Han-Jia commented 3 years ago

感谢对本文的关注。

other test instances Xtest from the N categories would also be available

这里是指使用测试集中无标记的样本。比如,对一个N-Way K-Shot的support set训练模型,测试的时候一般会用N-way 15-Shot做评估,这里假设能够同时获得N-way 15-Shot这一无标记的测试集,将其用于辅助support set模型的训练。