diff --git a/tutorial/autofinetune.md b/tutorial/autofinetune.md index 63026314f0f3d6605eaad2f2d098acfa2dc90736..d181a56c32d19b12ec3469268d2166dd0a071ee8 100644 --- a/tutorial/autofinetune.md +++ b/tutorial/autofinetune.md @@ -2,7 +2,7 @@ ## 一、简介 -目前深度学习模型参数可分类两类:参数与超参数,前者是模型通过大量的样本数据进行训练学习得到的参数数据;后者则需要通过人工经验或者不断尝试找到最佳设置(如学习率、dropout_rate、batch_size等),以提高模型训练的效果。如果想得到一个效果好的深度学习神经网络模型,超参的设置非常关键。因为模型参数空间大,目前超参调整都是通过手动,依赖人工经验或者不断尝试,且不同模型、样本数据和场景下不尽相同,所以需要大量尝试,时间成本和资源成本非常浪费。PaddleHub Auto Fine-tune可以实现自动调整超参数。 +目前深度学习模型参数可分类两类:**模型参数(Model Parameters) ** 与 **超参数(Hyper Parameters) **,前者是模型通过大量的样本数据进行训练学习得到的参数数据;后者则需要通过人工经验或者不断尝试找到最佳设置(如学习率、dropout_rate、batch_size等),以提高模型训练的效果。如果想得到一个效果好的深度学习神经网络模型,超参的设置非常关键。因为模型参数空间大,目前超参调整都是通过手动,依赖人工经验或者不断尝试,且不同模型、样本数据和场景下不尽相同,所以需要大量尝试,时间成本和资源成本非常浪费。PaddleHub Auto Fine-tune可以实现自动调整超参数。 PaddleHub Auto Fine-tune提供两种超参优化策略: @@ -107,7 +107,9 @@ $ hub autofinetune train.py --param_file=hparam.yaml --cuda=['1','2'] --popsize= > `--tuning_strategy`: 可选,设置自动优化超参策略,可选hazero和pshe2,默认为pshe2 **NOTE**: + * 进行超参搜索时,一共会进行n轮(--round指定),每轮产生m组超参(--popsize指定)进行搜索。上一轮的优化结果决定下一轮超参数调整方向 + * 当指定GPU数量不足以同时跑一轮时,Auto Fine-tune功能自动实现排队为了提高GPU利用率,建议卡数为刚好可以被popsize整除。如popsize=6,cuda=['0','1','2','3'],则每搜索一轮,Auto Fine-tune自动起四个进程训练,所以第5/6组超参组合需要排队一次,在搜索第5/6两组超参时,会存在两张卡出现空闲等待的情况,如果设置为3张可用的卡,则可以避免这种情况的出现。 ## 四、目录结构