ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 그냥 DQN 한글 번역 (2)
    Machine Learning/기타 참고 및 저장용 2021. 8. 10. 17:31

    2. Background

    • agent가 actions, observations and rewards의 연속에서 환경 $\epsilon$(이 경우엔 Atari emulator) 와 상호작용하는 tasks를 고려했다.
    • 각 time step에서 agent가 허용되는 행동들 $A=\{1,...K\}$ 중에서 행동 $a_t$을 선택한다.
    • 그 행동은 emulator에 전달되고 emulator 내부 상태와 게임 점수를 바꾼다.
    • 일반적으로 $\epsilon$는 확률적이다.
    • emulator의 내부 상태는 agent에게 관측되지 않는다. 대신 agent는 emulator로부터 이미지 $x_t \in \mathbb{R}^d$를 관측한다. 이것은 현재 화면을 표현하는 raw pixel 값의 vector이다.
    • 추가적으로 agent는 게임 점수의 변화량을 표현하는 보상 $r_t$을 받는다.
    • 일반적으로 게임 점수는 과거의(prior) 행동들(actions)과 관측들(observations)의 연속적인 사건(sequence)에 의존한다. 수많은 time-steps가 흐른 후에 행동에 대한 피드백을 받는다. 

     

     

    • agent가 단지 현재 화면의 이미지만 관측하므로, task는 부분적으로 관측된다. 그리고 많은 emulator 상태들은 인지적으로 여러 방식으로 참조된다. 다른 말로 하자면, 단지 현재 화면 $x_t$만으로 현재 상황을 완전히 이해하는 것은 불가능하다.
    • 그러므로 행동들과 관측들($s_t=x_1, a_1, x_2, ..., a_{t-1}, x_t$)의 연속적인 사건들을 고려했고 이러한 연속적인 사건들에 의존하는 게임 전략을 학습했다.
    • emulator에서 모든 연속적인 사건들은 유한한 time steps로 종료된다고 가정한다.
    • 이 형식(formalism)은 크지만 유한하며 각 연속적인 사건들은 별개의 상태인 MDP를 낳는다.
    • 결과적으로, 모든 것이 갖춰진 연속적인 $s_t$를 시간 t에서의 대표 상태로 사용함으로써 MDPs와 관련된(for MDPs) 표준 강화학습 방법을 적용할 수 있다.

     

     

    • agent의 목적은 미래의 보상을 최대화시키는 방식대로 행동을 선택함으로써 emulator와 상호작용하는 것이다.
    • 매 time-step에서 $\gamma$인자에 의해 미래의 보상이 감소하는 표준 추정을 사용했고,
    • 시간 t에서 미래의 (감소하는)return을 $R_t=\sum_{t'=t}^{T}\gamma^{t'-t}r_{t'}$로 정의했다. T는 게임이 종료하는 time-step.
    • 최적의 행동-가치 함수 $Q^*(s,a)$는 몇개의 sequences를 보고서 행동들 a을 취한 후, 어떠한 전략을 따름으로써 미래에 획득 가능한 최대 예상 return으로 정의했다.
    • $Q^*(s,a) = max_{\pi}\mathbb{E}[R_t|s_t=s, a_t=a, \pi ]$
    • $\pi$는 sequences을 행동들이나 행동 분포도에 연결시키는 정책.

     

     

    • 최적 행동-가치 함수는 벨만 방정식으로 알려진 중요한 특성(identity)을 따른다.
    • 이것은 다음의 직관을 기반으로 한다. 다음 번 time-step의 squence $s'$의 모든 가능한 행동들 $a'$에 대한 최적 가치 $Q^*(s',a')$를 알 수 있다면, 최적의 전략은 $r+ \gamma Q^*(s',a')$의 예측 값을 최대로 하는 행동 $a'$를 선택하는 것이다.
    • 최적 Q값은 현재 상태 s에서 행동 a라는 사건이 발생하고 이후 다음 상태가 될 수 있는 모든 상태들의 최대 Q 값들의 기댓값.

     

     

     

    • 많은 강화학습 알고리즘의 기본 아이디어는 반복적인 업데이트로 벨만 방정식을 사용함으로써 행동 가치함수를 추정하는 것이다.
    • $Q_{i+1}(s,a) = \mathbb{E}[r + \gamma max_{a'} Q_i(s', a')|s,a]$
    • 가치 이터레이션 같은 알고리즘은 최적 행동 가치 함수에 수렴한다. 반복 횟수 $i \rightarrow \infty $됨에 따라  $Q_i \rightarrow Q^*$
    • 실제로, 이 기본 접근 방식은 전체적으로 비현실적이다. 어떠한 일반화도 없이 행동 가치 함수가 개별적으로 추정되기 때문에.(?)  //// 일반화가 되지 않아서. 개별적인 계산과 fully observable해야함. => 실생활에 적용 불가. 비현실적...?
    • 대신에 neural network처럼 행동 가치 함수를 추정하는 function approximator를 사용하는 것이 공통이다.(?)
    • weight $\theta$로 된 neural network function approximator를 Q-network라 하겠다.
    • Q-network는 각 반복 $i$에서 변화하는 loss function $L_i(\theta_i)$의 sequence를 최소화함으로써 훈련될 수 있다,

     

     

    • 반복 $i$가 $y_i = \mathbb{E}_{s' \sim \epsilon} [ r + \gamma max_{a'} Q(s', a'; \theta_{i-1})|s,a]$를 목표로할 때 그리고 $\rho(s,a)$를 sequence s와 우리가 행동 분포라고 부르는 행동 a의 확률 분포라고 할 때.
    • loss function $L_i(\theta_i)$가 최적화될 때, 이전 반복의 $\theta_{i-1}$의 파라미터들은 고정되게 된다.
    • 목표는 network weights에 의존한다. 이것은 지도 학습에 사용되는 목표와 대비된다. 이것은 학습 시작전에 고정된다. //// ???
    • gradient를 따라 우리가 도달한 weights에 관하여 loss function를 구분짓..(Differentiating the loss function with respect to the weights we arrive at the following gradient),(?)

     

     

     

    • 위의 변화도(?)(gradient)에서 완전한 예상치를 계산한다기보다, 확률적 경사 하강로 loss function을 최적화하는 컴퓨터적으로 편의(?)(expedient)이기도 하다(Rather than computing the full expectations in the above gradient, it is often computationally expedient to optimise the loss function by stochastic gradient descent).(?)
    • weights가 모든 time-step 이후 업데이트 된다면, 그리고 emulator $\epsilon$과 행동 분포로부터 하나씩 얻은 샘플들이 예상치로 대체된다면(?)( and the expectations are replaced by single samples from the behaviour distribution ρ and the emulator E respectively), 우리는 친숙한 Q-learning 알고리즘에 도달한다.

     

     

    • 이 알고리즘은 model-free이다. 이것은 명확한 $\epsilon$의 추정없이 emulator $\epsilon$으로부터의 샘플들을 사용하여강화학습 task를 직접적으로 해결한다
    • 이것은 또한 off-policy이다. $a=max_a(Q(s,a;\theta)$의 탐욕 전략(greedy strategy)에 대해 학습한다.
    • 상태 공간의 충분한 탐험을 보장하는 행동 분포를 따르는 동안, $a=max_a(Q(s,a;\theta)$의 탐욕 전략(greedy strategy)에 대해 학습한다.
    • 실제로, 행동 분포는 ($1-\epsilon$ 확률로 greedy strategy를 따르는) $\epsilon-greedy\ strategy$에 의해 선택되거나 확률 $\epsilon$로 랜덤한 행동을 선택한다.

    댓글

Designed by Tistory.