본문 바로가기

강화학습5

강화학습 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.
강화학습 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.
강화학습 - 2 <MDP를 푸는 Dynamic Programming 기법> 강화학습 문제는 MDP로 정의되는 문제이다. 따라서 강화학습 문제를 풀고 싶으면 MDP 문제를 푸는 기법을 사용하면 된다. MDP 문제는 Agent가 환경을 아는 상황(State Transition Matrix와 Discounted rate를 아는 상황)이냐 그렇지 않느냐에 따라 적용할 수 있는 기법이 다르다. 가장 먼저 환경을 아는 상황에서는 Dynamic Programming 기법 (이하 DP)를 적용할 수 있다. DP를 적용해 문제를 풀기 위해선 문제가 2가지 특성을 가지고 있어야 한다. 첫번째는 Optimal structure이다. 큰 문제의 하위 문제인 작은 문제에서의 최적 값이, 큰 문제에서도 최적값인 것이다. 두번째는 Overlapping problems이다. 큰 문제를 풀기 위해서 작은 문.. 2021. 11. 28.
강화학습 - 1 <Markov 개념> 강화학습은 인공지능의 한 분야로 분류된다. 강화학습이라는 단어를 뜯어보면 강화 + 학습으로 나누어진다. 즉, 강화학습은 학습을 하는 주체가 있고, 학습을 하는 이유는 무엇인가를 강화하기 위함이라고 생각해볼 수 있다. 강화학습은 어떤 환경(Environment)에서 어떤 주체가(Agent) 최대의 보상(Reward)를 얻을 수 있도록 정책(Policy)을 학습하는 기법을 일컫는다. 여기서 환경과 주체는 현실에서 주어지는 문제이고, 보상은 개발자가 정의하는 것 그리고 정책은 주체가 보상을 받도록 하는 행동을 결정하는 기준을 말한다. 강화학습도 여타 다른 알고리즘과 같이 현실의 문제를 해결하기 위한 도구이다. 강화학습을 현실 문제를 풀 기위한 도구로 사용하는데 있어, 가장 기본 배경 개념은 Markov Dec.. 2021. 11. 27.