Укажите фиксированные параметры и параметры для поиска в optuna (lightgbm)
Я только что нашел Optuna, и кажется, что они интегрированы с lightGBM, но мне сложно понять, где я могу исправить параметры, например
scoring="auc"
и где я могу определить сетку для поиска, например
num_leaves=[1,2,5,10]
.
Используя https://github.com/optuna/optuna/blob/master/examples/lightgbm_tuner_simple.py качестве примера, они просто определяют
params
dict с некоторыми фиксированными параметрами (настроены ли все параметры, не указанные в этом dict?), и в документации указано, что
Он настраивает важные гиперпараметры (например, min_child_samples и feature_fraction) поэтапно.
Как я могу контролировать, какие параметры настраиваются и в каком пространстве, и как я могу исправить некоторые параметры?
1 ответ
Я не разбираюсь в LightGBM, но так как это первый результат по фиксации параметров в оптуне, отвечу на ту часть вопроса:
В optuna пространство поиска определяется в коде целевой функции. Эта функция должна принимать объект «испытания» в качестве входных данных, и вы можете создавать параметры, вызывая
suggest_float()
,
suggest_int()
и т. д. функции на этом объекте испытаний. Дополнительные сведения см. в документации по адресу 10_key_features/002_configurations.html.
Как правило, исправление параметра выполняется путем его жесткого кодирования вместо вызова
suggest
функцию, но можно зафиксировать определенные параметры извне, используя PartialFixedSampler.