Unverified Commit 9380e68c authored by Scarlett Li's avatar Scarlett Li Committed by GitHub
Browse files

Updated document for "write a trial" related fixes. (#351)

- Updated document for "write a trial" related fixes per Quanlu's feedback;
- Fix wrong links in Get started per Meng's feedback.
parent 183763ef
...@@ -88,16 +88,17 @@ You can use these commands to get more information about the experiment ...@@ -88,16 +88,17 @@ You can use these commands to get more information about the experiment
</table> </table>
## **Documentation** ## **Documentation**
* [Overview](docs/Overview.md) * [NNI overview](docs/Overview.md)
* [Get started](docs/GetStarted.md) * [Quick start](docs/GetStarted.md)
## **How to** ## **How to**
* [Installation](docs/InstallNNI_Ubuntu.md) * [Install NNI](docs/InstallNNI_Ubuntu.md)
* [Use command line tool nnictl](docs/NNICTLDOC.md) * [Use command line tool nnictl](docs/NNICTLDOC.md)
* [Use NNIBoard](docs/WebUI.md) * [Use NNIBoard](docs/WebUI.md)
* [How to define search space](docs/SearchSpaceSpec.md) * [How to define search space](docs/SearchSpaceSpec.md)
* [How to define a trial](docs/howto_1_WriteTrial.md)
* [Config an experiment](docs/ExperimentConfig.md) * [Config an experiment](docs/ExperimentConfig.md)
* [Use annotation](docs/AnnotationSpec.md) * [How to use annotation](docs/howto_1_WriteTrial.md#nni-python-annotation)
* [Debug](docs/HowToDebug.md)
## **Tutorials** ## **Tutorials**
* [Run an experiment on local (with multiple GPUs)?](docs/tutorial_1_CR_exp_local_api.md) * [Run an experiment on local (with multiple GPUs)?](docs/tutorial_1_CR_exp_local_api.md)
* [Run an experiment on multiple machines?](docs/tutorial_2_RemoteMachineMode.md) * [Run an experiment on multiple machines?](docs/tutorial_2_RemoteMachineMode.md)
......
...@@ -34,7 +34,7 @@ An experiment is to run multiple trial jobs, each trial job tries a configuratio ...@@ -34,7 +34,7 @@ An experiment is to run multiple trial jobs, each trial job tries a configuratio
python3 ~/nni/examples/trials/mnist-annotation/mnist.py python3 ~/nni/examples/trials/mnist-annotation/mnist.py
This command will be filled in the yaml configure file below. Please refer to [here]() for how to write your own trial. This command will be filled in the yaml configure file below. Please refer to [here](howto_1_WriteTrial.md) for how to write your own trial.
**Prepare tuner**: NNI supports several popular automl algorithms, including Random Search, Tree of Parzen Estimators (TPE), Evolution algorithm etc. Users can write their own tuner (refer to [here](howto_2_CustomizedTuner.md), but for simplicity, here we choose a tuner provided by NNI as below: **Prepare tuner**: NNI supports several popular automl algorithms, including Random Search, Tree of Parzen Estimators (TPE), Evolution algorithm etc. Users can write their own tuner (refer to [here](howto_2_CustomizedTuner.md), but for simplicity, here we choose a tuner provided by NNI as below:
...@@ -43,7 +43,7 @@ This command will be filled in the yaml configure file below. Please refer to [h ...@@ -43,7 +43,7 @@ This command will be filled in the yaml configure file below. Please refer to [h
classArgs: classArgs:
optimize_mode: maximize optimize_mode: maximize
*builtinTunerName* is used to specify a tuner in NNI, *classArgs* are the arguments pass to the tuner (the spec of builtin tuners can be found [here]()), *optimization_mode* is to indicate whether you want to maximize or minimize your trial's result. *builtinTunerName* is used to specify a tuner in NNI, *classArgs* are the arguments pass to the tuner, *optimization_mode* is to indicate whether you want to maximize or minimize your trial's result.
**Prepare configure file**: Since you have already known which trial code you are going to run and which tuner you are going to use, it is time to prepare the yaml configure file. NNI provides a demo configure file for each trial example, `cat ~/nni/examples/trials/mnist-annotation/config.yml` to see it. Its content is basically shown below: **Prepare configure file**: Since you have already known which trial code you are going to run and which tuner you are going to use, it is time to prepare the yaml configure file. NNI provides a demo configure file for each trial example, `cat ~/nni/examples/trials/mnist-annotation/config.yml` to see it. Its content is basically shown below:
...@@ -86,7 +86,8 @@ You can refer to [here](NNICTLDOC.md) for more usage guide of *nnictl* command l ...@@ -86,7 +86,8 @@ You can refer to [here](NNICTLDOC.md) for more usage guide of *nnictl* command l
## View experiment results ## View experiment results
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`. 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`.
## Further reading ## Read more
* [Tuners supported in the latest NNI release](../src/sdk/pynni/nni/README.md)
* [Overview](Overview.md) * [Overview](Overview.md)
* [Installation](InstallNNI_Ubuntu.md) * [Installation](InstallNNI_Ubuntu.md)
* [Use command line tool nnictl](NNICTLDOC.md) * [Use command line tool nnictl](NNICTLDOC.md)
......
...@@ -2,6 +2,13 @@ ...@@ -2,6 +2,13 @@
NNI (Neural Network Intelligence) is a toolkit to help users run automated machine learning experiments. For each experiment, user only need to define a search space and update a few lines of code, and then leverage NNI build-in algorithms and training services to search the best hyper parameters and/or neural architecture. NNI (Neural Network Intelligence) is a toolkit to help users run automated machine learning experiments. For each experiment, user only need to define a search space and update a few lines of code, and then leverage NNI build-in algorithms and training services to search the best hyper parameters and/or neural architecture.
>Step 1: [Define search space](SearchSpaceSpec.md)
>Step 2: [Update model codes](howto_1_WriteTrial.md)
>Step 3: [Define Experiment](ExperimentConfig.md)
<p align="center"> <p align="center">
<img src="./img/3_steps.jpg" alt="drawing"/> <img src="./img/3_steps.jpg" alt="drawing"/>
</p> </p>
...@@ -15,11 +22,6 @@ After user submits the experiment through a command line tool [nnictl](../tools/ ...@@ -15,11 +22,6 @@ After user submits the experiment through a command line tool [nnictl](../tools/
User can use the nnictl and/or a visualized Web UI nniboard to monitor and debug a given experiment. User can use the nnictl and/or a visualized Web UI nniboard to monitor and debug a given experiment.
<p align="center">
<img src="./img/overview.jpg" alt="drawing"/>
</p>
NNI provides a set of examples in the package to get you familiar with the above process. In the following example [/examples/trials/mnist], we had already set up the configuration and updated the training codes for you. You can directly run the following command to start an experiment. NNI provides a set of examples in the package to get you familiar with the above process. In the following example [/examples/trials/mnist], we had already set up the configuration and updated the training codes for you. You can directly run the following command to start an experiment.
## Key Concepts ## Key Concepts
...@@ -35,28 +37,13 @@ NNI provides a set of examples in the package to get you familiar with the above ...@@ -35,28 +37,13 @@ NNI provides a set of examples in the package to get you familiar with the above
### **Assessor** ### **Assessor**
**Assessor** in NNI is an implementation of Assessor API for optimizing the execution of experiment. **Assessor** in NNI is an implementation of Assessor API for optimizing the execution of experiment.
## Learn More ## Learn More
* [Get started](GetStarted.md) * [Get started](GetStarted.md)
### **How to** * [Install NNI](InstallNNI_Ubuntu.md)
* [Installation](InstallNNI_Ubuntu.md)
* [Use command line tool nnictl](NNICTLDOC.md) * [Use command line tool nnictl](NNICTLDOC.md)
* [Use NNIBoard](WebUI.md) * [Use NNIBoard](WebUI.md)
* [Define search space](InstallNNI_Ubuntu.md) * [Use annotation](howto_1_WriteTrial.md#nni-python-annotation)
* [Use NNI sdk] - *coming soon*
* [Config an experiment](SearchSpaceSpec.md)
* [Use annotation](AnnotationSpec.md)
* [Debug](HowToDebug.md)
### **Tutorials** ### **Tutorials**
* [How to run an experiment on local (with multiple GPUs)?](tutorial_1_CR_exp_local_api.md) * [How to run an experiment on local (with multiple GPUs)?](tutorial_1_CR_exp_local_api.md)
* [How to run an experiment on multiple machines?](tutorial_2_RemoteMachineMode.md) * [How to run an experiment on multiple machines?](tutorial_2_RemoteMachineMode.md)
* [How to run an experiment on OpenPAI?](PAIMode.md) * [How to run an experiment on OpenPAI?](PAIMode.md)
* [Try different tuners and assessors] - *coming soon* \ No newline at end of file
* [How to run an experiment on K8S services?] - *coming soon*
* [Implement a customized tuner] - *coming soon*
* [Implement a customized assessor] - *coming soon*
* [Implement a custmoized weight sharing algorithm] - *coming soon*
* [How to integrate NNI with your own custmoized training service] - *coming soon*
### **Best practice**
* [Compare different AutoML algorithms] - *coming soon*
* [Serve NNI as a capability of a ML Platform] - *coming soon*
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment