美文网首页
Bayesian Optimization with a Fin

Bayesian Optimization with a Fin

作者: 馒头and花卷 | 来源:发表于2020-03-19 22:30 被阅读0次

    Lam R, Willcox K, Wolpert D H, et al. Bayesian Optimization with a Finite Budget: An Approximate Dynamic Programming Approach[C]. neural information processing systems, 2016: 883-891.

    @article{lam2016bayesian,
    title={Bayesian Optimization with a Finite Budget: An Approximate Dynamic Programming Approach},
    author={Lam, Remi and Willcox, Karen and Wolpert, David H},
    pages={883--891},
    year={2016}}

    贝叶斯优化中的多步优化策略. 像经典的EI方法, 就是只考虑一步, 即希望找到
    r(\mathcal{S}_k, x_{k+1},f_{k+1})=\max \{0, f_{min}^{\mathcal{S}_k}-f_{k+1}\}
    的期望收益最大化的点x_{k+1}为下一个评估点.

    上式中的f_{min}^{\mathcal{S}_k}是指目标函数在集合\mathcal{S}_k上的最小值.

    主要内容

    考虑如下动态规划, 第k步的
    状态: \mathcal{S}_k, 即观测到的点;
    控制: u_k, 且u_k(\mathcal{S}_k)=x_{k+1}
    扰动: w_k:=f_{k+1} \sim p(f(x_{k+1})|\mathcal{S}_k);

    设状态转移为:
    \mathcal{S}_{k+1} = \mathcal{F}_k (\mathcal{S}_{k}, x_{k+1}, f_{k+1}) = \mathcal{S}_{k}\cup \{(x_{k+1}, f_{k+1})\}.

    收益(效用函数):
    U_k(x_{k+1}; \mathcal{S} _k) = \mathbb{E}_{w_k}[r_k(\mathcal{S}_k, x_{k+1}, f_{k+1})+J_{k+1}(\mathcal{F}_k (\mathcal{S}_{k}, x_{k+1}, f_{k+1}))], \\ J_k(x_{k+1}) = \max_{x_{k+1}} U_k,\\ J_N=r_N(x_{N+1}).

    很自然的想法是, 我们最大化U_1, 来获得所需的评估点, 但是问题是, 这个是一个嵌套的最大化优化问题, 不易求解.

    本文采用rollout 算法来估计U_k, 具体如下:

    给定基本的决策控制\pi = (\pi_1, \ldots, \pi_N)(比如最大化EI), 为了最优化U_k, 我们先选择用H_{k+1}估计J_{k+1}, 其定义如下:

    在这里插入图片描述
    其中, 用以调节增量.

    H_n是一个期望, 可以用Gauss-Hermite正交化估计:

    在这里插入图片描述

    其中\tilde{N} = \min \{k+h, N\}, 用以限制最大的估计步数, \alpha^{(q)}是正交系数, f_{n+1}^{(q)}是Hermite多项式的根(大概).

    于是, U_k(x_{k+1},\mathcal{S}_k)便可用下式估计:

    在这里插入图片描述
    在这里插入图片描述

    算法如下:

    Input: h, \gamma, N, \mathcal{S}_1;
    repeat N:

    • 根据(20)近似最大化U_k
    • 更新\mathcal{S}_{k+1}=\mathcal{S}_k \cup \{(x_{k+1},f_{k+1})\}

    out: f_{min}^{S_{N+1}}.

    相关文章

      网友评论

          本文标题:Bayesian Optimization with a Fin

          本文链接:https://www.haomeiwen.com/subject/pvbryhtx.html