Comments (4)
Thanks, @KelvinYang0320, for help answer the question!
from nats-bench.
Thanks for your questions, print(api.arch(12))
can tell you the architecture info, see more details in the updated README (https://github.com/D-X-Y/NATS-Bench#usage).
For the second question, you can see item-3 in (https://github.com/D-X-Y/NATS-Bench#usage), while a prerequisite is to download the pre-trained checkpoints, which is very large..
from nats-bench.
Thank you for the answering,
print(api.arch(12))
could give us the cell structure.
The architecture/model is composed by stacking cell multiple times.
I want to get the accuracy and loss of the 12 model for example (get_more_info already give us that ), and also get the full model itself. And then I want to retrain the model with my own datasets. I want to check if the model with high accuracy has also good performance on my datasets.
But i'm still a little bit confuse with generating network related APIs.
import xautodl
from xautodl.models import get_cell_based_tiny_net
config = api.get_net_config(15620, 'cifar10')
info = api.get_more_info(15620, 'cifar10')
network = get_cell_based_tiny_net(config)
In this code, it uses 'get_cell_based_tiny_net' to get the network. And use get_more_info
to get the loss and accuracy of the model.
Is the network returned by get_cell_based_tiny_net
can give me the full model ? It is quite small and accuracy is low.
In xautod/models package, I also see there are get_cifar_models
apis, which can return us basic, resnet, and densenet model.
How to use them ?
Thank you
from nats-bench.
@NLGithubWP You can get this trained network by the following code:
import xautodl
from xautodl.models import get_cell_based_tiny_net
config = api.get_net_config(15620, 'cifar10')
network = get_cell_based_tiny_net(config)
# Load the pre-trained weights: params is a dict, where the key is the seed and value is the weights.
params = api.get_net_param(15620, 'cifar10', None)
network.load_state_dict(params[777])
get_cell_based_tiny_net
can give you the neural architecture, but you must get and load the trained weights by the get_net_param
and load_state_dict
.
As for the test accuracy, you can get it by the following code:
info = api.get_more_info(15620, 'cifar10', is_random = 777)
print(info['test-accuracy'])
After running this trained network on the whole test dataset, you will get the exact same test accuracy.
from nats-bench.
Related Issues (20)
- The reasults of test accuracy HOT 2
- get_cost_info(hp="200") returns weird value for some models in topology search space HOT 4
- Problem recreating api in fastmode HOT 2
- The results of validation/test accuracy in NATS-Bench paper HOT 4
- best accuracy find HOT 3
- The code for ImageNet16 is 404 error HOT 4
- Question regarding the design space for the topology search space in NATS-Bench HOT 1
- api_utils.py invoking get_latency method without passing "hp" parameter HOT 3
- No testset in ImageNet16 HOT 1
- Details about the data structures more_info and cost_info HOT 2
- Question about ImageNet16120 HOT 1
- Is NATS Extension of NAS_201 bench HOT 4
- get_net_param returns empty dictionary HOT 1
- Regarding the checkpoints HOT 3
- What is the seed of subnet training on cifar10, 111 or 777? HOT 3
- Further training of the network obtained from NATS bench
- Regarding inference with pretrained weights.
- get_more_info(): different seed but same 'train-accuracy', 'train-all-time', 'train-all-time'
- Question about the different init model weights of NATS-Bench-tss and NASbench201
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 nats-bench.