Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Implement standard CIFAR-100 model in fedjax.models.cifar100 #268

Open
jaehunro opened this issue Apr 14, 2022 · 1 comment
Open

Implement standard CIFAR-100 model in fedjax.models.cifar100 #268

jaehunro opened this issue Apr 14, 2022 · 1 comment
Labels
contributions welcome Issues for which community contributions are welcome enhancement New feature or request

Comments

@jaehunro
Copy link
Collaborator

Add a standard implementation of the model for the CIFAR-100 task. The dataset can be found in fedjax.datasets.cifar100.

For the model architecture, we should follow “Adaptive Federated Optimization”. The model architecture is detailed in section 4 as a ResNet-18 (replacing batch norm with group norm). Code for this paper and a Keras implementation of the model can be found here. We suggest using either haiku or flax to implement the model for use with JAX.

If you choose to use haiku, you can use fedjax.create_model_from_haiku to create a fedjax compatible model. If you choose to use flax, wrapping it in a fedjax.Model is fairly straightforward and we can provide guidance for this.

A good example to follow is #265 that checks in a simple linear model for CIFAR-100 and includes the model implementation, tests, and baseline results with FedAvg using this script. Make sure to add a flags file similar to https://github.com/google/fedjax/blob/main/experiments/fed_avg/fed_avg.CIFAR100_LOGISTIC.flags and add the new task to https://github.com/google/fedjax/blob/main/fedjax/training/tasks.py.

Thanks for your contributions!

@jaehunro jaehunro added enhancement New feature or request contributions welcome Issues for which community contributions are welcome labels Apr 14, 2022
@fabiobc3
Copy link
Contributor

Thanks for the pull request! We will be working on this issue.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
contributions welcome Issues for which community contributions are welcome enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

2 participants