728x90
반응형

강화학습 43

강화학습 - (19) SARSA

강화학습 SARSA SARSA란 일반화된 정책반복 (Generalized Policy Iteration)과 시간차 학습(TD)가 접목된 알고리즘이다. 일반화된 정책반복 일반화된 정책반복이란, 정책향상을 하기 위해서 굳이 정책 평가를 끝까지 해보지 않고 적정양의 정책 평가만으로도 정책 향상을 할 수 있다는 개념이었다. 이 과정은 시간차 학습과 만나 더 강력해질 수 있다. 단 한 스텝의 정책 평가 만으로도 정책 향상을 이룰 수 있다. 상태가치에서 행동가치로 각 스템의 정책 평가에서 정책 향상을 이루기 위해서는, 상태가치 $V(s)$가 아닌 행동가치 $Q(s,a)$를 사용해야 한다. 이는 위 그림에서 처럼 각 상태 $s$의 가치가 아닌, 각 상태와 행동의 페어 $(s,a)$를 평가해야 함을 의미한다. SARS..

강화학습 - (18) 시간차 학습

강화학습 시간차 (Temporal Difference) 강화학습의 가장 특수한점, 강화학습만의 유일한 강점을 꼽으라고 한다면, 그것은 시간차학습(Temporal Difference Learning)일 것이다. 강화학습은 어떠한 상태의 가치를 판단함으로서 예측한다. $v_{\pi}(s) \dot{=} \mathbb{E}_{\pi}[G_t|S_t=s]$ 지금까지의 학습 기법은 에피소드가 끝나야만 학습이 가능했다. 하지만 배운 기법을 조금 수정하면 에피소드 중간에도 학습이 가능하게 해준다. 몬테카를로 학습기법에 점진적인 갱신을 반영하면 다음과 같다: $V(S_t) \leftarrow V(S_t) + \alpha [G_t - V(S_t)]$ 결과값 $G_t$는 에피소드가 끝나야만 얻어지는 반환갑이다. 따라서 이..

강화학습 - (17) 중요도 샘플링

강화학습 중요도 샘플링 (Importance Sampling) 중요도 샘플링이랑 다른 분포에서 샘플링된 값을 가지고, 구하고자 하는 분포(타깃 분포)에서의 기댓값을 유추하는 방법이다. 랜덤 변수 $x$가 분포 $b$에서 샘플링 되었다고 가정해보자: Sample: $x ~ b$ Estimate: $\mathbb{E}_{\pi}[X]$ 여기서 우리는 $X$의 기댓값을 구하고 싶지만, 분포 $b$에서의 샘플 평균을 그대로 사용할 수는 없다. 왜냐하면 이 방식으로 구하게 되면 타깃 분포에서의 기댓값이 아닌 분포 $b$에서의 기댓값이 구해지기 때문이다. 먼저 기댓값의 정의를 다시한번 살펴보자: (0)$\mathbb{E}_{\pi}[X] \dot{=} \sum_{x \in X} x\pi(x)$ (1)$= x \pi..

강화학습 - (16) 오프 폴리시

강화학습 탐색과 활용 에이전트는 종종 탐색을 하기 위해서 최적이 아닌 행동들을 취해야 한다. 하지만 이는 꼭 필요하지 않은 작업일 수도 있다. 입실론 소프트 정책은 모든 행동에 대해 특정 확률을 부여함으로서, 행동하는 것과 학습하는것 모두 차선의(sub-optimal) 선택을 취했다. 오프 폴리시 (On-Policy) 지금까지 다루었던 모든 문제는 On-Policy 학습 방법에 해당했다. On-Policy란 정책을 평가하고 향상하여 행동을 선택하는 학습 방법이다. 따라서 행동하는 정책과 학습하는 정책이 같다 온 폴리시 (Off-Policy) 반대로 Off-Policy란 행동하는 정책과 학습하는 정책이 다른 학습 방법이다. 이를 다른말로 표현하면, 행동을 선택하는 정책과 학습하는 정책이 각각 다르다는 의미..

강화학습 - (15) 입실론 그리디

강화학습 탐색적 시작의 문제점 지난 포스팅에서 이야기한 탐색적 시작은 현실의 문제에서 많은 문제점들이 있다. 만약 상태 공간이 아주 큰 문제라면, 처음만 랜덤이 이 기법은 모든 상태에 대한 충분한 탐색이 불가능해진다. 첫 상태에 대한 샘플링이 비효율적이고 쉽지 않기 떄문에, 이는 비효율적인 기법이 된다. 입실론 소프트 정책 (Epsilon Soft Policy) 입실론 소프트란 모든 행동에 대해서 최소한 입실론 나누기 행동의 숫자의 확률을 부여하는 것을 말한다. 다른말로 해 각각의 행동은 적어도 $\frac{\epsilon}{|A|}$의 확률을 가지게 되는 것이다. 입실론 소프트 정책을 활용하면 우리는 더이상 탐색적 시작점을 선택하지 않아도 된다. 입실론 소프트 정책을 통해서 여러 상태들에 대해서 연속적..

