Coder Social home page Coder Social logo

Comments (10)

bertinetto avatar bertinetto commented on July 30, 2024

Hi, I got the same as @csyanbin with python 3.5, cuda 8 and pytorch 0.3

from prototypical-networks.

csyanbin avatar csyanbin commented on July 30, 2024

@bertinetto @jakesnell
I also reproduced the experiments using tensorflow with the same setting and parameters, still got similar results. I wonder if I miss some implementation or parameter details?

from prototypical-networks.

dnlcrl avatar dnlcrl commented on July 30, 2024

Hello, I just want to add that I implemented the same algorithm in a slight different way (here), and I got the same as @csyanbin too (except for the 20way1shot where I obtained 95.1%).

Edit / Side Note: just read this paper: https://arxiv.org/pdf/1711.04043v3.pdf and it seems they are reporting different accuracies with ProtoNet too (97.4 | 99.3 | 95.4 | 98.8) (page 8).

from prototypical-networks.

csyanbin avatar csyanbin commented on July 30, 2024

@dnlcrl I think the results above (97.4 | 99.3 | 95.4 | 98.8) cite the original prototypical paper of ICLR (https://openreview.net/references/pdf?id=BJ-3bnVmg), which is different setting with this git repo.
The ICLR version always uses 1-shot training, but this repo uses the corresponding shot.

This is also given in appendix A of https://arxiv.org/pdf/1703.05175.pdf, in line1 and line2 of table4.

from prototypical-networks.

dnlcrl avatar dnlcrl commented on July 30, 2024

@csyanbin Oh I got it, thank you, I must have missed it.

from prototypical-networks.

yannlif avatar yannlif commented on July 30, 2024

Hi,
@csyanbin I think the results reported are when training on both the training and validation set.
run_trainval.py run this full training using the epoch number validated on the validation set during the first training with the same other hyperparameters.

The results I get are closer to the reported ones but still different:

5way1shot 5way5shot 20way1shot 20way5shot
98.5 99.6 95.3 98.7

from prototypical-networks.

csyanbin avatar csyanbin commented on July 30, 2024

Hi,
@yannlif I think validation cannot be combined into the training set for fair comparisons. Also, in this paper, the authors said: "We follow their procedure by training on the 64 training classes and using the 16 validation classes for monitoring generalization performance only."

Although the performance is slightly better, I think this is not fair for comparison.

from prototypical-networks.

yannlif avatar yannlif commented on July 30, 2024

@csyanbin

We follow their procedure by training on the 64 training classes and using the 16 validation classes for monitoring generalization performance only.

This is for the mini-ImageNet experiments.
In the Omniglot part:

We use 1200 characters plus rotations for training (4,800 classes in total) and the remaining classes, including rotations, for test.

This corresponds to the trainval split. The train split has only 1028 unique characters.

from prototypical-networks.

csyanbin avatar csyanbin commented on July 30, 2024

@yannlif
I got it. I think you are right for Omniglot.
Thanks for this information. I will try again.

from prototypical-networks.

debasmitdas avatar debasmitdas commented on July 30, 2024

Hi Guys,
Does anybody how many training epochs and episodes/epoch was used to reproduce the paper's results (for eg. the miniImagenet dataset) ?

from prototypical-networks.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.