贝叶斯优化

比如我们已知函数y=f(x),那我们想知道f(x)的最大值,x=argmax{f(x)}

  1. 我们使用高斯过程GP作为代理函数去代理f(x),根据一些已有的一些初始(xi,yi)(上图曲线上的小黑点)去fit一个GP(上图紫色区域画出来fit好的GP)

  2. 根据已有的高斯过程,随机采样m个点(上图的x1,x2,x3),对这m点可以使用上一步的GP去预测每个点的mean和std,得到每个点处的高斯分布,根据acquisition函数选择一个最优点xt(上图的x3),然后(xt,f(xt))添加到数据里重新fit一个新的GP
    acquisition函数只是一个评价m个随机点好坏的标准,可能有最大化提升概率(POI),最大化提升量(EI),最大化置信上界(UCB)
    exploit和explore
    随机几个种子点作为初值,计算L-BFGS看能不能超越上面acquisition函数选出的最大值

  3. 不断重复上述过程,获得最大的f(x)

1.通俗理解贝叶斯优化
2.贝叶斯优化(原理+代码解读)
3.说说高斯过程
4.贝叶斯优化
5.从高斯过程到贝叶斯优化
6.代码,可以调试运行BayesianOptimization/examples/sklearn_eaxmple.py文件试试用贝叶斯优化调svm的超参数

posted @ 2022-03-19 19:49  阿夏z  阅读(460)  评论(0编辑  收藏  举报