Вложить один конкретный набор параметров в выбранную партию

Я пытаюсь протестировать другой набор параметров в алгоритме машинного обучения с помощью 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)

Это может быть интересно особенно потому, что оно интегрирует испытание в исследование (чтобы впоследствии сгруппировать все испытания в фрейм данных и т. Д.)

Другие вопросы по тегам