在不同数据集上需要不同的超参以达到最优性能,以下通过暴力搜索的方式,对不同超参进行排列组合,用循环的方式找到最优组合。
首先是python脚本的撰写,将你需要调的超参写入
import os
BS = [8,12,16,20,24]
EDL_T=[0.1,0.5,1,2,4]
SIM_T=[0.1,0.5,1,2,4]
R = [1,2,3,4]
LDR = [0.1,0.3,0.5]
for bs in BS:
for edl_t in EDL_T:
for sim_t in SIM_T:
for r in R:
for ldr in LDR:
file = str(bs)+'_'+str(edl_t)+'_'+str(sim_t)+'_'+str(r)+'_'+str(ldr)+'.log'
print("running " + file)
print(os.system('sh run.sh '+str(bs)+' '+str(edl_t)+' '+ str(sim_t)+' '+ str(r) +' ' + str(ldr) +' '+str(file)))
运行脚本run.sh
#!/bin/bash
BS=$1
edl_t=$2
sim_t=$3
edl_r