我已经考虑了一个方程,并且正在尝试评估其最小值。
条件是要在100个试验中的80个中获得最小值。
我只在第13次审判中得到了这个最低要求,而在以后的任何审判中都没有。我曾尝试过调整超参数,但是没有运气。
x = trial.suggest_uniform('x', 10000, 50000)
optimizer = trial.suggest_categorical('optimizer', ['MomentumSGD', 'Adam'])
num_layers = trial.suggest_int('num_layers', 1, 3)
learning_rate = trial.suggest_loguniform('learning_rate', 1e-10, 1e-1)
classifier_name = trial.suggest_categorical('classifier', ['SVC', 'RandomForest'])
if classifier_name == 'SVC':
svc_c = trial.suggest_loguniform('svc_c', 1e-10, 1e+10)
classifier_obj = sklearn.svm.SVC(C=svc_c)
else:
rf_max_depth = int(trial.suggest_loguniform('rf_max_depth', 2, 32))
classifier_obj = sklearn.ensemble.RandomForestClassifier(max_depth=rf_max_depth)
return 50*np.sin(x/50)*np.sin(x/50/(10*np.exp(1)))/x
预计该研究将在100个试验中的80个中获得最佳价值。