Skip to content
GitLab
Menu
Projects
Groups
Snippets
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
Menu
Open sidebar
OpenDAS
nni
Commits
57924caf
Unverified
Commit
57924caf
authored
Nov 26, 2019
by
Chi Song
Committed by
GitHub
Nov 26, 2019
Browse files
Chinese translation (#1684)
parent
3394f2c3
Changes
32
Hide whitespace changes
Inline
Side-by-side
Showing
12 changed files
with
142 additions
and
22 deletions
+142
-22
docs/zh_CN/TrialExample/GbdtExample.md
docs/zh_CN/TrialExample/GbdtExample.md
+10
-4
docs/zh_CN/Tuner/BuiltinTuner.md
docs/zh_CN/Tuner/BuiltinTuner.md
+2
-2
docs/zh_CN/Tutorial/Contributing.md
docs/zh_CN/Tutorial/Contributing.md
+3
-0
docs/zh_CN/Tutorial/Nnictl.md
docs/zh_CN/Tutorial/Nnictl.md
+33
-0
docs/zh_CN/Tutorial/QuickStart.md
docs/zh_CN/Tutorial/QuickStart.md
+2
-2
docs/zh_CN/Tutorial/SearchSpaceSpec.md
docs/zh_CN/Tutorial/SearchSpaceSpec.md
+3
-7
docs/zh_CN/advanced.rst
docs/zh_CN/advanced.rst
+0
-2
docs/zh_CN/feature_engineering.rst
docs/zh_CN/feature_engineering.rst
+16
-0
docs/zh_CN/model_compression.rst
docs/zh_CN/model_compression.rst
+28
-0
docs/zh_CN/nas.rst
docs/zh_CN/nas.rst
+25
-0
docs/zh_CN/sdk_reference.rst
docs/zh_CN/sdk_reference.rst
+17
-5
docs/zh_CN/tutorials.rst
docs/zh_CN/tutorials.rst
+3
-0
No files found.
docs/zh_CN/TrialExample/GbdtExample.md
View file @
57924caf
...
...
@@ -48,7 +48,13 @@ GBDT 有很多超参,但哪些才会影响性能或计算速度呢? 基于
## 3. 如何运行 NNI
### 3.1 准备 Trial 代码
### 3.1 安装所有要求的包
pip install lightgbm
pip install pandas
### 3.2 准备 Trial 代码
基础代码如下:
...
...
@@ -90,7 +96,7 @@ if __name__ == '__main__':
run
(
lgb_train
,
lgb_eval
,
PARAMS
,
X_test
,
y_test
)
```
### 3.
2
准备搜索空间
### 3.
3
准备搜索空间
如果要调优
`num_leaves`
,
`learning_rate`
,
`bagging_fraction`
和
`bagging_freq`
, 可创建一个
[
search_space.json
](
https://github.com/Microsoft/nni/blob/master/examples/trials/auto-gbdt/search_space.json
)
文件:
...
...
@@ -105,7 +111,7 @@ if __name__ == '__main__':
参考
[
这里
](
../Tutorial/SearchSpaceSpec.md
)
,了解更多变量类型。
### 3.
3
在代码中使用 NNI SDK
### 3.
4
在代码中使用 NNI SDK
```
diff
+import nni
...
...
@@ -153,7 +159,7 @@ if __name__ == '__main__':
run(lgb_train, lgb_eval, PARAMS, X_test, y_test)
```
### 3.
4
实现配置文件并运行
### 3.
5
实现配置文件并运行
在配置文件中,可以设置如下内容:
...
...
docs/zh_CN/Tuner/BuiltinTuner.md
View file @
57924caf
...
...
@@ -120,7 +120,7 @@ tuner:
*
**optimize_mode**
(
*maximize 或 minimize, 可选项, 默认值为 maximize*
) - 如果为 'maximize',表示 Tuner 的目标是将指标最大化。 如果为 'minimize',表示 Tuner 的目标是将指标最小化。
*
**population_size**
(
*int 类型(大于 0), 可选项, 默认值为 20*
) - 表示遗传 Tuner 中的种群(Trial 数量)。
*
**population_size**
(
*int 类型(大于 0), 可选项, 默认值为 20*
) - 表示遗传 Tuner 中的种群(Trial 数量)。
建议
`population_size`
比
`concurrency`
取值更大,这样用户能充分利用算法(至少要等于
`concurrency`
,否则 Tuner 在生成第一代参数的时候就会失败)。
**示例**
...
...
@@ -145,7 +145,7 @@ tuner:
**安装**
SMAC 在第一次使用前,必须用下面的命令先安装。
SMAC 在第一次使用前,必须用下面的命令先安装。
注意:SMAC 依赖于
`swig`
,Ubuntu 下可通过
`apt`
命令来安装
`swig`
。
```
bash
nnictl package
install
--name
=
SMAC
...
...
docs/zh_CN/Tutorial/Contributing.md
View file @
57924caf
...
...
@@ -43,6 +43,9 @@
*
NNI 遵循
[
PEP8
](
https://www.python.org/dev/peps/pep-0008/
)
的 Python 代码命名约定。在提交拉取请求时,请尽量遵循此规范。 可通过
`flake8`
或
`pylint`
的提示工具来帮助遵循规范。
*
NNI 还遵循
[
NumPy Docstring 风格
](
https://www.sphinx-doc.org/en/master/usage/extensions/example_numpy.html#example-numpy
)
的 Python Docstring 命名方案。 Python API 使用了
[
sphinx.ext.napoleon
](
https://www.sphinx-doc.org/en/master/usage/extensions/napoleon.html
)
来
[
生成文档
](
Contributing.md#documentation
)
。
*
有关 docstrings,参考
[
numpydoc docstring 指南
](
https://numpydoc.readthedocs.io/en/latest/format.html
)
和
[
pandas docstring 指南
](
https://python-sprints.github.io/pandas/guide/pandas_docstring.html
)
*
函数的 docstring,
**description**
,
**Parameters**
, 以及
**Returns**
/
**Yields**
是必需的。
*
类的 docstring,
**description**
,
**Attributes**
是必需的。
## 文档
...
...
docs/zh_CN/Tutorial/Nnictl.md
View file @
57924caf
...
...
@@ -22,6 +22,7 @@ nnictl 支持的命令:
*
[
nnictl webui
](
#webui
)
*
[
nnictl tensorboard
](
#tensorboard
)
*
[
nnictl package
](
#package
)
*
[
nnictl ss_gen
](
#ss_gen
)
*
[
nnictl --version
](
#version
)
### 管理 Experiment
...
...
@@ -742,6 +743,38 @@ nnictl 支持的命令:
nnictl package show
```
<a
name=
"ss_gen"
></a>

`生成搜索空间`
*
**nnictl ss_gen**
*
说明
从使用 NNI NAS API 的用户代码生成搜索空间。
*
用法
```
bash
nnictl ss_gen
[
OPTIONS]
```
*
选项
| 参数及缩写 | 是否必需 | 默认值 | 说明 |
| --------------- | ----- | ---------------------------------- | ----------- |
| --trial_command | True | | Trial 代码的命令 |
| --trial_dir | False | ./ | Trial 代码目录 |
| --file | False | nni_auto_gen_search_space.json | 用来存储生成的搜索空间 |
*
示例
> 生成搜索空间
```
bash
nnictl ss_gen
--trial_command
=
"python3 mnist.py"
--trial_dir
=
./
--file
=
ss.json
```
<a
name=
"version"
></a>

`检查 NNI 版本`
...
...
docs/zh_CN/Tutorial/QuickStart.md
View file @
57924caf
...
...
@@ -101,7 +101,7 @@ NNI 用来帮助超参调优。它的流程如下:
mnist_network.train(sess, mnist)
test_acc = mnist_network.evaluate(mnist)
+ nni.report_final_result(acc)
+ nni.report_final_result(
test_
acc)
if __name__ == '__main__':
...
...
@@ -253,4 +253,4 @@ Experiment 相关信息会显示在界面上,配置和搜索空间等。 可
*
[
如何在多机上运行 Experiment?
](
../TrainingService/RemoteMachineMode.md
)
*
[
如何在 OpenPAI 上运行 Experiment?
](
../TrainingService/PaiMode.md
)
*
[
如何通过 Kubeflow 在 Kubernetes 上运行 Experiment?
](
../TrainingService/KubeflowMode.md
)
*
[
如何通过 FrameworkController 在 Kubernetes 上运行 Experiment?
](
../TrainingService/FrameworkControllerMode.md
)
\ No newline at end of file
*
[
如何通过 FrameworkController 在 Kubernetes 上运行 Experiment?
](
../TrainingService/FrameworkControllerMode.md
)
docs/zh_CN/Tutorial/SearchSpaceSpec.md
View file @
57924caf
...
...
@@ -21,6 +21,8 @@
将第一行作为样例。
`dropout_rate`
定义了一个变量,先验分布为均匀分布,范围从
`0.1`
到
`0.5`
。
注意,搜索空间的效果与 Tuner 高度相关。 此处列出了内置 Tuner 所支持的类型。 对于自定义的 Tuner,不必遵循鞋标,可使用任何的类型。
## 类型
所有采样策略和参数如下:
...
...
@@ -78,12 +80,6 @@
*
这表示变量值会类似于
`round(exp(normal(mu, sigma)) / q) * q`
*
适用于值是“平滑”的离散变量,但某一边有界。
*
`{"_type": "mutable_layer", "_value": {mutable_layer_infomation}}`
*
[
神经网络架构搜索空间
](
../AdvancedFeature/GeneralNasInterfaces.md
)
的类型。 值是字典类型,键值对表示每个 mutable_layer 的名称和搜索空间。
*
当前,只能通过 Annotation 来使用这种类型的搜索空间。因此不需要为搜索空间定义 JSON 文件,它会通过 Trial 中的 Annotation 自动生成。
*
具体用法参考
[
通用 NAS 接口
](
../AdvancedFeature/GeneralNasInterfaces.md
)
。
## 每种 Tuner 支持的搜索空间类型
| | choice | randint | uniform | quniform | loguniform | qloguniform | normal | qnormal | lognormal | qlognormal |
...
...
@@ -106,4 +102,4 @@
*
请注意,对于嵌套搜索空间:
*
只有 随机搜索/TPE/Anneal/Evolution Tuner 支持嵌套搜索空间
*
不支持嵌套搜索空间 "超参" 的可视化,对其的改进通过 #1110(https://github.com/microsoft/nni/issues/1110) 来跟踪 。欢迎任何建议和贡献。
\ No newline at end of file
*
不支持嵌套搜索空间 "超参" 的可视化,对其的改进通过
[
#1110
](
https://github.com/microsoft/nni/issues/1110
)
来跟踪 。欢迎任何建议和贡献。
\ No newline at end of file
docs/zh_CN/advanced.rst
View file @
57924caf
...
...
@@ -3,5 +3,3 @@
.. toctree::
多阶段<./AdvancedFeature/MultiPhase>
高级网络架构搜索<./AdvancedFeature/AdvancedNas>
NAS 编程接口<./AdvancedFeature/GeneralNasInterfaces>
\ No newline at end of file
docs/zh_CN/feature_engineering.rst
0 → 100644
View file @
57924caf
#################
特征工程
#################
很高兴的宣布 NNI 的特征工程包 Alpha 版本发布了。
其仍处于试验阶段,会根据使用反馈来演化。
诚挚邀请您使用、反馈,或更多贡献。
详细信息,参考以下教程:
.. toctree::
:maxdepth: 2
概述 <FeatureEngineering/Overview>
GradientFeatureSelector <FeatureEngineering/GradientFeatureSelector>
GBDTSelector <FeatureEngineering/GBDTSelector>
docs/zh_CN/model_compression.rst
0 → 100644
View file @
57924caf
#################
模型压缩
#################
NNI 提供了易于使用的工具包来帮助用户设计并使用压缩算法。
其使用了统一的接口来支持 TensorFlow 和 PyTorch。
只需要添加几行代码即可压缩模型。
NNI 中也内置了一些流程的模型压缩算法。
用户可以进一步利用 NNI 的自动调优功能找到最佳的压缩模型,
自动模型压缩部分有详细介绍。
另一方面,用户可以使用 NNI 的接口自定义新的压缩算法。
详细信息,参考以下教程:
.. toctree::
:maxdepth: 2
概述 <Compressor/Overview>
Level Pruner <Compressor/Pruner>
AGP Pruner <Compressor/Pruner>
L1Filter Pruner <Compressor/L1FilterPruner>
Slim Pruner <Compressor/SlimPruner>
Lottery Ticket Pruner <Compressor/LotteryTicketHypothesis>
FPGM Pruner <Compressor/Pruner>
Naive Quantizer <Compressor/Quantizer>
QAT Quantizer <Compressor/Quantizer>
DoReFa Quantizer <Compressor/Quantizer>
自动模型压缩 <Compressor/AutoCompression>
docs/zh_CN/nas.rst
0 → 100644
View file @
57924caf
#################
NAS 算法
#################
自动化的神经网络架构(NAS)搜索在寻找更好的模型方面发挥着越来越重要的作用。
最近的研究工作证明了自动化 NAS 的可行性,并发现了一些超越手动设计和调整的模型。
代表工作有 NASNet, ENAS, DARTS, Network Morphism, 以及 Evolution 等。 新的算法还在不断涌现。
但是,要实现NAS算法需要花费大量的精力,并且很难在新算法中重用现有算法的代码。
为了促进 NAS 创新 (如, 设计实现新的 NAS 模型,比较不同的 NAS 模型),
易于使用且灵活的编程接口非常重要。
以此为出发点,我们的目标是在 NNI 中提供统一的架构,
来加速 NAS 创新,并更快的将最先进的算法用于现实世界的问题上。
详细信息,参考以下教程:
.. toctree::
:maxdepth: 2
概述 <NAS/Overview>
NAS 接口 <NAS/NasInterface>
ENAS <NAS/Overview>
DARTS <NAS/Overview>
P-DARTS <NAS/Overview>
docs/zh_CN/sdk_reference.rst
View file @
57924caf
...
...
@@ -24,10 +24,10 @@ Tuner(调参器)
.. autoclass:: nni.evolution_tuner.evolution_tuner.EvolutionTuner
:members:
.. autoclass:: nni.smac_tuner.
smac_tuner.
SMACTuner
.. autoclass:: nni.smac_tuner.SMACTuner
:members:
.. autoclass:: nni.gridsearch_tuner.
gridsearch_tuner.
GridSearchTuner
.. autoclass:: nni.gridsearch_tuner.GridSearchTuner
:members:
.. autoclass:: nni.networkmorphism_tuner.networkmorphism_tuner.NetworkMorphismTuner
...
...
@@ -36,15 +36,27 @@ Tuner(调参器)
.. autoclass:: nni.metis_tuner.metis_tuner.MetisTuner
:members:
.. autoclass:: nni.ppo_tuner.PPOTuner
:members:
.. autoclass:: nni.batch_tuner.batch_tuner.BatchTuner
:members:
.. autoclass:: nni.gp_tuner.gp_tuner.GPTuner
:members:
Assessor(评估器)
------------------------
.. autoclass:: nni.assessor.Assessor
:members:
.. autoclass:: nni.curvefitting_assessor.curvefitting_assessor.CurvefittingAssessor
.. autoclass:: nni.assessor.AssessResult
:members:
.. autoclass:: nni.curvefitting_assessor.CurvefittingAssessor
:members:
.. autoclass:: nni.medianstop_assessor.
medianstop_assessor.
MedianstopAssessor
.. autoclass:: nni.medianstop_assessor.MedianstopAssessor
:members:
...
...
@@ -57,4 +69,4 @@ Advisor
:members:
.. autoclass:: nni.bohb_advisor.bohb_advisor.BOHB
:members:
\ No newline at end of file
:members:
docs/zh_CN/tutorials.rst
View file @
57924caf
...
...
@@ -9,6 +9,9 @@
实现 Trial<./TrialExample/Trials>
Tuner<tuners>
Assessor<assessors>
NAS (Beta) <nas>
模型压缩 (Beta) <model_compression>
特征工程 (Beta) <feature_engineering>
Web 界面<Tutorial/WebUI>
训练平台<training_services>
如何使用 Docker<Tutorial/HowToUseDocker>
...
...
Prev
1
2
Next
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment