본문 바로가기

개념공부/강화학습(Reinforcement Learning)10

강화학습 9 <Offline Reinforcement Learning> 전통적인 강화학습은 특정 환경에서 Agent가 Action을 선택하고 Reward를 얻는 에피소드를 반복해가며 최적의 정책을 학습하는 것이다. 전통 강화학습 기법은 학습 초기 네트워크의 학습이 효과적으로 이루어지지 못하는 문제가 있다. 이로 인해 에피소드가 수천~수만번 수행되면서 학습 시간이 많이 소요된다. 특히, 데이터를 쌓아두고 네트워크를 학습하는 일반 딥러닝과 비교했을 때 소요되는 시간 차이가 굉장히 크다. 이를 개선하기 위해 Offline Reinforcement Learning 방식이 제안되고 있다. 이는 데이터를 구축한 후 네트워크를 초기 학습한다. 그리고 어느정도 학습 네트워크를 시뮬레이션 / 실제 환경에서 강화학습을 진행한다. 즉, 데이터로 네트워크를 어느정도 학습한 후, fine-tuni.. 2022. 12. 16.
강화학습 8 <Continuous Action Space에 적용가능한 DDPG> 최근에 공부한 강화학습 방법은 DQN와 Actor-Critic이 었다. 이 두 방법은 각각 Q함수와 정책 경사를 선택한 방법이다. 그리고 이 두 방법 이후 제시된 방법은 DDPG이다. DDPG는 Deep Deterministic Policy Gradient의 약자이다. 이 방법은 두개의 특징을 가지고 있다. 1. Continuous Action Space (real-value) 에 적용 가능하다. 2. Deterministic Policy를 사용한다. 지금까지 적용한 강화학습 예제는 그리드월드와 같이 Action이 Discrete한 경우였다. 그런데 실제로 Action은 실수단위의 Continuous할 수 있다. 이 경우 Q함수나 Value Function을 학습시킬 수가 없다. Dimension이 거의.. 2022. 1. 10.
강화학습 7 <REINFORCE 방식을 개선한 PG 방법인 Actor - Critic> 지지난 공부부터 인공신경망을 적용한 강화학습 기반 MDP 풀이법을 공부하고 있다. 강화학습에 인공신경망을 사용하는 이유는 State 및 dimension이 굉장히 많은 MDP 문제를 해결하기 위해서다. 현실의 문제들이 대부분 state가 굉장히 많기 때문에 (state가 float형으로 표현돼야 하거나, 이미지 상태이거나) 인공신경망을 적용하는 방법을 잘 알아두어야 한다. 인공신경망은 Q함수나 정책을 근사하는 함수로 사용된다. 인공신경망은 에피소드에서 Agent가 환경과 상호작용하며 얻은 데이터로부터 가중치를 학습한다. 이떄 Q함수를 근사하는 방식으론 가장 기본인 Deep SARSA 그리고 Experience Replay 및 Target Network로 성능을 개선한 방식인 DQN이 있었다. 정책을 근사.. 2021. 12. 31.
강화학습6 <Q함수를 인공신경망으로 근사한 DQN> 특정 문제를 완벽히 풀어내는 해답이 생기면 연구는 중단된다. 하지만 문제를 제한적으로 풀어내는 해답이 지속 제시된다면, 개선된 방법이 지속적으로 연구된다. MDP 문제를 푸는 강화학습도 문제의 성격에 따라, 기존 답안 보다 더 좋은 방법들이 지속적으로 연구되어 왔다. MDP 문제 중 환경을 알 때 적용 가능한 Dynamic Programming, 환경을 모를 때 적용 가능한 Monte Carlo, Temporal Difference, SARSA, Q-Learning 등.. 그리고 현실의 많은 문제들이 state를 Table 형태로 표현이 불가능하기 때문에 (너무 많아서), 인공 신경망을 접목하는 방법들이 연구되어 왔다. 이전 글에서는 정책을 인공신경망으로 근사하는 REINFORCE 알고리즘을 정리했다. .. 2021. 12. 29.
강화학습 5 <Policy-based RL의 시작 : REINFORCE> MDP를 푸는 강화학습 방법은 'Value based RL'과 'Policy based RL'로 분류 가능하다. 'Value based RL'에는 바로 이전에 학습한 DeepSARSA, Table 저장 방식을 사용하고 환경을 모를 때 적용 가능한 SARSA, Q-Learning을 포함한다. 그 이유는 Value function(Q function 포함)을 기반으로 행동을 선택하고, 이를 업데이트 하면서 학습하기 때문이다. 금일 정리하는 내용은 'Policy-based RL'이라 지칭한다. 그 이유는 Policy를 학습하고 이를 기반으로 행동하기 때문이다. Policy라는 단어 의미와 이 문장이 잘 연결되지 않는데, 기존의 Value function 학습- 행동 결정 으로 이어지는 과정 전체를 인공신경망으.. 2021. 12. 26.
강화학습 4 <인공신경망을 활용한 강화학습 - Deep SARSA> 지금까지 MDP로 정의된 문제를 푸는 방법 중 고전적 강화학습으로 분류되는 Dynamic Programming - Policy Iteration, Monte Carlo, Temporal Difference, SARSA, Q-learning 등을 배웠다. Dynamic Programming (이하 DP)은 환경의 state의 정보(Reward, Transition probability)를 알 때 Policy Iteration (이하 PI)을 사용해 state 별 상태가치함수, 행동가치 함수를 업데이트하고 정책을 업데이트하여 MDP를 푸는 방법이다. 이후 Monte Carlo (이하 MC), Temporal Difference (이하 TD), SARSA, Q-Learning 등은 환경의 state 정보를 모.. 2021. 12. 24.