Вложить один конкретный набор параметров в выбранную партию
Я пытаюсь протестировать другой набор параметров в алгоритме машинного обучения с помощью Optuna.
Автоматическая выборка Optuna очень полезна, но есть ли способ принудительно включить один конкретный набор параметров в предлагаемый пакет, определенный Optuna?
Например, если у меня есть параметры a x,y:
def objective(trial)
x = trial.suggest_uniform('x', -10, 10)
y = trial.suggest_uniform('x', -5, 5)
return (x+y-2)**2
study = optuna.create_study(study_name='study_name')
study.optimize(objective, n_trials=10)
Я также хотел бы определить один набор x=0,1, y=0,2 в автоматически сгенерированный. Это возможно?
Было бы интересно сравнить "интуитивные" значения некоторого алгоритма машинного обучения с другими значениями.
2 ответа
Да. Один из способов сделать это - использовать FixedTrial, который покажет вам результат вашего интуитивного предположения.
print(objective(optuna.trial.FixedTrial({'x': 0.1, 'y': 0.2})))
Также я видел:
study = optuna.create_study()
study.enqueue_trial({'x':0.1, 'y':0.2})
study.optimize(objective, n_trials=10)
Это может быть интересно особенно потому, что оно интегрирует испытание в исследование (чтобы впоследствии сгруппировать все испытания в фрейм данных и т. Д.)