Skip to content

Report data leakage that causes unfair few-shot setting #56

Description

@Ze-Yang

I think there exists a data leakage problem in your code, which severely hurts the fair comparison with other methods.

Take coco 10shot for example, you will first construct a meta-data set encomprising 30 (3x shots) (prn_image, prn_mask) pairs for each class. The image indexes of these sampled images are saved in a file named annotations/instances_shot2014.json.

After that, roidb needs to be contructed to provide query samples for finetuning purpose. According to the definition of few-shot setting, you can only access to the N-shot (N instances per class) data no matter whether you perform finetuning or not. Therefore, the roidb dataset should contain the same instances as in meta-data set, otherwise it will exceed the designated number of shots. However, as I find in your code, you does not save the anno_index of the selected instances in meta-data set. Instead, you again randomly sample the shot instances from the images list indicated in annotations/instances_shot2014.json. In this case, I am concern about how you guarantee that the newly sampled instances are exactly the same as the ones in meta-data set.

Hope that you can check about this issue and clarify my concern. Thanks a lot.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions