From 20bf28b06a0ea56e7e9b0c5f4370f481255748f9 Mon Sep 17 00:00:00 2001 From: xuehui Date: Thu, 20 Sep 2018 11:09:46 +0800 Subject: [PATCH 01/31] update readme in ga_squad --- examples/trials/ga_squad/README.md | 55 ++++++++++++++++++++++++++ examples/trials/ga_squad/ga_squad.png | Bin 0 -> 30340 bytes examples/trials/ga_squad/readme.md | 33 ---------------- 3 files changed, 55 insertions(+), 33 deletions(-) create mode 100644 examples/trials/ga_squad/README.md create mode 100644 examples/trials/ga_squad/ga_squad.png delete mode 100644 examples/trials/ga_squad/readme.md diff --git a/examples/trials/ga_squad/README.md b/examples/trials/ga_squad/README.md new file mode 100644 index 0000000000..40ed59d8b8 --- /dev/null +++ b/examples/trials/ga_squad/README.md @@ -0,0 +1,55 @@ +# Automaticlly model architecture search for Reading Comprehension +SQuAD is a competition holded by Stanford. Giving you queries and passages, you need to select answer from passage. + +This example shows us how to use Genetic Algorithm to find good model architectures for Reading Comprehension task. + +Since attention and recurrent neural network (RNN) module have been proven effective in Reading Comprehension. + +We conclude the search space as follow: + +1. IDENTITY (Effectively means keep training). +2. INSERT-RNN-LAYER (Inserts a LSTM. Comparing the performance of GRU and LSTM in our experiment, we decided to use LSTM here.) +3. REMOVE-RNN-LAYER +4. INSERT-ATTENTION-LAYER(Inserts a attention layer.) +5. REMOVE-ATTENTION-LAYER +6. ADD-SKIP (Identity between random layers). +7. REMOVE-SKIP (Removes random skip). + + +![ga-squad-logo](./ga_squad.png) + +Also we have another version which time cost is less and performance is better. We will release soon. + + +# Download data + +## Use downloading script + +Execute the following command to download needed files +using the downloading script: + +``` +chmod +x ./download.sh +./download.sh +``` + +## Download manually + +1. download "dev-v1.1.json" and "train-v1.1.json" in https://rajpurkar.github.io/SQuAD-explorer/ + +``` +wget https://rajpurkar.github.io/SQuAD-explorer/dataset/train-v1.1.json +wget https://rajpurkar.github.io/SQuAD-explorer/dataset/dev-v1.1.json +``` + +2. download "glove.840B.300d.txt" in https://nlp.stanford.edu/projects/glove/ + +``` +wget http://nlp.stanford.edu/data/glove.840B.300d.zip +unzip glove.840B.300d.zip +``` + +# How to submit this job +``` +nnictl create --config ~/nni/examples/trials/ga_squad/config.yaml +``` diff --git a/examples/trials/ga_squad/ga_squad.png b/examples/trials/ga_squad/ga_squad.png new file mode 100644 index 0000000000000000000000000000000000000000..4c82cd4654b935778bb74da6e4d051fae67eaf38 GIT binary patch literal 30340 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 Date: Thu, 20 Sep 2018 11:15:54 +0800 Subject: [PATCH 02/31] update readme --- examples/trials/ga_squad/README.md | 15 ++++++--------- 1 file changed, 6 insertions(+), 9 deletions(-) diff --git a/examples/trials/ga_squad/README.md b/examples/trials/ga_squad/README.md index 40ed59d8b8..8289189e60 100644 --- a/examples/trials/ga_squad/README.md +++ b/examples/trials/ga_squad/README.md @@ -1,10 +1,8 @@ -# Automaticlly model architecture search for Reading Comprehension -SQuAD is a competition holded by Stanford. Giving you queries and passages, you need to select answer from passage. - +# Automaticlly Model Architecture Search for Reading Comprehensio This example shows us how to use Genetic Algorithm to find good model architectures for Reading Comprehension task. +## Search Space Since attention and recurrent neural network (RNN) module have been proven effective in Reading Comprehension. - We conclude the search space as follow: 1. IDENTITY (Effectively means keep training). @@ -15,15 +13,14 @@ We conclude the search space as follow: 6. ADD-SKIP (Identity between random layers). 7. REMOVE-SKIP (Removes random skip). - ![ga-squad-logo](./ga_squad.png) +## Ner version Also we have another version which time cost is less and performance is better. We will release soon. +# How to run this example? -# Download data - -## Use downloading script +## Use downloading script to download data Execute the following command to download needed files using the downloading script: @@ -49,7 +46,7 @@ wget http://nlp.stanford.edu/data/glove.840B.300d.zip unzip glove.840B.300d.zip ``` -# How to submit this job +# submit this job ``` nnictl create --config ~/nni/examples/trials/ga_squad/config.yaml ``` From d8421216a1b0803f2b157d040311fc08ff7e9085 Mon Sep 17 00:00:00 2001 From: xuehui Date: Thu, 20 Sep 2018 11:17:41 +0800 Subject: [PATCH 03/31] fix typo --- examples/trials/ga_squad/README.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/examples/trials/ga_squad/README.md b/examples/trials/ga_squad/README.md index 8289189e60..d22e90032f 100644 --- a/examples/trials/ga_squad/README.md +++ b/examples/trials/ga_squad/README.md @@ -13,9 +13,9 @@ We conclude the search space as follow: 6. ADD-SKIP (Identity between random layers). 7. REMOVE-SKIP (Removes random skip). -![ga-squad-logo](./ga_squad.png) +![ga-squad-logo](./ga_squad.png=100x100) -## Ner version +## New version Also we have another version which time cost is less and performance is better. We will release soon. # How to run this example? From 0d67525a2c60619d088458a1e744f3f286aa4449 Mon Sep 17 00:00:00 2001 From: xuehui Date: Thu, 20 Sep 2018 11:18:31 +0800 Subject: [PATCH 04/31] Update README.md --- examples/trials/ga_squad/README.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/examples/trials/ga_squad/README.md b/examples/trials/ga_squad/README.md index d22e90032f..6d797936e0 100644 --- a/examples/trials/ga_squad/README.md +++ b/examples/trials/ga_squad/README.md @@ -1,4 +1,4 @@ -# Automaticlly Model Architecture Search for Reading Comprehensio +# Automaticlly Model Architecture Search for Reading Comprehension This example shows us how to use Genetic Algorithm to find good model architectures for Reading Comprehension task. ## Search Space @@ -13,7 +13,7 @@ We conclude the search space as follow: 6. ADD-SKIP (Identity between random layers). 7. REMOVE-SKIP (Removes random skip). -![ga-squad-logo](./ga_squad.png=100x100) +![ga-squad-logo](./ga_squad.png =100x100) ## New version Also we have another version which time cost is less and performance is better. We will release soon. From b52854ac5ecaa9cb317005f46af5ec0fa34abb5c Mon Sep 17 00:00:00 2001 From: xuehui Date: Thu, 20 Sep 2018 11:19:52 +0800 Subject: [PATCH 05/31] Update README.md --- examples/trials/ga_squad/README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/examples/trials/ga_squad/README.md b/examples/trials/ga_squad/README.md index 6d797936e0..48ae015b65 100644 --- a/examples/trials/ga_squad/README.md +++ b/examples/trials/ga_squad/README.md @@ -13,7 +13,7 @@ We conclude the search space as follow: 6. ADD-SKIP (Identity between random layers). 7. REMOVE-SKIP (Removes random skip). -![ga-squad-logo](./ga_squad.png =100x100) +![ga-squad-logo](./ga_squad.png) ## New version Also we have another version which time cost is less and performance is better. We will release soon. From 374491d018baae03f904ad3091fd7bce96645590 Mon Sep 17 00:00:00 2001 From: xuehui Date: Thu, 20 Sep 2018 11:24:15 +0800 Subject: [PATCH 06/31] Update README.md --- examples/trials/ga_squad/README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/examples/trials/ga_squad/README.md b/examples/trials/ga_squad/README.md index 48ae015b65..002ef9ea2d 100644 --- a/examples/trials/ga_squad/README.md +++ b/examples/trials/ga_squad/README.md @@ -1,4 +1,4 @@ -# Automaticlly Model Architecture Search for Reading Comprehension +# Automatic Model Architecture Search for Reading Comprehension This example shows us how to use Genetic Algorithm to find good model architectures for Reading Comprehension task. ## Search Space From c805d2aafc6b1ecfebd09e70230d6ed67e0c07e4 Mon Sep 17 00:00:00 2001 From: xuehui Date: Thu, 20 Sep 2018 12:23:58 +0800 Subject: [PATCH 07/31] update readme --- docs/WriteYourTrial.md | 3 +++ 1 file changed, 3 insertions(+) diff --git a/docs/WriteYourTrial.md b/docs/WriteYourTrial.md index 18388aa9fd..328f273f11 100644 --- a/docs/WriteYourTrial.md +++ b/docs/WriteYourTrial.md @@ -121,3 +121,6 @@ In the yaml configure file, you need to set *useAnnotation* to true to enable NN ``` useAnnotation: true ``` + +## More Trial Example +* [Automatic Model Architecture Search for Reading Comprehension.](../examples/trials/ga_squad/README.md) \ No newline at end of file From ef74ffaf022a8a57d6606ca76e345e24ec824bcc Mon Sep 17 00:00:00 2001 From: Xiaohui Xue Date: Tue, 4 Dec 2018 10:51:27 +0800 Subject: [PATCH 08/31] update --- docs/HowToChooseTuner.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/HowToChooseTuner.md b/docs/HowToChooseTuner.md index b3f2e56ffc..f48f289baa 100644 --- a/docs/HowToChooseTuner.md +++ b/docs/HowToChooseTuner.md @@ -40,7 +40,7 @@ _Usage_: In [Random Search for Hyper-Parameter Optimization][2] show that Random Search might be surprisingly simple and effective. We suggests that we could use Random Search as baseline when we have no knowledge about the prior distribution of hyper-parameters. -_Suggested scenario_: Random search is suggested when each trial does not take too long (e.g., each trial can be completed very soon, or early stopped by assessor quickly), and you have enough computation resource. Or you want to uniformly explore the search space. Random Search could be consider as baseline of search algorithm. +_Suggested scenario_: Random search is suggested when each trial does not take too long (e.g., each trial can be completed very soon, or early stopped by assessor quickly), and you have enough computation resource. Or you want to uniformly explore the search space. Random Search could be considered as baseline of search algorithm. _Usage_: ``` From 22b3add1e2f68ed9db797bbe6e88869580dc1a96 Mon Sep 17 00:00:00 2001 From: Xiaohui Xue Date: Tue, 4 Dec 2018 13:07:39 +0800 Subject: [PATCH 09/31] fix path --- docs/HowToChooseTuner.md | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/docs/HowToChooseTuner.md b/docs/HowToChooseTuner.md index f48f289baa..756b41a037 100644 --- a/docs/HowToChooseTuner.md +++ b/docs/HowToChooseTuner.md @@ -88,7 +88,7 @@ _Usage_: [SMAC][4] is based on Sequential Model-Based Optimization (SMBO). It adapts the most prominent previously used model class (Gaussian stochastic process models) and introduces the model class of random forests to SMBO, in order to handle categorical parameters. The SMAC supported by nni is a wrapper on [the SMAC3 github repo][5]. -Note that SMAC on nni only supports a subset of the types in [search space spec](../../../../docs/SearchSpaceSpec.md), including `choice`, `randint`, `uniform`, `loguniform`, `quniform(q=1)`. +Note that SMAC on nni only supports a subset of the types in [search space spec](./SearchSpaceSpec.md), including `choice`, `randint`, `uniform`, `loguniform`, `quniform(q=1)`. _Suggested scenario_: Similar to TPE, SMAC is also a black-box tuner which can be tried in various scenarios, and is suggested when computation resource is limited. It is optimized for discrete hyperparameters, thus, suggested when most of your hyperparameters are discrete. @@ -105,7 +105,7 @@ _Usage_: **Batch tuner** -Batch tuner allows users to simply provide several configurations (i.e., choices of hyper-parameters) for their trial code. After finishing all the configurations, the experiment is done. Batch tuner only supports the type `choice` in [search space spec](../../../../docs/SearchSpaceSpec.md). +Batch tuner allows users to simply provide several configurations (i.e., choices of hyper-parameters) for their trial code. After finishing all the configurations, the experiment is done. Batch tuner only supports the type `choice` in [search space spec](./SearchSpaceSpec.md). _Suggested sceanrio_: If the configurations you want to try have been decided, you can list them in searchspace file (using `choice`) and run them using batch tuner. @@ -120,7 +120,7 @@ _Usage_: **Grid Search** Grid Search performs an exhaustive searching through a manually specified subset of the hyperparameter space defined in the searchspace file. -Note that the only acceptable types of search space are `choice`, `quniform`, `qloguniform`. **The number `q` in `quniform` and `qloguniform` has special meaning (different from the spec in [search space spec](../../../../docs/SearchSpaceSpec.md)). It means the number of values that will be sampled evenly from the range `low` and `high`.** +Note that the only acceptable types of search space are `choice`, `quniform`, `qloguniform`. **The number `q` in `quniform` and `qloguniform` has special meaning (different from the spec in [search space spec](./SearchSpaceSpec.md)). It means the number of values that will be sampled evenly from the range `low` and `high`.** _Suggested scenario_: It is suggested when search space is small, it is feasible to exhaustively sweeping the whole search space. @@ -134,7 +134,7 @@ _Usage_: **Hyperband** -[Hyperband][6] tries to use limited resource to explore as many configurations as possible, and finds out the promising ones to get the final result. The basic idea is generating many configurations and to run them for small number of STEPs to find out promising one, then further training those promising ones to select several more promising one. More detail can be refered to [here](hyperband_advisor/README.md) +[Hyperband][6] tries to use limited resource to explore as many configurations as possible, and finds out the promising ones to get the final result. The basic idea is generating many configurations and to run them for small number of STEPs to find out promising one, then further training those promising ones to select several more promising one. More detail can be refered to [here](../src/sdk/pynni/nni/hyperband_advisor/README.md) _Suggested scenario_: It is suggested when you have limited computation resource but have relatively large search space. It performs good in the scenario that intermediate result (e.g., accuracy) can reflect good or bad of final result (e.g., accuracy) to some extent. From c97fd11a6102274465073f72261c412ee701572f Mon Sep 17 00:00:00 2001 From: Xiaohui Xue Date: Tue, 4 Dec 2018 17:36:22 +0800 Subject: [PATCH 10/31] update reference --- docs/GetStarted.md | 2 +- docs/Overview.md | 2 +- docs/RELEASE.md | 2 +- docs/howto_2_CustomizedTuner.md | 2 +- docs/tutorial_3_tryTunersAndAccessors.md | 2 +- 5 files changed, 5 insertions(+), 5 deletions(-) diff --git a/docs/GetStarted.md b/docs/GetStarted.md index 6e124c574f..4da14b2d25 100644 --- a/docs/GetStarted.md +++ b/docs/GetStarted.md @@ -87,7 +87,7 @@ You can refer to [here](NNICTLDOC.md) for more usage guide of *nnictl* command l The experiment has been running now, NNI provides WebUI for you to view experiment progress, to control your experiment, and some other appealing features. The WebUI is opened by default by `nnictl create`. ## Read more -* [Tuners supported in the latest NNI release](../src/sdk/pynni/nni/README.md) +* [Tuners supported in the latest NNI release](./HowToChooseTuner.md) * [Overview](Overview.md) * [Installation](InstallNNI_Ubuntu.md) * [Use command line tool nnictl](NNICTLDOC.md) diff --git a/docs/Overview.md b/docs/Overview.md index f93764266f..b6d0772d20 100644 --- a/docs/Overview.md +++ b/docs/Overview.md @@ -32,7 +32,7 @@ NNI provides a set of examples in the package to get you familiar with the above **Trial** in NNI is an individual attempt at applying a set of parameters on a model. ### **Tuner** -**Tuner** in NNI is an implementation of Tuner API for a special tuning algorithm. [Read more about the Tuners supported in the latest NNI release](../src/sdk/pynni/nni/README.md) +**Tuner** in NNI is an implementation of Tuner API for a special tuning algorithm. [Read more about the Tuners supported in the latest NNI release](HowToChooseTuner.md) ### **Assessor** **Assessor** in NNI is an implementation of Assessor API for optimizing the execution of experiment. diff --git a/docs/RELEASE.md b/docs/RELEASE.md index 49558fd046..916687c0e7 100644 --- a/docs/RELEASE.md +++ b/docs/RELEASE.md @@ -41,7 +41,7 @@ * Support [OpenPAI](https://github.com/Microsoft/pai) (aka pai) Training Service (See [here](./PAIMode.md) for instructions about how to submit NNI job in pai mode) * Support training services on pai mode. NNI trials will be scheduled to run on OpenPAI cluster * NNI trial's output (including logs and model file) will be copied to OpenPAI HDFS for further debugging and checking - * Support [SMAC](https://www.cs.ubc.ca/~hutter/papers/10-TR-SMAC.pdf) tuner (See [here](../src/sdk/pynni/nni/README.md) for instructions about how to use SMAC tuner) + * Support [SMAC](https://www.cs.ubc.ca/~hutter/papers/10-TR-SMAC.pdf) tuner (See [here](HowToChooseTuner.md) for instructions about how to use SMAC tuner) * [SMAC](https://www.cs.ubc.ca/~hutter/papers/10-TR-SMAC.pdf) is based on Sequential Model-Based Optimization (SMBO). It adapts the most prominent previously used model class (Gaussian stochastic process models) and introduces the model class of random forests to SMBO to handle categorical parameters. The SMAC supported by NNI is a wrapper on [SMAC3](https://github.com/automl/SMAC3) * Support NNI installation on [conda](https://conda.io/docs/index.html) and python virtual environment * Others diff --git a/docs/howto_2_CustomizedTuner.md b/docs/howto_2_CustomizedTuner.md index db002e0cc3..4c73eeec65 100644 --- a/docs/howto_2_CustomizedTuner.md +++ b/docs/howto_2_CustomizedTuner.md @@ -95,4 +95,4 @@ More detail example you could see: > * [evolution-based-customized-tuner](../examples/tuners/ga_customer_tuner) ## Write a more advanced automl algorithm -The methods above are usually enough to write a general tuner. However, users may also want more methods, for example, intermediate results, trials' state (e.g., the methods in assessor), in order to have a more powerful automl algorithm. Therefore, we have another concept called `advisor` which directly inherits from `MsgDispatcherBase` in [`src/sdk/pynni/nni/msg_dispatcher_base.py`](../src/sdk/pynni/nni/msg_dispatcher_base.py). Please refer to [here](howto_3_CustomizedAdvisor) for how to write a customized advisor. +The methods above are usually enough to write a general tuner. However, users may also want more methods, for example, intermediate results, trials' state (e.g., the methods in assessor), in order to have a more powerful automl algorithm. Therefore, we have another concept called `advisor` which directly inherits from `MsgDispatcherBase` in [`src/sdk/pynni/nni/msg_dispatcher_base.py`](../src/sdk/pynni/nni/msg_dispatcher_base.py). Please refer to [here](./howto_3_CustomizedAdvisor.md) for how to write a customized advisor. diff --git a/docs/tutorial_3_tryTunersAndAccessors.md b/docs/tutorial_3_tryTunersAndAccessors.md index 2e3ad4917f..05547b3da6 100644 --- a/docs/tutorial_3_tryTunersAndAccessors.md +++ b/docs/tutorial_3_tryTunersAndAccessors.md @@ -13,7 +13,7 @@ NNI provides an easy to adopt approach to set up parameter tuning algorithms as ### **Learn More about tuners** * For detailed defintion and usage aobut the required field, please refer to [Config an experiment](ExperimentConfig.md) -* [Tuners in the latest NNI release](../src/sdk/pynni/nni/README.md) +* [Tuners in the latest NNI release](HowToChooseTuner.md) * [How to implement your own tuner](howto_2_CustomizedTuner.md) From 0afbffd4ebb8ff2a9f25a70d3cee8ee0955b5a19 Mon Sep 17 00:00:00 2001 From: Xiaohui Xue Date: Wed, 5 Dec 2018 13:33:31 +0800 Subject: [PATCH 11/31] fix bug in config file --- docs/HowToChooseTuner.md | 18 ++++++++++++++++++ .../trials/mnist-batch-tune-keras/config.yml | 3 --- .../mnist-batch-tune-keras/config_pai.yml | 5 +---- .../mnist-batch-tune-keras/requirements.txt | 1 + 4 files changed, 20 insertions(+), 7 deletions(-) create mode 100644 examples/trials/mnist-batch-tune-keras/requirements.txt diff --git a/docs/HowToChooseTuner.md b/docs/HowToChooseTuner.md index 756b41a037..c162febdbd 100644 --- a/docs/HowToChooseTuner.md +++ b/docs/HowToChooseTuner.md @@ -116,6 +116,24 @@ _Usage_: builtinTunerName: BatchTuner ``` +Note that the search space that BatchTuner supported like: +``` +{ + "combine_params": + { + "_type" : "choice", + "_value" : [{"optimizer": "Adam", "learning_rate": 0.00001}, + {"optimizer": "Adam", "learning_rate": 0.0001}, + {"optimizer": "Adam", "learning_rate": 0.001}, + {"optimizer": "SGD", "learning_rate": 0.01}, + {"optimizer": "SGD", "learning_rate": 0.005}, + {"optimizer": "SGD", "learning_rate": 0.0002}] + } +} +``` +The search space file including the high-level key `combine_params`. The type of params in search space must be `choice` and the `values` including all the combined-params value. + + **Grid Search** diff --git a/examples/trials/mnist-batch-tune-keras/config.yml b/examples/trials/mnist-batch-tune-keras/config.yml index e0722f9117..7cdbd8769a 100644 --- a/examples/trials/mnist-batch-tune-keras/config.yml +++ b/examples/trials/mnist-batch-tune-keras/config.yml @@ -12,9 +12,6 @@ tuner: #choice: TPE, Random, Anneal, Evolution, BatchTuner #SMAC (SMAC should be installed through nnictl) builtinTunerName: BatchTuner - classArgs: - #choice: maximize, minimize - optimize_mode: maximize trial: command: python3 mnist-keras.py codeDir: . diff --git a/examples/trials/mnist-batch-tune-keras/config_pai.yml b/examples/trials/mnist-batch-tune-keras/config_pai.yml index c7c0de7a14..2fe3040cf2 100644 --- a/examples/trials/mnist-batch-tune-keras/config_pai.yml +++ b/examples/trials/mnist-batch-tune-keras/config_pai.yml @@ -12,9 +12,6 @@ tuner: #choice: TPE, Random, Anneal, Evolution, BatchTuner #SMAC (SMAC should be installed through nnictl) builtinTunerName: BatchTuner - classArgs: - #choice: maximize, minimize - optimize_mode: maximize trial: command: python3 mnist-keras.py codeDir: . @@ -33,4 +30,4 @@ paiConfig: #The password to login pai passWord: password #The host of restful server of pai - host: 10.10.10.10 \ No newline at end of file + host: 10.10.10.10 diff --git a/examples/trials/mnist-batch-tune-keras/requirements.txt b/examples/trials/mnist-batch-tune-keras/requirements.txt new file mode 100644 index 0000000000..95bd0a423f --- /dev/null +++ b/examples/trials/mnist-batch-tune-keras/requirements.txt @@ -0,0 +1 @@ +keras>=2.2.4 From 770677c2596f2636cf5aef6a818fe8a85d56221d Mon Sep 17 00:00:00 2001 From: Xiaohui Xue Date: Fri, 14 Dec 2018 15:52:34 +0800 Subject: [PATCH 12/31] update nni_arch_overview.png --- docs/img/nni_arch_overview.png | Bin 43447 -> 0 bytes 1 file changed, 0 insertions(+), 0 deletions(-) delete mode 100644 docs/img/nni_arch_overview.png diff --git a/docs/img/nni_arch_overview.png b/docs/img/nni_arch_overview.png deleted file mode 100644 index 6403154ab92a8b9051bc0ba1347b851185513b13..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 43447 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

