Hyperband
๐ Li, Lisha, et al. โHyperband: A novel bandit-based approach to hyperparameter optimization.โ The Journal of Machine Learning Research 18.1 (2017): 6765-6816.
๋ค์ด๊ฐ๋ฉฐ
Successive Halving Algorithm์ ๋ฌธ์
Hyperband์ ๊ธฐ๋ฐ์ด ๋๋ Successive Halving Algorithm์ ๊ฐ๋จํ ์ปจ์ ์ ๊ฐ๊ณ ์์ผ๋ฉด์๋ ์ค์ ์ฑ๋ฅ๋ ์ข์ ์๊ณ ๋ฆฌ์ฆ์ ๋๋ค. ํ์ง๋ง ์๊ณ ๋ฆฌ์ฆ์ ์ ๋ ฅ๊ฐ์ผ๋ก ์ฌ์ฉ๋๋ ์์ฐ $B$์ ํ์ดํผํ๋ผ๋ฏธํฐ ์ค์ ๊ฐ ๊ฐ์ $n$์ ์ด๋ป๊ฒ ์ค์ ํ๋๋์ ๋ฐ๋ผ ์๊ณ ๋ฆฌ์ฆ์ ๋ฐฉ์์ด ํฌ๊ฒ ๋ฌ๋ผ์ง๋ค๋ ๋ฌธ์ ๊ฐ ์์ต๋๋ค.
SHA๋ ๊ณ ์ ๋ $B$ ๊ฐ์ ๋ํด์ $n$ ๊ฐ์ ํฌ๊ธฐ์ ๋ฐ๋ผ ์๊ณ ๋ฆฌ์ฆ์ด ๋งค์ฐ ๋ค๋ฅธ ๊ฒฐ๊ณผ๋ฅผ ๋ง๋ญ๋๋ค. $n$ ์ด ํด ์๋ก ๋ชจ๋ธ์ ์ค๊ฐ ์์ค ํจ์๋ฅผ ๊ณ์ฐํ๋ ํ์๊ฐ ๋ง์์ง๋๋ค. ์ ํํ๊ฒ๋ $\lceil \log_2(n) \rceil$ ๋ฒ ๊ณ์ฐํ๊ธฐ ๋๋ฌธ์ ๋๋ค. ๋งค๋ฒ ๋ชจ๋ธ์ ์ค๊ฐ ์์ค ํจ์๋ฅผ ๊ณ์ฐํจ์ ์์ด์ ํ์ต Epoch ์๋ ๋ค์๊ณผ ๊ฐ์ต๋๋ค.
\[\text{\#Epoch} = \left\lfloor \frac{B}{|S_k| \lceil \log_2(n) \rceil} \right\rfloor\]๋ฐ๋ผ์ $n$ ์ด ํด ์๋ก ํ ๋ฒ์ ํ์ตํ๋ Epoch ์๋ ์ค์ด๋ค๊ฒ ๋ฉ๋๋ค. ๋ง์ฝ $n$ ์ด ํฌ๋ค๋ฉด ์ฌ๋ฌ ๊ฐ์ ํ์ดํผํ๋ผ๋ฏธํฐ ์ค์ ์ ํ ์คํธํ ์ ์์ง๋ง ๊ฐ๊ฐ์ ์ฌ๋ฌ ๋ฒ ํ์ตํ ์๋ ์์ต๋๋ค. ๋ฐ๋๋ก ํ ์คํธํ๋ ํ์ดํผํ๋ผ๋ฏธํฐ ์ค์ ์ด ์ ๋ค๋ฉด ์ฌ๋ฌ ๋ฒ ํ์ตํ์ฌ ์ฃผ์ด์ง ํ์ดํผํ๋ผ๋ฏธํฐ ์ค ์ต์ ๊ฐ์ ์ฐพ์๋ผ ์ ์๊ฒ ์ฃ . ๊ฒฐ๊ตญ $B/n$ ์ ๊ฐ์ ๋ฐ๋ผ์ Exploration-Exploitation Trade-off๊ฐ ๋ฐ์ํ๊ณ , ์ด๋ ์๊ณ ๋ฆฌ์ฆ์ ๊ฒฐ๊ณผ์ ์ง๋ํ ์ํฅ์ ๋ฏธ์นฉ๋๋ค.
๐ฌ์กฐ๊ธ ๋ ์์ธํ๊ฒ!
- ๋ง์ฝ $n$์ ๊ฐ์ด ์ปค์ง๋ค๋ฉด ์ฌ๋ฌ ๊ฐ์ ํ์ดํผํ๋ผ๋ฏธํฐ ์ค์ ์ ํ ์คํธํ์ง๋ง ์ฌ๋ฌ ๋ฒ ํ์ตํ์ง ๋ชปํ๋ฏ๋ก Exploration์ ์น์คํ๊ฒ ๋ฉ๋๋ค.
- ๋ฐ๋๋ก $n$์ ๊ฐ์ด ์์์ง๋ค๋ฉด ์ ์ ์์ ํ์ดํผํ๋ผ๋ฏธํฐ ์ค์ ์ ๊น๊ฒ ํ์ตํ๊ฒ ๋๋ฏ๋ก Exploitation์ ์น์คํ๊ฒ ๋ฉ๋๋ค.
๊ทธ๋ ๋ค๊ณ ์ ์ ํ $n$ ๊ฐ์ ๋ฏธ๋ฆฌ ์ ์๋ ์์ต๋๋ค. ์ผ๋ฐ์ ์ผ๋ก ๋ชจ๋ธ์ด ์ด๋ ํ ํ์ต ๊ณก์ ์ ๊ทธ๋ฆฌ๋์ง ๋ชจ๋ฅด๋ ์ํ์ด๊ธฐ ๋๋ฌธ์ธ๋ฐ์. ์ด๋ค ๊ฒฝ์ฐ์๋ ๋ชจ๋ธ์ ํ์ดํผํ๋ผ๋ฏธํฐ๋ฅผ ๋ฐ๊พธ๋๋ผ๋ ์ฑ๋ฅ์ด ํฌ๊ฒ ๋ณํ์ง ์์ ์ ์ ์์ ํ์ดํผํ๋ผ๋ฏธํฐ๋ง ํ ์คํธํ๋ฉด ๋ ์๋ ์์ต๋๋ค. ๋ฐ๋๋ก ํ์ดํผํ๋ผ๋ฏธํฐ์ ๊ฐ์ ๋ฐ๋ผ ์ฑ๋ฅ์ด ๋ง์ด ์ข์ฐ๋๊ฑฐ๋ ๋ชจ๋ธ์ ์๋ ด์ด ์ฒซ๋จธ๋ฆฌ์ ๋น ๋ฅด๊ฒ ์ด๋ฃจ์ด์ง๋ ๊ฒฝ์ฐ์ ๋งค์ฐ ๋ค์ํ ํ์ดํผํ๋ผ๋ฏธํฐ๋ฅผ ํ ์คํธํด์ผ ํ๋ฏ๋ก ํฐ $n$ ๊ฐ์ ์ค์ ํด์ผ ํ ์๋ ์์ต๋๋ค.
์์ด๋์ด
SHA์์ ๋ฐ์ ๊ฐ๋ฅํ ๋ฌธ์ ๋ ๊ณ ์ ๋ ์์ฐ $B$ ์ ๋ํด์ ํ์ดํผํ๋ผ๋ฏธํฐ ์ค์ ๊ฐ์์ธ $n$ ๋ง์ ๋ ์๊ณ ๋ฆฌ์ฆ์ ์ ๋ ฅ๊ฐ์ผ๋ก ํ์ฉํ๊ธฐ ๋๋ฌธ์ ๋๋ค. Hyperband๋ ์ด ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๊ธฐ ์ํด $n$ ์ ์ ๋ ฅ๊ฐ์ผ๋ก ๋ฐ์ง ์๊ณ ์์ฒด์ ์ผ๋ก ์ค์ ๋๋๋ก ํ์ต๋๋ค. ๋ํ ์ ์ฒด์ ๋ํ ์์ฐ์ ๋จผ์ ์ค์ ํ์ง ์๊ณ ํ๋์ ํ์ดํผํ๋ผ๋ฏธํฐ ์ค์ ์ ๋ํ ์์ฐ $R$ ์ ์ ๋ ฅ๊ฐ์ผ๋ก ๋ฐ์ต๋๋ค. ๊ธฐ์กด์ $B$ ๋ ์์ฒด์ ์ผ๋ก ์ค์ ๋๋ ํ์ดํผํ๋ผ๋ฏธํฐ ์ค์ ๊ฐ์์ $R$ ์ ๊ณฑํด์ ์ป๊ฒ ๋ฉ๋๋ค.
๋ฟ๋ง ์๋๋ผ $R$ ๊ฐ์ด ์ปค์ง ์๋ก ๋ค์ํ ํ์ดํผํ๋ผ๋ฏธํฐ ์ค์ ์ ๋ํด ํ ์คํธํ ์ ์๊ฒ ๋๋ฉฐ, ๊ฐ๊ฐ์ ์ค์ ์ ๊น๊ฒ ํ์ตํ ์ ์๊ฒ ๋์ด SHA์์ ๋ฐ์ํ๋ ํธ๋ ์ด๋์คํ ๋ฌธ์ ๋ฅผ ์ด๋ ์ ๋ ์ํํ ์ ์์ต๋๋ค.
Hyperband
Hyperband๋ ๋ค์ ์์๋๋ก ์๋ํฉ๋๋ค.
- ํ์ดํผํ๋ผ๋ฏธํฐ๋ง๋ค์ ์์ฐ $R$, ์ค์ ๊ฐ ์ค ๊ฐ์ ธ๊ฐ์ผ ํ ๋น์จ $\eta$๋ฅผ ์
๋ ฅ๊ฐ์ผ๋ก ๋ฐ์ต๋๋ค. ์ด๋ $\eta$์ ๊ธฐ๋ณธ๊ฐ์ 3์
๋๋ค.
- ๋ ผ๋ฌธ์ ๋ฐ๋ฅด๋ฉด ์ ์ ํ $\eta$ ๋ ์ํ์ ์ผ๋ก $\eta = e$ ๋ผ๊ณ ํฉ๋๋ค. ์ค์ ๋ก๋ $\eta$๋ 3์ด๋ 4๋ฅผ ์ถ์ฒํ๊ณ ์์ต๋๋ค.
- ์
๋ ฅ๊ฐ์ ์ด์ฉํด SHA๋ฅผ ์ํํ ํ์ (๋ณธ ๋
ผ๋ฌธ์์๋ bracket์ด๋ผ๊ณ ๋ถ๋ฆ)์ ์ด ์์ฐ $B$๋ฅผ ๊ณ์ฐํ์ฌ ์ด๊ธฐํํฉ๋๋ค.
- $s_\text{max} = \lfloor \log_\eta(R) \rfloor$, $B = (s_\text{max}+1) R$
- ๊ฐ $s \in { s_\text{max}, s_\text{max}-1, \cdots, 0 }$ ๋ง๋ค ๋ค์์ SHA๋ฅผ ์ํํฉ๋๋ค.
- ์ต์ด ํ์ดํผํ๋ผ๋ฏธํฐ ์ค์ ๊ฐ์์ ํ์ต Epoch ์๋ฅผ ๊ณ์ฐํฉ๋๋ค.
- $n = \lceil \frac{B}{R} \frac{\eta^s}{(s+1)} \rceil$, $r = R\eta^{-s}$
- ์ด๋ ํ์ดํผํ๋ผ๋ฏธํฐ ์ค์ ์ ํน์ ๋ถํฌ์์ i.i.dํ๊ฒ ์ํ๋งํฉ๋๋ค.
- SHA๋ฅผ ์ํํฉ๋๋ค.
- ๊ฐ ๋จ๊ณ๋ง๋ค์ ํ์ดํผํ๋ผ๋ฏธํฐ ์ค์ ์๋ $n_i = \lfloor n \eta^{-1} \rfloor$, ํ์ต Epoch ์๋ $r_i = r \eta^i$ ์ ๋๋ค.
- ๋ชจ๋ ํ์ดํผํ๋ผ๋ฏธํฐ ์ค์ ์ ๋ํด $r_i$ ๋งํผ ํ์ตํ์ฌ ์ฑ๋ฅ์ด ์ข์ $\lfloor n_i / \eta \rfloor$ ๊ฐ ๋งํผ์ ํ์ดํผํ๋ผ๋ฏธํฐ ์ค์ ์ ์ ์ฅํฉ๋๋ค.
- ์ ์ฅํ ํ์ดํผํ๋ผ๋ฏธํฐ ์ค์ ์ ๋ํด ์ ๊ณผ์ ์ ๋ฐ๋ณตํฉ๋๋ค.
- $n = \lceil \frac{B}{R} \frac{\eta^s}{(s+1)} \rceil$, $r = R\eta^{-s}$
- ์ต์ด ํ์ดํผํ๋ผ๋ฏธํฐ ์ค์ ๊ฐ์์ ํ์ต Epoch ์๋ฅผ ๊ณ์ฐํฉ๋๋ค.
- ๋ชจ๋ ๊ฒฐ๊ณผ์ ๋ํด์ ๊ฐ์ฅ ์ฑ๋ฅ์ด ์ข์ ํ์ดํผํ๋ผ๋ฏธํฐ ์ค์ ์ ๋ฐํํฉ๋๋ค.
์ค์ ์์
์ค์ ๊ฐ์ ๋์ ํ์ฌ Hyperband๊ฐ ์ด๋ป๊ฒ ์๋ํ๋์ง ์ดํด๋ณด๋๋ก ํ๊ฒ ์ต๋๋ค. $R = 81, \eta = 3$์ผ๋ก ๋๊ฒ ์ต๋๋ค. ๊ทธ๋ ๋ค๋ฉด $s_\text{max} = \lfloor \log_\eta(R) \rfloor = 4$, $B = (s_\text{max}+1)R = 5 \cdot 81$์ด ๋ฉ๋๋ค. ๋ฐ๋ผ์ Bracket์ ์๋ 5๊ฐ ๋ฉ๋๋ค. ์ด์ ๊ฐ๊ฐ์ Bracket์ ๋ํด์ SHA๋ฅผ ์ํํ๋ฉด ๋๋๋ฐ์. $s$๊ฐ ํฐ ์์๋๋ก ์ํํ๋ฉด ๋ฉ๋๋ค.
- $s = s_\text{max} = 4$
- Bracket์์ ํ ์คํธํ ํ์ดํผํ๋ผ๋ฏธํฐ ์ค์ ์ ๊ฐ์๋ $n = \lceil \frac{B}{R} \frac{\eta^4}{(s+1)} \rceil = 81$์ด ๋๊ณ , ํ์ตํ Epoch ์๋ $r = R\eta^{-s} = 81 \cdot 3^{-4} = 1$์ด ๋ฉ๋๋ค.
- ์ฌ๊ธฐ์๋ถํฐ SHA๋ฅผ ์ ์ฉํ๋ฉด ๋๋๋ฐ SHA์์ ์ฐจ์ด๋ ๋จ๊ธฐ๋ ํ์ดํผํ๋ผ๋ฏธํฐ ์ค์ ์ ์์ ๋๋ค. SHA๋ ์ค์ ์ ๋ฐ์ ๋จ๊ฒผ๋ค๋ฉด Hyperband์์๋ $1/\eta$ ๋งํผ์ ๋จ๊น๋๋ค. ๋ฐ๋ผ์ 1 Epoch ํ์ต ํ ์ฑ๋ฅ์ด ๊ฐ์ฅ ์ข์ $81 \cdot 1/\eta = 27$ ๊ฐ์ ์ค์ ๋ง์ ๋จ๊น๋๋ค.
- 27๊ฐ์ ์ค์ ์ ๋ํด์ ๊ธฐ์กด ํ์ต Epoch ์์ $\eta$ ๋งํผ์ ๊ณฑํ 3ํ ํ์ต์ ๋ ํ๊ณ ์ด๋ฒ์ 9๊ฐ์ ์ค์ ์ ๋จ๊น๋๋ค. ๋ง์ง๋ง ํ๋์ ์ค์ ์ด ๋จ์ ๋๊น์ง ์ด ๊ณผ์ ์ ๋ฐ๋ณตํฉ๋๋ค.
- $s = 3$
- Bracket์์ ํ ์คํธํ ํ์ดํผํ๋ผ๋ฏธํฐ ์ค์ ๊ฐ์๋ $n = \lceil \frac{B}{R} \frac{\eta^3}{(s+1)} \rceil = 34$ ๊ฐ ๋๊ณ ํ์ตํ Epoch ์๋ $r = R \eta^{-s} = 81 \cdot 3^{-3} = 3$ ์ด ๋ฉ๋๋ค.
- ๊ทธ๋ฌ๋ฉด 3 Epochs ๋งํผ ํ์ตํ์ฌ ์ฑ๋ฅ์ด ๊ฐ์ฅ ์ข์ 11๊ฐ๋ฅผ ๋จ๊ธฐ๊ณ , ๊ทธ ๋ค์ ๋ค์ 9ํ๋ฅผ ํ์ตํ์ฌ 3๊ฐ๋ฅผ, ๋ง์ง๋ง์ผ๋ก 27ํ๋ฅผ ํ์ตํ์ฌ ๋ง์ง๋ง ํ ๊ฐ๋ง์ ๋จ๊น๋๋ค.
์ด ๋ฐฉ๋ฒ์ผ๋ก ๋ชจ๋ Bracket์ ๋ํด SHA๋ฅผ ์ํํ๋ฉด ๋ฉ๋๋ค. ๋ค์ ํ๋ ๋ชจ๋ Bracket์ ๋ํด ๊ฐ ๋จ๊ณ๋ง๋ค ๋ช ๊ฐ์ ์ค์ ์ด ๋จ๊ณ ๋ช ๋ฒ์ ํ์ต์ ์ํํ๋์ง๋ฅผ ๋ณด์ฌ์ค๋๋ค.
Bracket examples for Hyperband
๋๊ฐ๋ฉฐ
Hyperband๋ ์ต๊ทผ BOHB๊ฐ ๋ง์ด ์ฐ์ด๋ ์ถ์ธ์์ ๊ทธ ๊ธฐ๋ฐ์ด ๋๋ ์ค์ํ ์๊ณ ๋ฆฌ์ฆ์ ๋๋ค. Hyperband์ ํน์ง์ผ๋ก๋ ์ด๋ก ์ ๊ทผ๊ฑฐ๊ฐ ํ์คํ Successive Halving Algorithm์ ๊ณ ๋ํํ์์ผ๋ฉฐ, ํ๋ ์ด๋ฐ์ ๋งค์ฐ ๋น ๋ฅด๊ฒ ML ๋ชจ๋ธ์ ์๋ ด์ํฌ ์ ์๋ค๋ ์ ์ ๋๋ค. ๋ํ ์ฌ์ฉํ๋ ์ ๋ ฅ๊ฐ์ ์ต์ํํ์ฌ ํ์ดํผํ๋ผ๋ฏธํฐ ๊ณต๊ฐ์ ํ์ํ๋ ๋ฐ์ ์์ด Exploration-Exploitation Trade-off๋ฅผ ์ค์๋ค๋ ์ ์ ๋๋ค.
Figure from [1]
ํ์ต ์ด๊ธฐ์๋ ๋๋ค ์์น ๋๋น 20๋ฐฐ ๋น ๋ฅด์ง๋ง ์ถฉ๋ถํ ์๊ฐ์ด ์ฃผ์ด์ก์ ๋ ๊ทธ ์ฐจ์ด๊ฐ ํฌ์ง ์๊ฒ ๋จ.
๋ค๋ง ์ด ์๊ณ ๋ฆฌ์ฆ์ ์์ฌ์ด ์ ์ผ๋ก๋ ์ด๋ฏธ ํน์ Bracket์์ ํ์ํ ๊ฒฐ๊ณผ๋ฅผ ๋ค๋ฅธ Bracket์์ ๊ทธ๋๋ก ๋ค์ ํ์ํ ์๋ ์๋ค๋ ์ ์ ๋๋ค. ๋งค Bracket๋ง๋ค ํ์ดํผํ๋ผ๋ฏธํฐ ์ค์ ์ ์๋ก ์ํ๋งํ์ฌ ๊ฐ์ ธ์ค๊ธฐ ๋๋ฌธ์ ๋ฐ์ํ๋ ๋ฌธ์ ์ ๋๋ค. ๋ํ ํ๋ ์ด๋ฐ์ ๋น ๋ฅด๊ฒ ์๋ ดํ๋๋ฐ์ ๋นํด ์๊ฐ์ด ์ถฉ๋ถํ ํ๋ฅธ ํ์๋ ๊ธฐ์กด ๋ฐฉ๋ฒ๋ค์ ๋นํด ํฐ ๊ฐ์ ์ด ์๋ค๋ ๊ฒ๋ ๋ฌธ์ ๊ฐ ๋ฉ๋๋ค. ์ถํ์ ๋ค๋ฃฐ BOHB์์๋ ์ด ๋ฌธ์ ๋ฅผ ์ด๋ ์ ๋ ํด๊ฒฐํ๋ ๊ฒ์ ๋ณผ ์ ์์ต๋๋ค. ๋ค์ ํฌ์คํธ์์๋ BOHB์ ๋ํด์ ์์๋ณด๋๋ก ํ๊ฒ ์ต๋๋ค.