인공지능/기초 이론

Q러닝

전공생 2024. 1. 21. 21:10
  • Q러닝의 Q는 앞에서 공부한 액션 가치 함수를 의미하고, Q러닝은 Q함수를 학습함으로써 최적의 정책을 찾는 알고리즘을 말한다.
  • 출처-위키피디아
    • Q러닝: 주어진 상태에서 주어진 행동을 수행하는 것이 가져다 줄 효용의 기댓값을 예측하는 함수인 Q함수(액션 가치 함수)를 학습함으로써 최적의 정책을 학습
    • Q함수를 학습하고 나면 각 상태에서 최고의 Q를 주는 행동을 수행함으로써 최적의 정책을 유도할 수 있다. ⇒ Q(s,a)함수를 학습하고 나면 특정 상태 s에서 Q값이 최대가 되는 a를 수행함으로써 최적의 정책을 유도할 수 있다.
    • 장점: 주어진 환경의 모델 없이도 수행하는 행동의 기댓값을 비교할 수 있다. $\because$ Q러닝은 임의의 유한 MDP에 대해서 현재 상테에서 최대의 보상을 획득하는 최적의 정책을 학습할 수 있다는 사실이 증명되어 있다. (그리디 알고리즘으로 해결할 수 있다는 것이 증명되었다?)
    • 알고리즘
      • Q러닝이 해결하고자 하는 문제는 하나의 에이전트, 상태의 유한 집합 S, 그리고 각 상태 s $\in$ S에서 취할 수 있는 행동의 집합$A_s \sube A$ 으로 구성된다. 어떤 상태 s에서 어떤 행동 $a \in A_s$를 취하면 에이전트는 이에 따른 보상을 얻는다. 에이전트의 목표는 보상의 총합(리턴)을 최대화하는 것이다. 이를 위해 에이전트는 각 상태에서 어떤 행동을 취하는 것이 최적인지 학습해야한다. 각 상태에서 최적의 행동이란, 그 상태에서 장기적으로 가장 큰 보상을 얻을 수 있도록 하는 행동을 의미한다.
      • 알고리즘은 각 상태-액션 쌍에 대하여 다음과 같은 Q함수를 가진다.
      • $$ Q:S\times A \rarr \mathbb{R} $$
      • 알고리즘이 시작되기 전에 Q함수는 고정된 임의의 값을 가진다. 각 시간 t에 에이전트는 어떠한 상태 $s_t$에서 행동 $a_t$를 취하고 새로운 상태 $s_{t+1}$로 전이한다. 이 때 보상 $r_t$가 얻어지며, Q함수가 갱신된다. 알고리즘의 핵심은 다음과 같이 이전의 값과 새 정보의 가중합을 이용하는 간단한 값 반복법이다.
      • 도달한 상태 $s_{t+1}$이 종결 상태일 경우 알고리즘의 에피소드 하나가 끝난다. 그러나, Q러닝은 작업이 에피소드로 구성되지 않더라도 학습이 가능하다. 할인율 $\gamma$가 1보다 작을 경우 무한히 반복하더라도 할인된 총계는 유한하기 때문.
        • 다음 행동은 현재 정책을 따르는 대신 다음 상태의 Q값을 최대화하기 위해 선택된다. → Q러닝은 off-policy에 해당함.
          • on-policy: target policy = learning policy
          • off-poilcy: target policy ≠ learning policy
    • Q러닝 알고리즘이 딥러닝 기술과 결합함으로써 강화학습이 엄청난 성능을 가질 수 있게 되었다. → DQN(Deep Q-network) 기술. 알파고에 사용된 기술.
  • Q러닝이 어떻게 다른 강화학습 개념과 연결되는지는 잘 모르겠음.

'인공지능 > 기초 이론' 카테고리의 다른 글

TD, SARSA, 몬테카를로  (0) 2024.01.22
강화학습 벨만 방정식  (0) 2024.01.21