flowchart LR
subgraph GAN["GAN"]
Z["z (๋
ธ์ด์ฆ)"] --> G["G (์์ฑ์=ํ์์)"]
G --> D["D (ํ๋ณ์=๋นํ๊ฐ)"]
X["์ง์ง ์ํ x"] --> D
Y["๋ผ๋ฒจ y (๋ณด์)"] --> D
D -.->|๊ธฐ์ธ๊ธฐ| G
end
subgraph AC["Actor-Critic"]
S["s_t (์ํ)"] --> PI["ฯ (ํ์์)"]
PI --> Q["Q (๋นํ๊ฐ)"]
R["r_t (๋ณด์)"] --> Q
Q -.->|โQ/โa ๊ธฐ์ธ๊ธฐ| PI
end
๐GAN-RL
- ๐ ๋ณธ ๋ ผ๋ฌธ์ GANs๋ฅผ actor๊ฐ ๋ณด์์ ์ํฅ์ ๋ฏธ์น ์ ์๋ stateless MDP ํ๊ฒฝ์์ ๋ณํ๋ Actor-Critic ๋ฐฉ๋ฒ์ผ๋ก ๊ณต์์ ์ผ๋ก ์ฐ๊ฒฐํ์ฌ ์ค๋ช ํฉ๋๋ค.
- ๐ก GANs์ Actor-Critic์ ๋ชจ๋ ์ต์ ํํ๊ธฐ ์ด๋ ค์ด ๋ค๋จ๊ณ ์ต์ ํ ๋ฌธ์ ์ด๋ฉฐ, ์ด ๋ ผ๋ฌธ์ ๋ ๋ถ์ผ์์ ๊ฐ๋ฐ๋ ํ๋ จ ์์ ํ ์ ๋ต์ ๊ฒํ ํ๊ณ ๋น๊ตํฉ๋๋ค.
- ๐ค ์ ์๋ค์ ์ด ํ์์ ์ธ ์ฐ๊ฒฐ์ ๊ฐ์กฐํจ์ผ๋ก์จ GAN๊ณผ RL ์ปค๋ฎค๋ํฐ๊ฐ ๋ฅ ๋คํธ์ํฌ๋ฅผ ์ํ ์ผ๋ฐ์ ์ด๊ณ ์์ ์ ์ธ ๋ค๋จ๊ณ ์ต์ ํ ์๊ณ ๋ฆฌ์ฆ์ ๊ฐ๋ฐํ๊ณ ์์ด๋์ด๋ฅผ ๊ต๋ฅํ๋๋ก ์ฅ๋ คํฉ๋๋ค.
๐ Ping Review
๐ Ping โ A light tap on the surface. Get the gist in seconds.
๋ณธ ๋ ผ๋ฌธ์ ๋น์ง๋ ํ์ต(unsupervised learning)์ ์์ฑ์ ์ ๋ ์ ๊ฒฝ๋ง(Generative Adversarial Networks, GANs)๊ณผ ๊ฐํ ํ์ต(reinforcement learning, RL)์ ์กํฐ-ํฌ๋ฆฌํฑ(Actor-Critic, AC) ๋ฉ์๋ ๊ฐ์ ํ์์ ์ธ ์ฐ๊ฒฐ์ ์ ์กฐ๋ช ํ๋ฉฐ, ๋ ๋ถ์ผ ๋ชจ๋ ์ต์ ํํ๊ธฐ ์ด๋ ต์ง๋ง, ๋ค๋จ๊ณ ์ต์ ํ ๋ฌธ์ (multilevel optimization problems)๋ก์ ์ ์ฌํ ์ ๋ณด ํ๋ฆ ๊ตฌ์กฐ์ ํ๋ จ ๋ถ์์ ์ฑ ๋ฌธ์ ๋ฅผ ๊ณต์ ํ๋ค๋ ์ ์ ๊ฐ์กฐํ๋ค. ์ ์๋ค์ GAN์ ์กํฐ๊ฐ ๋ณด์์ ์ํฅ์ ๋ฏธ์น ์ ์๋ ํ๊ฒฝ(stateless MDP)์์์ ์์ ๋ ์กํฐ-ํฌ๋ฆฌํฑ ๋ฉ์๋๋ก ๋ณผ ์ ์์์ ์ ์ํ๊ณ , ๋ ์ปค๋ฎค๋ํฐ๊ฐ ๋ ๋ฆฝ์ ์ผ๋ก ๊ฐ๋ฐํ ํ๋ จ ์์ ํ ์ ๋ต๋ค์ ๋น๊ต ๋ถ์ํจ์ผ๋ก์จ ์ํธ ์๊ฐ์ ์ป์ด ๋ ๋์ ์๊ณ ๋ฆฌ์ฆ ๊ฐ๋ฐ์ ์ด์งํ๊ณ ์ ํ๋ค.
ํต์ฌ ๋ฐฉ๋ฒ๋ก (Core Methodology)
GAN๊ณผ AC ๋ฉ์๋ ๋ชจ๋ ๋ค์๊ณผ ๊ฐ์ ํํ์ ์ด๋จ๊ณ ์ต์ ํ ๋ฌธ์ (bilevel optimization problems)๋ก ์ ํํ๋ ์ ์๋ค. x^* = \arg \min_{x \in X} F (x, y^*(x)) y^*(x) = \arg \min_{y \in Y} f (x, y)
์ฌ๊ธฐ์ x๋ ์์ ๋ฌธ์ (upper-level problem)์ ๋ณ์์ด๊ณ , y๋ ํ์ ๋ฌธ์ (lower-level problem)์ ๋ณ์์ด๋ค. ์์ ๋ฌธ์ ์ ์ต์ ํ๋ ํ์ ๋ฌธ์ ์ ์ต์ ์๋ฃจ์ y^*(x)์ ์์กดํ๋ค.
1. ์์ฑ์ ์ ๋ ์ ๊ฒฝ๋ง (Generative Adversarial Networks, GANs)
GAN์ ์์ฑ์(generator, G)์ ํ๋ณ์(discriminator, D)๋ผ๋ ๋ ์ ๊ฒฝ๋ง ๊ฐ์ ์ ๋ก์ฌ ๊ฒ์(zero-sum game)์ผ๋ก ๊ตฌ์ฑ๋๋ค. ์์ฑ์๋ ์์์ ๋ ธ์ด์ฆ z๋ก๋ถํฐ ๋ฐ์ดํฐ๋ฅผ ์์ฑํ๊ณ , ํ๋ณ์๋ ์ ๋ ฅ๋ ๋ฐ์ดํฐ๊ฐ ์ค์ ๋ฐ์ดํฐ์ธ์ง ์์ฑ๋ ๊ฐ์ง ๋ฐ์ดํฐ์ธ์ง ๋ถ๋ฅํ๋ค.
- ๋ชฉํ ํจ์: ํ์ค GAN์ ๋ค์์ ๋ฏธ๋๋งฅ์ค(minimax) ๊ฒ์์ ์ต์ ํํ๋ค. \min_G \max_D V(D, G) = \mathbb{E}_{w \sim p_{data}}[\log D(w)] + \mathbb{E}_{z \sim N(0,I)}[\log(1 - D(G(z)))] ์ฌ๊ธฐ์ p_{data}๋ ์ค์ ๋ฐ์ดํฐ ๋ถํฌ, N(0,I)๋ ๋ ธ์ด์ฆ ๋ถํฌ์ด๋ค. D๋ V(D,G)๋ฅผ ์ต๋ํํ๋ ค๊ณ ํ๊ณ , G๋ D๊ฐ 1-D(G(z))์ ๋ํด ๋ฎ์ ๊ฐ์ ์์ธกํ๋๋ก ์ฆ D(G(z))๊ฐ ๋์ ๊ฐ์ ๊ฐ๋๋ก V(D,G)๋ฅผ ์ต์ํํ๋ ค๊ณ ํ๋ค.
- ์ด๋จ๊ณ ์ต์ ํ ๊ด์ : GAN์ ์ด๋จ๊ณ ์ต์ ํ ๋ฌธ์ ๋ก ๋ณผ ๊ฒฝ์ฐ, ์์ ๋ฌธ์ ๋ ์์ฑ์ G๋ฅผ ์ต์ ํํ๋ ๊ฒ์ด๊ณ , ํ์ ๋ฌธ์ ๋ ํ๋ณ์ D๋ฅผ ์ต์ ํํ๋ ๊ฒ์ด๋ค. F(D, G) = -\mathbb{E}_{w \sim p_{data}}[\log D(w)] - \mathbb{E}_{z \sim N(0,I)}[\log(1 - D(G(z)))] (G์ ๋ชฉ์ , ์ฆ G๊ฐ D(G(z))๋ฅผ 1๋ก ๋ง๋ค๊ณ ์ ํ๋ ๊ฒฝ์ฐ) f(D, G) = -\mathbb{E}_{z \sim N(0,I)}[\log D(G(z))] (D์ ๋ชฉ์ ) ์ผ๋ฐ์ ์ผ๋ก ์์ฑ์๋ ํ๋ณ์์ ์ถ๋ ฅ์ธ D(G(z))๋ฅผ 0์ผ๋ก ๋ง๋๋ ๋์ , \log D(G(z))๋ฅผ ์ต๋ํํ๋ ๋ฐฉํฅ์ผ๋ก ํ์ต๋์ด ๊ธฐ์ธ๊ธฐ ์์ค(vanishing gradients) ๋ฌธ์ ๋ฅผ ์ํํ๋ค.
2. ์กํฐ-ํฌ๋ฆฌํฑ ๋ฉ์๋ (Actor-Critic Methods)
AC ๋ฉ์๋๋ ๊ฐํ ํ์ต์์ ์ ์ฑ (policy, \pi)์ ํ์ตํ๋ ์กํฐ์ ๊ฐ์น ํจ์(value function, Q)๋ฅผ ํ์ตํ๋ ํฌ๋ฆฌํฑ์ ๋์์ ์ฌ์ฉํ๋ค. ํฌ๋ฆฌํฑ์ ์กํฐ์ ์ ์ฑ ์ ๋ํ ํ๊ฐ๋ฅผ ์ ๊ณตํ๋ฉฐ, ์ด๋ ์ ์ฑ ๊ธฐ์ธ๊ธฐ(policy gradient)๋ฅผ ์ถ์ ํ๊ฑฐ๋ ์ง์ ์ ์ผ๋ก ์ ์ฑ ์ ์ ๋ฐ์ดํธํ๋ ๋ฐ ์ฌ์ฉ๋๋ค.
- ๋ชฉํ ํจ์: MDP(Markov Decision Process) ํ๊ฒฝ์์, ์กํฐ-ํฌ๋ฆฌํฑ์ ๋ชฉํ๋ ๊ฐ์น ํจ์ Q^\pi(s,a)๋ฅผ ํ์ตํ๊ณ , ์ด ๊ฐ์น ํจ์์ ๋ํด ์ต์ ์ธ ์ ์ฑ \pi^*๋ฅผ ์ฐพ๋ ๊ฒ์ด๋ค. Q^\pi(s, a) = \mathbb{E}_{s_{t+k} \sim P, r_{t+k} \sim R, a_{t+k} \sim \pi}[\sum_{k=1}^\infty \gamma^k r_{t+k} | s_t=s, a_t=a] (๊ธฐ๋ ํ ์ธ ๋ณด์) \pi^* = \arg \max_\pi \mathbb{E}_{s_0 \sim p_0, a_0 \sim \pi}[Q^\pi(s_0, a_0)] (์ต์ ์ ์ฑ )
- ํฌ๋ฆฌํฑ ์ต์ ํ: ํฌ๋ฆฌํฑ์ ์ผ๋ฐ์ ์ผ๋ก ๋ฒจ๋ง ๋ฐฉ์ ์(Bellman equation)์ ๊ธฐ๋ฐํ ์์ค์ ์ต์ํํ์ฌ ๊ฐ์น ํจ์๋ฅผ ํ์ตํ๋ค. Q^\pi = \arg \min_Q \mathbb{E}_{s_t, a_t \sim \pi}[D(\mathbb{E}_{s_{t+1}, r_t, a_{t+1}}[r_t + \gamma Q(s_{t+1}, a_{t+1})] || Q(s_t, a_t))] ์ฌ๊ธฐ์ D(\cdot||\cdot)๋ divergence ์ธก์ ๊ฐ์ด๋ค.
- ์ด๋จ๊ณ ์ต์ ํ ๊ด์ : AC ๋ฉ์๋๋ฅผ ์ด๋จ๊ณ ์ต์ ํ ๋ฌธ์ ๋ก ๋ณผ ๊ฒฝ์ฐ, ์์ ๋ฌธ์ ๋ ์ ์ฑ \pi๋ฅผ ์ต์ ํํ๋ ๊ฒ์ด๊ณ , ํ์ ๋ฌธ์ ๋ ๊ฐ์น ํจ์ Q๋ฅผ ์ต์ ํํ๋ ๊ฒ์ด๋ค. F(Q, \pi) = \mathbb{E}_{s_t, a_t \sim \pi}[D(\mathbb{E}_{s_{t+1}, r_t, a_{t+1}}[r_t + \gamma Q(s_{t+1}, a_{t+1})] || Q(s_t, a_t))] f(Q, \pi) = -\mathbb{E}_{s_0 \sim p_0, a_0 \sim \pi}[Q^\pi(s_0, a_0)]
GAN๊ณผ AC์ ์ฐ๊ฒฐ์ (Connection between GANs and AC)
๋ ผ๋ฌธ์ GAN์ ํน์ MDP ์ค์ ์์์ ์กํฐ-ํฌ๋ฆฌํฑ ๋ฉ์๋๋ก ํด์ํ๋ค.
- Stateless MDP: ์กํฐ(์์ฑ์)๊ฐ ์ด๋ฏธ์ง๋ฅผ ์์ฑํ๊ณ , ํ๊ฒฝ์ ์์ฑ๋ ์ด๋ฏธ์ง๋ ์ค์ ์ด๋ฏธ์ง๋ฅผ ๋ฌด์์๋ก ์ ํํ์ฌ ๋ณด์ฌ์ค๋ค. ์กํฐ๋ ํ์ฌ ์ํ์ ๋ํ ์ง์์ด ์์ด(blind actor) ์ค์ ์ด๋ฏธ์ง๋ฅผ ๋จ์ํ ์ ๋ฌํ ์ ์๋ค. ์ฆ, ์กํฐ๋ ๋ณด์์ ์ธ๊ณผ์ ์ผ๋ก ์ํฅ์ ๋ฏธ์น ์ ์๋ค.
- ๋ณด์ ์ฒด๊ณ: ํ๊ฒฝ์ด ์ค์ ์ด๋ฏธ์ง๋ฅผ ๋ณด์ฌ์ฃผ๋ฉด ๋ณด์ 1, ์์ฑ๋ ์ด๋ฏธ์ง๋ฅผ ๋ณด์ฌ์ฃผ๋ฉด ๋ณด์ 0์ ์ค๋ค.
- ํฌ๋ฆฌํฑ(ํ๋ณ์): ํฌ๋ฆฌํฑ์ ์ด ๋ณด์์ ํตํด ์ ๋ ฅ๋ ์ด๋ฏธ์ง๊ฐ ์ค์ (1)์ธ์ง ๊ฐ์ง(0)์ธ์ง ๋ถ๋ฅํ๋ ๊ฒ์ ํ์ตํ๋ค. ํฌ๋ฆฌํฑ์ ์์ค ํจ์๋ ํ๊ท ์ ๊ณฑ ๋ฒจ๋ง ์์ฐจ(mean-squared Bellman residual) ๋์ GAN์ ๊ต์ฐจ ์ํธ๋กํผ(cross-entropy) ์์ค์ ์ฌ์ฉํ๋ค.
- ์กํฐ ์ ๋ฐ์ดํธ: ์กํฐ๋ ํฌ๋ฆฌํฑ์ผ๋ก๋ถํฐ์ ๊ธฐ์ธ๊ธฐ ์ ๋ณด๋ฅผ ๋ฐ์ ์์ ์ ํ๋(์ด๋ฏธ์ง ์์ฑ)์ ์์ ํ๋ค. ํ๊ฒฝ์ด ์ค์ ์ด๋ฏธ์ง๋ฅผ ๋ณด์ฌ์ค ๊ฒฝ์ฐ์๋ ์กํฐ์ ํ๋ผ๋ฏธํฐ๊ฐ ์ ๋ฐ์ดํธ๋์ง ์๋๋ค.
์ด๋ฌํ ๊ด์ ์์ GAN์ ์กํฐ๊ฐ ๋ณด์์ ์ธ๊ณผ
๐ Ring Review
๐ Ring โ An idea that echoes. Grasp the core and its value.
์๋ก
๋๋ถ๋ถ์ ๋จธ์ ๋ฌ๋ ๋ฌธ์ ๋ ๋จ์ผ ๋ชฉ์ ํจ์ ์ต์ ํ๋ก ์ ์ํ๋ฉ๋๋ค. ๊ทธ๋ฐ๋ฐ ์ผ๋ถ ๋ฌธ์ ๋ ๋จ์ผ ๋น์ฉ์ด ์๊ณ , ์ฌ๋ฌ ๋ชจ๋ธ์ด ์๋ก ์ ๋ณด๋ฅผ ์ฃผ๊ณ ๋ฐ๋ ๊ฐ์ ์๊ธฐ๋ง์ ์ฌ์ (private) ์์ค ์ ์ต์ํํ๋ ค๋ ํ์ด๋ธ๋ฆฌ๋/๋ฉํฐ๋ ๋ฒจ ๊ตฌ์กฐ๋ฅผ ๊ฐ์ง๋๋ค. ์ฌ๊ธฐ์ ํ๋ฒํ gradient descent๋ฅผ ์ ์ฉํ๋ฉด ์ง๋(oscillation) ์ด๋ ํดํ ํด(degenerate solution)๋ก์ ๋ถ๊ดด(collapse) ๊ฐ์ ๋ณ๋ฆฌ์ ๊ฑฐ๋์ด ํํ ๋ํ๋ฉ๋๋ค. ๊ทธ๋ผ์๋ ์ด๋ฐ ๋ฉํฐ๋ ๋ฒจ ์์ค ๋ชจ๋ธ์ ์ ์ฌ๋ ฅ์ด ํฌ๋ฉฐ(๋์ ์๋๋ ์ฌ๋ฌ ๊ตญ์ ์์ค์ ๊ฒฐํฉ์ด๋ผ๋ ๊ฐ์ค์ด ์์ต๋๋ค), ๊ทธ ๋ํ๊ฐ ๋ฐ๋ก AC ์ GAN ์ ๋๋ค.
๋์ ๋๋๋๋ก ๋ฎ์์ต๋๋ค.
- ์ ๋ณด ํ๋ฆ: ํ ๋ชจ๋ธ(AC์ ํ์์ / GAN์ ์์ฑ์)์ด ์ถ๋ ฅ์ ๋ง๋ค๊ณ , ๋ ๋ฒ์งธ ๋ชจ๋ธ(AC์ ๋นํ๊ฐ / GAN์ ํ๋ณ์)์ด ๊ทธ๊ฒ์ ํ๊ฐํ๋ ๋จ์ feedforward.
- ํ๊ฒฝ ์ ๋ณด ์ ๊ทผ: ๋ ๋ฒ์งธ ๋ชจ๋ธ๋ง ํ๊ฒฝ์ ํน๋ณ ์ ๋ณด(AC์ ๋ณด์ / GAN์ ์ง์ง ์ํ)๋ฅผ ์ง์ ๋ด ๋๋ค.
- ํ์ต ์ ํธ: ์ฒซ ๋ฒ์งธ ๋ชจ๋ธ์ ๋ ๋ฒ์งธ ๋ชจ๋ธ์ด ์ฃผ๋ ์ค์ฐจ ์ ํธ๋ง์ผ๋ก ํ์ตํฉ๋๋ค.
๋ ๋ค ์์ ์ฑ ๋ฌธ์ ๋ฅผ ๊ฒช๊ณ , ์์ ํ ๊ธฐ๋ฒ์ ๋ ์ปค๋ฎค๋ํฐ๊ฐ ๊ฑฐ์ ๋ ๋ฆฝ์ ์ผ๋ก ๋ฐ์ ์์ผฐ์ต๋๋ค. ์ด ๋ ธํธ์ ๋ชฉ์ ์ ๋ ๋ชจ๋ธ ๋ถ๋ฅ ์ฌ์ด์ ๊ฐํ ์ฐ๊ฒฐ์ ๋ถ๊ฐ ํ๋ ๊ฒ์ ๋๋ค.
๋ฐฉ๋ฒ: ๋ ์๊ณ ๋ฆฌ์ฆ๊ณผ ๊ทธ ๋ค๋ฆฌ
์ด์ค ๋ ๋ฒจ ์ต์ ํ๋ผ๋ ๊ณตํต ํ
GAN๊ณผ AC๋ ๋ชจ๋ ํ ๋ชจ๋ธ์ด ๋ค๋ฅธ ๋ชจ๋ธ์ ์ต์ ๊ฐ์ ๋ํด ์ต์ ํ๋๋ bilevel(ํน์ two-time-scale) ๋ฌธ์ ์ ๋๋ค.
x^* = \arg\min_{x\in X} F(x, y^*(x)), \qquad y^*(x) = \arg\min_{y\in Y} f(x, y)
์ด์ฉ์ฐ๊ตฌ(operations research)์์ ์ค๋ ์ฐ๊ตฌ๋์ง๋ง ์ฃผ๋ก ์ ํ/๋ณผ๋ก ๋ฌธ์ ์๊ณ , ์ฌ๊ธฐ์๋ ์ฌ์ธต ์ ๊ฒฝ๋ง ์ ์ต์ ํ ๋์์ผ๋ก ์ผ๋๋ค๋ ์ ์ด ๋ค๋ฆ ๋๋ค.
GAN
์์ฑ์ G (๋ ธ์ด์ฆ z\sim\mathcal N(0,I) ๋ฅผ ๋ฐ์ ์ํ ์์ฑ)์ ํ๋ณ์ D (์ง์ง/๊ฐ์ง ๋ถ๋ฅ) ์ฌ์ด์ ์ ๋ก์ฌ ๊ฒ์ ์ ๋๋ค.
\min_G \max_D \ \mathbb{E}_{w\sim p_{\text{data}}}[\log D(w)] + \mathbb{E}_{z\sim\mathcal N(0,I)}[\log(1 - D(G(z)))]
ํ๋ณ์๊ฐ ๋งค์ฐ ์ ํํ ๋๋ ์์ฑ์๊ฐ ๊ธฐ์ธ๊ธฐ๋ฅผ ๋ฐ๋๋ก, ์์ฑ์ ์์ค์ ๋ณดํต โ๊ฐ์ง๋ก ๋ถ๋ฅ๋ ํ๋ฅ ์ต์ํโ ๋์ โ์ง์ง๋ก ๋ถ๋ฅ๋ ํ๋ฅ ์ต๋ํโ๋ก ์๋๋ค(non-saturating). ์ด๋ฅผ bilevel๋ก ์ฐ๋ฉด:
F(D, G) = -\mathbb{E}_{w\sim p_{\text{data}}}[\log D(w)] - \mathbb{E}_{z}[\log(1 - D(G(z)))]
f(D, G) = -\mathbb{E}_{z}[\log D(G(z))]
Actor-Critic
ํ์์(์ ์ฑ \pi)์ ๋นํ๊ฐ(๊ฐ์นํจ์ Q^\pi)๋ฅผ ๋์์ ํ์ตํฉ๋๋ค. action-value ํจ์๋ ๊ธฐ๋ ํ ์ธ ๋ณด์์ ์์ธกํฉ๋๋ค.
Q^\pi(s,a) = \mathbb{E}\Big[\textstyle\sum_{k=1}^{\infty} \gamma^k r_{t+k} \,\big|\, s_t=s, a_t=a\Big]
Q^\pi ๋ Bellman ์์ฐจ์ ๋ฐ์ฐ ์ต์ํ๋ก ํํ๋๊ณ , ์ ์ฒด ๋ฌธ์ ๋ bilevel์ด ๋ฉ๋๋ค.
F(Q, \pi) = \mathbb{E}_{s_t,a_t\sim\pi}\big[\mathcal D(\mathbb{E}[r_t + \gamma Q(s_{t+1}, a_{t+1})] \,\Vert\, Q(s_t, a_t))\big]
f(Q, \pi) = -\mathbb{E}_{s_0\sim p_0, a_0\sim\pi}[Q^\pi(s_0, a_0)]
์ ์๋ค์ ํนํ ์ฐ์ ํ๋ ์ ๋ค๋ฃจ๋ DPG(deterministic policy gradient), ๊ทธ ํ๋ฅ ์ ํ์ฅ SVG(0), NFQCA(neurally-fitted Q-learning)์ ์ง์คํฉ๋๋ค. ์ด๋ค์ TD ์ค์ฐจ๋ฅผ ์ง์ ๋๊ธฐ๋ ๋์ , ์ถ์ ๊ฐ์น๋ฅผ ํ๋์ผ๋ก ๋ฏธ๋ถํ ๊ธฐ์ธ๊ธฐ๋ฅผ ํ์์์ ์ญ์ ํ ํ๋ค๋ ๊ณตํต์ ์ด ์์ต๋๋ค โ ์ด ์ ์ด GAN์ ์์ฑ์๊ฐ ํ๋ณ์๋ก๋ถํฐ ๊ธฐ์ธ๊ธฐ๋ฅผ ๋ฐ๋ ๋ฐฉ์๊ณผ ์ ํํ ๋์๋ฉ๋๋ค.
GAN์ AC๋ก ํ์ํ๋ ๊ตฌ์ฑ (ํต์ฌ)
GAN๊ณผ ๋์ผํ MDP๋ฅผ ๋ค์์ฒ๋ผ ๋ง๋ญ๋๋ค.
- ํ๋: ์ด๋ฏธ์ง์ ๋ชจ๋ ํฝ์ ์ ์ค์ .
- ํ๊ฒฝ: ๋ฌด์์๋ก ํ์์๊ฐ ๋ง๋ ์ด๋ฏธ์ง ๋๋ ์ง์ง ์ด๋ฏธ์ง๋ฅผ ๋ณด์ฌ์ค.
- ๋ณด์: ์ง์ง ์ด๋ฏธ์ง๋ฅผ ๊ณจ๋์ผ๋ฉด 1, ์๋๋ฉด 0.
- ํ์์์ ์ด๋ฏธ์ง๋ ๋ฏธ๋ ๋ฐ์ดํฐ์ ์ํฅ์ ์ฃผ์ง ์์ผ๋ฏ๋ก ์ด MDP๋ ์ํ ์๋(stateless) ๊ตฌ์กฐ.
์ฌ๊ธฐ์ AC๋ฅผ ํ์ต์ํค๋ฉด GAN ๊ฒ์๊ณผ ๊ฑฐ์ ๊ฐ์์ง๋๋ค. ์ ํํ ์ผ์น์ํค๋ ค๋ฉด ๋ช ๊ฐ์ง ์กฐ์ ์ด ํ์ํฉ๋๋ค.
- ๋๋จผ(blind) ํ์์: ํ์์๊ฐ ์ํ๋ฅผ ๋ณด๋ฉด ์ง์ง ์ด๋ฏธ์ง๋ฅผ ๊ทธ๋๋ก ๋๊ฒจ๋ฒ๋ฆด ์ ์์ผ๋, ์ํ๋ฅผ ๋ชจ๋ฅด๊ฒ ํด์ผ ํฉ๋๋ค(stateless๋ผ ํ์ต์ ์ง์ฅ ์์).
- cross-entropy ์์ค: ๋นํ๊ฐ์ ๋ณดํต ์ฐ๋ MSE Bellman ์์ฐจ ๋์ GAN ์์ค์ ๋ง์ถฐ cross-entropy ์ฌ์ฉ.
- ์ค์ผ์ผ๋ง ํญ: ํ์์๊ฐ Bellman ์์ฐจ๊ฐ ์๋ ๊ฐ์น์ ๊ธฐ์ธ๊ธฐ ๋ฅผ ๋ฐ์ผ๋ฏ๋ก, \partial \mathcal D/\partial Q ์ ๋น๋กํ๋ ํญ์ด ํ์(์ค๋ฌด์์ ๋ณ๋ ์์ฑ์ ์์ค๋ก ์ฒ๋ฆฌ).
- ์ง์ง ์ด๋ฏธ์ง์ผ ๋ ํ์์ ๋ฏธ๊ฐฑ์ : ๋ณด์์ด 1์ด๋ฉด ๋นํ๊ฐ๊ฐ ํ๋์ ๋ํ ๊ธฐ์ธ๊ธฐ๋ฅผ 0์ผ๋ก.
โ GAN = ์ํ ์๋ MDP์์ ๋๋จผ ํ์์๋ฅผ ๊ฐ์ง, ๋ณํ๋ actor-critic.
์ ์ ๋์ ์ด ๋๋๊ฐ
๋ณดํต AC์์ ํ์์์ ๋นํ๊ฐ๋ ์๋ณด์ ์์ค์ ์ต์ ํํ์ง ์ ๋ํ์ง ์์ต๋๋ค. GAN์ด ์ ๋์ ์ธ ์ด์ ๋, ์ด MDP๊ฐ ํ์์๊ฐ ๋ณด์์ ์ด๋ค ์ธ๊ณผ์ ์ํฅ๋ ์ค ์ ์๋ ํ๊ฒฝ โ ์ฆ ์ง์ง policy gradient๊ฐ ํญ์ 0 ์ธ ํ๊ฒฝ์ด๊ธฐ ๋๋ฌธ์ ๋๋ค. ๋นํ๊ฐ๋ ์ ๋ ฅ ์์๋ง์ผ๋ก ๊ฒ์์ ์ธ๊ณผ ๊ตฌ์กฐ๋ฅผ ๋ฐฐ์ธ ์ ์์ด โ๋ณด์์ ์์ธกํ๋ ํน์งโ ๋ฐฉํฅ์ผ๋ก ์์ง์ด๊ณ , ํ์์๋ ๋นํ๊ฐ์ ์ต์ ์ถ์ ์ ๋ฐ๋ผ ๋ณด์์ ๋๋ฆฌ๋ ค ์์ง์ด์ง๋ง ์ง์ง ๋ณด์์ ๋ชป ๋๋ฆฝ๋๋ค. ๊ทธ๋์ ๋นํ๊ฐ๊ฐ ๊ณง ๊ทธ ๋ฐฉํฅ์ ๋ฎ์ ๊ฐ์น๋ฅผ ๋งค๊ธฐ๊ณ , ์ด์์ ์ผ๋ก๋ ์ง๊ตํด์ผ ํ ๋ ์ ๋ฐ์ดํธ๊ฐ ์ ๋์ ์ผ๋ก ๋ณํฉ๋๋ค.
๋ํ ๋ถ๋ถ ๊ด์ธก์ฑ์ ๊ฒฐ๊ณผ๋ ์ค์ํฉ๋๋ค. ์์ ๊ด์ธก MDP์์๋ ์ต์ ์ ์ฑ ์ด ํญ์ ๊ฒฐ์ ์ ์ด์ง๋ง, GAN์์๋ ์์ฑ์๊ฐ ์ง์ง ๋ถํฌ์ ์ผ์นํ๋ ๊ฒ ์ด minimax์ ๊ณ ์ ์ ์ ๋๋ค.
์์ ํ ์ ๋ต: ๋ ์ปค๋ฎค๋ํฐ์ ํธ๋ฆญ (Table 1)
์ ์๋ค์ ๊ฐ ๋ถ์ผ์ โํ์ฅ์ ๊ธฐ์ โ์ ์ ๋ฆฌํ๊ณ ์๋ก ์ด์ ๊ฐ๋ฅ์ฑ์ ๋ ผํฉ๋๋ค.
| ๊ธฐ๋ฒ | GAN | AC |
|---|---|---|
| Freezing learning | โ | โ |
| Label smoothing | โ | โ(๋ฏธ์๋) |
| Historical averaging | โ | โ(๋ฏธ์๋) |
| Minibatch discrimination | โ | โ(๋ฏธ์๋) |
| Batch normalization | โ | โ |
| Target networks | n/a | โ |
| Replay buffers | โ(๋ฏธ์๋) | โ |
| Entropy regularization | โ(๋ฏธ์๋) | โ |
| Compatibility | โ | โ |
ํต์ฌ ๊ต์ฐจ ํต์ฐฐ:
- Freezing learning: GAN์ ํ ๋ชจ๋ธ์ด ๋๋ฌด ๊ฐํด์ง๋ฉด ํ์ต์ ๋๊ฒฐ. AC๋ TD ์ค์ฐจ ํฌ๊ธฐ๊ฐ ์๊ณ๊ฐ์ ๋ฒ์ด๋๋ฉด ํ์์/๋นํ๊ฐ ํ์ต์ ๋๊ฒฐ โ ๊ฐ์ ๋ฐ์.
- Label smoothing: 0/1 ๋ผ๋ฒจ์ \epsilon/1-\epsilon ๋ก ๋ฐ๊ฟ ๊ธฐ์ธ๊ธฐ ์์ค ๋ฐฉ์ง. ๋ณด์์ด 0/1์ด๊ณ ๋นํ๊ฐ ๊ธฐ์ธ๊ธฐ๊ฐ ์ฌ๋ผ์ง๋ RL์๋ ์ ์ฉ ๊ฐ๋ฅํ ๊ฒ.
- Historical averaging: ๊ฒ์์ด๋ก ์ fictitious play์์ ์๊ฐ, ๊ณผ๊ฑฐ ํ๋ผ๋ฏธํฐ ํ๊ท ์์ ๋ฉ์ด์ง๋ step์ drag ํญ ์ถ๊ฐ โ ์ง๋ ๋ฐฉ์ง. Polyak-Ruppert ํ๊ท ๊ณผ ์ฐ๊ฒฐ(RL์์ ๋ถ์๋์ผ๋ ํ์ค ๋๊ตฌ๋ก ์ฑํ๋์ง ์์). DPG์ replay buffer๋ ๊ฐ๋ ์ ์ผ๋ก fictitious play์ ์ ์ฌ(๋จ ํ์์์ ์ ์ฉ ๋ถ๊ฐ).
- Minibatch discrimination: ๋จ์ผ ์ํ collapse ๋ฐฉ์ง๋ฅผ ์ํด ํ๋ณ์๊ฐ ๋ฏธ๋๋ฐฐ์น ์ ์ฒด๋ฅผ ๋ถ๋ฅ โ ์์ฑ์ ์ํธ๋กํผ ์ฆ๊ฐ. RL์ ํ์ ๋ถ์กฑ(underexploration) ๋ฌธ์ ์ ๋์(์ํธ๋กํผ ํ๋ํฐ) โ ์ฐ์ ๊ณต๊ฐ ํ์์ minibatch discrimination๋ฅ๊ฐ ๋์์ด ๋ ์ ์์.
- Replay buffers: AC์์ ์๊ด ์ ๊ฑฐ์ ํจ๊ณผ์ ์ด๋ ๋นํ๊ฐ์๋ง ์ ์ฉ ๊ฐ๋ฅ(ํ์์๋ ๊ณผ๊ฑฐ ๋ค๋ฅธ ํ๋์ ๋ํ ๊ธฐ์ธ๊ธฐ๋ก ๋ชป ๋ฐฐ์). GAN์ ๊ณผ๊ฑฐ ์์ฑ ์ด๋ฏธ์ง ๋ฒํผ๋ฅผ ์๋ํ์ผ๋ ๋จ์ ๋ถํฌ์์๋ ์ ๊ทผ์ ์ผ๋ก ์ฌ๋ฐ๋ฅธ ์ํ ์์ฑ์ ์คํจ.
- Target networks: GAN์ stateless MDP๋ผ Bellman ์ฌ๊ท์ ๋ ๋ฒ์งธ Q ๊ฐ ์ฌ๋ผ์ ธ ํ๋ณ์ ํ์ต์ด ํ๋ฒํ ํ๊ท๊ฐ ๋จ โ GAN์ target network ๋น์ ์ฉ. ๋จ, Q-learning์ ํ์๋ฌธ์ ๋ก ๊ฐ๋ ๋ค๋ฅธ ๋ฉํฐ๋ ๋ฒจ ๋ฌธ์ ์ ์ ์ฉ.
- Entropy regularization (AC) โ๏ธ mode collapse (GAN): ์ฐ์ ์ ์ด ํ์ ๊ธฐ๋ฒ์ GAN ์ํ ๋ค์์ฑ ์ฆ๋๋ก ์ด์ ๊ฐ๋ฅ.
- Compatibility: AC์ compatible critic์ (์ต์ ์ผ ๋) ๋ฌดํธํฅ ์์ฐ ๊ธฐ์ธ๊ธฐ๋ฅผ ์ฃผ๋ ์ฐ์ํ ์ด๋ก . ํ์ง๋ง GAN MDP์์ ๋ชจ๋ ์ ์ฑ ์ ์ง์ง ๊ฐ์น๊ฐ ํญ์ 0.5๋ผ ์ง์ง policy gradient๊ฐ 0 โ โcompatible๋ณด๋ค adversarial์ ์ ํธโ.
๋ ๋ณต์กํ ์ ๋ณด ํ๋ฆ: ํ์ฅ๋ค
์ ์๋ค์ ๋ฉํฐ๋ ๋ฒจ ์ต์ ํ๋ก ๋ณผ ์ ์๋ ๋ ๋ณต์กํ ๋ชจ๋ธ๋ค๋ ์ ๋ฆฌํฉ๋๋ค(๋ณด์ถฉ์๋ฃ).
- GAN ํ์ฅ: f-GAN(GAN ์์ค์ f-divergence ํํ์ผ๋ก ์ผ๋ฐํ), EBGAN(์๋์ง ๊ธฐ๋ฐ ํ๋ณ์), VAE/GAN, BiGAN/ALI(์ถ๋ก ๋ง ์ถ๊ฐ), Adversarial Autoencoder, InfoGAN(์ํธ์ ๋ณด ์ต๋ํ). ์ถ๋ก ๋งยท์ธ ๋ฒ์งธ ๋ชจ๋ธ ์ถ๊ฐ๋ก ์ต์ ํ๊ฐ ๋ ๋ณต์กํด์ง.
- AC ํ์ฅ: A3C(์ํ ๊ฐ์น V ๋ง ํ์ต โ ํ๋ ๊ธฐ์ธ๊ธฐ ์ญ์ ํ ๋ถ๊ฐ, GAN๊ณผ๋ ๋ ๋ฐ์ ํ๋ ์ฐ์ ์ ์ด์ ์ฑ๊ณต์ ), SVG(1)(ํ์์ยท๋นํ๊ฐยท๋ชจ๋ธ f ๊ฒฐํฉ).
- ๋ชจ๋ฐฉํ์ต/์ญ๊ฐํํ์ต(IRL): GAIL์ ๋น์ฉํจ์ ํ์ต์ ์ ์ ๋ถํฌ(occupancy) ๊ฑฐ๋ฆฌ ์ต์ํ๋ก ํ์ํด GAN๊ณผ ๊ฑฐ์ ๊ฐ์ ํํ โ ์ง์ ์ ์ฑ ์ต์ ํ ๋์ AC๋ฅผ ๋ฃ์ผ๋ฉด GAN๊ณผ AC๋ฅผ ๋ ๋ค ํ์๋ฌธ์ ๋ก ๊ฐ๋ 3-๋ ๋ฒจ ์ต์ ํ ๊ฐ ๋จ. Finn et al.์ GAN ๋ชฉ์ ์ด MaxEnt IRL ๋ชฉ์ ๊ณผ ๋์ผํ๊ณ GAN ํ์ต์ด guided cost learning๊ณผ ๊ฐ์์ ๋ณด์.
๋นํ์ ๊ณ ์ฐฐ
๊ฐ์
- ๊ฐ๋ ์ ํต์ฐฐ์ ํ. โGAN = ํ์์๊ฐ ๋ณด์์ ์ํฅ ๋ชป ์ฃผ๋ MDP์ ACโ๋ผ๋ ์ฌ๊ตฌ์ฑ์, ๋ ๋ถ์ผ์ ๋ถ์์ ์ฑ๊ณผ ์ ๋์ฑ์ ๊ฐ์ ๋ฉํฐ๋ ๋ฒจ ์ต์ ํ ๋ ์ฆ ๋ก ๋ณด๊ฒ ํด์ค๋๋ค. ์ ๋์ฑ์ ๊ทผ์์ โ์ง์ง policy gradient = 0โ์ผ๋ก ์ค๋ช ํ ์ ์ด ํนํ ๋ช ๋ฃํฉ๋๋ค.
- ์ค์ฉ์ ํธ๋ฆญ์ ๊ต์ฐจ ์ง๋. Table 1๊ณผ ๊ต์ฐจ ํต์ฐฐ์, ํ ๋ถ์ผ์ ์์ ํ ๊ธฐ๋ฒ์ ๋ค๋ฅธ ๋ถ์ผ๋ก ์ฎ๊ธธ ์ ์๋ ๊ตฌ์ฒด์ ํ๋ณด ๋ฅผ ์ ์ํด ํ์ ์ฐ๊ตฌ์ ์ถ๋ฐ์ ์ ์ค๋๋ค.
- ํ์ฅ ๋ชจ๋ธ์ ํตํฉ ์๊ฐ. VAE/GANยทBiGANยทGAILยทIRL๊น์ง ๋ฉํฐ๋ ๋ฒจ ์ต์ ํ๋ก ๋ฌถ์ด, ์ ๋์ ํ์ต ์ํ๊ณ ์ ๋ฐ์ ์งํ๋๋ฅผ ๊ทธ๋ฆฝ๋๋ค.
์ฝ์ ๊ณผ ํ๊ณ
- ์คํ ๋ถ์ฌ(๋ ธํธ ์ฑ๊ฒฉ). ์ด ๊ธ์ ๊ฐ๋ ์ ์ฐ๊ฒฐ์ ๋ถ๊ฐํ๋ ํฌ์ง์ /๋ฆฌ๋ทฐ ๋ ธํธ ๋ก, ์ ์๊ณ ๋ฆฌ์ฆ์ด๋ ์ค์ฆ์ด ์์ต๋๋ค. ์ ์๋ ๊ต์ฐจ ์ด์(์: RL์ฉ minibatch discrimination, GAN์ฉ replay buffer)์ ์ค์ ํจ๊ณผ๋ ๊ฒ์ฆ๋์ง ์์๊ณ , ์ค์ ๋ก GAN replay buffer๋ ์คํจ ํ๋ค๊ณ ๋ณด๊ณ ํฉ๋๋ค.
- ์ฐ๊ฒฐ์ ๋น๋์นญ์ฑ. ์ ์๋ ๋ช ์ํ๋ฏ, ์ด ๋ ผ๋ฌธ์ โํน์ MDP์์์ AC = ๋ชจ๋ GANโ์ ๋ณด์ธ ๋ฐ๋ฉด, Finn et al.์ โํน์ GAN ํ์ฅ = ๋ชจ๋ ๊ฒฝ์ฐ์ guided cost learningโ์ ๋ณด์ ๋๋ค. ์ฐ๊ฒฐ์ด ์๋ฐฉํฅ์ผ๋ก ์์ ํ ๋์นญ์ ์๋๋๋ค.
- ์๋์ ๋ฒ์. 2016๋ ์์ ์ GAN/AC(DPG, SVG, NFQCA, DCGAN ๋ฑ) ๊ธฐ์ค์ด๋ผ, ์ดํ์ ๋ฐ์ (WGAN, diffusion, ์ต์ RL)๊ณผ์ ์ ํฉ์ฑ์ ๋ ์๊ฐ ๋ณด์ํด์ผ ํฉ๋๋ค(์ถ์ธก).
์์ฝ ๋ฐ ๊ฒฐ๋ก
์ด ๋ ผ๋ฌธ์ ๋น์ง๋ ํ์ต์ GAN ๊ณผ ๊ฐํํ์ต์ actor-critic ์ ์ด์ค ๋ ๋ฒจ ์ต์ ํ ๋ผ๋ ๊ณตํต ํ๋ก ๋ฌถ๊ณ , GAN์ด โํ์์๊ฐ ๋ณด์์ ์ํฅ์ ์ค ์ ์๋ ์ํ ์๋ MDP์์ ๋๋จผ ํ์์๋ฅผ ๊ฐ์ง ACโ ์์ ์ ํํ ๊ตฌ์ฑํฉ๋๋ค. ์ด ํ๊ฒฝ์์ ์ง์ง policy gradient๊ฐ 0์ด๊ธฐ์, ๋ณธ๋ ์ง๊ตํด์ผ ํ AC ์ ๋ฐ์ดํธ๊ฐ ์ ๋์ ์ผ๋ก ๋ณํ๋ค๋ ๊ฒ์ด GAN ๋ถ์์ ์ฑ์ ๊ทผ์์ ๋๋ค.
์ด ์ฐ๊ฒฐ์ ํ ๋๋ก ๋ ์ปค๋ฎค๋ํฐ์ ์์ ํ ํธ๋ฆญ(freezing, label smoothing, historical averaging, replay buffer, target network, entropy regularization, compatibility ๋ฑ)์ ํ ํ๋ก ์ ๋ฆฌํ๊ณ , ์ด๋ค ๊ธฐ๋ฒ์ด ์ด๋ ๋ฐฉํฅ์ผ๋ก ์ด์๋ ์ ์๋์ง โ ๊ทธ๋ฆฌ๊ณ ์ด๋์ ํ์์ด ๋งํ๋์ง(์: stateless๋ผ GAN์ target network ๋ถํ์) โ ๋ฅผ ์ง์ต๋๋ค.
์คํ์ ์์ง๋ง, ์ด ๋ ธํธ์ ๊ฐ์น๋ โ๋ ์ด๋ ค์ด ๋ฉํฐ๋ ๋ฒจ ์ต์ ํ ๋ฌธ์ ๋ฅผ ํ๋์ ์ธ์ด๋ก ๋ฌถ์ด, ๋ถ์ผ ๊ฐ ์์ด๋์ด์ ์์ ๋ก์ด ํ๋ฆ๊ณผ ์ผ๋ฐ์ ยทํ์ฅ ๊ฐ๋ฅยท์์ ์ ์๊ณ ๋ฆฌ์ฆ ๊ฐ๋ฐ์ ์ด๊ตฌํ ๊ฒโ ์ ์์ต๋๋ค. GAILยทMaxEnt IRL๊ณผ์ ์ฐ๊ฒฐ๊น์ง ํฌํจํด, ์ ๋์ ํ์ต๊ณผ ๊ฐํํ์ต์ ์๋ ๊ฐ๋ ์ ์ง๋ ๋ก์ ์ดํ ์ฐ๊ตฌ์ ๊พธ์คํ ์ธ์ฉ๋๋ ํ ๋ ๋ฌธํ์ ๋๋ค.