강화학습 - (14) 몬테카를로

강화학습 몬테카를로 (Monte-Carlo) 몬테카를로는 강화학습 뿐만 아니라, 더 넓은 의미에서 랜덤 샘플링 기반의 반복적인 샘플링 기법으로 알려져 있다. 강화학습에서는 경험, 즉 상태, 행동, 보상의 시퀀스에 기반해서 가치를 추정하는데 사용된다. 경험에서 학습하는 것은 생각보다 많이 효율적이다. 이는 환경에 대한 사전 지식이 없이도 가치함수를 추정할 수 있게 해주기 때문이다. 다이나믹 프로그래밍의 한계 다이나믹 프로그래밍을 강화학습에 사용하려면, 에이전트는 환경의 상태들간의 상태전환확률(transition probability)를 알고있어야 한다. 하지만 특정 문제들에서 우리는 이 상태정환확률을 할수 없다. 예제) 우리가 미래의 날씨에 대해서 예측한다고 해보자. 날씨를 변화시키는 데에는 너무나도 많은..

강화학습 - (13) 가치 반복

강화학습 일반화된 정책 반복 (Generalized Policy Iteration) 정책 반복 알고리즘은 에피소드를 처음부터 끝까지 진행해 보고, 정책을 평가한 뒤 정책을 향상 시키는 방법이었다. 하지만 정책 반복은 이것보다 더 유연한 알고리즘이다. 정책 반복에서 끝까지 다 수했했던 것을 조금 줄여서, 아래의 그림과 같이 개선을 시킬 수도 있다. 각각의 반복은 가치를 끝까지 향상시키지는 않고 조금씩 향상시킨다. 또한 각각의 개선은 정책을 최대의 탐욕으로 만들지 않고 조금씩 탐욕적으로 만든다. 이는 최종적으로는 최적 가치와 최적 정책에 도달하게 된다. 이 이론을 일반화된 정책 반복 (Generalized Policy Iteration)이라고 한다. 가치 반복 (Value Iteration) 가치 반복은 일..

강화학습 - (12) 정책 반복

강화학습 정책 향상 강화학습의 궁극적인 목표중 하나인 제어(Control)를 하기 위해서는 정책 향상이 필요하다. 이미 최적 가치를 알고 있고, 탐욕적인 정책을 사용했다고 가정했을 때 벨만 방정식은 다음과 같다: $\pi_*(s) = argmax_a \sum_{s'} \sum_{r} p(s', r | s, a) [r + \gamma v_*(s')]$ 만약 $v_*$가 아닌 $v_\pi$를 따른다고 가정해 보자: $\pi(s) = argmax_a \sum_{s'} \sum_{r} p(s', r | s, a) [r + \gamma v_*(s')]$ 만약 위와 같은상황에서 모든 상태에 대해서 위 탐욕적 수식이 정책을 변동시키지 않는다면, 해당 정책은 벨만최적방정식에 위배되고, 이는 이미 이 정책이 최적임을 증..

강화학습 - (11) 정책 평가

강화학습 정책 평가 (Policy Evaluation) 정책 평가란 어떠한 정책에 대해 가치함수를 찾는 것이다. 이를 더 자세히 수식화 하면, 정책 $\pi$에 대한 상태-가치 $v_{\pi}$를 찾는 것이다. $\pi \rightarrow v_{\pi}$ 상태가치 벨만 방정식의 정의를 다시 살펴보자. $v_{\pi}(s) \dot{=} \mathbb{E}_{\pi}[G_t | S_t = s]$ $v_{\pi}(s) = \sum_{a}\pi(a|s) \sum_{s'} \sum_{r}p(s',r|s,a)\left[r+\gamma \mathbb{E}_{\pi}[G_{t+1}|S_{t+1}=s']\right]$ 이전에 봤던 다음과 같은 그리드 월드에서의 MDP는 선형대수(선형시스템)으로 푸는 것이 가능했다. ..

강화학습 - (10) 벨만 최적 방정식

강화학습 벨만 최적 방정식 (Bellman Optimality Equation) 정책은 에이전트가 어떻게 행동하는지를 결정한다. 어떻게 행동하는지에 대한 정책이 정해져야, 그 뒤에 가치함수가 정의될 수 있다. 강화학습의 목표는 장기적인 보상을 최대로 하는 정책을 찾아내는 것이다. 최적 정책 최적의 정책을 찾기 위해서는 하나의 정책이 다른 정책보다 어떻게 나은것인지를 판단할 수 있어야 한다. 다음 그래프는 두개의 정책이 각 상태에서 어떠한 가치를 주는지를 그려놓은 것이다. 앞선 상태들이세는 정책 $\pi_1$이 정책 $\pi_2$ 보다 높은 가치를 주고, 뒤 상태들이세는 반대로 정책 $\pi_2$ 이 정책 $\pi_1$ 보다 높은 가치를 준다. 위 그림 만으로는 $\pi_1$가 $\pi_2$보다 낫다는것을..

728x90
반응형