๐ฌ ML & Data/๐ฎ Reinforcement Learning
[๊ฐํํ์ต] Dealing with Sparse Reward Environments - ํฌ๋ฐํ ๋ณด์ ํ๊ฒฝ์์ ํ์ตํ๊ธฐ
โป ์๋ ๋งํฌ์ ๋ด์ฉ์ ๊ณต๋ถํ๋ฉฐ ํ๊ตญ์ด๋ก ์ ๋ฆฌํ ๋ด์ฉ์ ๋๋ค. Reinforcement Learning: Dealing with Sparse Reward Environments Reinforcement Learning (RL) is a method of machine learning in which an agent learns a strategy through interactions with its environment… medium.com 1. Sparse Reward Sparse Reward(ํฌ๋ฐํ ๋ณด์) : Agent๊ฐ ๋ชฉํ ์ํฉ์ ๊ฐ๊น์์ก์ ๋๋ง ๊ธ์ ๋ณด์์ ๋ฐ๋ ๊ฒฝ์ฐ ํ์ฌ ์คํ ํ๊ฒฝ ์ธํ ๊ณผ ๊ฐ์ Curiosity-Driven method agent๊ฐ ๊ด์ฌ์ฌ ๋ฐ์ ํ๊ฒฝ์๋ ๋๊ธฐ๋ฅผ ๋ฐ๋๋ก Curric..
[๊ฐํํ์ต] DDPG(Deep Deterministic Policy Gradient)
DQN์ ์ฐจ์์ ์ ์ฃผ ๋ฌธ์ (๊ณ ์ฐจ์ action์ ๋ค๋ฃจ๋ ๊ฒฝ์ฐ ์ฐ์ฐ ์๋๊ฐ ๋๋ ค์ง๊ณ memory space๋ฅผ ๋ง์ด ์ํจ)๋ฅผ off-policy actor critic ๋ฐฉ์์ผ๋ก ํ์ด๋ธ๋ค. ๊ธฐ์กด DQN ๋ฐฉ์์ insight๋ค์ batch normalization replay buffer target Q network Actor-critic ํ๋ผ๋ฏธํฐํ ๋ actor function์ ๊ฐ์ง actor function : state์์ ํน์ action์ผ๋ก mappingํ์ฌ ํ์ฌ policy๋ฅผ ์ง์ policy gradient ๋ฐฉ์์ผ๋ก ํ์ต ์ฌ๊ธฐ์์ J๊ฐ Objective Function(๋ชฉํํจ์) actor function์ด ๋ชฉํ ํจ์๋ฅผ gradient asent๋ก ์ต๋ํ→ ์ด ๋์ policy parameter..
[๊ฐํํ์ต] Dueling Double Deep Q Learning(DDDQN / Dueling DQN / D3QN)
Dueling Double DQN https://arxiv.org/pdf/1509.06461.pdf https://arxiv.org/pdf/1511.06581.pdf Double DQN DQN์์ reward๋ฅผ ๊ณผ๋ ํ๊ฐํ๋ ๋ฌธ์ ๊ฐ ์์. Q Value๊ฐ agent๊ฐ ์ค์ ๋ณด๋ค ๋์ ๋ฆฌํด์ ๋ฐ์ ๊ฒ์ด๋ผ๊ณ ์๊ฐํ๋ ๊ฒฝํฅ ⇒ Q learning update ๋ฐฉ์ ์์ ๋ค์ ์ํ(state)์ ๋ํ Q value ์ต๋๊ฐ์ด ์กด์ฌํ๊ธฐ ๋๋ฌธ Q ๊ฐ์ ๋ํ max ์ฐ์ฐ์ ํธํฅ์ ์ต๋ํํ๋ค. ํ๊ฒฝ์ ์ต๋ true value๊ฐ 0์ธ๋ฐ agent๊ฐ ์ถ์ ํ๋ ์ต๋ true value๊ฐ ์์์ธ ๊ฒฝ์ฐ์ ์ฑ๋ฅ ์ ํ ํด๊ฒฐ์ ์ํด ๋ ๊ฐ์ network ์ฌ์ฉ. Q Next : action selection → ๋ค์ ์ก์ ์ผ๋ก ๊ฐ์ฅ ์ข์ ..
[๊ฐํํ์ต] gym์ผ๋ก ๊ฐํํ์ต custom ํ๊ฒฝ ์์ฑ๋ถํฐ Dueling DDQN ํ์ต๊น์ง
์ธํฐ๋ท์ ๋ค ๋ค์ ธ๋ดค๋๋ฐ ๊ฐํํ์ต์ gym์์ ์ ๊ณตํ๋ ๊ฒ์ agent ์ฌ์ฉํด์ ํ๋ ์์ ๋ ์ก์ฒ๋ง ๊ฐ๊ณ ์ปค์คํ ํด์ ํ์ต์ ํ๋ ์์ ๋ ๋จ ํ ๊ฐ ์์๋ค. ์ด์ ๋ง ๊ณต๋ถ๋ฅผ ์์ํ๋ ์ฌ๋๋ค์๊ฒ ๋์์ด ๋์์ผ๋ฉด ํ๋ ๋ง์์ผ๋ก ๊ฐ๋จํ๊ฒ ์จ๋ณด๊ณ ์ ํ๋ค. 1. Gym์ Env ๊ตฌ์กฐ ์ดํด๋ณด๊ธฐ ๊ผญ ๊ทธ๋์ผํ๋ ๊ฒ์ ์๋์ง๋ง(๋ฐ๋ฐ๋ฅ๋ถํฐ ๊ตฌํํ๋ ๋ฐฉ๋ฒ๋ ์๊ธด ํ๋ค) ์ด์จ๋ gym ๋ผ์ด๋ธ๋ฌ๋ฆฌ์ environment ๊ตฌ์กฐ๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ํด์ ๊ตฌํํด๋ณผ ๊ฒ์ด๋ค. !pip install gym gym ๋ผ์ด๋ธ๋ฌ๋ฆฌ์ env ๊ตฌ์กฐ๋ ๋์ถฉ ์๋์ ๊ฐ๋ค. site-packages/gym/core.py ์์ ์ง์ ๋ณผ ์ ์๋ค. class Env(Generic[ObsType, ActType]):m.Generator] = None """ The ma..
[๊ฐํํ์ต] DQN(Deep Q-Network)
[Model Review] Markov Decision Process & Q-Learning 1. ๋ง๋ฅด์ฝํ ๊ฒฐ์ ํ๋ก์ธ์ค(MDP) ๋ฐ๋ฅ๋ถํฐ ๋ฐฐ์ฐ๋ ๊ฐํํ์ต - ๋ง๋ฅด์ฝํ ๊ฒฐ์ ํ๋ก์ธ์ค(Markov Decision Process) ๋ง๋ฅด์ฝํ ํ๋ก์ธ์ค(Markov Process) ์ํ S์ ์ ์ดํ๋ฅ ํ๋ ฌ P๋ก ์ ์๋จ ํ๋์ ์ํ์์ ๋ค๋ฅธ dnai-deny.tistory.com Deep Reinforcement Learning ๊ธฐ์กด Q Learning์์๋ State์ Action์ ํด๋นํ๋ Q-Value๋ฅผ ํ ์ด๋ธ ํ์์ผ๋ก ์ ์ฅ state space์ action space๊ฐ ์ปค์ง๋ฉด Q-Value๋ฅผ ์ ์ฅํ๊ธฐ ์ํด memory์ exploration time์ด ์ฆ๊ฐํ๋ ๋ฌธ์ ⇒ ๋ฅ๋ฌ๋์ผ๋ก Q-Table์ ์์ฑํ๋ Q..
[๊ฐํํ์ต] Markov Decision Process & Q-Learning
1. ๋ง๋ฅด์ฝํ ๊ฒฐ์ ํ๋ก์ธ์ค(MDP) ๋ฐ๋ฅ๋ถํฐ ๋ฐฐ์ฐ๋ ๊ฐํํ์ต - ๋ง๋ฅด์ฝํ ๊ฒฐ์ ํ๋ก์ธ์ค(Markov Decision Process) ๋ง๋ฅด์ฝํ ํ๋ก์ธ์ค(Markov Process) ์ํ S์ ์ ์ดํ๋ฅ ํ๋ ฌ P๋ก ์ ์๋จ ํ๋์ ์ํ์์ ๋ค๋ฅธ ์ํ๋ก ์ ์ด๊ฐ ์ผ์ด๋จ ์ํ ์ ์ด์ ๊ฐ๊ฐ ํ๋ฅ ์กด์ฌ S4์ ๊ฒฝ์ฐ ์ข ๋ฃ์ํ ๋ง๋ฅด์ฝํ ์ฑ์ง(Markov property) $$ P[S_{t+1} | S_t] = P[S_{t+1} |S_1,S_2, ... S_t] $$ ์ํ๊ฐ ๋๊ธฐ๊น์ง์ ๊ณผ์ ์ ํ๋ฅ ๊ณ์ฐ์ ์ํฅ์ ์ฃผ์ง ์์. ์ด๋ ์์ ์ ์ํ๋ก ๋ค์ ์ํ๋ฅผ ๊ฒฐ์ ํ ์ ์์ ๋ ๋ง๋ฅด์ฝํํ ์ํ๋ผ๊ณ ํจ.๋ฐ๋ก) ์ด์ ํ๋ ์ฌ์ง(์ด๋ ์์ ์ ์ฌ์ง์ผ๋ก๋ ํ์ง/์ ์ง/์๋ ๋ฑ์ ํ์ ๋ถ๊ฐ → ๋ค์ ์ํ ๊ฒฐ์ ๋ถ๊ฐ๋ฅ) ex) ์ฒด์ค ๊ฒ์(์ด๋ ..