9.1 Introduction
์ด์ chapter์ ๋ค๋ฅธ agent๋ค์ ํ์ตํ๋์ ์์ ์ optimization term์ ๋ฃ๋ Learning with Opponent-Learning Awareness(LOLA)์ ๋ํด ๋ฐฐ์๋ณด์์ต๋๋ค. ์ด ๊ณผ์ ์์ ์ ๋ฐ์ดํธํ๋ ค๋ agent๋ ๋ค๋ฅธ agent์ learning step์ ๋ฏธ๋ถํ ์ ์์ด์ผ ํ์ต๋๋ค. ์ด ๊ณผ์ ์์ ๋์ ์ฐจ์์ gradient๋ฅผ ๋ฐ์์ํค๋ ๊ฒ์ ๋ณด์์ต๋๋ค. ํ์ง๋ง ์ด ๋, objective๋ ๋ฏธ๋ถ ๋ถ๊ฐํ๊ณ (Go๋ฅผ ์๋ก ๋ค์์ ๋, ์ด๊ฒผ์ ๋ 1, ์ก์ ๋ -1 ์ด๋ผ๋ฉด, ์ด reward๋ ๋น์ฐํ ๋ถ์ฐ์์ ์ด๊ณ ๋ฏธ๋ถ ๋ถ๊ฐ) ์ด๋ฅผ ํด๊ฒฐํ๊ธฐ ์ํด sampling์ ํ์ฌ ํด๊ฒฐํ๋ monte-carlo-estimation์ ํ๊ฒ ๋ฉ๋๋ค. ์ด ๋, 1์ฐจ ๋ฏธ๋ถ์ policy gradient์์ ๋ง์ด ์ฐ์ด๋ score function trick()๋ฅผ ์ฌ์ฉํด ์ถ์ ๊ฐ๋ฅํ์ง๋ง ๋์ ์ฐจ์์ ๋ฏธ๋ถ์ ์ข ๋ ๋ณต์กํฉ๋๋ค. ๊ทธ๋ ๊ธฐ์ ๋์ ์ฐจ์์ ๋ฏธ๋ถ์ ์ข ๋ ์ ์ํ ์ ์๋ค๋ฉด, pytorch๋ tensorflow ๊ฐ์ auto-diff deep learning library์๊ฒ ์ด๋ฅผ ๋งก๊ธฐ๋ฉด ๋ฉ๋๋ค. ์ด๋ LOLA์์ ์ํ๋ ๊ฒ์ ๋์ด์ ๋ค๋ฅธ ์ฌ๋ฌ optimization technic์ ์ ์ฉํ ์ ์์ผ๋ฉฐ, ์๋ ด์ ๊ฐ์ํ ์ ์์ต๋๋ค.์ด๋ meta-learning์์๋ ์ ์ฉํ๊ฒ ์ฌ์ฉ๋ฉ๋๋ค.
Monte-Carlo-Estimation์ ์ฌ์ฉํ๋ ์ ๊ทผ์ stochastic computation graph(SCG)๋ก๋ถํฐ surrogate objective๋ฅผ ์์ฑํ๋ surrogate loss(SL)๋ฅผ ์ฌ์ฉํ๋ method๋ก, (์ด ์ฉ์ด๋ค์ด ์ฒ์๋ค์ด๋ณธ๋ค๋ฉด 9.2 Background๋ฅผ ๋จผ์ ์ฝ๊ณ ์ค์๋๊ฒ์ด ๋์์ด ๋ ์ ์์ต๋๋ค.) ๋ฏธ๋ถ์ด ๋ ๋, SL๊ฐ ์๋ objective์ 1์ฐจ ๋ฏธ๋ถ์ ์ถ์ ๊ฐ์ ๋ด๋๊ฒ ๋ฉ๋๋ค.
ํ์ง๋ง ์์์ ์ธ๊ธํ 1์ฐจ gradient๋ฅผ ๊ตฌํ๋ ๋ฐฉ๋ฒ์ ๋์ ์ฐจ์์ ๋ฏธ๋ถ๊ฐ์ ๊ตฌํ ๋ auto-diff library์ ์ ๋ง์ง ์์ต๋๋ค. ๋์ ์ฐจ์์ gradient estimator๋ ๋๊ฐ์ score function trick์ ์ฌ์ฉํด์ผํ๊ธฐ ๋๋ฌธ์ ๋ฏธ๋ถ ๊ฐ์ด sampling distribution์ ์์กดํ๊ฒ ๋ฉ๋๋ค. ๋ํ ์ด์ฒ๋ผ ๋ฏธ๋ถํ๋ ๊ฒ์ ์ด๋ฏธ Finn์ ์ฐ๊ตฌ๊ฒฐ๊ณผ์์ ์๋ชป๋ term์ ๊ฐ์ ธ์จ๋ค๋ ๊ฒ์ ๋ณด์์ต๋๋ค.
๋์ ์ฐจ์์ score function gradient estimator๋ฅผ ๊ตฌํ๋๋ฐ ๋ง์กฑ๋์ง ์๋ ๋ ๊ฐ์ง ์ ์ด ์กด์ฌํฉ๋๋ค.
์ฒซ์งธ๋ก, estimator๋ฅผ sampling๊ฐ์ ๋ฐฉ๋ฒ์ด ์๋ analyticalํ๊ฒ ์ ๋ํ๊ฑฐ๋ ๊ตฌํํด์ผํฉ๋๋ค. ์ด๋ ๋ฒ๊ฑฐ๋กญ๊ณ ์ค๋ฅ๊ฐ ๋๊ธฐ ์ฝ๊ณ auto-diff์ ์ ์ฉ๋๊ธฐ ์ด๋ ต์ต๋๋ค.
๋์งธ๋ก, ์๋ก์ด objective๋ฅผ ์ํ SL์ ๋ฐ๋ณต์ ์ธ ์ ์ฉ์ ์ ์ฉํ๋ ๋ฐฉ๋ฒ์ธ๋ฐ, ์ด๋ ์ ์ ๋ณต์กํ ๊ทธ๋ํ๋ฅผ ์๋ฐํ๊ฒ ๋ฉ๋๋ค.
SL์์ 1์ฐจ ๋ฏธ๋ถ ํ cost๋ฅผ ๊ณ ์ ๋ sample๋ก ๋ค๋ฃน๋๋ค. ์ด๊ฒ์ด ๋์ ์ฐจ์์ gradient estimator๋ก ๊ฐ์ ๋, ์ผ๋ง๋ ๋น์ ํํ term์ ๋ง๋๋์ง ๋ณด์ด๋๋ฐ, ์ด๋ ๋์ ์ฐจ์์ gradient๊ฐ ์ ์ฉ๋์ผํ๋ method์ ์ ์ฉ ๋ฒ์๋ฅผ ์ ํํ๊ฒ ๋ฉ๋๋ค.
์ฌ๊ธฐ์์ ์์ ๋ฌธ์ ์ ๋ค์ ํด๊ฒฐํ๊ธฐ ์ํด Infinitely Differentiable Monte-Carlo Estimator(DiCE)๋ฅผ ์ ์ํฉ๋๋ค. DiCE๋ ์๋์ objective๋ฅผ ์ถ์ ํ ์ ์๋ ์ ํํ ๋ฏธ๋ถ๊ฐ์ ์ป์ ์ ์๋ค๋ ํน์ง์ด ์์ต๋๋ค. SL์ ์ ๊ทผ๋ฐฉ๋ฒ๊ณผ๋ ๋ค๋ฅด๊ฒ DiCE๋ ๋์ ์ฐจ์์ gradient๊ณ์ฐ์ auto-diff์ ์์กดํฉ๋๋ค.
Dice๋ Operator MAGICBOX(์ฌ๊ธฐ์๋ ๋ก ํํํ๊ฒ ์ต๋๋ค.)๋ฅผ ์ ์ํฉ๋๋ค. SCG์์ original loss์ ์ํฅ์ ๋ฏธ์น๋ stochastic node ๋ฅผ ๋ชจ๋ ํฌํจํฉ๋๋ค. ๋ง์ฝ ๋ฏธ๋ถ์ด ์ผ์ด๋๋ค๋ฉด, ์ด MagicBox๋ sampling distribution์ ๋ํ ์ ํํ gradient๋ฅผ ๋ด๋์ต๋๋ค. MagicBox๋ ๋ ๊ฐ์ง ์ฑ์ง์ ๊ฐ์ง๋๋ฐ, ์ด๋ ๋ค์์ ์์ธํ๊ฒ ์ค๋ช ํ๊ฒ ์ต๋๋ค.
MagicBox operator๋ ์์ ํน์ฑ์ ๊ฐ์ง๊ธฐ ์ํด auto-diff library์์ ๋ค์๊ณผ ๊ฐ์ด ์ฝ๊ฒ ๊ตฌํ ๊ฐ๋ฅํฉ๋๋ค.
๋ ์ด ๋๋ operator์ ๋๋ค. ์ดํ์ ์ด๋ป๊ฒ baseline์ ํตํด variance๋ฅผ ์ค์ด๋์ง์ ๋ํด ๋ณด์ ๋๋ค.
์ด๋ฒ chapter๋ด์์ DiCE์ ์ฆ๋ช ๊ณผ ์คํ์ ํตํด ์ ํ์ฑ์ ๋ํด ๋ณด์ ๋๋ค. ๋ํ, LOLA์ DiCE๋ฅผ ์ ์ฉํ ๋ชจ์ต๋ ๋ณด์ ๋๋ค.
Last updated