Entropy Search for Information-Efficient Global Optimization

Hennig P, Schuler C J. Entropy search for information-efficient global optimization[J]. Journal of Machine Learning Research, 2012, 13(1): 1809-1837.

@article{hennig2012entropy,
title={Entropy search for information-efficient global optimization},
author={Hennig, Philipp and Schuler, Christian J},
journal={Journal of Machine Learning Research},
volume={13},
number={1},
pages={1809–1837},
year={2012}}

貝葉斯優化中的 Entropy Search (EI) 方法.

主要內容

這篇文章關注的是
maxxIf(x), \max_{x \in I} \:f(x),
的問題, 且假設定義域II是有界的.

一般, 通過高斯過程定義f(x)f(x)的概率替代函數, 假設
f(x)N(u0(x),k(x,x)),y=f(x)+ϵ,ϵN(0,σ2). f(x) \sim \mathcal{N}(u_0(x), k(x,x)),\\ y = f(x) + \epsilon, \: \epsilon \sim \mathcal{N}(0, \sigma^2).
在已經觀測到X={x1,,xT}X = \{x_1, \ldots, x_T\}以及Y={y1,,yT}Y = \{y_1, \ldots, y_T\}的基礎上, 我們可以求得f(x)f(x^*)的後驗分佈爲以
μ(x)=μ0(x)+k(x,X)T[k(X,X)+σI]1(Yu0(X))σ2(x)=k(x,x)k(x,X)T(k(X,X)+σI)1k(x,X) \mu (x^*) = \mu_0(x^*) + k(x^*, X)^T [k(X, X) + \sigma I]^{-1}(Y-u_0(X)) \\ \sigma_*^2(x^*)=k(x^*, x^*) - k(x^*, X)^T (k(X,X)+\sigma I)^{-1}k(x^*,X)
爲均值和方差的正態分佈.

我們的目的是在已有這些條件的基礎上, 尋找下一個(或多個)評估點.

定義:
pmin(x)=p[x=argminf(x)]=f:IRp(f)x~I,x~xθ[f(x~)f(x)]df,(1) \tag{1} p_{min}(x) =p[x = \arg \min f(x)] = \int_{ f:I \rightarrow R} p(f) \prod_{\tilde{x} \in I, \tilde{x} \not = x} \theta[f(\tilde{x})-f(x)] \mathrm{d}f,
其中θ(x)=1,x0,else0\theta(x) = 1, x\ge0, else \: 0. \prod的部分在針對連續型的定義域時需要特別的定義. 顯然(1)表示xx爲最小值點的概率.

再定義損失函數(當然損失函數不選擇KL散度也是可以的, 但這是EI的名字的由來):
L(pmin)=LKL(pmin)=Ipmin(x)logpmin(x)b(x)dx.(2) \tag{2} \mathcal{L}(p_{min}) = \mathcal{L}_{KL}(p_{min})=-\int_Ip_{min}(x) \log \frac{p_{min}(x)}{b(x)} \mathrm{d}x.
當我們選擇b(x)b(x)II上的均勻分佈的時候, 當我們最小化L\mathcal{L}的時候, pminp_{min}會趨向Dirac分佈(即某個點處的概率密度爲無窮, 其餘爲0, 顯然, 該點我們有足夠的信心認爲其是f(x)f(x)的最小值點).

但是這樣還不夠, 我們進一步關心其期望損失(最小化):

Lx=p(yx)L(pmin(Y,X,y,x))dy.(3) \tag{3} \langle \mathcal{L} \rangle_{x} = \int p(y|x) \mathcal{L}(p_{min} (\cdot|Y, X, y, x)) \mathrm{d}y.

通過最小化(3),我們可以獲得接下來的評估點.

接下來的問題是如果去估計.

pminp_{min}的估計

比較麻煩的是\prod的部分, 策略是挑選NN個點x~={x~1,,x~N}\tilde{x} = \{\tilde{x}_1, \ldots, \tilde{x}_N\}. 一種是簡單粗暴的網格的方式, 但是這種方式往往需要較大的NN, 另一種是給定一個測度uu, 根據已有的觀察(X,Y)(X, Y), 通過u(X,Y)u(X, Y)採樣x~\tilde{x}. 一個好的uu應該在使得令損失能夠產生較大變化的區域多采樣點, 針對本文的情況 應該在pminp_{min}值比較高的地方多采樣點.

文中給了倆種方法, 一種直接的方法是pminp_{min}可以用蒙特卡洛積分去逼近,

一下是我猜想的用MC積分的方式(文中未給出具體的形式)"

  • 根據一定策略選取x~\tilde{x};
  • 重複J次:
  1. 根據概率p(f)p(f)採樣f(x~),f(x)f(\tilde{x}), f(x),
  2. 計算\prod部分
  • 取平均

作者選擇的是 Expectation Propagation (EP)的方法, 這種方法能夠估計出x~i,i=1,,N\tilde{x}_i, i=1,\ldots,N處的概率qmin(xi~)q_{min}(\tilde{x_i}): fminf_{min}存在於以x~i\tilde{x}_i爲"中心"的一定範圍內(文中用step)的概率. 當NN足夠的的時候, 這個step正比於(Nu(x~i))1(Nu(\tilde{x}_i))^{-1}, 則:
pmin(x)qmin(xi)Nu(x~i)Zu,Zu=u(x)dx,xi=argminxix~xxi. p_{min}(x) \approx \frac{q_{min}(x_i)Nu(\tilde{x}_i)}{Z_u}, \: Z_u=\int u(x) \mathrm{d}x, \: x_i = \arg \min_{x_i \in \tilde{x}} \|x-x_i\|.

這樣我們就完成了pminp_{min}的估計, 一個更加好的性質是qminq_{min}關於μ,σ\mu, \sigma_*的導數是有解析表達式的, 且ZuZ_u是不必計算的(後續最小化過程中可以省略掉).

LKL\mathcal{L}_{KL}的估計

在這裏插入圖片描述
其中p^min=qmin\hat{p}_{min}=q_{min}.

ΔL\langle \Delta \mathcal{L} \rangle

在這裏插入圖片描述
argminXLX\arg \min_X \langle \mathcal{L} \rangle_X 用最小化一階近似替代, 積分可以用MC積分逼近.

最後給出算法:

在這裏插入圖片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章