Comments (6)
Hi!
The code that I used is essentially the one in examples. Meta learning rate 0.001, decay rate 10-5 and T=5 during metatrain, mapping h as in the function mini_imagenet_model and meta batch size of 4.
After I trained h, I performed a second meta validation on T, and it came out 4 in that case.
By the way it is quite important to perform early stopping during metatrain by looking at the meta validation accuracy. It takes around 100k or more hyperiterations to reach the performance. Be also sure to have the right images and split.
Soonish I will release an updated version.
Let me know if it helps!
Luca
from far-ho.
Thanks Luca! We haven't try 100k in our experiment. We run a new experiment and let you know how it goes.
from far-ho.
Hi Luca,
So far we run the code for 40k hyper-iterations but I doesn't seem it is going to achieve the performance. I have attached the learning curve.
Do you have any suggestions on that? I can also share with you the dataset creation details.
from far-ho.
Hi Haamoon,
Form the learning curve you attached I can see there is quite a big gap between what you call valid and test. In all my experiments the gap was no bigger then 1 or max 2%. There might be an error with the meta-test set.
Sorry if I might sound repetitive but just to be sure that weβre talking about the same thing... In these experiments we are interested in the so-called meta-test accuracy, which is an average accuracy over the test sets of many episodes not previously seen by the meta-learner, or in short over episodes in a meta-test set.
How do you create your meta-datasets?
from far-ho.
Hi @lucfra, I'm one of the people working with @haamoon trying to reproduce the experiment.
That's a good point. Since the validation meta-dataset images aren't used during the training process except for early stopping, one would expect the performance to be very similar to meta-testing.
Truth be told, I had some trouble finding the copy of Mini-Imagenet used in the Meta-Learner LSTM paper (Ravi and Larochelle), so I got a copy of something that looked similar (100 classes from ImageNet, 600 examples each) from another student in my building. Perhaps, in that dataset, the testing classes are somehow more difficult than the validation classes. I've contacted Sachin Ravi about where to find a more standard copy of Mini-Imagenet; we'll try running this experiment again once we get that version of the dataset.
Another detail about creating the meta-datasets is that we used the proc_images.py
script from the MAML code. I believe that was necessary in order to get the dimensions to line up correctly.
Thanks for your help so far!
from far-ho.
I see.
For data processing I've used something very similar to the script you mentioned.
Drop me an email at [email protected] that I'll send you a link with the data.
Anyway, it would be interesting (and also a little worrying) if the performance drop so much on another set of classes from imagenet...
Cheers,
Luca
from far-ho.
Related Issues (12)
- Python Version HOT 1
- 20-way classification on MiniImageNet h5 error HOT 8
- Keras implementation
- pytorch support HOT 4
- Issues about far.AdamOptimizer() with ReverseHG HOT 1
- HyperGradient Computation Methods Are Not Isolated... HOT 2
- Support for python ver==2.x or at least ver >= 2.7.x HOT 3
- 'FAR-HO/tests/check forward.ipynb' is not working! HOT 3
- Some questions regarding Forward-HO? HOT 1
- Issues about optimizing other parameters besides learning rate HOT 1
- hyper_representation.py OOM error on default miniImageNet settings HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
π Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
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.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google β€οΈ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from far-ho.