Uij4Six&z$wb(47wZ7z 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 From e002331011503e79d6b48cde952a18bbcec185c4 Mon Sep 17 00:00:00 2001 From: Xiaohui Xue Date: Fri, 14 Dec 2018 15:57:09 +0800 Subject: [PATCH 13/31] update --- docs/img/nni_arch_overview.png.jpg | Bin 0 -> 126232 bytes .../mnist-cascading-search-space/config.yml | 2 +- 2 files changed, 1 insertion(+), 1 deletion(-) create mode 100644 docs/img/nni_arch_overview.png.jpg diff --git a/docs/img/nni_arch_overview.png.jpg b/docs/img/nni_arch_overview.png.jpg new file mode 100644 index 0000000000000000000000000000000000000000..621f16a0ddfde3bdef49058aff64baaf36b82e01 GIT binary patch literal 126232 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�(B7eUNHhw}f{gy6q={C|&st`&Ax%!@|?z6}nzJ{Hg(D0yP0 zM$5!*!5E#G1!@+*CrNdQXS%;y86c~Kfv7(Fk-g~sbqCNtDw_kwi_mu=LqC6bxX7x| zc4zEHkIz~;n`FDx*|x`FwJg3HCi<;}juSE@$lBs6cU2}o9qHKqXrb65E)m&S;&1B;zU>1Gw~J_NhB zDWL0Ok84#yH1MzG@&9~2^k4n<|K$p7h;JBquPyl+-xW~TgM67oJMpon*z3RPZ?E@1bxqOIn-8$N3RLUf|9VwLuzBEqUO4c znY*KVhYB%%H4Vx0=z{Qh3T^?j+$6I251b!v49b;Ppa2=DCblj+$A=t|NKKElRh9x?@{B!HNPQ^~p`&_l` zl-7|W+jwPzh*sBbWx)+m*;lQS1350KKn9Zd`E{qtO&0Tfap_k!dg)w06?FvczRvKJ zF3Y=Lz>2VZ&jIHlWKY%MlwBb_m1Cv87QN+%YyvTQX^+PCo|X9us+xrrbmH<&RBlv( zuP)z^rHXge>}+F4@S}D0{s28_X>G2bDs8S3ODotg2@FG#_llpk43^ofBPtF%(ezg;!f!rw# zxYPSJ`ty{S>3pEMqnk|4y_heezdKFA3X*y;@Gem@#B$x~>m^PV`er4d7sArHQPb3r zYVo>2v?ea>&GAg#?U$|r#?wE3YB4stUyE>hqDL+bsFJ}UA_POso4{-$e_+M@u1`bi z^25*db*ba~{Tf#NuNNLfiQJ1<^<`^6knTVz$wP?JEM1=ko)gkeRWt|P1RX5&Z&)%J zzzt5mJ@zt^b)<|u(jMaOeu+{aV+C45o%uSN*iG02zx-RBKIFKJVDWM6S5XF)amm23C%v?|uxwNG_ zeXFEJZ2#J_vSs+v=C%C&*%A^StNc8WSN;|Dy`Jn#PTYd^quf6YCJz;i@3rWH@3l_x ze|BIqYD}GGOZst_~sKdF|G3A!E-g1<2P!#u>9nZV^dS|shA^wj!l*p>^8XJriFfnOO z3848bN8X&|wUH6>x?Y;Kd-??X(Gw!&1{T0R>bCTrEJD>TKUxDP1 zf5b9wJpOOzq5pIFCuOqz#+;9>N0`7+Nlgr+3M*fHpJ6w5dCvL_U~m5#a!Llh#X9EA zb%0JvVqVrulw;bsW^*U>WAf#?v*=sZ%g|6}o`i>rfq5!DxieQ<&$c|q zh_Su>?fbYy71QjOh$8e8dME%f*#Z+}jvdB~)t=9A5xG6B&FekdL#!oavga?eDiJn% zz|y~ZB{Z=6xY58Z5x`IZrGpQ7lXkLDQ9tl3C{xSPIzrg?RH2dV+htA`>fu8yK>dQO zGyVjrC$%&XZq@_PJjVTob#NAucL2_~`jyCnmp%w1ieiRPZaxSX;mxG9J7icY!Rw6? zw_lu9vhFnj9i9EpFf{*&WB+nE9OBk5$mE&31k>4zijNwnm4_AX97TnGnVD#x*Lm}_ zK3XqiLqg&CMCwu`ZsMMe#I-)U@>#L|hBF9fu|VZg<|tlVbU>|^8v>=}eD%BM&PoOC z**l`cxi&wxZ5lSB#mOf)&yQ+kOT+n9j2Idjur|JeL}~pC%(^?%>dY>NRt}mL$NQ-~PeLC_FXcbs zw4qhm-dMf0-mW)NuZde;-#XTZ8R0gO^U(~X0nJ9X!W{akiVy|GxgUih`HaKbtxKU9 zlZ{VgrpYQSCt>XXc2$0kW5E=z0e}X>O|}mAi#Y=p=Iw!To~??uCKLdwk3)_41o@zxPd)qp;mJ ze)Gdy@`$DSwEuw6Q34Vyx12)}K*dv9P(OHr^x-_I*kXlMVSCyS@AgP|%WTw~5wNwhNXnzj=!$7`C6dr5~&ExU3?wLQ7KI=F!Uuwdc=3x<)5y^^C1J zyVsJp zwGEWcH#P%Y8^s-yw+|@J%s0GBqr#`5lu(}?4q~8^x8#PU>P&XPwYo)zmJj`WtYaAp z$pya}Hg8hcx8=NsGZP?`3IOod6Kk%#K+Jqhm@QS%fec!&{%J{f6qUBXb zVRje@f7oDy3>x*--B0lQ1aVB(pUNEJ1rP0Q+}@lXVb$O>HOfj&92MGLB4fR{9YDdj zVyMJ4u%)1%;~i&eel&u#b<3GBJB(7O6y*!hino`)zf|^eAwZ+&+?kRBz$6mlEu%R^ zG|wQUE%kmMl?pe_6B0s6w@j?3pN^~nq`fMzdD{)Z*rpDXM9XL1eye(ZnBGd!T)`Xsyd(j4jycc~qq z8I?g;2Ae~gA1PH@4?5G?6jco~O;ePazL~h({x&H~l|}f5+XwC(p;jeH?_-TVk|c~5 zXbnFj%JYXv=XzZHCMLb6A3Hl-aHeJ~+=sJV{W|^RSF5bhh%prDW0=a5Isp-EP7Co5qxVJ~s#EvdJY`((GQ!Gs!>E?_nSthxa3k!Ds{~1w61p z^vdjZamlKYPCbcOy7(rcs7{9Z%NXlvE)5MT&zTD(dVTDzvCk1*xVv8~J z{x)Y%>-+Z$Praw{m{U~1Kecu+Quc5!-yu^H##vj?^9h>+a#vLk7X;Om84*1wS-WhTCrd( zPeB_LuiQesB3{l@&%Kr^+-l&1;xl-1ZHm0@ zQ1-9RF7e8l_AZ`&dbIMXizPzFT_?RLPPEH`-_dm&nbFDxq zVX_#8132?g2A-_cFi!3n_GY-#RkS26pX7D)naKsM#MN^YBT~P^3j8%X-`{flpMX2y z#)qpTTaf37E}14j^5%6?PNz+I zO}>a=>E4$|&JhJtHSQ%vwa8WzkFv2K24SdV=(z2ZFK17_nC5nLpsHXVnX8zC00p&d zdp6WQb&XGsnW@7ODv|G)6W!9qFae$(TQud|AN|IS>uM-Nop9cR5Oh^ZKsP!q2^S6I zGJyV2^cxd{_t=J)H{s`TnIz{4>9Ja4JJ`sCrDrs4TPxE2)upJEoj$_>MqE;}KQkb# zZFp=-;73Ckl|+H=lJRW8(;kwaSn4WYb13qUHXpd(8(r%g|Hkdv_y4Ij zdyj5t0i2zC)6}>rWT1jNe-Kg4XI_WJsSL!LK9%$&o`?5)P*{-rX68X*`2|!!<5&3 zDN(Zn(xUtdOk{`9nNqgJBOW`q?RE~mFA*OEdB{QfNGejl#VI`Gjj%hE(_mYuPDAU; zVAhbk--M94Rt%G+gNwp-#@^0+bca`GB$_uFw3{r{0ysquI+0`@r_ZNo<9UsZ$4rZL zDFUV68%;@fw@6&NGV%5%A@ss`WzTU}z9-a*%4j8pJ_X2JRjq24qh5E0n&MP#MO@zP zH~S?WXBwSvTqolTRu}e`cRhcao~%LLWd>JKdj-xi4pU=mZV23R64@%)V+b(Vxq^K1 z`c1%L%DZoYPp29`(9$rZ-6T}aAwmxNj2tVH9<7$BFSlp@ICARAh4tH@Qud)n3rSty zc;Qo3r=Px*7ZiGjV{QTLGVTp-ZW0yYqqjR}F&3s~raDj$hZ_&tu5T3t6uX$tQQe#B8!5zj09&Skrg z!cE;97(LAUOEv?7MbS;H9zsao4LD<8{zk@Kj28d<^>oaeHy6bLbuS9XJn`l{x?fd0 zL=HgSN6%kGL^aUW^3Lmwqjn=r4eAORbk2u{@; zQYV5EW;lQ1V`YeoiuL*oWvd&N(7Bo^pBZN;XXo`iGw%CTM}ad9;IVWb&-^A|N_Ml% zN%G+kYh1IUANnZxZPNEI=84lfpLw<335dKIkLpkR&_|KcZ)O;#B<>AvI$E3#|Gdgf zRbXl|F@5vBb#&piMyz=g%$^`qF81jgS(O4oE0Y5tvGIOpJDq^zpFcB)Sd9~h& z|4#i7c5tva0d1}Yr3`<5lk+F2PH3ArCHIjgQ=m|&P3Guqfy3;^Z3I2U*a)15>CMqi zpQ>)n{q}=&PeMxNFh*%(fu62hREvWRe&g3Wkgs{&()i?)Yre|ll3!6|Uww7|voKxo zA~d@!SiOSs06rN&5^@ezc!@r~nme%zh%(JEY3{Q`j+Dm(d#vs$38U`p zp4Gu%kwn(AaM`EkQ-SKdx%<`@e#ei9^aRyoGl!!yA>nWVvmg7n!4j;}H4Gk;nRE$! zHnf`7X3@l3*nO*?pme*Rpo9|u{S)`AC4|*I35L_z@8>yL9^WHs7nMV5s4AkLVO3vJ zfK(_{DCQu#@a`E(ckb6DiuwTsdF+PYyvSQjL=yOmceru%s z^Jw4gUV=yadh1Wno!*}yp`)CiAimKuz@G2oEO>mPxx#{-;P(m9teie&QU6K00<&B- zC9lcx>^M7i%+@O62?wlB;=YRF-<|#awe0adacHbYWV+hC-5|SRf341( z4w8k+9KOgmoMS=y=4`jM6hW*7 zy@3cOR09-@Ay>z@h0LBf1Nzdn%vq~UBh}M&&if8!erx4Ho@gfUrh!2CR*!4vIg7V{ z&e;09fm*)>E-Q+TAjs1UIiIk?2-w%O&)a#CW#*n z-4&ypbWBbParUUYHF(GL<<+4=sl)8oS1KQs^u%$9QAJ`=+J`;d6VUzFX*Q7vYb0H; z=Y@-e2*HK4h4EP$w^mnRic+h5Z0KkRxOZg}^yi&J*nUa2&&lHj$}8}ch9W)<$0p0) zMITa_G56f?wXXA+!2u9?1a^p&7%I^p`lO}-s;v1g4mgoZt4C|ByQl6px4 z<;Q?+?Sj|-Os(zqa$}X|Lq@0~qHbocUDU zch@Etj(#bL^1^vJ^7IX-oYT9CLPIb~0CG&C!NH~(2BhTW!Bo0eC!;ghXP&_arQ+|W zu=83g48V}?XEC4$pe1+IcyFWc{i2-J>p6~wIlAIyK~cGdGc!iUQnr-3XFlxI(n&p) z66jzNc+A+uKz26uCx~Blp62*cDZtyTM@fu`Ece08@fYVfT+Bq0BKN`-)xh=}1G0&| z4~$I>gKSoo$Sgni#>t$mi7r${xd7B+B$fBhZ^~w&L zx5cWK-Oe3~DkZqrM5;(WkHcK&i<8}7wnyJve!(gSiepsyh97N0o`bp5j>5Mt$iw$pS+ux?>MQ6SWg;x?}W{*)Id#;QAyj)y;yrt1v z!Se6ppxnh@3Tj$kaA-$`eWakN3{d5F>2*-yzOl;1Ftmp}Ls)L%;wXjovUqE@8y=A& zow;YK5~VJRd{#stPRFZ76y6KuyRb$)k1`^96HrjB>8Vi*8eC5j%|73N2COD;;@EpR zZc&B@tq$eW6B6Pk99O9YWOAGK)k*@k%g1WRHz(F-FwB50JPDujJ?)+|;@t;3@>j2Z z2y&kzNUGtu;*KC8rCt8KV8De9?ewhXQBRs-vO&93&$>&W9XSXDQhI`8Yv*s;8Y}aV ze>022mk&hbN^WR5YrMK%Y_P7Gd{IEr*2rbYiDDQ59o9HO!tV8h&y<(3mM7hg^E#)I zpF~#{g&y^(q$7*+nXmawVj>tQ2k*l{PE6C-rhQ-7Ei*Rreur46Id!9Wx44$ichK}k zj8q>YMks=n?GUHD!REyyBJLZve}Wzie!EEz^_|-PT+X7Yx^GjRtRA=!J9=R0ExV$^ zdh6_aC$S9=Y@I5$d$HkFt)eqWN_1x&WbGc7wW%Xij#pWXQ`hdt#wVcj|BO)goUek5 zPnpL3kuAH@H7I05#Bk%Pp~7cG@pIYPw|mPYPPHOguwy$TT8~so|wJY#UWMo=yQ><{|f|i(YMM(!Q{e4&C(EV9T&>7FPGX(3ohG6^* z!qP~KvGq7_8e(DI?dRj!dGk~9l9!JSMl$ldOMFyz8BB66Ri^2PvphD_)Ia`y#nhtO zlH|r@YqYSIvgDdZiL&%eE&xjwxeU|rCh2nCx7cq=|R(pEuHg~kfv$AA@{Xl z$}GzGA4Q=cS)O;tTqLli^%{INEbFup`CfA!D#?!3o-us)I6;P(Nmv`e-OXAR{&`J%)taV1Y{c8jtkfkhZTQ5b=I z^pav$Xhi7RL^H-58CJ$kuMRCS84@liJx)Q2_r5<<8{cukiQgVG`sl;U^D`YhqSBxL zQ@Nz{f0JGMAEPDkCZF4+<>`I*YX6J=S*!H0_6TuVgRHcRRzZEgeUh zqKl2tnVrV$B_MC5(r^?^gCLeLy0J(Iof9~69HGNLD!aFrC>r-t`HkC9Jf=?eNnI98 z&n2^g`e@x6#d;GTvxP+7#OD%G;kkhPiriU%=>ll7R5>28)tliAqolxZkQE9hqaj<^ zA@>7Ry~wSX6$0`RE1L$Fm&VY5_F!*Y|dmiI)MFWzCKAc#~tal0YSH zsVJM1uQ}^ZV$$V}vkS?RL-36kn!Nmh=9Oj&E*!+cMLolYZqc+HMaM#X)5 zlE0_aH8O2wMG^UkWjInBzxV_BW#sa)4Wgrh&_J5}3EC~b@QX0;7tAJw|FF@bvi_~n z5~HUMG`oX-SHt~7Yr=mWA`gS1_~*aXIqm=8Ix_4`sTXko5V+wgZ8*uZKwBstYa+S< znp)8s0Mo#ftxNwf_zCjN0Jv{(I}v5<<3qUSJMW2E(dc<9GeQXZ;1NNlwUfHrTAK{k z>=G-5@Kl#wmgTR?mq$cc@DZ#PJh>T4UvY+7a##rWV;zJuI~sRlsQP7ofK{WQm{s|3 z@50%*^YdDO$84>ufUT{fD#hn?mI{F{-a);L2Pn-Wc@$5=MI}dY0*PiAaSsn3w>X-4 zTtrCqbC58@m=V?`+<)+cgjn)jWC&{-l8EWlQ01f&@m}`+lNBdx zAwI`95}-K0w)*Rst!wd_=H_S)pBdr2ODtG3w<@G#gqNjRP9PA&x@k1~cQuDR0DT+C z8q-&m=XOdT*Yg!4Aw=0+fejjj-lk75G$LY2%ENRXOasS~4W5Mw9`xj!(g>d_p zMDdDFan3GD@pCti3^&B{9Zj5@IW^kVhinHtx_!6X(IYa6J1p73rW2J;_uh2vT)&gB zAdHmAf7YpL7U3KKXB||!0+Yi}E!9~v6MsaY@?gmb$E&ZX}@mG$7xouDb0JOCEmLeOB2zF2DN2&&Q;43 zx?Ha3c(_%GPYCf8%}6o`w7_})L_JN2Q|O+-g`?n43gJ`*#q{11+CQok1g?f&$c(zQ z4?!?Ehy$`js7TnIX@0zD_&m3S>3+hvg?x=Xv|);u-YUp8ZC(INVhGi&TJY#LZAUWK zDwj)G%sV=`-?MSU$_G%)|9y5e_EBqvF={y8hKC&QgEYhT}7Wpwzz7cdWg&b z33hGM%>7Gsq(QxRW$aMzh4^(tm)*o`U1wy)*uUB=3r@GDPn$X3QVg1!`sGT}#8Hfq ze11b-K=}2nO)j4uc^1g~U_%c(W!Ka|vsLiSy<2;w>`hScdzs*^PACmrtukzy^12o8 zoBD^hUlcQ`e9_tkoG8+rS-s(kHWMZjW79GzPew-bJeExv&+xf^VKj>ySGNO^?Rnx;}wc+YS+_9$uhPt4;TfPRD3O?-ahA)ZZzmt z<>mAR)Fml-X|jkvUWMuN-vCefmCOpY*Rvuz&@hLeph_`PoT49<_W@e$P}Vt8`QQw| z`PD?JT_g%?5)4U6@kp%stJ|xG!vz)NIlctfSe{V#;VS#Upp(!BC(pdIwic0I*I z=kadXeITKGz0(J}HTp@+GAxVjv46+4sg(Yys~LwL$36NR0^L11waMCR{$kaKyT{Sa z>6N`94a`9QRD$(vtnZ@-A>omtcvwn}tL$a00)ACOajgV(ElaLHK1ls()L4(CS-+R6 zI)j1jKP@x(BP;lm=g)r|r~N0_{w-Mn@Y5Qmd7QB&#G`M4!*}1icSFGyL+e+M`^-Mt z_F5^PTi3i&CIFxTOx~KmOMYlz_eKVdU?Xw?4`b@ROY<}|IU;k4j#l>^J|K6HZVtg<*^s&1$k) zy%640bFB1)((b{ll9*}0QRfS2Hnn}m0cG-*R3~OLzQC?FV*9nVIhOk6^6i{K%j+gueV8Ms5iER4ej*jLsr`rVYiJw|ft}OC!5ej|9k>o9e0h0hrQL zG#W#dGv=PcaQ(E1Q0HXP)2FfHspIcTB*leW;FVyUzy5-9xrt z%&;LgF9I$~(H6nX1fysi>O_=6#5pPnMVjCpvriA(>G=q>RLBDeK{yB+Nyi^Wn!oPe zKx?|=ROk@BVBXyL1cu!r`!T-X>e7Hq@jjmI^0AOCLa-7{l$cwR@5ola@&-+++&V5M z@g?sc1soks=$0m~ZqEyu8X3CB-=Cvn9x9r>u$2>*B$%b|)?PB@t2nwiC7JB5KRJ5{ z*{fbVJbYizfKLp?re0G7s}61K=>QP&#F(3&NDa=%$Fx+>MmyOy>KdY9zR4ktC%1NV zhq3Rd)LQmY`{tJ$`33RCv2wlUc|C4B9;h4z8RtCA3aw_L1qQOJt?Z+iP@>9;Jn(t8-_WzaEbdxQPfVHU7TiVg_C1ueMl!p!CnVq@$3Vh+&}DF!S} ziGupPxlpsoJxp53XVaBLI{)MF_ou|ZvaW)k$VsDFs-#)+O0r55#&gVaqU!~`p>wGL zlWUkb(++-G<2Hq^(20+9ZAwpC>1V_<$Lf*vOoi{1n{)VV0)_t=kPbT#R_?UHG{0H-g7g{LI)jsrE znD0-J;LOr~^gJ;N>?GLGWa8xqt07s~@mI`)+gg`<3AS_RHSbdwdA^1}pdotuh3z_n zh&OP62)bfHDd$ajyZHB;$mPn^>Uh48rRP5Fs$&;cKj%Bn=R8#ExtPeAv^Gp6X~bl( z)cZh1w{|!F3qQBNXXB%|2)4kikP4qenr%3`ySFZlouO=4n5&oi37Ta73DV-KqZGpx zanC`H%&1LfIK?0*<(gmn)ftylRn>h)TOrXFv;;NBnTcC3lk_I46(vS#UJzg0?fph` z@b1-0@}g-If>ueAjz2;S*~G;J*9>ugU*h$mPNfq0mG=v(@Ek?*R!(4iK%V}#>Yl$p z)7JK8f4AU@PTa+0^BUj!;L-4UB_rcCnzooatzmj@8C`BbPqf-n% zv^zChwD(k@=)g+XY52rZ%70RDk+ef-IEEzFKSNrrLX81+Ng_9LQq|hhDQmpd!Ood6 zD_^KwmPh4H_z#8`6azUx>_Pb(j{p!-o`1^C^Jf9)|7ovT!0*=j!QZoq|BGwMe-~{$ zeXwQ0TG@akzqIi7-6s9Vu3G#bQQRll1!X?&2y!#~WW}}`g!O!l&|*==H;Ho@@4txz zmbwJAze+|q;{pMx#A`ZRVJ4NN-bpU8^FOwwJVOIxm%mZ3fUz%qIb1A8i*p`PY3pB0 zPm)QQN&g9w7nAH=ehbyrka<3hMC^Vmi^e>pVerl+vg4XDGp+Dz+iYId$(EdvrP`eZ zLO0#61bcAvpZ?mUDD(*30Kzs5TaA(~ucEO2{?tFxE6uC@bL3hcxXbQ6uk0Z!6w>Tp zS5Q9oQ?<-CZnCtcXr3yXm}sM;ML<1I)yL(p&NH6=6l9iLKpH&U-8I;$dXc#*BiOUy zzH)$gKi^QomJh}2>)-xDIMydqX(T_;-_W1`9eK&<-^feZ0D0-R2i@&Idt{;UngQ-$ zwwn={;eZ)VZoP1WqRGv4_Rr{Z3(c{Wh5K{G5^fQ%9*hyl)dq>ig@iaEhZKWRk=e2a zpTea?R;$;tk#~fbq(FBM$1>!j+>${*KIena02~p5*BmD|nv1K1)Z4ckZnU0X02@u} z3}O&0Jh++y@~{HeIsFN07_cY*H=u8VY^9Sc5bLhQz_jX{@L3rJTmL=Qr8 z8g+lce2AgHIC~3QwtCs;uzs~?X7IhAAfG;)Q?*ghp++=Dqf|5jJ3J11VaIjFtT;yq zVu75C-AI!m1kG)Q+|nAVRsW)zJ>g1w*L6EavWyn?-Tx&@U=U`DMPe>=KZjjen~gqw zZ!^#g`K&r<%usMzoBU0i8fAQpCPkSC{5*js(;K00j%Z=_;*!8SG&z~-qkU{VgT-oC zIE&&Gq0IX-e=3Yp3rB@y2$t3zUQ56X>hq@`I*V1YHb5Vyzdji&ok~11_1alE_yF0U z!iAtARLW0Ltn~>`2OS^z$4stPpq9-iFZrC+`R23S_r%X|Fag*K<(kA4L^zOf^a2?N z56ZsKcaPtc>im!wY>@cT;XYlCiC$Q7DMAkDmRnek{Vjm{|I=%J4G&6ti37-E?ouSs z`R%t5JHGc5)O{Uj{T^%mYW>c<`U&!m?%lS#$x8qqt@^1m=m8L=-z%a6_NTwg(>#Ys zXT*?8ZfHXMA@DuSG*$kjwEVNO^!JMBbpwBqrcKZs82YAqEeEkopkR3t?>TR!Y3cs1QjR@f8|it|I33CM05rukF( zGnz}2I=6qZAWK?*H{7aywC@{#EYk*Iac5=7YT*)0dL%g3)0JtUwiZA;S~fDabr7nw z{~IY%XZbMb*Kc+AudVw(;`m?Ex(!>7hT!bD>4Lm_o@h%4k-;>j)yvkSD;93Y*H%9|X_TeGPPC+?T`Paa$#r>~t z*}t$Oo)T(CSf6D=oY4sRp!IQ$Eh>f2zdvzq#(^`6k2}>9eKL|x+C^OF_|2^NhhLdb z(grIo8xjGzP^L)V=4MwoQ4O?%F)@@feW|z)X)j|Qr!{q;bknP>`OjY$>9388D^V!f z_alr_w27UQnXtTN7*XoUq{P$DPj;=O+AI&C637_{`dagTN#47KM}#9v(g`)KOe8s+ zK^6ZiC0>)lrhJnYzTl%9H!jz_#tY)kf_cdcK^!g097>Xe)0%czM4+Js@A!6k$*f;% zbrg&|k*PQIQj8Lw)4#}^`h%n25VEV{@cngJ2j$u$r7*zlot+j%g;U1zJU@o<#~vO| z0wpCC5QZPCVfjh)kdx}1)jdBN47zGpnsKL>cvI{|k0t_1&_e95D$f-mR^Pw?OXg-^ zAXcHb=UW%}$BBO|&mWuOpLr{|Kv>+1hG=B5uzRpwX$2CydZ#!FdJnI2hN&HsI zpz{i+pq+dt>GcAHs%}(3{pq#+fy(*gHbc6V81(3p{kCyCIN`pJ(uW^J<&zJ4=4yZg zhZ3O%rG|yDn0&tFiF7_6t=*p@*IjG3)c~HpLGh|hMQWIl%CRBIkOUETt8zGP5AT9d zdo)}iJTk(ABY5p=-LUdYBhvOpG`kPH1IGL`xnvarzRMc|LEBQUI?nZJY*<*ag3$b@ zN`gFIyM5lBR#!QA?;Nu>Ug||5_EdmEc)rJFEzESIm-I$C^FAgkvTiZ8#mh5^F8^!q z#SksJV72QUw3@!AYwZ5oJ$^csywzo?Y}YN{tMR?jxbRhhR?`vBNH7GVUxgbO*LE~v zfSW9S4{2r_3Nkq5dy)*-ru+%I=rR*;-hpO3*YR)Q z*?t9#^RcA9`pbiETy?;7I&t*Ei>{1`YZ+WF2a)D6%N0~OPO_8q|id6cDmsR0K_>}|Y7pn=qJ_&NaqO21zI33`^XDjU5> zG&~F$aq#-%^gmYSk4^CZ^6jCubSOf)M7-+&R#kd^1=1SvLEl(G6(2qC4uxiW!zbpV z62$0NlRvC^`B!ipKKM*#dIAWfE$HnD=9xsQdpW@YdlZ^{Ricb@2jVU`YWi}@{Iwz{ zTsYdbHt8rTr|REcQrURHH;~kaavXF&_UFG}R#Y0H28Gf$Q9}FmRP?!D zo~nWb{RCZbhXmb{N=&xuaPxPcb|U3^PTLNz*Dfx&bu4_K4&<-m+xK8xRc({Xg^3eQ zrvM(_`mGlUlgl+kW~=h7oQYM8$8hAN71Z=|^7)MC5fK-@5>=(=8&1JgWzcmN%X7@3 zSG~7(2e$2*lUVd}9TwtJz+S2`kKM^n;w_fV>{@ApZi%%zvB~S|+LYIqIp0J-E_D`N z?XE^Z!_% zKla1F^!;)@4i4mpLq%MHKz^7cL-`^v-}G84m&?@nJF*XMz~u_-wYc zG(g_eh|VgE<*}f~%O`@b8bO|4p0gNfizi7fWRmYhdVsQyPL#BcnCq+sU#Ul&+$~;F%XRfXt{scA30rW_E z#IG6Z|KE7I9)UaQBS;_XK&wSoj1&~{G|zLgdfFYYWv~UM(SzAD=h|}x&uXDQ3cVpT z;4*XwO|ysYe*1np-#(bFVBS((GMW+-?|khR;~RxlycLzNc(=9kF~KGu=wog_m9|=V zn^7(AE7V-iPV}n7k;=8JbeiR+CTjFUwD6+Q(0n5qVoBA#x60ER+!8X?G0+aH6C}}jmhmyc1Fxf3 zGC24eupvIRdh1Q*$~P zx6tgsNGGjA&ylW*cqvR7drf)uEn@M0-9Xsj8e}qhQnQG(bKDDnaw6UVWu_jWg>dUn zPf{xT3A&Fxp!nmgKUU)3H_jg`@yAO15hwnLn14JK2EzV`g@44tKVsn@vG6~Og-T7w zcV~$4t4OL+Ad5~*ym>Gvv&hf5`BrZawW+yDV|}uGkVXZlOpO+JFAjjil33h$z*wJY6a@_yRSJ3-G6B%554=^zMjB&a+ExfUYz?T zSKkDDzf1i<E2Cc>n4BCmp~%e%g(qd;OH=lVUTj(8 zcVo2Nae1A$Tf$y>m5>E-knN#_fw6&gD}+w@8F$1qXS5+bObMqO{642WC&j*PLwk<0 z_-@?m>Dz)55+yO`PgC!b?dmhOn!}zGJgjGr#hA``zl}P_vp}ap-*4fB?ZxQK*`eji zguryf+qn9qJfqu#I+^BB&#%)Tu0Kg7Gi|HzfP!QGy65epXFQi)O7^_~DTSn0LCzA5aGEX9ykp3DLOYryP&J6( z|K{%W@M1-I2aiuUd(piF%O0hb-3$Xl(QM>dU0+3Tn-ce6W}gCbBdBJW=gmsJYf{Jt z*#{pBtAMTs_LtwfK^~7E8~pVzWo#jeuLyy2|3Kw?=RgLC(wQ0gPKdl|P3Wl-4#D?) zPpbGo_DYeJsl(pWw1q22LMoJBNhy;NcGmzwr}o!-R9^ZJ%GLf!hoq!So#jPp?p87R zku2ZCA|x{Ns0$#sy=$<{FYCEi4XP1gFz2~mD##R~y{-_IXNu{P0aq5wiX0?;+*GtD zN2M2ga5LHaD%EA$Cmr=5Z401WUi;5eUEE_QEe^H0AlD?kw2JON#ZdRTzPMh`hfjPp zJC=VHf3_<7hu+Lod(L=$mKSGbRTb>rY(y3Nf>Xh3R(=ZdFwj_f6@nf15NC&$eUj2j z677RsXV@ram9EofmyZ2efB8!lX#~+1T_gjSuEp&D?YE9v?Mc_WM}1i2drv6*Ux$M zV&37Jd`KeS_zw459u6||hCsNeH}kycCqL^sFq^ku%RxD>$M7%JO|Pq!J(J&xs)WAr zesC2aFG#PN*m^U4Y0$%8Q@a+g6bb#}P#!=!YV*I%mo_r?;r!z5i8zHAnXly2SvW+r zf;9f34jVEErk+Vi(&hVH+rMR16T%atK^Tizpc^gvNQDtfs3jE4rYh@>lwCxz{9qbk zyV_AaESf#cb2ncUbh=eOvE{ymk^#@QY#uX`u9iQCpd`j*PRLL%$K@9ZWSv0X&KxiGE6kpI`B^AZ~?Y1;a!6M-HTgRcX>c^Jbe@pbz4W0V84R0f7ZBT za%*sk&zJ8`rN@3aABJFK?L$EjfoH%X?odaTDPL1a4`f6;2a2p_lSN>H4rVr^!`w zDv`M<4hcA3|620BHu7@A=bks!{dsd%nX1cz%Jw3^%aj}H3HO;zeB+BU8aq{(FKf#a zaBenGg-HPQrU5#G(b2-wv^tZ)F5}wU{Ke)@A~$+Ik|gjqQ&7eey_v1ftm>r_HSi^` zx5cxJ9s<usqL=;wYY}Y7{#17@TX_T93_tVe=GxFPU1f9XG&BAFG2trTZT(lUW^|mMR;+Ql1=FWqB*+oVGH_`R1(c< zy-1QtzgU^I&ESvZJD4!O`V*KsykAK%2przzUcudEwWZ>aP(TG6+!z?e(-Z zR*B`l38a)Sjlvm2Hj(Em9xcmih|UPxj(=6@^5Ef0RktRTw3$%6+?6XsUV}0WJ)L_gF?~l~w zzhz@s8$vIRB*vmS$B!Qkj&FUawU8Z*sjIBFTVAAfo;D3^lWZ!0uz2sFAvEqKxrDqH z6L4^8-|duct9_xnu6IGsu`he>a{7gVrqYXRCFi>@wPB>#8bUlGl`RJBdJ_=Y=2ySd zTNjSgCMdtkH{FV`I5nuC=!dfKo(W!0vpQ`a$lTG#ynvtI_j8;YNS zuvj(aH!t&=C^Y8{(4CMPWHCyrrJM{~EzB z7pmFndFxt`ba*x4z33d%{xOnQ|VJIo9x zhL+=rZY4?K4uZI5p9gu=8C;a)Sx%s@UjDT51M0cc!e)W|*js4sXyA$AW9s%3&64_& z*gx^b*&+G1=j#g>nfO7J%M4_n)Lq#s+Qi80Z&q`T<}(*@4-jzT`s+6&pvy?Yb&V72IWhE4(Am;1XG<*j%`G6fWX0mbFMivOLuUxs)6Nyk z_F6(rM$?F11a3fbmVK`N)9eg`=8fV?+vMrZ0kG(N=c0sFWoXT_-IwHyp%6c zdr&s;Ow<`wXjxob7Mh*5G_T6xqVX}&)4KUHC=Lv|K+xHLfzRpmm3pcsCO_BjV|CbRe8-Xt0sQ9d}WlFLAoR z@E%j*b~{ffL+6LDp^rPJoQA_2v(&5FzxPnf zPkQKic4g?RXIQ5~y}P{5osT2PAWw-ff~riL*sJ=h1dmLpI6>7T{OaHUNr>)6V&8M~ zA74WvX#4XtK$el?%Pg|oY>1~+?DI2?Q$lmY^#xvY%Y90%O0NoUhfBAmdf0z*S_WZV zK(u3mcb}3a0aZb=GIVPkH9ND8J!W4kXJdX<%8p`L4W3aS@Nl}{EZ=Q#tXCDQ|6cUk z)Rk`!boo0QuZ;+v1r>VjSB~=HdRv_XW=b{=LSPP9NHB>LSISmj^pQZL>#$Y!HpD-x z_F-GxwFwV&A5u| zzW9WiM5dEC#wNA4UCHFd4KH8A_O0>Y<@ub5T4n6kS?}rNx#*T|`l)phqPnde=epat zJQEZe?r_dHM*Qi6`;6~CT#5hzoNt`w>~slM8Dlti5KR=pNhptRHP%y?4T(5Ybv8MC zCWQCCROfJ=XsNn#^TP2Wzx=yk;j`?=yhK)9?*=Pg5}VYDVqIaXzm8kV!wQ9q&}a_# zKVLT&VQ8)hK2N6M8eL?x{G5aG1$1TRHTOB9+pN4Y?G&MAe!2jEsiitoul3C0X6l)Q z$lw+pshbbx$R)+?t`;{va0!0ea4ZA6RB@78PwDN|c=IR)>Xen=t(42B^k}MExK}E! zc+={<1I?Kz5V;iDk7PI!nmJ}_G&Z4TYYU}EpDC-glAVuKxe%5S^Z*2+1~K9_8zCWS z+$SYU0x)et9$r!>q!n{BXx>8-3f+?d?iJTfMb_{;Pw&+C7+cct-A_HBElkZmkk z1{sCyWG{wEb%&&pLe?QWF=fffFqRD2mr_)yR7y-^8Pa5|Lu4t+ZDg4t!eAzvre;j< zb$@+-@B93o@6Yr3`hPlq*LD7n^Ej{LI37H3+>*=w-uX_zIhl;q37;cqWn)YiHusS; z`KFPTiX3lxzL#&HJJYu6X?KZP32)pUm7?evQSkR4kn4*sTbHRG5Lkf|j{gQ1S=wpj zoAInZnk5-PkE40;>c3a62f0(P`*?b#>Fp^Di#Hw2o4(p6o}OShXTou!agmA`XvN1l zwl@pk2hHK@j+1tr`mxg6f7jOswZA?CnSaw3y7T_n^E`@N`2}bZF>(W(MkbJPwlbJK zEJXK%(@t3FZ?+n5J6=z~?wN+XyrZU7R<|^8fs&ompsaqWI9=}+5L%W295r64RKZe_ zeF|_%vl)VS*p)D1QN+O+#5=JF|8fVxuLCZ}=MBGzgA$huI}}&{fCTs|e9AC=zZ3Ta zl8MdTo|ByQwYT{87{`XFT~WL>XiwDchsMQG>{bno4(>d{hT)|#E+p9qs91+&e{3j? z>jDY*WIiy_GDDX+-rlM3?o`*Fj^Jp?WZo+;PamHq zN|CmfRzUDk!7DD2A4u^`d>>qh?2nb?L0Fm-{{+jbbLf*Nn#Z@Nn>4)6ShlCOS$rTv zjup2>*OlK5${1}yqu4rt`^5~h2MZ>L6-uG)X;`XX7|eJlD>5lQRGGMho8?~$$`|00 zb^0|nG)iarK=`@PW5CuLa6Mm#!CAuRmF0LO0gd{nM-jssgp+|_SWM&1Aie?P zdf9+=8|XWks@HRktOAd~AkF1Lja?dn~w zV59P}jSn_^@lxm$6aXJ()B@8Y8OIN+1nuBX=e5qx(YsealQ!9o z9A#E1J+%An2>`$HVKW%Zk16VF6;;`r&5AtZP^?k8`9yJZ-IWdTv#fsT7r}7QkNITB zdB8Qp=olxI38ug$G3qaTy;f6nn%_Fx_g!yKZvVZyv1DQ2UUh3rF?zr!tshpVA-D|x z8_terE>plbDxLzp$(FCwBeGC8&8uX>ugkxQQXzU>X}dRAnRp;bWZaP*{Hx&Wg_AnX zO<${+h`Fh%9=NRSK72kbs%Dx~)wLDzyQXq4vw;v%8cub~yJM*8miAM)*`mv)({draBkOJ(`D%1ZC}rN+hH1UEa0=M{54OnFO=vrDgH+dDb8vAK0+!|qaYp_ zE`bf1fz$jl>UYXk`+GKP>>74TH@-BVsZUrG26*n59}|+o<#9I4iG;g!vShYA$mGn(=$pmtG~9+z51RpR1ZOsogZFFAhY%93 zVxL@G8Jjl5Urwje3?B!my~!5;by;&Lt!)1GrFmjZhZ27TE>D8foewTh$j#B@1*GJP zkxCiWoR}5)gtTO0VesjF@RK$_p?L?R5&8+KW3bYNpXu?VxyY6T2A5gNm+`Kh?4DI_ zXBlPx(9RXBy9;q2Xn&X1=m-h2J7_`*35oB~4S{CQ36Q|dW%kFNyK!)wpVT-;Ju#x4 z^7y&mim`|<;}OwK%-U#FCuZc{m(s1`60yJ)q$Ea|-@jACL$YEvJ#+XA7eCaS>FtMI zWF*_p9-31#EmtI$A5s=2q_xB-=1lRCp?J!N;+IdnjKDfQu zQ`BZ;uY2j9R~Ka839l!^5dc&)czHSM;XhC@Ae}mE{0~&z^Vc~5DuRSTqD-(v%3%9) z1~#lv8gmSAI*ll^m0@ZAj-d8uC?K+P>zcD4L0cBBPDy?Ybo)i5m1iLyYL=_r{CfNI zkumwuz|`s(N1IF##*#TY545~oWNSiy)LAZV6lVm3)1u(cA6&)qRrf|2nTr)oCV1%Q ztM*)Z2_vQ;cL(u)&??0^`A>PloKGwKZ{zE*^Y^2)ayleAb@ZU`Uxu`L5sDGB2MX7tl^m+KhDqmCR3sjK z$&&=lU)f{DWt+3`H!uNoZ$NDG2c%+dl-Z%g(&VmI6avlTl|hSl-0LF#k9DsQXsD#4 zhW3#oj2G2{%hSVfdMKj{kU%djjXO4T&e7qyd~3q^KhEE(t4C?f4{ux=Iv?rk=kGIo zeP)jyMA?CAwMpf&BY{NXBYev5bzJ6rl+YT*>S61LxCh?nUlnY*bxcGDxrI30Y;|bd zC+qnA)!vqzv{b!sqq)$=;nqG>DjN#M^8)LMElc!`I%-T-!jOmd!!O@#$7uV}&2Lfr_B z8tY3(zmKP7vK#05&i=XUvWi5kuAY1a>=baOZBynAP3 zi>g&Sf6uLJam@k2xH8On9xM+8p-W8m6hb(MyeG%aFUAeTD-vh=RbqwHk3YQWz&zS1 zJ|&zNhzZ##jz?u%J?lZqauD>C`uVDCKVd?$)pYN;r~M0ahRLbt2ikD%q8rl}H?&IC zWt7F51xt5G=4%K=^qYBPS1syN~JoOqXLY2Mwtp`si> zMil`TeYP&hjmOAyE=M=0eZ-hPTusrM%)Gy@JQRM^J3v5h%;7`!wDLuJYg*dDw_;s$ z1Oq&dZ;iI3H`FcUd-w4*#-fbqZKO%{Ekjhu>+?!&aq$k9ax9Bw_7wWhzCZl_;&02$ z6yXQLY#eK}&uIq5J-dJ$*Eh?RfHNwQ?BHgB3b(C<)_Y5X)BM#aifweW01J?Nk)c@~ z%4jkT)dk zz*sOugXh5ZaBZQfsxr)|FReeRvvuN1DfQ25ikd^lrYTQPxk`$i?*DpC5OwNzEIVtb z0tiuwTTPK?!LxYY$;>UfR%T7{cA@ObE6py4MUc~O=20=2bLutYANwI0=b4B!SR&Kj zj)lmFC9(8+|A3T!)H$1kwth65QBqcX;F6ebourJ(YKzH9D=%~v8hh^`O!9aS%o8r) zY}JFztgZ*LJ^XzWSb{lOl~d8v^=eJD&#Nn%H@u}M_z236;rfV%2Ldd;Ie+` zz@7@jCy*+{xEc49%M<@n-Jl}kl78EOhQQm@pU8CbZd*;XR`0SGCzsXZ&UvutWnN!) zza6GzbKg5>$ulsmuu4tzcvA`J+K~~Fd80p|OISIMH^oo;Eyt17|_MJwC%M zqaIDqJ)>5s#+5Y=c1|k@a_lJkk|*3iDpxan4d9{v?eCLkI8H09B$l72dhlB);a?-L<^hq`U?yRRl@ zYUNsK6GG2k>|kx#nZ*19yYmh{6n$;`3(ANDSXOp8tFRljH`3C}cQohWJ+4QeQse$p z-@h+isk3?C*^WwZu@|onwTZ2q?3)u*`-}~Fvw1`5&nI?}8_yy9q%HOc_caRbokyZ~co5?;SMZ1S9#I+dD`t^nu`yw@stB`_& zh`^<-p96Su3nJ|?A5w|DVI|bElL_UitM|A7Eh%`*OOZdKX7Vd(Qr|;sGo$qWWEI9` zCx4lR>PFp20jvWH8%PRuJhQUFC@pXPP|mNQlG(X;GESG@*N$9$bF@>l5!ke3?{t_Y z+xJb*fo#P&r};L!e)jt5I<-BO=c8Mj#sjv30+e;^rL*$8;o|4)7OtwG))Tqr96{P9 zPkUIe(@(Z#9EPgnIgAt0#hz6cbj3@3d=PQ(L++-_jVv93XZ$4kAf&7URucz__8nm)Gh?;owqu^I!f1 zrY`a=F>610C_Xk`Dt98RPP#yfe z)q`^{kg)e?SG{a9{Ho4ML;vuN+XFTa(niPl5VRy5ptG``p~2k%cQJ!c#q7UY8!=QJ zZo&3P`dOClbGA)_v8qpS4H6_?h|znDET$=K3Rw_3se}~`Dz{X7A`OlB6_lZooa?&4JS;Mt>c2>PZm?_6EvIAkOKxkg^U&Mmg<%XzhV zAsa`HRG=BAakV*ubm6WUJ$gbf85~|E1H&#%$JVb_v}V`4Z~0eAs2r|&bHhm`KuT`W ze?GIjP=rY?FgF5zi|I1t>rlf=h7unG7cH4dPCuYO@_prw$JJv5)UuY0?>wQa6S9Il z7LI*|%r{HkjTRjTuFk(&y9TBfvbwMR_9Z0@MJ#R-t;#TzysUUiCrB+YXL}TyGVmLG z6C=&M*JUNK=m%kjrjkwsH00|saBEyUgM{0y3E@I=)Kj4$9{P!t#Aw%4gLhG)J1AhRMr&G@Wrw)GC-YE52LesClcjGO;0&eTyRr@Ep6p@#XFzlZ73# zd@c+n<+#0eX}adePPG0 zH$6uz8CjKJR0g>ou=gFbgSeiu+Z~$Wwa-OJAq@k51VmM(6w^==e;bxpuUM=_28T4l z(zPf2B}SZ#e_nE2b&me<7wF%0Zu;NnFk5sZj@BsS2YnQRpg%y+3ho&aU{Ax(SSlQz z9$40B^6uB|cGM`nwfH@9&g`u&uwSa*-mw_@XTM~pB2Ogf1N)^%FKPvjZOcXc|H6@f SB`W#vv;WrZ|9S`hO#KfcLu^z4 literal 0 HcmV?d00001 diff --git a/examples/trials/mnist-cascading-search-space/config.yml b/examples/trials/mnist-cascading-search-space/config.yml index 707ad86295..1c2a4643a4 100644 --- a/examples/trials/mnist-cascading-search-space/config.yml +++ b/examples/trials/mnist-cascading-search-space/config.yml @@ -17,4 +17,4 @@ tuner: trial: command: python3 mnist.py codeDir: . - gpuNum: 0 \ No newline at end of file + gpuNum: 0 From d066896d88af71043fda4d0f634f701bb6fb8668 Mon Sep 17 00:00:00 2001 From: Xiaohui Xue Date: Fri, 14 Dec 2018 16:00:08 +0800 Subject: [PATCH 14/31] update --- docs/img/nni_arch_overview.png | Bin 0 -> 126232 bytes 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 docs/img/nni_arch_overview.png diff --git a/docs/img/nni_arch_overview.png b/docs/img/nni_arch_overview.png new file mode 100644 index 0000000000000000000000000000000000000000..621f16a0ddfde3bdef49058aff64baaf36b82e01 GIT binary patch literal 126232 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�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 SB`W#vv;WrZ|9S`hO#KfcLu^z4 literal 0 HcmV?d00001 From 096f69b43526ae2999219577ece8cccfc65b5b49 Mon Sep 17 00:00:00 2001 From: Xiaohui Xue Date: Fri, 14 Dec 2018 16:02:29 +0800 Subject: [PATCH 15/31] update --- docs/img/nni_arch_overview.png.jpg | Bin 126232 -> 0 bytes 1 file changed, 0 insertions(+), 0 deletions(-) delete mode 100644 docs/img/nni_arch_overview.png.jpg diff --git a/docs/img/nni_arch_overview.png.jpg b/docs/img/nni_arch_overview.png.jpg deleted file mode 100644 index 621f16a0ddfde3bdef49058aff64baaf36b82e01..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 126232 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�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 SB`W#vv;WrZ|9S`hO#KfcLu^z4 From 4d989a6029a4e40a7e8fecade74ac80d5b7428a1 Mon Sep 17 00:00:00 2001 From: xuehui1991 Date: Wed, 16 Jan 2019 13:37:22 +0800 Subject: [PATCH 16/31] update home page --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index 1bae405f43..a6d165d276 100644 --- a/README.md +++ b/README.md @@ -109,6 +109,7 @@ You can use these commands to get more information about the experiment * [Use NNIBoard](docs/WebUI.md) * [How to define search space](docs/SearchSpaceSpec.md) * [How to define a trial](docs/howto_1_WriteTrial.md) +* [How to choose tuner/search-algorithm](docs/HowToChooseTuner.md) * [Config an experiment](docs/ExperimentConfig.md) * [How to use annotation](docs/howto_1_WriteTrial.md#nni-python-annotation) ## **Tutorials** From 377ddad7d207419067d8e71b5ee3a6762a13356b Mon Sep 17 00:00:00 2001 From: xuehui1991 Date: Wed, 24 Apr 2019 00:04:45 -0400 Subject: [PATCH 17/31] update default value of metis tuner --- src/sdk/pynni/nni/metis_tuner/metis_tuner.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/sdk/pynni/nni/metis_tuner/metis_tuner.py b/src/sdk/pynni/nni/metis_tuner/metis_tuner.py index e0e2c2248c..80c0713488 100644 --- a/src/sdk/pynni/nni/metis_tuner/metis_tuner.py +++ b/src/sdk/pynni/nni/metis_tuner/metis_tuner.py @@ -65,7 +65,7 @@ class MetisTuner(Tuner): https://www.microsoft.com/en-us/research/publication/metis-robustly-tuning-tail-latencies-cloud-systems/ """ - def __init__(self, optimize_mode="maximize", no_resampling=True, no_candidates=True, + def __init__(self, optimize_mode="maximize", no_resampling=True, no_candidates=False, selection_num_starting_points=600, cold_start_num=10, exploration_probability=0.9): """ Parameters From 4465706ac648f5a80496e8f5f2ba1b5de8fefa2b Mon Sep 17 00:00:00 2001 From: Xiaohui Xue Date: Wed, 22 May 2019 11:22:27 +0800 Subject: [PATCH 18/31] fix broken link in CommunitySharings --- docs/en_US/BuiltinTuner.md | 2 +- .../{NniPracticeSharing/HpoComparison.md => HpoComparision.md} | 0 .../NasComparison.md => NasComparision.md} | 0 3 files changed, 1 insertion(+), 1 deletion(-) rename docs/en_US/CommunitySharings/{NniPracticeSharing/HpoComparison.md => HpoComparision.md} (100%) rename docs/en_US/CommunitySharings/{AutomlPracticeSharing/NasComparison.md => NasComparision.md} (100%) diff --git a/docs/en_US/BuiltinTuner.md b/docs/en_US/BuiltinTuner.md index a84d159aa2..336eecce91 100644 --- a/docs/en_US/BuiltinTuner.md +++ b/docs/en_US/BuiltinTuner.md @@ -2,7 +2,7 @@ NNI provides state-of-the-art tuning algorithm as our builtin-tuners and makes them easy to use. Below is the brief summary of NNI currently built-in Tuners: -Note: Click the **Tuner's name** to get a detailed description of the algorithm, click the corresponding **Usage** to get the Tuner's installation requirements, suggested scenario and using example. Here is an [article](./Blog/HPOComparison.md) about the comparison of different Tuners on several problems. +Note: Click the **Tuner's name** to get a detailed description of the algorithm, click the corresponding **Usage** to get the Tuner's installation requirements, suggested scenario and using example. Here is an [article](./CommunitySharings/HPOComparison.md) about the comparison of different Tuners on several problems. Currently we support the following algorithms: diff --git a/docs/en_US/CommunitySharings/NniPracticeSharing/HpoComparison.md b/docs/en_US/CommunitySharings/HpoComparision.md similarity index 100% rename from docs/en_US/CommunitySharings/NniPracticeSharing/HpoComparison.md rename to docs/en_US/CommunitySharings/HpoComparision.md diff --git a/docs/en_US/CommunitySharings/AutomlPracticeSharing/NasComparison.md b/docs/en_US/CommunitySharings/NasComparision.md similarity index 100% rename from docs/en_US/CommunitySharings/AutomlPracticeSharing/NasComparison.md rename to docs/en_US/CommunitySharings/NasComparision.md From 2550f5dd71f932586a99c83fb751092d593a4cff Mon Sep 17 00:00:00 2001 From: Xiaohui Xue Date: Tue, 28 May 2019 09:51:06 +0800 Subject: [PATCH 19/31] update docs about nested search space --- docs/en_US/SearchSpaceSpec.md | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/docs/en_US/SearchSpaceSpec.md b/docs/en_US/SearchSpaceSpec.md index 0a5f06737f..c984002d7f 100644 --- a/docs/en_US/SearchSpaceSpec.md +++ b/docs/en_US/SearchSpaceSpec.md @@ -82,7 +82,7 @@ All types of sampling strategies and their parameter are listed here: | Evolution Tuner | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | | SMAC Tuner | ✓ | ✓ | ✓ | ✓ | ✓ | | | | | | | Batch Tuner | ✓ | | | | | | | | | | -| Grid Search Tuner | ✓ | | | ✓ | | ✓ | | | | | +| Grid Search Tuner | ✓ | | | ✓ | | ✓ | | | | | | Hyperband Advisor | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | | Metis Tuner | ✓ | ✓ | ✓ | ✓ | | | | | | | @@ -92,3 +92,5 @@ Note that In Grid Search Tuner, for users' convenience, the definition of `qunif * Type 'qloguniform' behaves like 'quniform' except that it will first change the range to [log(low), log(high)] and sample and then change the sampled value back. Note that Metis Tuner only support numerical `choice` now + +Note the Only Random Search/TPE/Anneal/Evolution tuner support nested search sapce. Fow now, we don't support showing nested search space in WebUI. From 71a93e63a2671600533465e885e2f6d7e80d941a Mon Sep 17 00:00:00 2001 From: Xiaohui Xue Date: Tue, 28 May 2019 09:51:45 +0800 Subject: [PATCH 20/31] update docs --- docs/en_US/SearchSpaceSpec.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/en_US/SearchSpaceSpec.md b/docs/en_US/SearchSpaceSpec.md index c984002d7f..b5b122f428 100644 --- a/docs/en_US/SearchSpaceSpec.md +++ b/docs/en_US/SearchSpaceSpec.md @@ -82,7 +82,7 @@ All types of sampling strategies and their parameter are listed here: | Evolution Tuner | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | | SMAC Tuner | ✓ | ✓ | ✓ | ✓ | ✓ | | | | | | | Batch Tuner | ✓ | | | | | | | | | | -| Grid Search Tuner | ✓ | | | ✓ | | ✓ | | | | | +| Grid Search Tuner | ✓ | | | ✓ | | ✓ | | | | | | Hyperband Advisor | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | | Metis Tuner | ✓ | ✓ | ✓ | ✓ | | | | | | | From 89e13e455a73d5229bb3dac69b28555f1cf0dd93 Mon Sep 17 00:00:00 2001 From: Xiaohui Xue Date: Tue, 28 May 2019 10:12:16 +0800 Subject: [PATCH 21/31] rename cascding to nested --- docs/en_US/MnistExamples.md | 2 +- docs/en_US/SearchSpaceSpec.md | 2 +- docs/zh_CN/MnistExamples.md | 2 +- docs/zh_CN/SearchSpaceSpec.md | 2 +- .../config.yml | 2 +- .../mnist.py | 2 +- .../requirments.txt | 0 .../sample.json | 0 .../search_space.json | 0 ...arch-space.test.yml => mnist-nested-search-space.test.yml} | 4 ++-- 10 files changed, 8 insertions(+), 8 deletions(-) rename examples/trials/{mnist-cascading-search-space => mnist-nested-search-space}/config.yml (86%) rename examples/trials/{mnist-cascading-search-space => mnist-nested-search-space}/mnist.py (99%) rename examples/trials/{mnist-cascading-search-space => mnist-nested-search-space}/requirments.txt (100%) rename examples/trials/{mnist-cascading-search-space => mnist-nested-search-space}/sample.json (100%) rename examples/trials/{mnist-cascading-search-space => mnist-nested-search-space}/search_space.json (100%) rename test/config_test/examples/{mnist-cascading-search-space.test.yml => mnist-nested-search-space.test.yml} (72%) diff --git a/docs/en_US/MnistExamples.md b/docs/en_US/MnistExamples.md index 916c32f153..5393a0eff5 100644 --- a/docs/en_US/MnistExamples.md +++ b/docs/en_US/MnistExamples.md @@ -51,7 +51,7 @@ This example is to show how to use hyperband to tune the model. There is one mor This example is to show that NNI also support nested search space. The search space file is an example of how to define nested search space. -`code directory: examples/trials/mnist-cascading-search-space/` +`code directory: examples/trials/mnist-nested-search-space/` **distributed MNIST (tensorflow) using kubeflow** diff --git a/docs/en_US/SearchSpaceSpec.md b/docs/en_US/SearchSpaceSpec.md index b5b122f428..542018cd81 100644 --- a/docs/en_US/SearchSpaceSpec.md +++ b/docs/en_US/SearchSpaceSpec.md @@ -29,7 +29,7 @@ All types of sampling strategies and their parameter are listed here: * Which means the variable's value is one of the options. Here 'options' should be a list. Each element of options is a number of string. It could also be a nested sub-search-space, this sub-search-space takes effect only when the corresponding element is chosen. The variables in this sub-search-space could be seen as conditional variables. - * An simple [example](../../examples/trials/mnist-cascading-search-space/search_space.json) of [nested] search space definition. If an element in the options list is a dict, it is a sub-search-space, and for our built-in tuners you have to add a key '_name' in this dict, which helps you to identify which element is chosen. Accordingly, here is a [sample](../../examples/trials/mnist-cascading-search-space/sample.json) which users can get from nni with nested search space definition. Tuners which support nested search space is as follows: + * An simple [example](../../examples/trials/mnist-nested-search-space/search_space.json) of [nested] search space definition. If an element in the options list is a dict, it is a sub-search-space, and for our built-in tuners you have to add a key '_name' in this dict, which helps you to identify which element is chosen. Accordingly, here is a [sample](../../examples/trials/mnist-nested-search-space/sample.json) which users can get from nni with nested search space definition. Tuners which support nested search space is as follows: - Random Search - TPE diff --git a/docs/zh_CN/MnistExamples.md b/docs/zh_CN/MnistExamples.md index 2268d79c5b..c1402f0edc 100644 --- a/docs/zh_CN/MnistExamples.md +++ b/docs/zh_CN/MnistExamples.md @@ -51,7 +51,7 @@ 此样例演示了 NNI 如何支持嵌套的搜索空间。 搜索空间文件示了如何定义嵌套的搜索空间。 -`代码目录: examples/trials/mnist-cascading-search-space/` +`代码目录: examples/trials/mnist-nested-search-space/` **用 Kubeflow 运行分布式的 MNIST (tensorflow)** diff --git a/docs/zh_CN/SearchSpaceSpec.md b/docs/zh_CN/SearchSpaceSpec.md index d7379cd0d0..18c432d76b 100644 --- a/docs/zh_CN/SearchSpaceSpec.md +++ b/docs/zh_CN/SearchSpaceSpec.md @@ -29,7 +29,7 @@ * 表示变量的值是选项之一。 这里的 'options' 是一个数组。 选项的每个元素都是字符串。 也可以是嵌套的子搜索空间。此子搜索空间仅在相应的元素选中后才起作用。 该子搜索空间中的变量可看作是条件变量。 - * 这是个简单的 [nested] 搜索空间定义的[示例](../../examples/trials/mnist-cascading-search-space/search_space.json)。 如果选项列表中的元素是 dict,则它是一个子搜索空间,对于内置的 Tuner,必须在此 dict 中添加键 “_name”,这有助于标识选中的元素。 相应的,这是从 NNI 中获得的嵌套搜索空间定义的[示例](../../examples/trials/mnist-cascading-search-space/sample.json)。 以下 Tuner 支持嵌套搜索空间: + * 这是个简单的 [nested] 搜索空间定义的[示例](../../examples/trials/mnist-nested-search-space/search_space.json)。 如果选项列表中的元素是 dict,则它是一个子搜索空间,对于内置的 Tuner,必须在此 dict 中添加键 “_name”,这有助于标识选中的元素。 相应的,这是从 NNI 中获得的嵌套搜索空间定义的[示例](../../examples/trials/mnist-nested-search-space/sample.json)。 以下 Tuner 支持嵌套搜索空间: * Random Search(随机搜索) * TPE diff --git a/examples/trials/mnist-cascading-search-space/config.yml b/examples/trials/mnist-nested-search-space/config.yml similarity index 86% rename from examples/trials/mnist-cascading-search-space/config.yml rename to examples/trials/mnist-nested-search-space/config.yml index 1c2a4643a4..7c1715b97c 100644 --- a/examples/trials/mnist-cascading-search-space/config.yml +++ b/examples/trials/mnist-nested-search-space/config.yml @@ -1,5 +1,5 @@ authorName: default -experimentName: mnist-cascading-search-space +experimentName: mnist-nested-search-space trialConcurrency: 2 maxExecDuration: 1h maxTrialNum: 100 diff --git a/examples/trials/mnist-cascading-search-space/mnist.py b/examples/trials/mnist-nested-search-space/mnist.py similarity index 99% rename from examples/trials/mnist-cascading-search-space/mnist.py rename to examples/trials/mnist-nested-search-space/mnist.py index a90c7640cb..ed892ff2b5 100644 --- a/examples/trials/mnist-cascading-search-space/mnist.py +++ b/examples/trials/mnist-nested-search-space/mnist.py @@ -14,7 +14,7 @@ import nni -logger = logging.getLogger('mnist_cascading_search_space') +logger = logging.getLogger('mnist_nested_search_space') FLAGS = None class MnistNetwork(object): diff --git a/examples/trials/mnist-cascading-search-space/requirments.txt b/examples/trials/mnist-nested-search-space/requirments.txt similarity index 100% rename from examples/trials/mnist-cascading-search-space/requirments.txt rename to examples/trials/mnist-nested-search-space/requirments.txt diff --git a/examples/trials/mnist-cascading-search-space/sample.json b/examples/trials/mnist-nested-search-space/sample.json similarity index 100% rename from examples/trials/mnist-cascading-search-space/sample.json rename to examples/trials/mnist-nested-search-space/sample.json diff --git a/examples/trials/mnist-cascading-search-space/search_space.json b/examples/trials/mnist-nested-search-space/search_space.json similarity index 100% rename from examples/trials/mnist-cascading-search-space/search_space.json rename to examples/trials/mnist-nested-search-space/search_space.json diff --git a/test/config_test/examples/mnist-cascading-search-space.test.yml b/test/config_test/examples/mnist-nested-search-space.test.yml similarity index 72% rename from test/config_test/examples/mnist-cascading-search-space.test.yml rename to test/config_test/examples/mnist-nested-search-space.test.yml index 1904afac64..accbd8b88f 100644 --- a/test/config_test/examples/mnist-cascading-search-space.test.yml +++ b/test/config_test/examples/mnist-nested-search-space.test.yml @@ -3,7 +3,7 @@ experimentName: default_test maxExecDuration: 5m maxTrialNum: 4 trialConcurrency: 2 -searchSpacePath: ../../../examples/trials/mnist-cascading-search-space/search_space.json +searchSpacePath: ../../../examples/trials/mnist-nested-search-space/search_space.json tuner: #choice: TPE, Random, Anneal, Evolution @@ -13,7 +13,7 @@ assessor: classArgs: optimize_mode: maximize trial: - codeDir: ../../../examples/trials/mnist-cascading-search-space + codeDir: ../../../examples/trials/mnist-nested-search-space command: python3 mnist.py --batch_num 100 gpuNum: 0 From 2c9914d1d3e82649f67e6f718b0624515dabcdd9 Mon Sep 17 00:00:00 2001 From: Xiaohui Xue Date: Tue, 28 May 2019 11:13:59 +0800 Subject: [PATCH 22/31] fix broken link --- docs/en_US/SearchSpaceSpec.md | 2 +- docs/zh_CN/SearchSpaceSpec.md | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/en_US/SearchSpaceSpec.md b/docs/en_US/SearchSpaceSpec.md index 542018cd81..0a88c47487 100644 --- a/docs/en_US/SearchSpaceSpec.md +++ b/docs/en_US/SearchSpaceSpec.md @@ -29,7 +29,7 @@ All types of sampling strategies and their parameter are listed here: * Which means the variable's value is one of the options. Here 'options' should be a list. Each element of options is a number of string. It could also be a nested sub-search-space, this sub-search-space takes effect only when the corresponding element is chosen. The variables in this sub-search-space could be seen as conditional variables. - * An simple [example](../../examples/trials/mnist-nested-search-space/search_space.json) of [nested] search space definition. If an element in the options list is a dict, it is a sub-search-space, and for our built-in tuners you have to add a key '_name' in this dict, which helps you to identify which element is chosen. Accordingly, here is a [sample](../../examples/trials/mnist-nested-search-space/sample.json) which users can get from nni with nested search space definition. Tuners which support nested search space is as follows: + * An simple [example](https://github.com/microsoft/nni/tree/master/examples/trials/mnist-nested-search-space/search_space.json) of [nested] search space definition. If an element in the options list is a dict, it is a sub-search-space, and for our built-in tuners you have to add a key '_name' in this dict, which helps you to identify which element is chosen. Accordingly, here is a [sample](https://github.com/microsoft/nni/tree/master/examples/trials/mnist-nested-search-space/sample.json) which users can get from nni with nested search space definition. Tuners which support nested search space is as follows: - Random Search - TPE diff --git a/docs/zh_CN/SearchSpaceSpec.md b/docs/zh_CN/SearchSpaceSpec.md index 18c432d76b..c8c7829ec3 100644 --- a/docs/zh_CN/SearchSpaceSpec.md +++ b/docs/zh_CN/SearchSpaceSpec.md @@ -29,7 +29,7 @@ * 表示变量的值是选项之一。 这里的 'options' 是一个数组。 选项的每个元素都是字符串。 也可以是嵌套的子搜索空间。此子搜索空间仅在相应的元素选中后才起作用。 该子搜索空间中的变量可看作是条件变量。 - * 这是个简单的 [nested] 搜索空间定义的[示例](../../examples/trials/mnist-nested-search-space/search_space.json)。 如果选项列表中的元素是 dict,则它是一个子搜索空间,对于内置的 Tuner,必须在此 dict 中添加键 “_name”,这有助于标识选中的元素。 相应的,这是从 NNI 中获得的嵌套搜索空间定义的[示例](../../examples/trials/mnist-nested-search-space/sample.json)。 以下 Tuner 支持嵌套搜索空间: + * 这是个简单的 [nested] 搜索空间定义的[示例](https://github.com/microsoft/nni/tree/master/examples/trials/mnist-nested-search-space/search_space.json)。 如果选项列表中的元素是 dict,则它是一个子搜索空间,对于内置的 Tuner,必须在此 dict 中添加键 “_name”,这有助于标识选中的元素。 相应的,这是从 NNI 中获得的嵌套搜索空间定义的[示例](https://github.com/microsoft/nni/tree/master/examples/trials/mnist-nested-search-space/sample.json)。 以下 Tuner 支持嵌套搜索空间: * Random Search(随机搜索) * TPE From fb721abafb9d01f5bae4dc8e828aaee89b85e8fb Mon Sep 17 00:00:00 2001 From: Xiaohui Xue Date: Tue, 28 May 2019 11:21:37 +0800 Subject: [PATCH 23/31] update --- docs/en_US/SearchSpaceSpec.md | 18 +++++++++++++----- 1 file changed, 13 insertions(+), 5 deletions(-) diff --git a/docs/en_US/SearchSpaceSpec.md b/docs/en_US/SearchSpaceSpec.md index 0a88c47487..f15f932944 100644 --- a/docs/en_US/SearchSpaceSpec.md +++ b/docs/en_US/SearchSpaceSpec.md @@ -86,11 +86,19 @@ All types of sampling strategies and their parameter are listed here: | Hyperband Advisor | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | | Metis Tuner | ✓ | ✓ | ✓ | ✓ | | | | | | | -Note that In Grid Search Tuner, for users' convenience, the definition of `quniform` and `qloguniform` change, where q here specifies the number of values that will be sampled. Details about them are listed as follows -* Type 'quniform' will receive three values [low, high, q], where [low, high] specifies a range and 'q' specifies the number of values that will be sampled evenly. Note that q should be at least 2. It will be sampled in a way that the first sampled value is 'low', and each of the following values is (high-low)/q larger that the value in front of it. -* Type 'qloguniform' behaves like 'quniform' except that it will first change the range to [log(low), log(high)] and sample and then change the sampled value back. +Known Limitations: -Note that Metis Tuner only support numerical `choice` now +* Note that In Grid Search Tuner, for users' convenience, the definition of `quniform` and `qloguniform` change, where q here specifies the number of values that will be sampled. Details about them are listed as follows -Note the Only Random Search/TPE/Anneal/Evolution tuner support nested search sapce. Fow now, we don't support showing nested search space in WebUI. + * Type 'quniform' will receive three values [low, high, q], where [low, high] specifies a range and 'q' specifies the number of values that will be sampled evenly. Note that q should be at least 2. It will be sampled in a way that the first sampled value is 'low', and each of the following values is (high-low)/q larger that the value in front of it. + + * Type 'qloguniform' behaves like 'quniform' except that it will first change the range to [log(low), log(high)] and sample and then change the sampled value back. + +* Note that Metis Tuner only support numerical `choice` now + +* Note that for nested search space: + + * Only Random Search/TPE/Anneal/Evolution tuner supports nested search space + + * We do not support nested search space "Hyper Parameter" parallel graph now, the enhancement is being considered in #1110(https://github.com/microsoft/nni/pull/1115), any suggestions or discussions or contributions are warmly welcomed From 593edb7f05644ab4b14fc682b1310e9691a59df8 Mon Sep 17 00:00:00 2001 From: Xiaohui Xue Date: Tue, 28 May 2019 11:23:24 +0800 Subject: [PATCH 24/31] update issue link --- docs/en_US/SearchSpaceSpec.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/en_US/SearchSpaceSpec.md b/docs/en_US/SearchSpaceSpec.md index f15f932944..fe9287d632 100644 --- a/docs/en_US/SearchSpaceSpec.md +++ b/docs/en_US/SearchSpaceSpec.md @@ -101,4 +101,4 @@ Known Limitations: * Only Random Search/TPE/Anneal/Evolution tuner supports nested search space - * We do not support nested search space "Hyper Parameter" parallel graph now, the enhancement is being considered in #1110(https://github.com/microsoft/nni/pull/1115), any suggestions or discussions or contributions are warmly welcomed + * We do not support nested search space "Hyper Parameter" parallel graph now, the enhancement is being considered in #1110(https://github.com/microsoft/nni/issues/1110), any suggestions or discussions or contributions are warmly welcomed From 0d3e6b64bc9f6ef4738a0edec459809057632341 Mon Sep 17 00:00:00 2001 From: Xiaohui Xue Date: Tue, 28 May 2019 12:39:45 +0800 Subject: [PATCH 25/31] fix typo --- docs/en_US/SearchSpaceSpec.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/en_US/SearchSpaceSpec.md b/docs/en_US/SearchSpaceSpec.md index fe9287d632..843c77200b 100644 --- a/docs/en_US/SearchSpaceSpec.md +++ b/docs/en_US/SearchSpaceSpec.md @@ -95,7 +95,7 @@ Known Limitations: * Type 'qloguniform' behaves like 'quniform' except that it will first change the range to [log(low), log(high)] and sample and then change the sampled value back. -* Note that Metis Tuner only support numerical `choice` now +* Note that Metis Tuner only supports numerical `choice` now * Note that for nested search space: From 216f1f2ee5d6f501304fea53f6c3a66776f99179 Mon Sep 17 00:00:00 2001 From: Xiaohui Xue Date: Mon, 24 Jun 2019 10:45:16 +0800 Subject: [PATCH 26/31] update evaluate parameters from GMM --- .../metis_tuner/Regression_GMM/Selection.py | 12 ++-- src/sdk/pynni/nni/metis_tuner/metis_tuner.py | 62 ++++++++++++------- 2 files changed, 47 insertions(+), 27 deletions(-) diff --git a/src/sdk/pynni/nni/metis_tuner/Regression_GMM/Selection.py b/src/sdk/pynni/nni/metis_tuner/Regression_GMM/Selection.py index 4507e30886..056ba5748c 100644 --- a/src/sdk/pynni/nni/metis_tuner/Regression_GMM/Selection.py +++ b/src/sdk/pynni/nni/metis_tuner/Regression_GMM/Selection.py @@ -49,15 +49,19 @@ def selection_r(x_bounds, num_starting_points=100, minimize_constraints_fun=None): ''' - Call selection + Select using different types. ''' - minimize_starting_points = [lib_data.rand(x_bounds, x_types)\ - for i in range(0, num_starting_points)] + if ("discrete_int" in x_types) == True or ("range_int" in x_types) == True: + minimize_starting_points = [lib_data.rand(x_bounds, x_types) for i in range(0, num_starting_points)] + else: + minimize_starting_points = clusteringmodel_gmm_good.sample(n_samples=num_starting_points) + outputs = selection(x_bounds, x_types, clusteringmodel_gmm_good, clusteringmodel_gmm_bad, - minimize_starting_points, + minimize_starting_points[0], minimize_constraints_fun) + return outputs def selection(x_bounds, diff --git a/src/sdk/pynni/nni/metis_tuner/metis_tuner.py b/src/sdk/pynni/nni/metis_tuner/metis_tuner.py index dd1e273280..ff9a34f8aa 100644 --- a/src/sdk/pynni/nni/metis_tuner/metis_tuner.py +++ b/src/sdk/pynni/nni/metis_tuner/metis_tuner.py @@ -20,15 +20,15 @@ import copy import logging +import numpy as np import os import random import statistics import sys +import warnings from enum import Enum, unique from multiprocessing.dummy import Pool as ThreadPool -import numpy as np - import nni.metis_tuner.lib_constraint_summation as lib_constraint_summation import nni.metis_tuner.lib_data as lib_data import nni.metis_tuner.Regression_GMM.CreateModel as gmm_create_model @@ -42,8 +42,6 @@ logger = logging.getLogger("Metis_Tuner_AutoML") - - NONE_TYPE = '' CONSTRAINT_LOWERBOUND = None CONSTRAINT_UPPERBOUND = None @@ -254,6 +252,9 @@ def _selection(self, samples_x, samples_y_aggregation, samples_y, threshold_samplessize_resampling=50, no_candidates=False, minimize_starting_points=None, minimize_constraints_fun=None): + with warnings.catch_warnings(): + warnings.simplefilter("ignore") + next_candidate = None candidates = [] samples_size_all = sum([len(i) for i in samples_y]) @@ -271,13 +272,12 @@ def _selection(self, samples_x, samples_y_aggregation, samples_y, minimize_constraints_fun=minimize_constraints_fun) if not lm_current: return None - - if no_candidates is False: - candidates.append({'hyperparameter': lm_current['hyperparameter'], + logger.info({'hyperparameter': lm_current['hyperparameter'], 'expected_mu': lm_current['expected_mu'], 'expected_sigma': lm_current['expected_sigma'], 'reason': "exploitation_gp"}) + if no_candidates is False: # ===== STEP 2: Get recommended configurations for exploration ===== results_exploration = gp_selection.selection( "lc", @@ -290,34 +290,48 @@ def _selection(self, samples_x, samples_y_aggregation, samples_y, if results_exploration is not None: if _num_past_samples(results_exploration['hyperparameter'], samples_x, samples_y) == 0: - candidates.append({'hyperparameter': results_exploration['hyperparameter'], + temp_candidate = {'hyperparameter': results_exploration['hyperparameter'], 'expected_mu': results_exploration['expected_mu'], 'expected_sigma': results_exploration['expected_sigma'], - 'reason': "exploration"}) + 'reason': "exploration"} + candidates.append(temp_candidate) + logger.info("DEBUG: 1 exploration candidate selected\n") + logger.info(temp_candidate) else: logger.info("DEBUG: No suitable exploration candidates were") # ===== STEP 3: Get recommended configurations for exploitation ===== if samples_size_all >= threshold_samplessize_exploitation: - print("Getting candidates for exploitation...\n") + logger.info("Getting candidates for exploitation...\n") try: gmm = gmm_create_model.create_model(samples_x, samples_y_aggregation) - results_exploitation = gmm_selection.selection( - x_bounds, - x_types, - gmm['clusteringmodel_good'], - gmm['clusteringmodel_bad'], - minimize_starting_points, - minimize_constraints_fun=minimize_constraints_fun) + + if ("discrete_int" in x_types) or ("range_int" in x_types): + results_exploitation = gmm_selection.selection(x_bounds, x_types, + gmm['clusteringmodel_good'], + gmm['clusteringmodel_bad'], + minimize_starting_points, + minimize_constraints_fun=minimize_constraints_fun) + else: + # If all parameters are of "range_continuous", let's use GMM to generate random starting points + results_exploitation = gmm_selection.selection_r(x_bounds, x_types, + gmm['clusteringmodel_good'], + gmm['clusteringmodel_bad'], + num_starting_points=self.selection_num_starting_points, + minimize_constraints_fun=minimize_constraints_fun) if results_exploitation is not None: if _num_past_samples(results_exploitation['hyperparameter'], samples_x, samples_y) == 0: - candidates.append({'hyperparameter': results_exploitation['hyperparameter'],\ - 'expected_mu': results_exploitation['expected_mu'],\ - 'expected_sigma': results_exploitation['expected_sigma'],\ - 'reason': "exploitation_gmm"}) + temp_expected_mu, temp_expected_sigma = gp_prediction.predict(results_exploitation['hyperparameter'], gp_model['model']) + temp_candidate = {'hyperparameter': results_exploitation['hyperparameter'], + 'expected_mu': temp_expected_mu, + 'expected_sigma': temp_expected_sigma, + 'reason': "exploitation_gmm"} + candidates.append(temp_candidate) + logger.info("DEBUG: 1 exploitation_gmm candidate selected\n") + logger.info(temp_candidate) else: logger.info("DEBUG: No suitable exploitation_gmm candidates were found\n") @@ -338,11 +352,13 @@ def _selection(self, samples_x, samples_y_aggregation, samples_y, if results_outliers is not None: for results_outlier in results_outliers: if _num_past_samples(samples_x[results_outlier['samples_idx']], samples_x, samples_y) < max_resampling_per_x: - candidates.append({'hyperparameter': samples_x[results_outlier['samples_idx']],\ + temp_candidate = {'hyperparameter': samples_x[results_outlier['samples_idx']],\ 'expected_mu': results_outlier['expected_mu'],\ 'expected_sigma': results_outlier['expected_sigma'],\ - 'reason': "resampling"}) + 'reason': "resampling"} + candidates.append(temp_candidate) logger.info("DEBUG: %d re-sampling candidates selected\n") + logger.info(temp_candidate) else: logger.info("DEBUG: No suitable resampling candidates were found\n") From d02fdb65a4d19e4cef92eff752f12e43e18a24a2 Mon Sep 17 00:00:00 2001 From: Xiaohui Xue Date: Mon, 24 Jun 2019 17:32:41 +0800 Subject: [PATCH 27/31] refine code --- src/sdk/pynni/nni/metis_tuner/Regression_GMM/Selection.py | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/src/sdk/pynni/nni/metis_tuner/Regression_GMM/Selection.py b/src/sdk/pynni/nni/metis_tuner/Regression_GMM/Selection.py index 056ba5748c..9341e49e2b 100644 --- a/src/sdk/pynni/nni/metis_tuner/Regression_GMM/Selection.py +++ b/src/sdk/pynni/nni/metis_tuner/Regression_GMM/Selection.py @@ -51,10 +51,7 @@ def selection_r(x_bounds, ''' Select using different types. ''' - if ("discrete_int" in x_types) == True or ("range_int" in x_types) == True: - minimize_starting_points = [lib_data.rand(x_bounds, x_types) for i in range(0, num_starting_points)] - else: - minimize_starting_points = clusteringmodel_gmm_good.sample(n_samples=num_starting_points) + minimize_starting_points = clusteringmodel_gmm_good.sample(n_samples=num_starting_points) outputs = selection(x_bounds, x_types, clusteringmodel_gmm_good, From 62a9354a48b62eb08b9df75541d6deccc0256a3c Mon Sep 17 00:00:00 2001 From: Xiaohui Xue Date: Tue, 25 Jun 2019 10:20:12 +0800 Subject: [PATCH 28/31] fix optimized mode bug --- src/sdk/pynni/nni/metis_tuner/metis_tuner.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/sdk/pynni/nni/metis_tuner/metis_tuner.py b/src/sdk/pynni/nni/metis_tuner/metis_tuner.py index ec01cc29d1..a796ab6163 100644 --- a/src/sdk/pynni/nni/metis_tuner/metis_tuner.py +++ b/src/sdk/pynni/nni/metis_tuner/metis_tuner.py @@ -91,7 +91,7 @@ def __init__(self, optimize_mode="maximize", no_resampling=True, no_candidates=F self.space = None self.no_resampling = no_resampling self.no_candidates = no_candidates - self.optimize_mode = optimize_mode + self.optimize_mode = OptimizeMode(optimize_mode) self.key_order = [] self.cold_start_num = cold_start_num self.selection_num_starting_points = selection_num_starting_points From 3e1d927a51ac32ebefe83eef90d3233c6de5b5a4 Mon Sep 17 00:00:00 2001 From: Xiaohui Xue Date: Tue, 25 Jun 2019 10:30:02 +0800 Subject: [PATCH 29/31] update import warning --- src/sdk/pynni/nni/metis_tuner/metis_tuner.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/sdk/pynni/nni/metis_tuner/metis_tuner.py b/src/sdk/pynni/nni/metis_tuner/metis_tuner.py index a796ab6163..85e102baae 100644 --- a/src/sdk/pynni/nni/metis_tuner/metis_tuner.py +++ b/src/sdk/pynni/nni/metis_tuner/metis_tuner.py @@ -253,7 +253,7 @@ def _selection(self, samples_x, samples_y_aggregation, samples_y, minimize_starting_points=None, minimize_constraints_fun=None): with warnings.catch_warnings(): - warnings.simplefilter("ignore") + warnings.simplefilter("ignore", category=ImportWarning) next_candidate = None candidates = [] From 3606f148ad1595287d5db310e78174ef261771fb Mon Sep 17 00:00:00 2001 From: Xiaohui Xue Date: Tue, 25 Jun 2019 10:31:34 +0800 Subject: [PATCH 30/31] update warning --- src/sdk/pynni/nni/metis_tuner/metis_tuner.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/sdk/pynni/nni/metis_tuner/metis_tuner.py b/src/sdk/pynni/nni/metis_tuner/metis_tuner.py index 85e102baae..a796ab6163 100644 --- a/src/sdk/pynni/nni/metis_tuner/metis_tuner.py +++ b/src/sdk/pynni/nni/metis_tuner/metis_tuner.py @@ -253,7 +253,7 @@ def _selection(self, samples_x, samples_y_aggregation, samples_y, minimize_starting_points=None, minimize_constraints_fun=None): with warnings.catch_warnings(): - warnings.simplefilter("ignore", category=ImportWarning) + warnings.simplefilter("ignore") next_candidate = None candidates = [] From bd1ab203745c5194a0b7e5067f1ff1f934bd182d Mon Sep 17 00:00:00 2001 From: Xiaohui Xue Date: Tue, 25 Jun 2019 11:31:04 +0800 Subject: [PATCH 31/31] update optimized mode --- src/sdk/pynni/nni/bohb_advisor/bohb_advisor.py | 2 +- src/sdk/pynni/nni/hyperband_advisor/hyperband_advisor.py | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/sdk/pynni/nni/bohb_advisor/bohb_advisor.py b/src/sdk/pynni/nni/bohb_advisor/bohb_advisor.py index 1c5d2dfa98..5fb17880e9 100644 --- a/src/sdk/pynni/nni/bohb_advisor/bohb_advisor.py +++ b/src/sdk/pynni/nni/bohb_advisor/bohb_advisor.py @@ -106,7 +106,7 @@ def __init__(self, s, s_max, eta, max_budget, optimize_mode): self.s_max = s_max self.eta = eta self.max_budget = max_budget - self.optimize_mode = optimize_mode + self.optimize_mode = OptimizeMode(optimize_mode) self.n = math.ceil((s_max + 1) * eta**s / (s + 1) - _epsilon) self.r = max_budget / eta**s diff --git a/src/sdk/pynni/nni/hyperband_advisor/hyperband_advisor.py b/src/sdk/pynni/nni/hyperband_advisor/hyperband_advisor.py index 7faf30e926..3b8750bcba 100644 --- a/src/sdk/pynni/nni/hyperband_advisor/hyperband_advisor.py +++ b/src/sdk/pynni/nni/hyperband_advisor/hyperband_advisor.py @@ -144,7 +144,7 @@ def __init__(self, s, s_max, eta, R, optimize_mode): self.configs_perf = [] # [ {id: [seq, acc]}, {}, ... ] self.num_configs_to_run = [] # [ n, n, n, ... ] self.num_finished_configs = [] # [ n, n, n, ... ] - self.optimize_mode = optimize_mode + self.optimize_mode = OptimizeMode(optimize_mode) self.no_more_trial = False def is_completed(self):