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
60223b2d
"tools/git@developer.sourcefind.cn:OpenDAS/nni.git" did not exist on "d83b2ce4dc16176106d7edaedf2db6690744f8b5"
Unverified
Commit
60223b2d
authored
Feb 03, 2019
by
Chi Song
Committed by
GitHub
Feb 03, 2019
Browse files
update Chinese according doc changes (#712)
parent
bf9fe6dc
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
21 additions
and
13 deletions
+21
-13
zh_CN/docs/Builtin_Tuner.md
zh_CN/docs/Builtin_Tuner.md
+21
-13
No files found.
zh_CN/docs/Builtin_Tuner.md
View file @
60223b2d
...
@@ -2,18 +2,18 @@
...
@@ -2,18 +2,18 @@
NNI 提供了先进的调优算法,使用上也很简单。 下面是内置 Tuner 的简单介绍:
NNI 提供了先进的调优算法,使用上也很简单。 下面是内置 Tuner 的简单介绍:
| Tuner | 算法简介 |
| Tuner | 算法简介
|
| ---------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------- |
| ---------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------
--------------------------------
|
|
**TPE**
[
(用法)
](
#TPE
)
| Tree-structured Parzen Estimator (TPE) 是一种 sequential model-based optimization(SMBO,即基于序列模型优化)的方法。 SMBO 方法根据历史指标数据来按顺序构造模型,来估算超参的性能,随后基于此模型来选择新的超参。 |
|
**TPE**
[
(用法)
](
#TPE
)
| Tree-structured Parzen Estimator (TPE) 是一种 sequential model-based optimization(SMBO,即基于序列模型优化)的方法。 SMBO 方法根据历史指标数据来按顺序构造模型,来估算超参的性能,随后基于此模型来选择新的超参。
|
|
**Random Search**
[
(用法)
](
#Random
)
| 在超参优化时,随机搜索算法展示了其惊人的简单和效果。 建议当不清楚超参的先验分布时,采用随机搜索作为基准。 |
|
**Random Search**
[
(用法)
](
#Random
)
| 在超参优化时,随机搜索算法展示了其惊人的简单和效果。 建议当不清楚超参的先验分布时,采用随机搜索作为基准。
|
|
**Anneal**
[
(用法)
](
#Anneal
)
| 这种简单的退火算法从先前的采样开始,会越来越靠近发现的最佳点取样。 此算法是随机搜索的简单变体,利用了反应曲面的平滑性。 退火率不是自适应的。 |
|
**Anneal**
[
(用法)
](
#Anneal
)
| 这种简单的退火算法从先前的采样开始,会越来越靠近发现的最佳点取样。 此算法是随机搜索的简单变体,利用了反应曲面的平滑性。 退火率不是自适应的。
|
|
**Naive Evolution**
[
(用法)
](
#Evolution
)
| 朴素进化算法来自于大规模图像分类进化。 它会基于搜索空间随机生成一个种群。 在每一代中,会选择较好的结果,并对其下一代进行一些变异(例如,改动一个超参,增加或减少一层)。 进化算法需要很多次 Trial 才能有效,但它也非常简单,也很容易扩展新功能。 |
|
**Naive Evolution**
[
(用法)
](
#Evolution
)
| 朴素进化算法来自于大规模图像分类进化。 它会基于搜索空间随机生成一个种群。 在每一代中,会选择较好的结果,并对其下一代进行一些变异(例如,改动一个超参,增加或减少一层)。 进化算法需要很多次 Trial 才能有效,但它也非常简单,也很容易扩展新功能。
|
|
**SMAC**
[
(用法)
](
#SMAC
)
| SMAC 基于 Sequential Model-Based Optimization (SMBO,即序列的基于模型优化方法)。 它会利用使用过的结果好的模型(高斯随机过程模型),并将随机森林引入到 SMBO 中,来处理分类参数。 SMAC 算法包装了 Github 的 SMAC3。
|
|
**SMAC**
[
(用法)
](
#SMAC
)
| SMAC 基于 Sequential Model-Based Optimization (SMBO,即序列的基于模型优化方法)。 它会利用使用过的结果好的模型(高斯随机过程模型),并将随机森林引入到 SMBO 中,来处理分类参数。 SMAC 算法包装了 Github 的 SMAC3。
注意:SMAC 需要通过
`nnictl package`
命令来安装。
|
|
**Batch tuner**
[
(用法)
](
#Batch
)
| Batch Tuner 能让用户简单的提供几组配置(如,超参选项的组合)。 当所有配置都执行完后,Experiment 即结束。 Batch Tuner 仅支持 choice 类型。 |
|
**Batch tuner**
[
(用法)
](
#Batch
)
| Batch Tuner 能让用户简单的提供几组配置(如,超参选项的组合)。 当所有配置都执行完后,Experiment 即结束。 Batch Tuner 仅支持 choice 类型。
|
|
**Grid Search**
[
(用法)
](
#GridSearch
)
| 网格搜索会穷举定义在搜索空间文件中的所有超参组合。 网格搜索可以使用的类型有 choice, quniform, qloguniform。 quniform 和 qloguniform 中的数值 q 具有特别的含义(不同于搜索空间文档中的说明)。 它表示了在最高值与最低值之间采样的值的数量。 |
|
**Grid Search**
[
(用法)
](
#GridSearch
)
| 网格搜索会穷举定义在搜索空间文件中的所有超参组合。 网格搜索可以使用的类型有 choice, quniform, qloguniform。 quniform 和 qloguniform 中的数值 q 具有特别的含义(不同于搜索空间文档中的说明)。 它表示了在最高值与最低值之间采样的值的数量。
|
|
[
Hyperband
](
https://github.com/Microsoft/nni/tree/master/src/sdk/pynni/nni/hyperband_advisor
)
[
(用法)
]
(#Hyperband) | Hyperband 试图用有限的资源来探索尽可能多的组合,并发现最好的结果。 它的基本思路是生成大量的配置,并运行少量的步骤来找到有可能好的配置,然后继续训练找到其中更好的配置。 |
|
[
Hyperband
](
https://github.com/Microsoft/nni/tree/master/src/sdk/pynni/nni/hyperband_advisor
)
[
(用法)
]
(#Hyperband) | Hyperband 试图用有限的资源来探索尽可能多的组合,并发现最好的结果。 它的基本思路是生成大量的配置,并运行少量的步骤来找到有可能好的配置,然后继续训练找到其中更好的配置。
|
|
[
Network Morphism
](
../src/sdk/pynni/nni/networkmorphism_tuner/README.md
)
[
(用法)
]
(#NetworkMorphism) | Network Morphism 提供了深度学习模型的自动架构搜索功能。 每个子网络都继承于父网络的知识和形态,并变换网络的不同形态,包括深度,宽度,跨层连接(skip-connection)。 然后使用历史的架构和指标,来估计子网络的值。 最后会选择最有希望的模型进行训练。 |
|
[
Network Morphism
](
../src/sdk/pynni/nni/networkmorphism_tuner/README.md
)
[
(用法)
]
(#NetworkMorphism) | Network Morphism 提供了深度学习模型的自动架构搜索功能。 每个子网络都继承于父网络的知识和形态,并变换网络的不同形态,包括深度,宽度,跨层连接(skip-connection)。 然后使用历史的架构和指标,来估计子网络的值。 最后会选择最有希望的模型进行训练。
|
|
**Metis Tuner**
[
(用法)
](
#MetisTuner
)
| 大多数调参工具仅仅预测最优配置,而 Metis 的优势在于有两个输出:(a) 最优配置的当前预测结果, 以及 (b) 下一次 Trial 的建议。 它不进行随机取样。 大多数工具假设训练集没有噪声数据,但 Metis 会知道是否需要对某个超参重新采样。 |
|
**Metis Tuner**
[
(用法)
](
#MetisTuner
)
| 大多数调参工具仅仅预测最优配置,而 Metis 的优势在于有两个输出:(a) 最优配置的当前预测结果, 以及 (b) 下一次 Trial 的建议。 它不进行随机取样。 大多数工具假设训练集没有噪声数据,但 Metis 会知道是否需要对某个超参重新采样。
|
<br
/>
<br
/>
...
@@ -21,7 +21,7 @@ NNI 提供了先进的调优算法,使用上也很简单。 下面是内置 Tu
...
@@ -21,7 +21,7 @@ NNI 提供了先进的调优算法,使用上也很简单。 下面是内置 Tu
要使用 NNI 内置的 Tuner,需要在
`config.yml`
文件中添加
**builtinTunerName**
和
**classArgs**
。 这一节会介绍推荐的场景、参数等详细用法以及样例。
要使用 NNI 内置的 Tuner,需要在
`config.yml`
文件中添加
**builtinTunerName**
和
**classArgs**
。 这一节会介绍推荐的场景、参数等详细用法以及样例。
注意:参考样例中的格式来创建新的
`config.yml`
文件。
注意:参考样例中的格式来创建新的
`config.yml`
文件。
一些内置的 Tuner 还需要通过
`nnictl package`
命令先安装,如 SMAC。
<a
name=
"TPE"
></a>
<a
name=
"TPE"
></a>
...
@@ -133,6 +133,14 @@ tuner:
...
@@ -133,6 +133,14 @@ tuner:
> 名称:**SMAC**
> 名称:**SMAC**
**安装**
SMAC 在第一次使用前,必须用下面的命令先安装。
```
bash
nnictl package
install
--name
=
SMAC
```
**建议场景**
**建议场景**
与 TPE 类似,SMAC 也是一个可以被用在各种场景中的黑盒 Tuner。在计算资源有限时,也可以使用。 此算法为离散超参而优化,因此,如果大部分超参是离散值时,建议使用此算法。
与 TPE 类似,SMAC 也是一个可以被用在各种场景中的黑盒 Tuner。在计算资源有限时,也可以使用。 此算法为离散超参而优化,因此,如果大部分超参是离散值时,建议使用此算法。
...
...
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