1,文件配置
rose@D370:~/mnist$ tree
.
├── config.yml # 微调配置文件
├── mnist.py # 启动文件
└── search_space.json # 参数配置文件
2,启动与停止
nnictl create --config config.yml # 启动 -p 8888 端口,可选项
nnictl stop # 停止
启动后,窗口查看
启动不是直接运行mnist.py这个文件,使用nnictl命令
3,配置文件详解
config.yml,此文件配置nni选项
# 作者
authorName: default
# 项目名称
experimentName: example_mnist_pytorch
trialConcurrency: 1
# 最大持续时间
maxExecDuration: 1h
# 最大尝试数量
maxTrialNum: 10
#choice: local, remote, pai
trainingServicePlatform: local
searchSpacePath: search_space.json
#choice: true, false
useAnnotation: false
tuner:
#choice: TPE, Random, Anneal, Evolution, BatchTuner, MetisTuner, GPTuner
#SMAC (SMAC should be installed through nnictl)
builtinTunerName: TPE
classArgs:
#choice: maximize, minimize
optimize_mode: maximize
trial:
# 启动文件
command: python3 mnist.py
codeDir: .
# GPU数量
gpuNum: 0
search_space.json,此文件配置微调的最优参数
{
"optimizer":{"_type":"choice", "_value":["SGD", "Adadelta", "Adagrad", "Adam", "Adamax"]},
"learning_rate":{"_type":"choice","_value":[0.0001, 0.001, 0.01, 0.1]},
"dropout_rate":{"_type":"uniform","_value":[0.5, 0.9]},
"conv_size":{"_type":"choice","_value":[2,3,5,7]},
"hidden_size":{"_type":"choice","_value":[124, 512, 1024]},
"batch_size": {"_type":"choice", "_value": [1, 4, 8, 16, 32]}
}