DFS_ER : ๋์ ํ๋ ์์คํคํ์ ํตํ ํด๋จผ ๋ฐ๋ชฌ์คํธ๋ ์ด์ ๋ฐ์ดํฐ๋ฅผ ํ์ฉํ ๊ฐํํ์ต์์์ ์ฑ๋ฅํฅ์ ๊ธฐ๋ฒ
- ๊ฒ์ ํ๊ฒฝ์์์ ๊ณ ํ์ง์ ํด๋จผ ๋ฐ๋ชฌ์คํธ๋ ์ด์ ๋ฐ์ดํฐ๋ฅผ ์ป๊ธฐ ์ํด์ ๋์ ๋น์ฉ์ด ํ์ํ๋ค.
- ์ผ๋ฐ์ ์ผ๋ก Atari ๊ฒ์์ ํ์ฉํ์ฌ ๊ฐํํ์ต์ ๋ํ ์ฐ๊ตฌ๊ฐ ์งํ๋๋, ์ด๋ค์ด ํ์ฉํ๋ ๊ณ ํ์ง์ ํด๋จผ ๋ฐ๋ชฌ์คํธ๋ ์ด์ ๋ฐ์ดํฐ๋ ๋ฒ์ ์ธ ๋ฌธ์ ๋ก ์ธํด ๊ณต์ ๊ฐ ์ด๋ ต๋ค.
- ๋ฐ๋ผ์ ์คํ์์ค๋ก ๊ณต์ ๋์ด์ง๋ ํด๋จผ ๋ฐ๋ชฌ์คํธ๋ ์ด์ ๋ฐ์ดํฐ๋ฅผ ํ์ฉํด์ผํ์ง๋ง, ์ด๋ฌํ ๋ฐ์ดํฐ๋ ํ์ง์ ๋ณด์ฅํ ์ ์์ ๋ฟ๋ง ์๋๋ผ, ํ์ตํ๊ณ ์ํ๋ ๊ฒ์์ ๋ํ ๋ฐ์ดํฐ๊ฐ ์์ ์๋ ์๋ค.
- ์ฆ, ํด๋จผ ๋ฐ๋ชฌ์คํธ๋ ์ด์ ๋ฐ์ดํฐ์ ๋ํ ํจ๊ณผ์ ์ธ ํ์ฉ์ด ๋ฐ๋์ ํ์ํ๋ค.
- ํด๋จผ ๋ฐ๋ชฌ์คํธ๋ ์ด์ ๋ฐ์ดํฐ๋ฅผ ๊ฐํํ์ต์์ ํจ๊ณผ์ ์ผ๋ก ํ์ฉํ๋ ๋ฐฉ์์ ์ ์ํ๋ค.
- ๊ธฐ์กด ํด๋จผ ๋ฐ๋ชฌ์คํธ๋ ์ด์
๋ฐ์ดํฐ๋ฅผ ํ์ฉํ๋ ๊ฐํํ์ต์ ์ ์๊ธฐ๋ฒ์ ์ ์ฉํ์ฌ ๊ธฐ์กด ๋ฐฉ์ ๋๋น ๋ ๊ฐ์ง ๋ชฉ์ ์ค ํ๋๋ฅผ ๋ฌ์ฑํ๋ค.
- ๊ธฐ์กด ๋๋น ์๋ ด ์ค์ฝ์ด์ ๋๋ฌํ๋ ์๊ฐ์ด ๋ ๋นจ๋ผ์ง๋ค.
- ๊ธฐ์กด ๋๋น ๋ ๋์ ์๋ ด ์ค์ฝ์ด์ ๋๋ฌํ ์ ์๋ค.
-
์ผ๋ฐ์ ์ธ ํด๋จผ ๋ฐ๋ชฌ์คํธ๋ ์ด์ ๋ฐ์ดํฐ๋ ์ํ๋ง ์, ๊ณ ์ ๋ frame skipping ์ ์ค์ ํ๊ณ state๋ฅผ ๊ตฌ์ฑํ๋ค. ์ด๋, frame ๊ณผ state๋ ๋ค์๊ณผ ๊ฐ์ด ์ ์๋๋ค.
- frame : ์บก์ณ๋ ๊ฒ์์ ํ ์ฅ๋ฉด
- state : ๋ค์์ frame์ ์ ์ถฉํ์ฌ ๊ตฌ์ฑํ ์ค์ ์ ๊ฒฝ๋ง์ ์ํ ์ ๋ ฅ๋ฐ์ดํฐ
-
๊ทธ๋ฌ๋, ์ด๋ฌํ ๋ฐฉ์์ ํน์ ํ์์ ๋ํ์ฌ ์ผ๋ง๋ ๊ธธ๊ฒ ํ์๋ฅผ ์ง์ํ๋์ง์ ๋ํ์ฌ ํ์ตํ๊ธฐ ์ด๋ ต๊ฒ ํ๋ค.
-
๋ง์ฝ frame skipping rate๋ฅผ human demonstration data๋ก ๋ถํฐ ํ์ตํ๊ฒ ๋๋ค๋ฉด ๋ค์๊ณผ ๊ฐ์ ์ด์ ์ด ์๊ธด๋ค.
- ์ฌ๋์ด ํน์ ํ์๋ฅผ ํน์ ์ํฉ์์ ์ผ๋ง๋ ๊ธธ๊ฒ ์ ์งํ๋์ง ํ์ธํ ์ ์๋ค.
- ๊ฐํํ์ต ์์ด์ ํธ๊ฐ ์ด๊ฒ์ ํ์ตํ๊ฒ ๋๋ค๋ฉด, ํด๋น ์ํฉ์์ ํ์๋ฅผ ๊ธธ๊ฒ ์ ์งํ๊ฒ ๋๋ค. ๊ฒฐ๊ณผ์ ์ผ๋ก ์ํผ์๋ ๋ณ ํ์๋ฅผ ๊ฒฐ์ ํ๋ ๋น๋๊ฐ ๊ฐ์ํ๋ค.
- ๊ฐํํ์ต ์์ด์ ํธ๊ฐ ์์ฑ๋ ๊ฒฝํ์ ํ์์ ์ง์์ฑ์ ๊ณ ๋ คํ ๊ฒฝํ์ด ๋๋ฏ๋ก ๊ธฐ์กด ๋๋น ๋ ๊ฐ์น์๋ ๊ฒฝํ์ด ๋๋ฉฐ, ํ์ต์ ํจ์จ์ฑ์ด ์ฆ๊ฐํ๋ค.
-
ํด๋จผ ๋ฐ๋ชฌ์คํธ๋ ์ด์ ๋ฐ์ดํฐ๋ฅผ ์ฝ์ด ํ์์ ์ง์์ฑ์ ํ์ธํ๊ณ , ํ์๊ฐ ๊ธธ๊ฒ ์ง์๋๋ ๊ฒฝ์ฐ์๋ ๊ฐํํ์ต ์์ด์ ํธ๋ ํ์๋ฅผ ๊ธธ๊ฒ ์ง์ํ๋๋ก ํ์๊ณต๊ฐ์ ๋ณ๊ฒฝ์ํจ๋ค.
-
์ด ์คํ์์ ํ์ฉํ Atari grand challenge dataset์ ๊ฒฝ์ฐ, ๋น๊ต์ ๋์ ์ ์์ ํด๋จผ ๋ฐ๋ชฌ์คํธ๋ ์ด์ ๋ฐ์ดํฐ๋ฅผ ๊ฐ์ง๊ณ ์์ง ์์
- ์ฌ๊ธฐ์ ๋น๊ต์ ์ด๋, ๊ตฌ๊ธ์ DQfD ์คํ์ ์ต๊ณ ์ค์ฝ์ด ๋ฐ์ดํฐ์ ๋น๊ต
-
์คํ์ ์ธ๊ฐ์ง ๊ทธ๋ฃน์ ์ ์ํ์ฌ ๋น๊ตํจ.
- Single : ์ผ๋ฐ์ ์ธ frame skipping์ ์ ์ฉํ ๊ฒฝ์ฐ
- FS-ER : 60Hz์ human demonstration data๋ฅผ ์ ๋ถ ํ์ฉํ ๊ฒฝ์ฐ.
- DFS-ER : ์ ์ ๊ธฐ๋ฒ
-
์ ์ ๊ธฐ๋ฒ์ DQfD ์ ์ ์ฉ๋จ.
-
์ด ์คํ์์๋ ๋น๊ต์ ํ์ต์ด ์ฌ์ด ๊ฒ์(Dense-reward environment) ์์ ๋น๊ตํจ.
-
์คํ ๊ฒฐ๊ณผ : ์ต๋ 60.3 % ์ ์ค์ฝ์ด ์์น์ด ํ์ธ๋จ.
- Atari ๊ฒ์ ์ค, Spare-reward ํ๊ฒฝ์ ๊ฒ์ ์ค ํ๋์ธ Montezuma's Revenge๋ฅผ ํ์ตํ์ฌ ํ์ง์ ๋ฐ๋ฅธ ํ์ต ์ฑ๋ฅ ์ฐจ์ด๋ฅผ ๋น๊ตํจ.
- ์คํ ๊ฒฐ๊ณผ
- ์ ํ์ง ํด๋จผ ๋ฐ๋ชฌ์คํธ๋ ์ด์ ๋ฐ์ดํฐ๋ฅผ ํ์ฉํ ๊ฒฝ์ฐ DFS-ER์ด ๋ ๋์ ์๋ ด ์ ์์ ๋๋ฌํ์์ผ๋, ๊ณ ํ์ง ํด๋จผ ๋ฐ๋ชฌ์คํธ๋ ์ด์ ๋ฐ์ดํฐ๋ฅผ ํ์ฉํ๋ ๊ฒฝ์ฐ์๋ ์คํ ์คํ ๋ด์ ๋ชจ๋ ๋ฐฉ์์ด ๋์ผํ ์๋ ด ์ ์์ ๋๋ฌํจ.
- DFS-ER์ ๋ค๋ฅธ ๊ธฐ๋ฒ ๋๋น ๋์ผํ ํ์์คํ ๋ด์ 179.8%~230% ๋ ๋ง์ ์ํผ์๋๋ฅผ ํ์ํจ.
- ์ ์ ๊ธฐ๋ฒ์ ๊ทธ ๋น์(2019) ์ต์ ๋ชจ๋ธ ์ค ํ๋์ธ EA-ACKTR์ ์ ์ฉํจ.
- ์คํ ๊ทธ๋ฃน
- EA-ACKTR : ๊ธฐ๋ณธ EA-ACKTR ๋ฐฉ์
- EA-ACKTR with DFS-ER : ๊ธฐ๋ณธ EA-ACKTR์ DFS-ER์ ์ ์ฉ
- ์คํ๊ฒฐ๊ณผ
- ์ต์ข
์๋ ด ์ ํ๋ ์์น
- EA-ACKTR (29,285), EA-ACKTR with DFS-ER (33,034)
- DQfD์ ์ ์ฉํ์๋์ ๋ฌ๋ฆฌ ์ํญ์ ์ํผ์๋ ์ ์ฆ๊ฐ(3.3%)
- ์ด๊ฒ์ ์ ์๊ธฐ๋ฒ ์ ์ฉ ์ ์์ด์ ํธ๊ฐ ์ฃฝ์ง ์๊ณ ์ค๋์ด์๋จ์ ์ํผ์๋ ์๊ฐ ํฌ๊ฒ ์ฆ๊ฐํ์ง ์์๊ฒ์ผ๋ก ๊ฐ์ .
- ์ต์ข
์๋ ด ์ ํ๋ ์์น
- ์คํ ์์ฒด๊ฐ 2019๋ ์ ์งํ๋์ด dependency๊ฐ ํ์คํ์ง ์์.
- Tensorflow 1.8
- OpenAI gym
- Low quality demonstration data : Atari Grand Challenge Dataset (version 1)
- High quality demonstration data : EA-ACKTR ๊นํ์์ ์ ๊ณต๋๋ Montezuma's revenge ํด๋จผ ๋ฐ๋ชฌ์คํธ๋ ์ด์ ๋ฐ์ดํฐ๋ฅผ ํ์ฉํจ.
- ํด๋ ๋ณ๋ก DQfD์ ๋ํ ์คํ, EA-ACKTR์ ์ ์๊ธฐ๋ฒ์ ์ ์ฉํ ๊ฒฝ์ฐ๋ก ๋๋์ด์ง.
- ํด๋จผ ๋ฐ๋ชฌ์คํธ๋ ์ด์ ๋ฐ์ดํฐ๋ ์ค์ฝ์ด์์ผ๋ก ๋ด๋ฆผ์ฐจ์ ์ ๋ ฌ ํ, ๋ฒํผ๊ฐ ๋ค ์ฑ์์ง๋๊น์ง Replay buffer์ ์ถ๊ฐํจ.
- 4.1 ์คํ
- learning rate์
$\lambda_1$ ,$\lambda_2$ ,$\lambda_3$ ,$\lambda_4$ ๊ฐ์ Config.py๋ฅผ ํตํด ์ค์ .
- learning rate์
| ํ์ดํผ ํ๋ผ๋ฏธํฐ | ๊ฐ |
|---|---|
| human replay buffer ํฌ๊ธฐ | 50,000 |
| actor replay buffer ํฌ๊ธฐ | 12,500 |
| ๋ฏธ๋๋ฐฐ์น ํฌ๊ธฐ | 32 |
| ์ ์ฒด pretraining step | 500,000 |
| ์ ์ฒด ๊ฐํํ์ต ์คํ | 1,000,000 |
| learning rate | 0.0001 |
|
|
4, 12 |
| 70 | |
|
|
1.0, 1.0, 1.0, 0.0001 |
| ์ต๋ ์ํผ์๋ ๊ธธ์ด | 50,000 |
cd dfs_er_dqfd
python Trainer.py [setting hyper pameters..]
- 4.2 ์คํ
| ํ์ดํผ ํ๋ผ๋ฏธํฐ(4.1์คํ ๋๋น ๋ณ๊ฒฝ ๋ถ๋ถ) | ๊ฐ |
|---|---|
| human replay buffer ํฌ๊ธฐ(DFS-ER) | 174,000 |
| actor replay buffer ํฌ๊ธฐ | 500,-00 |
| ๋ฏธ๋๋ฐฐ์น ์ค ํด๋จผ ๋ฐ์ดํฐ ์ | 8(25%) |
| ์ ์ฒด pretraining step | 750,000 |
| ์ ์ฒด ๊ฐํํ์ต ์คํ | 9,250,000 |
cd dfs_er_dqfd
python Trainer.py [setting hyper pameters..]
- 4.3 ์คํ
| ํ์ดํผ ํ๋ผ๋ฏธํฐ | ๊ฐ |
|---|---|
| human replay buffer ํฌ๊ธฐ | 172,548 (14 ์ํผ์๋) |
| ํ๊ฒฝ์ ์ | 32 |
| 1 ํ์ต ์คํ ๋น ํ๊ฒฝ ์คํ ์ ์ | 20 |
| ํด๋จผ ๋ฏธ๋๋ฐฐ์น์ ์ | 256 |
| ๊ฐํํ์ต ์คํ ์ | 90,000,000 |
| learning rate | 0.125 |
|
|
4, 12 |
| 110 |
cd dfs_er_eacktr/baselines/acktr
#train ํจ์์ r2_cond, r2_skip ์ต์
์ด
#๊ฐ๊ฐ fs_2condition, fs_2 ์ ๋งค์นญ๋๋ ํ์ดํผํ๋ผ๋ฏธํฐ์.
python run_atari_training.py
