Coder Social home page Coder Social logo

enas_nni's Introduction

enas_nni

Description

ENAS is a algorithm for neural network search. It could learn neural network architecture via reinforcement learning. And it is much faster than NAS, designed by google.
nni is an open source AutoML toolkit for neural architecture search and hyper-parameter tuning.
This code is for running ENAS on nni.

nni: An open source AutoML toolkit for neural architecture search and hyper-parameter tuning.

link: https://github.com/Microsoft/nni

ENAS: Efficient Neural Architecture Search via Parameter Sharing

link: https://github.com/melodyguan/enas
Paper: https://arxiv.org/abs/1802.03268

How to run

1. Install dependency

Need to install nni first.
link:https://github.com/Microsoft/nni You need to choose the dev-enas branch.
run command:
python3 -m pip install --user --upgrade nni
source ~/.bashrc

2. Modify the codedir

Rnn architecture search(ptb_search):

Modify the codeDir at enas_nni/nni/examples/trials/enas/ptb_config.yml.

Cnn architecture search(cifar10_search):

macro search: Modify the codeDir at enas_nni/nni/examples/trials/enas/cifar10_macro_config.yml.
micro search: Modify the codeDir at enas_nni/nni/examples/trials/enas/cifar10_micro_config.yml.

3. Download the dataset

rnn architecture search(ptb_search): the dataset are at enas_nni/nni/examples/trials/enas/data/ptb

cnn architecture search: You need to download the cifar10 data at https://www.cs.toronto.edu/~kriz/cifar.html (python version).
And put data at enas_nni/nni/examples/trials/enas/data and rename the cifar-10-batches-py as cifar10 .
Or you could just run the script/download.sh at script folder.

4. Start run

cd ./enas_nni/nni/examples/trials/enas

ptb_search: nnictl create --config ptb_config.yml

micro_search: nnictl create --config cifar10_micro_config.yml

macro_search: nnictl create --config cifar10_macro_config.yml

Future work

We have one controller running on nni tuner and we could run multiple trials to update the controller. But we do not share the weight of each trial. Next step we will support that.

enas_nni's People

Contributors

countif avatar crysple avatar xuehui1991 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar

enas_nni's Issues

What is the machine configuration required to run the cifar10 example?

Every time I run the cifar10 example, the status "FAILED" appears on the nni interface. By looking at the log, I found that the current trial was Killed. How much memory and GPU memory capacity is required to run the CIFAR10 example with ENAS. Thanks!!!

My environment is configured as follows:
System: CentOS7
Graphics driver: NVIDIA GeForce GTX 1080 Ti * 2
Memory: 16G
TensorFlow: 1.13.1 GPU
Python: Python3.6

status WAITING

Is it normal that two trials status are WAITING after 40 mins?
Besides the search space is null, like ""

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.