๐ฆ์ ์ด๊ฑธ ํํ๋๊ฐ~
์ผ๋จ ์ ํต์ ์ธ RL์์๋ ๊ตฌ์กฐ๊ฐ ๋จ์ํ๋ค. ๊ทธ๋ฐ๋ฐ Dreamer๋ ๋จ์ํ ์ ์ฑ ๋คํธ์ํฌ๋ง ์ฌ์ฉํ๋ ๊ฒ์ด ์๋๋ผ "์ธ์์ ์์ํ๋ ๋"๋ฅผ ๋ง๋ค๊ณ ์ด๊ฑธ ๊ธฐ๋ฐ์ผ๋ก ํ๋์ ๊ฒฐ์ ํ๋ค.... ๋ ์ ์ด ์ ๊ธฐํด์!ใ ใ
- ๊ฐํํ์ต๋ RNN์ด๋ ์ฌํ ์ํคํ ์ฒ๋ฅผ ์ด์ฉํด์ ์ข ๋ ์ค์ฉ์ ์ด๊ณ ๋ฒ์ฉ์ ์ผ๋ก ๋ง๋ค ์ ์๊ฒ ๋ค... ๊ทธ๋ฐ ์๊ฐ๋ ํจ.
DreamerV3๋ ํ๊ฒฝ๊ณผ์ ์ํธ์์ฉ์์ ์ง์ ํ์ตํ๊ธฐ ๋ณด๋ค๋ "World model'์ ํ์ตํด ๋ฏธ๋ ์๋๋ฆฌ์ค๋ฅผ ์์ํ๋ฉด์ ์ ์ฑ ์ ๊ฐ์ ํ๋ ๋ชจ๋ธ ๊ธฐ๋ฐ ๊ฐํํ์ต ๋ฐฉ์์!
๋ณธ ๋ ผ๋ฌธ์์๋ ์ธ๊ณ ๋ชจ๋ธ์ ์ ๊ทธ๋ฆผ์์ ๋ณด๋ ๊ฒ์ฒ๋ผ ์ํ ์ํ ๊ณต๊ฐ ๋ชจ๋ธ(recurrent state-space model)๋ก ๊ตฌํํ๋ค. ์ฐ์ encoder๋ ๊ฐ๊ฐ ์ ๋ ฅ ๋ฅผ ํ๋ จ ์ํ์ค์์ ๊ฐ time step ์ ๋ํ ํ๋ฅ ์ ํํ ๋ก mappingํ๋ค. ๊ทธ ๋ค์ ์ํ ์ํ ๋ฅผ ๊ฐ๋ ์ํ์ค ๋ชจ๋ธ์ ๊ณผ๊ฑฐ action ์ด ์ฃผ์ด์ก์ ๋ ์ด๋ฌํ ํํ๋ค์ ์ํ์ค๋ฅผ ์์ธกํ๋ค. ์ ์ concatenation์ ๋ชจ๋ธ ์ํ๋ฅผ ํ์ฑํ๊ณ , ์ด๋ฅผ ํตํด ๋ณด์ ์ episode ์ง์ flag ๋ฅผ ์์ธกํ๊ณ ์ ๋ ฅ๊ฐ์ ์ฌ๊ตฌ์ฑํด์ ์ ๋ณด๋ ฅ์ด ๋์ ํํ์ ๋ณด์ฅํ๋ค.
์ผ๋จ world model์ด ๋ญ์ง๋ถํฐ ์์๋ณด์. ์ฌ๊ธฐ์ ๋งํ๋ world model์ด๋ ๊ฐํ ํ์ต ์์ด์ ํธ๊ฐ ํ๊ฒฝ ์์ฒด๋ฅผ ํ์ตํ์ฌ ์ดํดํ๋ ๋ชจ๋ธ์ ์๋ฏธํ๋ค. ๊ทธ๋ฌ๋๊น ์ฌ๋์ด ์ฃผ๋ณ ์ธ์์ ๊ด์ฐฐํ๊ณ ๊ฒฝํํด์ ์ธ์์ ๊ท์น์ด๋ ์ญํ์ ๋ฐฐ์ฐ๋ ๊ฒ๊ณผ ๋น์ทํ๋ค. ์ด World model์ ๊ฐ๊ฐ(sensory) ์ ๋ ฅ์ ์์ถ๋ ํํ๋ก ํ์ตํ๋๋ฐ, ์ด๋ RSSM(Recurrent State-Space Model)์ ์ฌ์ฉํ๋ค.
์ฌ๊ธฐ์ ๋ ์์ด์ ํธ๊ฐ ์ค์ ํ๊ฒฝ์์ ๊ด์ธกํ ์ด๋ฏธ์ง๋ก ๊ฒ์ ํ๋ฉด์ด๋ ์๊ฐ์ ์ ๋ ฅ ๋ฑ์ด ์๋ค. ์ด ๊ด์ธก๋ ์ด๋ฏธ์ง๋ ์ ์ฌ ๊ณต๊ฐ(latent space)์ ๋ฒกํฐ ๋ก ์ธ์ฝ๋ฉ๋๋๋ฐ ์ด ์ ์ฌ ๋ฒกํฐ๋ ์ด๋ฏธ์ง์ ์ค์ํ ํน์ง์ ์์ถํ ํํ์ด๋ค.
[!note] ์ ์ฌ ์ํ์์ ์ฌ๊ตฌ์ฑํ๋๊ฒ ์ ํต์ฌ ์ ๋ณด๋ฅผ ๋ด๋๋ก ํ๋๊ฑฐ์ง?
๋ฐ์ดํฐ ์์ถ ๊ณผ์ ์์ ์ ๋ณด๊ฐ ์์ค๋ ์ ์๋ค. ์ฌ๊ธฐ์ ์ฌ๊ตฌ์ฑ ์์ค์ด ๋ฑ์ฅํ๋ค. ๋์ฝ๋๋ ์์ถ๋ ์ ์ฌ ์ํ๋ง์ ์ ๋ ฅ์ผ๋ก ๋ฐ์ ์๋์ ์ ๋ ฅ( )๊ณผ ์ต๋ํ ์ ์ฌํ ๋ฅผ ๋ง๋ค๋ ค๊ณ ์๋ํ๋ค. ์ฌ๊ตฌ์ฑ ์์ค์ ๋์ฝ๋๊ฐ ๋ง๋ค์ด๋ธ ์ถ๋ ฅ๊ณผ ์๋์ ์ ๋ ฅ ์ฌ์ด๋ฅผ ์ธก์ ํ๊ณ , ์ด ์ฐจ์ด๋ฅผ ์ต์ํํ ์ ์๋๋ก ๋ชจ๋ธ์ ํ์ต์ํจ๋ค.
==ํ์ต ๋ชฉํ==
๊ฒฐ๊ตญ world model์ ํ์ต ๋ชฉํ๋ ๋ค์๊ณผ ๊ฐ์ ์ธ ๊ฐ์ง ์์ค์ ์ต์ํํ๋ ๊ฒ์ด๋ค.
Actor-Critic์ ๊ฐํํ์ต ๋ฐฉ๋ฒ๋ก ์ค ํ๋๋ก, ๋ฏธ๋์ ๊ฐ์น๋ฅผ ํ๊ฐํ๋ ํ๊ฐ์(Critic)๊ณผ Critic์ ํผ๋๋ฐฑ์ ๋ฐํ์ผ๋ก ํ๋์ ์ ํํ๋ ํ์์(Actor)๋ก ์ด๋ค์ ธ ์๋ค.
๋จผ์ ์ผ์ชฝ ์๋์ ์๋ ๊ฒ์ ์ด๋ฏธ์ง๋ ์ค์ ํ๊ฒฝ์์ ๋ฐ์์จ ๊ด์ธก๊ฐ ์ด๋ค. ์ด๋ encoder๋ฅผ ํตํด ์ ์ ํํ์ผ๋ก ๋ณํ๋๋ค. ๊ทธ๋ ๊ฒ ๋ง๋ค์ด์ง ์ ์ฌ ๋ฒกํฐ ๋ ํ๋ฅ ์ (latent stochastic) ์ํ๋ก "๊ด์ธก์ผ๋ก๋ถํฐ ์ป์, ๋ญ๊ฐ ์์์ด??"์ ๋ํ ์์ฝ ์ ๋ณด๋ค.
๊ทธ๋ฆฌ๊ณ ์์ ์๋ ๋ ๊ฒฐ์ ์ (deterministic) ํ๋ ์ํ๋ก, ์ด์ ์๊ฐ์ ํ๋ ์ํ์, ํ์ฌ ์ํ๋ ๋ฅผ RNN์ ๋ฃ์ด์ ๋ง๋ค์ด์ง๋ค.
์ด๊ฑด ์๊ฐ์ ๋ฐ๋ผ ์ถ์ ๋ ์ ๋ณด๋ฅผ ๋ฐ์ํ๋ ๋ฉ๋ชจ๋ฆฌ ๊ฐ์ ๊ฒ์ด๋ผ ์๊ฐ ํ๋ฆ์ ๋ฐ์ํ๋ค.
๊ทธ๋์ ์ด ๋ ๊ฐ๋ฅผ ํฉ์น ๊ฒ์ด ๋ฐ๋ก ์ผ๋ก, Markov ์ํ ํํ์ด๋ฉฐ ์ด๊ฑธ ๊ธฐ๋ฐ์ผ๋ก Actor์ Critic์ด ์๋ํ๋ค.
๋จผ์ Critic์ ๊ฒฝ์ฐ World Model์ด ์์ํ ์ํ๋ก๋ถํฐ ์์ธก๋ return ๋ถํฌ๋ฅผ ํ์ตํ๋ค.
๋ชฉํ! ๋ฅผ ํ์ตํ๋ผ!
= ์ฝ๊ฒ ๋งํ๋ฉด ํ์ฌ ์ํ์ "๊ฐ์น(๋ฏธ๋ ๋ณด์์ ์ดํฉ)"๋ฅผ ์์ธกํ์ฌ Actor์ ํ์ต์ ๋์์ฃผ๋ ๊ฒ์ด๋ค.
์ฌ๊ธฐ์ ์ฌ์ฉํ๋ ๊ฒ์ด ์์ ๊ธฐ๋ฐ ํ์ต, Trajectory Imagination์ด๋ค. ์ค์ ํ๊ฒฝ์ ๋งค๋ฒ ์คํํ๋ ๊ฒ์ด ์๋๋ผ(๋์ด ๋ง์ด ๋ค๊ณ ์๊ฐ๋ ๋ค์ด์!) World model์ด ์์ํ ๊ฐ์ ์๋๋ฆฌ์ค๋ก ํ์ต์ ํ๋ ๊ฒ์ด๋ค.
Trajectory ์์ฑ
๋จผ์ world model๊ณผ actor์ ์ด์ฉํด์ ์์ ์์์ trajectory๋ฅผ ๋ง๋ ๋ค. ์ฌ๊ธฐ์ ์ด trajectory๋ผ๋ ๊ฒ์ ์ฝ๊ฒ ๋งํด ์ํ, ํ๋, ๋ณด์์ ์ด ์งํฉ์ ๋งํ๋ค. s1 -> a1 -> r1 -> s2 -> a2 -> .... ์ด๋ฐ ๊ฒ!
-return ๊ณ์ฐ
์ ์ด์ ๊ฐํํ์ต์์ "์ง๊ธ ๋น์ฅ์ ๋ณด์"๋ง ๋ณด๋ ๊ฒ์ ๋ง์ด ์๋๋ค. ์ฐ๋ฆฌ๋ ๋ฏธ๋์ ๋ณด์๊น์ง ์ผ์ ๋น์จ์ ์์ด์ ๊ณ์ฐ์ ํด์ผ ํ๋ค. ์ด๊ฑธ -return
๋ผ๊ณ ๋ถ๋ฅธ๋ค.
Critic์ ์ด๋ ๊ฒ bootstrapped -return์ ์ด์ฉํด์ ํ์ตํ๋ค.
(์์งํ ์ฌ๊ธฐ๊น์ง ์ฝ์์ ๋ ์ด๊ฑฐ ์ํคํ
์ฒ๋ณด๋ค ๊ฐํํ์ต ๋น์ค์ด ๋๋ ์ถ์์ง๋ง ์ด๋ฏธ ๋ฆ์๋ค.)
ํ๋ฅ ๋ถํฌ๋ก ์์ธก
๋ณด์์ ํํ๊ฐ ๋ค์ํ ์ ์๊ธฐ ๋๋ฌธ์ critic์ ๋ณด์์ ํ๋์ ์ซ์๊ฐ ์๋๋ผ ํ๋ฅ ๋ถํฌ๋ก ์์ธกํ๋ค.
๊ทธ ๋ค์ reaply buffer์ ์ด์ฉํด์ ์ค์ ๊ฒฝํ์ ํผํฉํด์ ๋ณด๊ฐํ๊ณ
[!note] Replay buffer
๊ณผ๊ฑฐ์ ๊ฒฝํ๋ค(trajectory)์ ์ ์ฅ๋๋ ๋ฉ๋ชจ๋ฆฌ ๊ณต๊ฐ์ผ๋ก ์์๋ ์ด๋ ๊ฒ ์ ์ฅ์ด ๋๋ค.๊ฐํํ์ต์ ํ๊ฒฝ์ ์คํํด์ผ ํ๊ธฐ ๋๋ฌธ์ ๋ฐ์ดํฐ๋ฅผ ์ป๋ ๊ฒ์ด ๋น์ธ๋ค. Replay buffer์ ์ด์ฉํ๋ฉด ์ ์ฅ๋ ๊ณผ๊ฑฐ ๊ฒฝํ์ ์ฌ๋ฌ ๋ฒ ๋ฐ๋ณตํด์ ํ์ต์ ์ด์ฉํ ์ ์๋ค!
๐งฉ Dreamer์์๋ ์ด๋ป๊ฒ ์ฌ์ฉ?
Dreamer๋ world model์ ํ์ตํ ๋ ๋ ๊ฐ์ง ์ข ๋ฅ์ ๋ฐ์ดํฐ๋ฅผ ์ฌ์ฉํ๋ค.
1. ์ค์ ํ๊ฒฝ์์ ์์ง๋ ๊ฒฝํ - repaly buffer ์ ์ฅ
2. world model์ด ์์ํ trajectory - imagination trajectory
Actor์ ๊ฒฝ์ฐ๋ ๊ฐ ์์ ์์ ๋ฅผ ๋ฐ์์ ํ๋ ๋ฅผ ์ํ๋งํ๋ค.
๊ทธ๋ฆผ์์๋ ์กฐ์ด์คํฑ์ด ์์ง์ด๋ ๊ฒ์ a๋ผ๊ณ ํ๋ค.
๊ทธ๋ฐ๋ฐ ์ฌ๊ธฐ์ actor๊ฐ ์ฃผ์ํด์ผ ํ๋ ๊ฒ์, ๋๋ฌด ๋๊ฐ์ ํ๋๋ง ๋ฐ๋ณตํ์ง ์๋ ๊ฒ์ด๋ค. ๊ทธ๋ ๊ธฐ์ ์ฐ๋ฆฌ๋ ํ์(exploration)์ ํ๋ค. ๊ทธ๋ฐ๋ฐ ์ด ํํ์ ์ ์ ํ ๊ฐ๋๋ฅผ ํ๊ฒฝ ๋ด์์ ๋ณด์์ ํฌ๊ธฐ(scale)์ ๋น๋(frequency) ๋ชจ๋์ ๋ฐ๋ผ ๋ฌ๋ผ์ง๋ค. ์ด์์ ์ผ๋ก๋ ๋ณด์์ด ๋๋ฌธ ํ๊ฒฝ์์๋ ๋ ๋ง์ด ํ์ํ๊ณ , ๋ณด์์ด ์์ฃผ ๋์ค๊ฑฐ๋ ๊ฐ๊น์ด์ ์์ ๋๋ ๋ ๋ง์ด ์ด์ฉํ๋ ๊ฒ์ด ์ข์ผ๋ฉฐ ๋ณด์์ ์ ๋์ ์ธ ํฌ๊ธฐ ๋ณํ์ ํ์ ๊ฐ๋๊ฐ ์ํฅ์ ๋ฐ์์๋ ์๋๋ค. ๋๋ฌธ์ ๋
ผ๋ฌธ์์๋ ๋ณด์์ ํฌ๊ธฐ๋ฅผ ์ ๊ทํํ๋ค.
์์งํ ๋งค์ฐ ์ด๋ ต๋ค...
๊ทธ๋ฅ ๋ณด์์ ์ค์ผ์ผ์ด ํ๊ฒฝ๋ง๋ค ๋ฌ๋ผ์ง๋๊น return ์์ฒด๋ฅผ ์ ๊ทํํด์ ๊ท ํ ์๊ฒ ํ์ตํ๋๋ก ๋์์ฃผ๋ Actor์ ์์คํจ์๋ผ๊ณ ์๊ฐํ๋ฉด ๋จ!
์ฐ์์ ์ด๊ณ ๋ถ์ฐ์์ ์ธ ํ๋, ์๊ฐ์ ๋ฐ ์ ์ฐจ์ ์ ๋ ฅ, ์กฐ๋ฐํ๊ณ ํฌ์ํ ๋ณด์, ๋ค์ํ ๋ณด์ ์ฒ๋, 2D ๋ฐ 3D ์ธ๊ณ, ์ ์ฐจ์ ์์ฑ์ ํฌํจํ๋ 8๊ฐ์ ๋๋ฉ์ธ์์ ๊ด๋ฒ์ํ ์ฐ๊ตฌ๋ฅผ ์ํํจ!
Dreamer๋ ๋ค์ํ ๋๋ฉ์ธ์์ PPO๋ณด๋ค ํจ์ฌ ๋ฐ์ด๋ ์ฑ๋ฅ์ ๋ณด์ฌ์คฌ๋ค.
๋ง์ธํฌ๋ํํธ์์ ๋ค์ด์๋ชฌ๋๋ฅผ ์์งํ๋ ๊ฒ์ ์ธ๊ณต์ง๋ฅ ๋ถ์ผ์์ ์ค๋ ๊ธฐ๊ฐ ๋์ ๋์ ์๋ค. (์ต๊ทผ์๋ MAS๋ฅผ ์ํ ๋ง์ธํฌ๋ํํธ ๋ฒค์น๋งํฌ๋ ์๋ก ์๊ฒผ๋๋ฐ, ๊ทธ๋ฐ ๊ฑฐ ๋ณด๋ฉด ๋งํฌ๋ ์ญ์ ๊ณ์ ์ฌ์ฉ๋ ๊ฒ ๊ฐ์,,,)
Dreamer๋ ์ธ๊ฐ ๋ฐ์ดํฐ๋ฅผ ์ฌ์ฉํ์ง ์๊ณ ๋ ๋ง์ธํฌ๋ํํธ์์ ์ฒ์๋ถํฐ ๋ค์ด์๋ชฌ๋๋ฅผ ์์งํ๋ ์ต์ด์ ์๊ณ ๋ฆฌ์ฆ์ด๋ค.
๋ชฐ๋๋๋ฐ MineRL์ด ์ธ๊ฐ ์ ๋ฌธ๊ฐ ๊ถค์ (trajectory) ๋ฐ์ดํฐ์ ์ ์ ๊ณตํ๋ค๊ณ ํจ.
a. Robustness techniques
b. Learning signals (ํ์ต ์ ํธ์ ์ํฅ)
[!question] ๐ตโ๐ซ ์์ผ๊น?
์ผ๋จ ๊ด์ธก ๋ณต์์ด๋ ๋ชจ๋ธ์ด ์ ์ฌ ์ํ ํํ ()๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ์ ๋ ฅ์ผ๋ก ์ฃผ์ด์ก๋ ๊ด์ธก ์ ๋ค์ ๋ง๋ค์ด๋ด๋ ๊ฒ์ด์๋ค. ์ฆ, ๋ชจ๋ธ์ด ํ๋ถํ๊ณ ์ผ๋ฐ์ ์ธ ํํ์ ํ์ตํ๋๋ก ๊ฐ์ ํ๊ณ ๋ชจ๋ธ์ด ํ๊ฒฝ์ ์์ํ๊ณ ์์ธกํ๋ ๋ฅ๋ ฅ์ ํค์ฐ๋๋ฐ ๋งค์ฐ ์ค์ํ๋ค.
๊ทธ๋ผ ์ฌ๊ธฐ์ ๋ณด์/๊ฐ์น ์์ธก ์ ๊ฑฐ๋ ์ ๋ ์ค์ํ๋... ํ ์๋ ์๋ค.
์ผ๋จ ์ด๊ฑด ์ ์ด์ Dreamer๋ผ๋ ๋ชจ๋ธ์ด ๋ฌด์ผ ๋ชฉ์ ์ผ๋ก ํ๋๊ฐ ์ค์ํ๋ค. Dreamer๋ "๋ณด์์ ์ ์์ธกํ๋ ๋ชจ๋ธ"์ด ์๋๋ผ "์ธ์์ ์ ์์ํ๊ณ ์ดํดํ๋ ๋ชจ๋ธ"์ด๋ค. world model์ด ํ์ตํ ํํ์ ๊ธฐ๋ฐ์ผ๋ก actor์ critic์ ์์ ์์์ ๋ฐ๋ก ํ์ตํ๊ธฐ ๋๋ฌธ์ world model์ด ๋ณด์์ ์ง์ ์ ์์ธกํ์ง ์์๋ ์๊ด์๋ค!
c. Model size scaling (๋ชจ๋ธ ํฌ๊ธฐ ํ์ฅ)
d. Replay buffer ํฌ๊ธฐ ์ํฅ