我刚刚找到了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(
我如何控制哪些参数被调整,在什么空间,我如何修复一些参数?
我对LightGBM一无所知,但由于这是修复optuna中参数的第一个结果,我将回答这部分问题:
在optuna中,搜索空间是在目标函数的代码中定义的。此函数应将"trials"对象作为输入,您可以通过调用该trials对象上的suggest_float()
、suggest_int()
等函数来创建参数。有关更多信息,请参阅10_key_features/002_configurations.html 上的文档
通常,修复参数是通过硬编码而不是调用suggest
函数来完成的,但也可以使用PartialFixedSampler 从外部修复特定参数