Unverified Commit c6c361d8 authored by QuanluZhang's avatar QuanluZhang Committed by GitHub
Browse files

[doc] misc refactor (#4638)

parent f355b956
#######################
Use Cases and Solutions
#######################
Different from the tutorials and examples in the rest of the document which show the usage of a feature, this part mainly introduces end-to-end scenarios and use cases to help users further understand how NNI can help them. NNI can be widely adopted in various scenarios. We also encourage community contributors to share their AutoML practices especially the NNI usage practices from their experience.
Use Cases and Solutions
=======================
.. toctree::
:maxdepth: 2
Automatic Model Tuning (HPO/NAS) <automodel>
Automatic System Tuning (AutoSys) <autosys>
Model Compression <model_compression>
Feature Engineering <feature_engineering>
Performance measurement, comparison and analysis <perf_compare>
Use NNI on Google Colab <NNI_colab_support>
External Repositories and References
====================================
With authors' permission, we listed a set of NNI usage examples and relevant articles.
External Repositories
=====================
* `Hyperparameter Tuning for Matrix Factorization <https://github.com/microsoft/recommenders/blob/master/examples/04_model_select_and_optimize/nni_surprise_svd.ipynb>`__ with NNI
* `scikit-nni <https://github.com/ksachdeva/scikit-nni>`__ Hyper-parameter search for scikit-learn pipelines using NNI
Relevant Articles
=================
* `Cost-effective Hyper-parameter Tuning using AdaptDL with NNI - Feb 23, 2021 <https://medium.com/casl-project/cost-effective-hyper-parameter-tuning-using-adaptdl-with-nni-e55642888761>`__
* `(in Chinese) A summary of NNI new capabilities in NNI 2.0 - Jan 21, 2021 <https://www.msra.cn/zh-cn/news/features/nni-2>`__
* `(in Chinese) A summary of NNI new capabilities in 2019 - Dec 26, 2019 <https://mp.weixin.qq.com/s/7_KRT-rRojQbNuJzkjFMuA>`__
* `Find thy hyper-parameters for scikit-learn pipelines using Microsoft NNI - Nov 6, 2019 <https://towardsdatascience.com/find-thy-hyper-parameters-for-scikit-learn-pipelines-using-microsoft-nni-f1015b1224c1>`__
* `(in Chinese) AutoML tools (Advisor, NNI and Google Vizier) comparison - Aug 05, 2019 <http://gaocegege.com/Blog/%E6%9C%BA%E5%99%A8%E5%AD%A6%E4%B9%A0/katib-new#%E6%80%BB%E7%BB%93%E4%B8%8E%E5%88%86%E6%9E%90>`__
* `Hyper Parameter Optimization Comparison <./HpoComparison.rst>`__
* `Neural Architecture Search Comparison <./NasComparison.rst>`__
* `Parallelizing a Sequential Algorithm TPE <./ParallelizingTpeSearch.rst>`__
* `Automatically tuning SVD with NNI <./RecommendersSvd.rst>`__
* `Automatically tuning SPTAG with NNI <./SptagAutoTune.rst>`__
...@@ -108,4 +108,4 @@ These articles have compared built-in tuners' performance on some different task ...@@ -108,4 +108,4 @@ These articles have compared built-in tuners' performance on some different task
:doc:`hpo_benchmark_stats` :doc:`hpo_benchmark_stats`
:doc:`/CommunitySharings/HpoComparison` :doc:`/misc/hpo_comparison`
...@@ -36,9 +36,9 @@ Neural Network Intelligence ...@@ -36,9 +36,9 @@ Neural Network Intelligence
:caption: Misc :caption: Misc
:hidden: :hidden:
Use Cases and Solutions <CommunitySharings/community_sharings> Use Cases and Solutions <misc/community_sharings>
Research and Publications <ResearchPublications> Research and Publications <misc/research_publications>
FAQ <Tutorial/FAQ> FAQ <misc/faq>
notes/build_from_source notes/build_from_source
How to Contribute <contribution> How to Contribute <contribution>
Change Log <Release> Change Log <Release>
......
.. 4908917bfebd7c3afbbdf8529b2d8a6c .. 4a8dacf5afeed980409b777b3fb60fe2
########################### ###########################
Neural Network Intelligence Neural Network Intelligence
...@@ -21,9 +21,9 @@ Neural Network Intelligence ...@@ -21,9 +21,9 @@ Neural Network Intelligence
HPO API Reference <reference/hpo> HPO API Reference <reference/hpo>
Experiment API Reference <reference/experiment> Experiment API Reference <reference/experiment>
参考<reference> 参考<reference>
示例与解决方案<CommunitySharings/community_sharings> 示例与解决方案<misc/community_sharings>
研究和出版物 <ResearchPublications> 研究和出版物 <misc/research_publications>
常见问题 <Tutorial/FAQ> 常见问题 <misc/faq>
从源代码安装 <notes/build_from_source> 从源代码安装 <notes/build_from_source>
如何贡献 <contribution> 如何贡献 <contribution>
更改日志 <Release> 更改日志 <Release>
......
######################
Automatic Model Tuning Automatic Model Tuning
###################### ======================
NNI can be applied on various model tuning tasks. Some state-of-the-art model search algorithms, such as EfficientNet, can be easily built on NNI. Popular models, e.g., recommendation models, can be tuned with NNI. The following are some use cases to illustrate how to leverage NNI in your model tuning tasks and how to build your own pipeline with NNI. NNI can be applied on various model tuning tasks. Some state-of-the-art model search algorithms, such as EfficientNet, can be easily built on NNI. Popular models, e.g., recommendation models, can be tuned with NNI. The following are some use cases to illustrate how to leverage NNI in your model tuning tasks and how to build your own pipeline with NNI.
.. toctree:: .. toctree::
:maxdepth: 1 :maxdepth: 1
Tuning SVD automatically <RecommendersSvd> Tuning SVD automatically <recommenders_svd>
EfficientNet on NNI <../TrialExample/EfficientNet> EfficientNet on NNI <efficientnet>
Automatic Model Architecture Search for Reading Comprehension <../TrialExample/SquadEvolutionExamples> Automatic Model Architecture Search for Reading Comprehension <squad_evolution_examples>
Parallelizing Optimization for TPE <ParallelizingTpeSearch> Parallelizing Optimization for TPE <parallelizing_tpe_search>
\ No newline at end of file \ No newline at end of file
.. 21be18c35dee2702eb1c7a805dcfd939 .. 41ac2690980be694ff26b4a06b820fd1
######################
自动模型调优 自动模型调优
###################### ============
NNI 可以应用于各种模型调优任务。 一些最先进的模型搜索算法,如EfficientNet,可以很容易地在NNI上构建。 流行的模型,例如,推荐模型,可以使用 NNI 进行调优。 下面是一些用例,展示了如何在您的模型调优任务中使用 NNI,以及如何使用 NNI 构建您自己的流水线。 NNI 可以应用于各种模型调优任务。 一些最先进的模型搜索算法,如EfficientNet,可以很容易地在NNI上构建。 流行的模型,例如,推荐模型,可以使用 NNI 进行调优。 下面是一些用例,展示了如何在您的模型调优任务中使用 NNI,以及如何使用 NNI 构建您自己的流水线。
.. toctree:: .. toctree::
:maxdepth: 1 :maxdepth: 1
SVD 自动调优 <RecommendersSvd> SVD 自动调优 <recommenders_svd>
NNI 中的 EfficientNet <../TrialExample/EfficientNet> NNI 中的 EfficientNet <efficientnet>
用于阅读理解的自动模型架构搜索 <../TrialExample/SquadEvolutionExamples> 用于阅读理解的自动模型架构搜索 <squad_evolution_examples>
TPE 的并行优化 <ParallelizingTpeSearch> TPE 的并行优化 <parallelizing_tpe_search>
\ No newline at end of file \ No newline at end of file
#######################
Automatic System Tuning Automatic System Tuning
####################### =======================
The performance of systems, such as database, tensor operator implementaion, often need to be tuned to adapt to specific hardware configuration, targeted workload, etc. Manually tuning a system is complicated and often requires detailed understanding of hardware and workload. NNI can make such tasks much easier and help system owners find the best configuration to the system automatically. The detailed design philosophy of automatic system tuning can be found in this `paper <https://dl.acm.org/doi/10.1145/3352020.3352031>`__\ . The following are some typical cases that NNI can help. The performance of systems, such as database, tensor operator implementaion, often need to be tuned to adapt to specific hardware configuration, targeted workload, etc. Manually tuning a system is complicated and often requires detailed understanding of hardware and workload. NNI can make such tasks much easier and help system owners find the best configuration to the system automatically. The detailed design philosophy of automatic system tuning can be found in this `paper <https://dl.acm.org/doi/10.1145/3352020.3352031>`__\ . The following are some typical cases that NNI can help.
.. toctree:: .. toctree::
:maxdepth: 1 :maxdepth: 1
Tuning SPTAG (Space Partition Tree And Graph) automatically <SptagAutoTune> Tuning SPTAG (Space Partition Tree And Graph) automatically <sptag_auto_tune>
Tuning the performance of RocksDB <../TrialExample/RocksdbExamples> Tuning the performance of RocksDB <rocksdb_examples>
Tuning Tensor Operators automatically <../TrialExample/OpEvoExamples> Tuning Tensor Operators automatically <op_evo_examples>
\ No newline at end of file \ No newline at end of file
.. e0791b39c8c362669300ce55b42e997b .. 71f843b3da6b65a4ed7a4683380aa0b4
#######################
自动系统调优 自动系统调优
####################### ============
数据库、张量算子实现等系统的性能往往需要进行调优,以适应特定的硬件配置、目标工作负载等。 手动调优系统非常复杂,并且通常需要对硬件和工作负载有详细的了解。 NNI 可以使这些任务变得更容易,并帮助系统所有者自动找到系统的最佳配置。 自动系统调优的详细设计思想可以在 `这篇论文 <https://dl.acm.org/doi/10.1145/3352020.3352031>`__ 中找到。 以下是 NNI 可以发挥作用的一些典型案例。 数据库、张量算子实现等系统的性能往往需要进行调优,以适应特定的硬件配置、目标工作负载等。 手动调优系统非常复杂,并且通常需要对硬件和工作负载有详细的了解。 NNI 可以使这些任务变得更容易,并帮助系统所有者自动找到系统的最佳配置。 自动系统调优的详细设计思想可以在 `这篇论文 <https://dl.acm.org/doi/10.1145/3352020.3352031>`__ 中找到。 以下是 NNI 可以发挥作用的一些典型案例。
.. toctree:: .. toctree::
:maxdepth: 1 :maxdepth: 1
自动调优 SPTAG(Space Partition Tree And Graph)<SptagAutoTune> 自动调优 SPTAG(Space Partition Tree And Graph)<sptag_auto_tune>
调优 RocksDB 的性能<../TrialExample/RocksdbExamples> 调优 RocksDB 的性能 <rocksdb_examples>
自动调优张量算子<../TrialExample/OpEvoExamples> 自动调优张量算子 <op_evo_examples>
\ No newline at end of file \ No newline at end of file
Use Cases and Solutions
=======================
Different from the tutorials and examples in the rest of the document which show the usage of a feature, this part mainly introduces end-to-end scenarios and use cases to help users further understand how NNI can help them. NNI can be widely adopted in various scenarios. We also encourage community contributors to share their AutoML practices especially the NNI usage practices from their experience.
.. toctree::
:maxdepth: 1
Automatic Model Tuning (HPO/NAS) <automodel>
Automatic System Tuning (AutoSys) <autosys>
Model Compression <model_compression>
Feature Engineering <feature_engineering>
Performance measurement, comparison and analysis <perf_compare>
Use NNI on Google Colab <nni_colab_support>
###################
Feature Engineering Feature Engineering
################### ===================
The following is an article about how NNI helps in auto feature engineering shared by a community contributor. More use cases and solutions will be added in the future. The following is an article about how NNI helps in auto feature engineering shared by a community contributor. More use cases and solutions will be added in the future.
.. toctree:: .. toctree::
:maxdepth: 1 :maxdepth: 1
NNI review article from Zhihu: - By Garvin Li <NNI_AutoFeatureEng> NNI review article from Zhihu: - By Garvin Li <nni_autofeatureeng>
\ No newline at end of file \ No newline at end of file
.. 6b887244cf8fbace30971173f8c6fe8a .. 9d25b0a6269198806ffda03644282b20
###################
特征工程 特征工程
################### ========
以下是关于 NNI 如何助力特征工程的文章,由社区贡献者分享。 将来会添加更多用例和解决方案。 以下是关于 NNI 如何助力特征工程的文章,由社区贡献者分享。 将来会添加更多用例和解决方案。
.. toctree:: .. toctree::
:maxdepth: 1 :maxdepth: 1
来自知乎的评论:作者 Garvin Li <NNI_AutoFeatureEng> 来自知乎的评论:作者 Garvin Li <nni_autofeatureeng>
\ No newline at end of file \ No newline at end of file
#################
Model Compression Model Compression
################# =================
The following one shows how to apply knowledge distillation on NNI model compression. More use cases and solutions will be added in the future. The following one shows how to apply knowledge distillation on NNI model compression. More use cases and solutions will be added in the future.
.. toctree:: .. toctree::
:maxdepth: 1 :maxdepth: 1
Knowledge distillation with NNI model compression <../TrialExample/KDExample> Knowledge distillation with NNI model compression <kd_example>
\ No newline at end of file \ No newline at end of file
.. 8a4c54c8127199ad4c95e20247e33fe2 .. ba9409544c5c42e8424e7e2694ab7bd3
#################
模型压缩 模型压缩
################# ========
以下介绍了如何将知识蒸馏应用于 NNI 模型压缩。 将来会添加更多用例和解决方案。 以下介绍了如何将知识蒸馏应用于 NNI 模型压缩。 将来会添加更多用例和解决方案。
.. toctree:: .. toctree::
:maxdepth: 1 :maxdepth: 1
使用 NNI 模型压缩进行知识蒸馏<../TrialExample/KDExample> 使用 NNI 模型压缩进行知识蒸馏<kd_example>
\ No newline at end of file \ No newline at end of file
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