【发布时间】:2021-06-03 00:59:00
【问题描述】:
我阅读了一些关于BayesianOptimization 的帖子和教程,但我从未看到关于kappa 变量的解释。
- 什么是
kappa变量? - 它对我们有什么帮助?
- 这些值如何影响
BayesianOptimization进程?
【问题讨论】:
标签: optimization bayesian hyperparameters scikit-optimize
我阅读了一些关于BayesianOptimization 的帖子和教程,但我从未看到关于kappa 变量的解释。
kappa 变量?BayesianOptimization 进程?【问题讨论】:
标签: optimization bayesian hyperparameters scikit-optimize
kappa 参数与xi 一起用于控制贝叶斯优化获取函数在多大程度上平衡探索和利用。
较高的kappa 值意味着更多的探索和更少的开发,反之亦然。探索将搜索推向未探索的区域,而利用则通过惩罚更高的方差值来关注当前最佳结果附近的结果。
在优化开始时使用默认的kappa 值可能会有所帮助,然后如果您减少搜索空间,则使用较低的值。
在 scikit-optimize 中,kappa 仅在采集函数 acq_func 设置为“LCB”时使用,xi 在 acq_func 为“EI”或“PI”时使用,其中 LCB 为 Lower Confidence Bound,EI 是预期的改进,PI 是改进的概率。
同样适用于 BayesianOptimization 包:
acq: {'ucb', 'ei', 'poi'}
The acquisition method used.
* 'ucb' stands for the Upper Confidence Bounds method
* 'ei' is the Expected Improvement method
* 'poi' is the Probability Of Improvement criterion.
Mathematical details on acquisition functions
注意,BayesianOptimization 包和 scikit-optimize 使用不同的默认 kappa 值:分别为 2.576 和 1.96。
有一个不错的exploration vs exploitation example in the scikit-optimize docs。
有一个类似的BayesianOptimization exploration vs exploitation example notebook。
FWIW 我已经使用了这两个软件包并获得了不错的结果。我发现 scikit-optimize plotting functions 在微调参数搜索空间时很有用。
【讨论】: