Comments (6)
Hey, @arthurdouillard and @TLESORT. Thanks for your warm support. so delighted to hear that your API will support cifar10/cifar100 benchmarks soon. To be honest, I am really enjoying your API and working with it.
from continuum.
I will answer for Arthur if you don't mind :)
I think the API does not support the CIFAR10/100 experiment from "continual learning with hyper-networks" yet.
The experiment is composed of 11 tasks, first CIFAR10 and after 10 tasks composed of set of 10 classes from CIFAR100, is that right?
If you need it, we can think about how to make it possible easily.
Fellowship is originally meant to use a composition of datasets, like first tasks : 'all cifar10' and second second 'all cifar100'. Maybe there is a smart way to use it for the experiment you mention. ;)
Edit: I will test if we can do it with Fellowship
Cheers
Timothée
from continuum.
It seems there is a problem with the Fellowship class, I will try to fix it as soon as possible.
However normally the experiment you mentioned could be defined like this:
from continuum.datasets import CIFARFellowship
from continuum.scenarios import ClassIncremental
cl_dataset = CIFARFellowship(data_path=".", train=True)
continuum = ClassIncremental(cl_dataset, increment=10)
I will try to fix the bug and push the fix :)
from continuum.
I've found a quick way to fix Fellowship you can replace lines 60-61 in continuum/datasets/base.py :
def __init__(self, *args, dataset_type, train: bool, **kwargs):
super(PyTorchDataset, self).__init__(*args, train, **kwargs)
by
def __init__(self, *args, dataset_type, data_path: str = "", train: bool, **kwargs):
super(PyTorchDataset, self).__init__(*args, data_path, train, **kwargs)
After that, the code I gave in the previous comment should work and produce:
11 tasks
first tasks with CIFAR10, label from 0 to 9
second tasks, first 10 classes of CIFAR100, labels from 10 to 19
[...]
task eleven, last 10 classes of CIFAR100, labels from 100 to 119
I hope this is what you wanted :D
from continuum.
@mmderakhshani Fellowship currently has a small bug, but it will be fixed tomorrow. Sorry about that.
Yes we support the setting CIFAR10/CIFAR100, where there are 11 tasks of 10 classes each.
When the code will be fixed, you should do:
from continuum import ClassIncremental
from continuum.datasets import CIFARFellowship
dataset = CIFARFellowship("/my/data/path", train=True)
clloader = ClassIncremental(dataset, increment=10)
from continuum.
@mmderakhshani Thimothée has fixed our bug, you can now use Continuum for the cifar10/100 benchmark!
You can either pull master, or update the library via pip to the version 0.2.0
.
Sorry again for the inconvenience.
If you find bugs, or have ideas for improvements, don't hesitate to create an issue or a pull request :)
from continuum.
Related Issues (20)
- Adding OOD datasets from https://wilds.stanford.edu/datasets/ could be nice
- Error on quick example HOT 12
- Print on split_train_val HOT 2
- Transform MNIST dataset HOT 2
- logger.end_task() empty values results in error HOT 2
- Custom Transformation HOT 2
- Support for MNIST-360 HOT 11
- Issues with some logger metrics HOT 13
- Unbalanced classes
- copy.deepcopy(train_scenario) fails for Permuted MNIST HOT 2
- Adding error message when we try to concatenate tasks with different transformation
- np.mean() or torch.mean() HOT 2
- Package `requirements.txt` into PyPI tarball HOT 3
- bug in forgetting metric HOT 2
- Error: ModuleNotFoundError: No module named 'datasets.arrow_dataset' HOT 4
- Adding ImageNet-R dataset HOT 1
- [Question] How to create scenario with N-way K-shot HOT 10
- Label mapping at task > 0 HOT 3
- [Question] Class incremental scenario exhibits inverse accuracy per task compared to expected norm HOT 12
- [Question] rehearsal example clarification regarding train/valid splits 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 continuum.