阿部 武, 2022/7/29
Taking Human Out of the Loop
制約条件下でのベイズ最適化
1. 制約条件がわかっている場合
低カロリーだが美味しいクッキーを作りたい場合などが該当する。クッキーのカロリーを最小化
する一方で、95%の人は美味しいと答えるという条件下で最適解を見つける。制約条件を獲得
関数に組み込んで最適化を行う。
2. 制約条件も不明の場合
IECI(Integrated Expected Constraint Improvement)を代表とする制約条件が不明でも使える
獲得関数を用いる
制約条件下でのベイズ最適化
低カロリーだが美味しいクッキーを作りたい
• 問題設定
• クッキーのカロリーはなるべく低くする
• n人に試食してもらい好きか嫌いかを評価してもらう
• 制約条件
• 最低でも95パーセントの人が美味しいと回答する
制約条件下でのベイズ最適化
低カロリーだが美味しいクッキーを作りたい
argmin
x
C(x) s.t. q(x) ≥ 1 − ϵ
: レシピ
x
: 試食者が美味しいと答える割合
q(x)
: クッキーのカロリー
C(x)
レシピ カロリー
砂糖 20 g 100 kcal
薄力粉 40 g 50 kcal
バター 20 g 80 kcal
卵 50 g 40 kcal
: 美味しくなさを許容できる割合
ϵ
制約条件下でのベイズ最適化
ある人がクッキーを好きかどうかは確率論的な事象
argmin
x
𝔼
[f(x)] s.t. ∀kPr(Ck(x)) ≥ 1 − ϵk
1.目的関数の期待値の最小化を目指す
2.高確率で制約条件を満たす を解とする
x
argmin
x
C(x) s.t. q(x) ≥ 1 − ϵ
制約条件がK個あるとして一般化
: 目的関数
f(x)
制約条件下でのベイズ最適化
制約条件をモデルに組み込むために潜在制約関数 を定義
g(x)
制約条件 が満たされる
Ck(x) ⇔ gk(x) ≥ 0
を推定する代理関数にGPを使えば累積分布関数を計算することで
gk(x)
Pr(Ck(x)) = Pr(gk(x) ≥ 0)
= 1 − Pr(gk(x) < 0)
= 1 − Φ(0)
gk(x) ∼ GP(u, Σ)
制約条件下でのベイズ最適化
制約条件の分布がガウス分布ではないとき
f ∼ GP(0, K) = p(f)
y ∼ ℕ(f, σ2
I) =
n
∏
i=1
p(yi ∣ fi)
p(f ∣ y) ∝ ℕ(y ∣ f, σ2
I)ℕ(f ∣ 0, K)
事前分布
尤度
事後分布
のとき尤度にはベルヌーイ分布を用いるのが適切
y ∈ (0,1)
p(yi ∣ λ(fi)) =
{
λ(fi) yi = 1
1 − λ(fi) yi = 0
λ(fi) = Φ(fi)
制約条件下でのベイズ最適化
事前分布を二項分布や他の分布に設定することも可能
テスターがクッキーを好きか嫌いか ⇒ Bi(n, q(x))
, であるから潜在制約関数 は
q(x) ∈ (0,1) g(x) ∈ ℝ g(x)
g(x) = s−1
(q(x))
s(x) = log
x
1 − x
制約条件下でのベイズ最適化
獲得関数に制約条件を組み込む
a(x) = a(x)EIPr(C(x))
= a(x)EI
K
∏
k=1
Pr(Ck(x))
探索点が制約条件を満たさないときは
a(x) =
K
∏
k=1
Pr(gk(x) ≥ 0)
制約条件下でのベイズ最適化
制約条件が不明な場合の獲得関数も存在する
I(x) = max{0, fmin
n − f(x)}
fn
min = min{f(x1), …, f(xn)}
f ∼ GP(μ(x), k(x, x′

)) EI(x) = (fn
min − μn(x)) Φ
(
fn
min − μn(x)
σn(x) )
+ σn(x) ϕ
(
fn
min − μn(x)
σn(x) )
期待改善度(Expected Improvement)
EI(x) ≈
1
T
T
∑
t=1
max{0, fn
min − y(t)
}
EI(x) =
𝔼
{I(x) ∣ Dn}
制約条件下でのベイズ最適化
制約条件が不明な場合の獲得関数も存在する
I(x ∣ xn+1) = max{0, fn
min − f(x ∣ xn+1)}
ある探索点 が に追加されたときの改善度を定義
(次の探索点は決めたけれど,探索はまだしていない状態)
xn+1 Dn
I(x) = max{0, fmin
n − f(x)}
の分布は次の計算によって求められる
f(x ∣ xn+1) ∣ Dn
は未観測であるため, の平均には変化がない.
𝔼
{f(x ∣ xn+1) ∣ Dn} = μ(x)
f(xn+1) f(x|Dn)
f ∼ GP(μ(x), k(x, x′

))
ガウス過程の公式より
Σ[Y(x ∣ xn+1) ∣ Dn] = σ2
n+1(x)
σ2
n+1(x) = Σ(xn+1, xn+1) − Σ(xn+1, Xn)Σ−1
n Σ(Xn, xn1
)
(
f(x)
? )
∼ N(μ(x),
(
K k*
kT
* k**)
)
が を加えた後でも改善度が高いなら は の改善
度可能性に影響が少ない. 逆に が の改善度に影響が
あるなら, を加えた後の改善度は小さいはず
x xn+1 xn+1 x
xn+1 x
xn+1
制約条件下でのベイズ最適化
制約条件が不明な場合の獲得関数も存在する
ある探索点 が に追加されたときの改善度の期待値(Expected Conditional Improvement)
xn+1 Dn
fn
min = min{f(x1), …, f(xn)}
f ∼ GP(μ(x), k(x, x′

))
I(x ∣ xn+1) = max{0, fn
min − f(x ∣ xn+1)}
𝔼
{I(x ∣ xn+1) ∣ Dn} = ( fn
min − μn(x)) Φ
(
fn
min−μn(x)
σn+1(x) )
+ σn+1(x) ϕ
(
fn
min−μn(x)
σn+1(x) )
σ2
n+1(x) = Σ(xn+1, xn+1) − Σ(xn+1, Xn)Σ−1
n Σ(Xn, xn1
)
制約条件下でのベイズ最適化
制約条件が不明な場合の獲得関数も存在する
解空間 全体におけるECIをIECI(Integrated Expected Conditional Improvement)と呼ぶ
x ∈
𝒳
IECI(xn+1) = −
∫x∈
𝒳
𝔼
{I(x ∣ xn+1) ∣ Dn}w(x) dx U ∼ (0,1)
𝔼
{I(x ∣ xn+1) ∣ Dn} = ( fn
min − μn(x)) Φ
(
fn
min−μn(x)
σn+1(x) )
+ σn+1(x) ϕ
(
fn
min−μn(x)
σn+1(x) )
IECI(xn+1) ≈ −
1
T
T
∑
t=1
𝔼
{I(x(t)
∣ xn+1)}w(x(t)
) where x(t)
∼ p(
𝒳
), for t = 1,…, T,
ベイズ最適化の計算コスト
探索点によって目的関数の評価に時間がかかり過ぎる場合がある
ex. DNNのlearning_rateの調整など
目的関数の評価にかかる時間 を獲得関数に組み込む
c(x)
a(x) =
aEI(x)
c(x)
高次元空間におけるベイズ最適化
高次元空間では大抵のパラメータは目的関数の振る舞いに大きな影響
を与えない
x⊤ ∈ τ ⊂ ℝD
f(x) = f(x⊤ + x⊥) = f(x⊤)
目的関数 がもつ 次元のE
ff
ective Dimensionalityにおいて最適化を行う
f : ℝD
→ ℝ de(de < D)
x⊥ ∈ τ⊥
⊂ ℝD
を満たすような 次元の部分空間 において
de τ
が成り立つとき、
はE
ff
ective Dimensionalityを持つ
f : ℝD
→ ℝ
有効次元
高次元空間におけるベイズ最適化
ランダム行列を用いて高次元空間を低次元空間に埋め込む
目的関数 が という縮退した線型空間を持ち,ある方向に動かしても の値が変わら
ない場合に効果を発揮する.(REMBO, Random EMbeded Bayesian Optimization)
f : ℝD
→ ℝ f(x) = f(x⊤ + x⊥) = f(x⊤) f(x)
定理1
が 次元の有効な次元(E
ff
ective Dimensionality)を
持ち,ランダム行列 の各要素 が から
サンプリングされたとき,
に対して, を満たすような が存在する.
f : ℝD
→ ℝ de
A ∈ ℝD×d
(d ≥ de) ai,j ℕ(0,1)
x ∈ ℝD
f(x) = f(Ay) y
高次元空間におけるベイズ最適化
g(x1, x2) = (x2 −
5.1
4π2
x2
1 +
5
π
− 6)2
+ 10(1 −
1
8π
)cos(x1) + 10
Branin関数に対して,関数に全く影響しないD-2次元を加えた合計D次元の の最小値を見つける実験で,
高パフォーマンスを発揮した.
f(x)
高次元空間におけるベイズ最適化
高次元空間では獲得関数が平坦になって探索が難しい
50次元のStyblinski-Tang関数から
500点観測した後のGPの出力で計算したEI
高次元空間におけるベイズ最適化
獲得関数を1次元に制限することで効果的に探索を行う
𝕃
(x, l) = {x + αl : α ∈ ℝ} ∩ X
x ∈ X l ∈ ℝd
X ⊂ ℝd
argmin
x∈x
f(x) s.t. g(x) ≤ 0
問題設定
アフィン変換
が動かす方向、 が動かす大きさに対応する
l α
の選び方は,
1. 軸に沿った選び方(CoordinateLineBO)
2. 回目のGPの出力点 における勾配(DescentLineBO)
l
i xi
高次元空間におけるベイズ最適化
ランダムに方向 を選んだとき大域的な収束は保証される
l
命題
が有効次元について仮定1を満たし、カーネル が2回微分
可能であるとき、一様分布により選ばれたアフィン変換の方
向 で Algorithm1をK回繰り返すと、確率 で次式を
満たす
f k
l 1 − δ
仮定1
目的関数 と制約関数 は、カーネルを とし制約ノル
ムを としたときたとき、再生核ヒルベルト空
間 の要素である。
f g k1, k2
∥f∥H1
,∥g∥H2
≤ B
H(k1), H(k2)
f( ̂
xk) − f⋆
≤ O((
1
K
log(
1
δ
))
2
de − 1 + ϵ) δ ∈ (0,1) ϵ : Accuracy
高次元空間におけるベイズ最適化
ベンチマークとなる問題で他の提案手法より高性能を発揮した
Multi-Tasks
関連のある複数の事象を同時にモデリングしたい
Covid-19の感染者数は時間的・空間的な変化があり(non-stationary)互いに関連した指標である
出典 : The New York Times
Multi-Tasks
二つ以上のGPの出力を同時に計算する
f1 ∼ GP(0, k1(x, x′

))
f2 ∼ GP(0, k2(x, x′

))
D1 = {(x1
1, y1
1), (x1
2, y1
2), (x1
3, y1
3)}
D2 = {(x2
1, y2
1), (x2
2, y2
2)}
y1
i = f1(x1
i ) + ϵi ϵi ∼ ℕ(0,σ2
1)
y2
i = f2(x2
i ) + ϵi ϵi ∼ ℕ(0,σ2
2)
(
y1
y2)
∼ N(
(
0
0)
,
(
K1 0
0 K2)
+
(
σ2
1I 0
0 σ2
2I)
)
Multi-Tasks
二つの関数が一つの潜在関数から生成されたと考える
f1(x) = w1u(x)
u(x) ∼ GP(0, k(x, x′

))
f2(x) = w2u(x)
(
y1
y2)
∼ N(
(
0
0)
, K +
(
σ2
1I 0
0 σ2
2I)
)
K = Bk(x, x′

) = wwT
k(x, x′

) w = [w1, w2]T
Bが と の相関度に対応する
f1 f2
Multi-Tasks
多次元の出力を行う最も基本的なモデルをICMと呼ぶ
関数の集合 があったとき, それぞれの潜在関数 がガウス過程 に従うとす
ると, P個の関数の出力 とすると
{f1(x), f2(x), …, fP(x)} ui
(x) ui
∼ GP(0, k(x, x′

))
f(x) = [f1(x), f2(x), …, fP(x)]T
fp(x) ∼
R
∑
i=1
wi
pui
(x)
Cov(f(x), f(x′

)) = Bk(x, x′

)
f ∼ (0, Bk(x, x′

))
Multi-Tasks
関数同士の相関を捉え少ない計算コストで出力を計算する
f1(x) = 4 cos(
x
5
) − 0.4 * x − 35 + 2ϵ1 ϵ1 ∼ U(0,1)
f2(x) = 6 cos(
x
5
) + 0.2 * x + 35 + 8ϵ2 ϵ2 ∼ U(0,1)
Freeze-Thaw
学習曲線はExponential Curveを描く
繰り返し学習に基づく機械学習アルゴリズム(DNNなどのepochという概念が存在するアルゴリズム)のハイパーパラ
メーター最適化の文脈において、ガウス過程を用いて学習曲線を予測し、最適化を効率化する
LightGBM(決定木ベース) Neural Network
Freeze-Thaw
Exponential Curveをカーネルで表現する
k(t, t′

) =
∫
∞
0
e−λt
e−λt′

ψ(dλ)
= int∞
0 e−λ(t+t′

) βα
Γ(α)
λα−1
e−λβ
dλ =
βα
(t + t′

+ β)α
ψ(λ) =
βα
Γ(α)
λα−1
e−λβ
k(t, t′

) = exp(−
|t − t′

|
θ
)
提案カーネル
ガンマ関数 Ornstein-Uhlenbeck カーネル
Freeze-Thaw
どのモデルの学習を停止、再開させるかを自動で選択する
<- 5epochづつ進める
<- 5epoch学習する
↓ 5回分のデータでガウス過程により終点を予測する
<- 5個のデータをまとめた獲得関数の値を1つ計算する
<- 次のモデルを決定する
Freeze-Thaw
非常に早い段階で最適解に り着く
Appendix
Random EMbedded BO
定理1
が 次元のE
ff
ective Dimensionalityを持ち,ランダム行列 の各要素 が からサンプリ
ングされたならば, に対して を満たすような が存在する.
f : ℝD
→ ℝ de A ∈ ℝD×d
(d ≥ de) ai,j ℕ(0,1)
x ∈ ℝD
f(x) = f(Ay) y
必要性
が 次元のE
ff
ective Dimensionalityを持つ
ので, となるような部分空間 が存在する.
このとき, と によって,
とすることができるから,
を満たすような が存在する.
f : ℝD
→ ℝ de
rank(τ) = de τ
x⊤ ∈ τ ⊂ ℝD
x⊥ ∈ τ⊥
⊂ ℝD
f(x) = f(x⊤ + x⊥) = f(x⊤)
f(x) = f(Ay) y ∈ ℝd
十分性
の正規直交基底によって構成された に対して,
で となるような が存在する.
と仮定すると, となるような
が存在し, の への垂直射影は
で与えられる. 従って,ある について
が成り立つ.
τ Φ ∈ ℝD×de
x⊥ ∈ τ x⊤ = Φc c ∈ ℝde
rank(ΦT
A) = de (ΦT
A)y = c
y Ay τ ΦΦT
Ay = Φc = x⊤
x′

∈ τ⊤
Ay = x⊤ + x′

次ページで証明
高次元空間におけるベイズ最適化
の正規直交基底によって構成された に対して,ランダム行列 の各要素 が から
サンプリングされたならば, である
τ Φ ∈ ℝD×de A ∈ ℝD×d
(d ≥ de) ai,j ℕ(0,1)
rank(ΦT
A) = de
Proof
の部分行列を とする.
例えば, の 番目の列ベクトル とすると, であるから,
同様に計算すると となる.
はルベーグ測度0で,正規分布はルベーグ測度に対して絶対連続であるから, は確率1で正則であ
る. ゆえに, であるから, が成り立つ.
A Ae ∈ ℝD×de
Ae i ai ΦT
ai ∼ ℕ(0, ΦT
Φ) = ℕ(0de
, Ide×de
)
ΦT
Ae ∼ ℕ(0d2
e
, Id2
e ×d2
e
)
ℝd2
e ΦT
Ae ∼ ℕ(0d2
e
, Id2
e ×d2
e
)
rank(ΦT
Ae) = de rank(ΦT
A) = de
??????????

【輪読】Taking the Human Out of the Loop, section 8