본문 바로가기
Reinforcement Learning

[RL] Fundamentals of Reinforcement Learning

by 메릴린 2022. 12. 9.
728x90

2021년도 2학기 CSE6423-01 컴퓨터네트워크 - 소정민 교수님 강의를 기반으로 정리한 내용

Definition from Wikipedia

Reinforcement Learning is an area of machine learning concerned with how intelligent agents ought to take actions in an environment in order to maximize the notion of cumulative reward.

강화학습도 머신러닝의 하나로 "학습"이 가능한 agent가 주어진 환경에서 action을 통해 누적되는 reward를 최대화하는 것을 목표로 한다.

강화학습을 설명하는 주요 용어들을 설명하면 아래와 같다.

terms used in RL

  • Agent
  • intelligent decisions를 하도록 학습 가능한 소프트웨어 프로그램들을 말한다. 학습의 대상.
  • Environment
  • Agent가 학습해야 하는 "world"로 자동 주행을 학습하는 자동차가 있다면 자동차가 Agent이고 자동차가 달리는 학습을 통해 성공적으로 주행해야 하는 공간이 Environment가 된다.
  • State
  • 후에 나오겠지만 "a snapshot of moment in the environment (including the agent)"로 agent가 현재 environment에서 어떤 상태에 놓였는지를 나타낸다.
  • Action
  • environment의 특정 state에 있는 agent가 state를 바꾸기 위해 선택하는 움직임이라고 보면 된다.
  • episode
  • initial state에서 시작해 terminal state까지의 일련의 과정

An Exmaple Problem

Grid World Problem을 통해 RL을 설명해보자.

다음과 같이 3x3 크기의 Grid World가 있고 A부터 I까지의 index를 가진다. A에서부터 시작해 I까지 가는 것이 Agent(사람)의 목표이다.

여기서 A, B, C에 해당하는 하나의 grid가 environment의 state라고 정의하고 각 state에서 agent가 취할 수 있는 action은 두 가지이다.

  1. right
  2. down

이때 agent는 B, C, G, H에 해당하는 shaded location을 지날 경우에는 penalty를 받는다.

iteration(episode) 1

episode는 initial state에서 시작해 terminal state까지의 일련의 과정을 의미한다. 여기서 episode는 agent가 initial state인 A에서 시작해 terminal state인 I까지 도달할 때까지의 모든 state 변화이다.

episode가 끝날 때마다 iteration이 하나 끝난다고 하면, 첫 iteration에서는 agent는 학습한 내용이 없기 때문에 random action을 취하게 된다.

reward

agent가 right 또는 down에 해당하는 action을 취하면 state가 변하는데 이때 어떤 state로 변화했느냐에 따라 reward가 달라지게 된다.

action을 통해 바뀐 state가 shaded location일 경우 penalty를 받기 때문에 negative reward(-1)를 얻고 그 외의 경우 positive reward(+1)를 얻도록 environment를 설계했다고 하자.

첫 번째 iteration에서 agent가 random action을 통해 A->B->E->F->I의 episode를 수행했다고 하면 B가 shaded location이기 때문에 agent는 A에서 B로 이동할 때 negative reward를 받게 된다.

agent는 이 reward를 바탕으로 action에 대한 학습을 진행하고 다음 iteration에서는 학습된 내용을 바탕으로 A에서 right이 아니라 down을 action으로 취할 것이다.

learning from experience

위에서 A에서 취한 action에 따른 rewards를 표로 정리하면 아래와 같다.

statesactionsrewards

A right -1
A down +1

episode가 진행될수록 action에 대한 reward의 기록이 쌓이기 때문에 agent는 이를 바탕으로 학습이 진행될수록 episode를 진행할 때 higher reward를 얻는 방향으로 action을 선택하게 된다.

Basic Reinforcement Learning Algorithm

  1. The agent interacts with the envrionment by performing an action.
  2. By performing an action, the agent moves from one state to another.
  3. The agent receives a reward based on the action it performed.
  4. Based on reward, the agent understands whether the action is good or bad.
  5. If the action was good, that is, if the agent reveived a postive reward, the agent will prefer performing that action, else the agent will try performing other actions in search of a positive reward.

RL vs. Other Learning Paradigms

RL은 다음 4 가지 요소를 포함하고 있다.

  1. Optimization
  2. Delayed consequences
  3. decisions in the past가 outputs in the future에 영향을 미친다.
  4. Exploration
  5. action을 취한 경우에만 (경험한 decisions) 그 결과를 알 수 있다.
    policy is mapping from past experience to action
  6. Generalization

AI

  1. Optimization
  2. Delayed consequences
  3. Generalization

AI의 경우 decisions가 world에 영향을 어떻게 미치는지에 대한 model이 주어져 있다.

Supervised Machine Learning

  1. Optimization
  2. Generalization

Supervised Machine Learning의 경우 이미 주어진 labeled dataset을 바탕으로 학습을 진행한다.

Unsupervised Machine Learning

  1. Optimization
  2. Generalization

Unsupervised Machine Learning의 경우 주어진 labeled dataset, 정답이 없기 때문에 학습을 바탕으로 가장 정답일 것 "같은" 결과를 낸다.

Reinforcement Learning

  1. Optimization
  2. Delayed consequences
  3. Exploration
  4. Generalization

agent가 action을 통해 environment와 interaction을 한다.
agent는 previous episode에서 얻은 feedback(reward)를 통해 더 나은 action을 취할 수 있게 학습한다.

728x90
반응형

댓글