몬테카를로 방법은 시간적 차이 방법보다 언제 선호됩니까?


12

최근에 강화 학습에 대해 많은 연구를 해왔습니다. 나는 Sutton & Barto의 강화 학습 : 대부분의 소개 를 따랐다 .

Markov 의사 결정 프로세스가 무엇인지, DP (Dynamic Programming), Monte Carlo 및 DP (Temporal Difference) 학습을 사용하여 이러한 문제를 해결하는 방법을 알고 있습니다. 내가 겪고 있는 문제 는 Monte Carlo가 언제 TD- 러닝보다 더 나은 옵션인지 알 수 없다는 것입니다.

이들의 주요 차이점은 TD- 러닝은 부트 스트랩 핑을 사용하여 동작 값 함수 를 근사화 하고 Monte Carlo는 평균을 사용하여이를 달성한다는 것입니다. 이것이 더 좋은 방법 일 때 시나리오를 실제로 생각할 수는 없습니다.

내 생각 엔 성능과 관련이있을 수 있지만 이것을 증명할 수있는 출처를 찾을 수는 없습니다.

무엇인가 누락되었거나 TD- 러닝이 일반적으로 더 나은 옵션입니까?

답변:


9

TD 학습 및 DP의 주요 문제점은 단계 업데이트가 학습 매개 변수의 초기 조건에 편향 되어 있다는 것입니다. 부트 스트래핑 프로세스는 일반적으로 후자의 현재 추정치에 관계없이 후속 값 Q (s ', a')에서 함수 또는 조회 Q (s, a)를 업데이트합니다. 학습을 시작할 때 분명히 이러한 추정치에는 실제 보상이나 상태 전환 정보가 포함되어 있지 않습니다.

학습이 의도 한대로 작동하면 편향이 여러 반복에 걸쳐 무증상으로 감소합니다. 그러나 편견은 특히 정책 외 방법 (예 : Q 학습) 및 함수 근사기를 사용할 때 심각한 문제를 일으킬 수 있습니다. 이 조합은 Sutton & Barto 에서 치명적인 트라이어드 라고 불릴 수 없습니다 .

몬테 카를로 제어 방법은 Q (s, a)가 무엇인지에 대한 실제 샘플을 사용하여 각 업데이트가 이루어 지므로 이러한 편견을 겪지 않습니다. 그러나 Monte Carlo 방법은 분산이 높을 수 있으므로 TD에 비해 같은 수준의 학습을 달성하려면 더 많은 샘플이 필요합니다.

실제로, 치명적인 트라이어드 의 문제를 극복 할 수 있다면 TD 학습은보다 효율적으로 학습하는 것으로 보입니다 . 경험 재생 및 단계별 "냉동 된"평가 기 사본을 사용한 최근 결과는 문제를 해결하는 해결 방법을 제공합니다. 예를 들어 Atari 게임에 대한 DQN 학습자가 구축 된 방식입니다.

TD와 Monte Carlo 사이에는 중간 지점이 있습니다. 단일 단계 TD에서 Monte Carlo의 완전한 에피소드 실행에 이르기까지 다양한 길이의 궤적을 결합한 일반화 된 방법을 구성하고 결합 할 수 있습니다. 가장 일반적인 변형은 TD (λ) 학습, 어디서 λ 의 매개 변수입니다 0 (효과적으로 단일 단계 TD 학습) 1(효과적으로 Monte Carlo 학습이지만 지속적인 문제에서 사용할 수있는 좋은 기능이 있습니다). 일반적으로 사이의 값01 많은 하이퍼 파라미터와 마찬가지로 가장 효율적인 학습 에이전트를 만듭니다. 사용하기 가장 좋은 값은 문제에 따라 다릅니다.

정책 기반 방법과 달리 가치 기반 방법을 사용하는 경우 일반적으로 TD 학습이 더 많이 사용되거나 TD (λ)와 같은 TD / MC 조합 방법이 훨씬 더 좋습니다.

MC의 "실용적 이점"측면에서? 몬테 카를로 학습은 개념적으로 간단하고 강력하며 구현하기 쉽지만 종종 TD보다 느립니다. 나는 일반적으로 학습 컨트롤러 엔진에 사용하지 않을 것입니다 (단순한 환경을 위해 무언가를 구현하기 위해 서두르지 않는 한). 예를 들어 여러 에이전트를 비교하기 위해 정책 평가를 위해 심각하게 고려할 것입니다. 편향되지 않은 측정은 테스트에 중요합니다.


우선, 답변 주셔서 감사합니다. 이론적으로 편견 알고리즘이 편향 알고리즘보다 선호되는 방법을 봅니다. 그러나 몬테 카를로가 훈련을 시작할 때 줄 수있는 높은 분산을 고려할 때 이것이 실제로 어떻게 중요한지 알 수 없습니다. Monte Carlo와 TD는 모두 부정확 한 근사값으로 시작하며 내가 읽은 내용에서 TD가 훨씬 빠르게 수렴됩니다. 나는 Monte Carlo를 사용하는 실질적인 이점을 실제로 얻을 수는 없습니다. ( 치명적인 트라이어드 를 피하는 것은 피할 수있다)
Anne-dirk

1
@ Anne-dirk 정책 기반 방법과 달리 값 기반 방법을 사용하는 경우 일반적으로 TD 학습 더 많이 사용되거나 TD (λ)와 같은 TD / MC 조합 방법이 보다 나은. "실제적 이점"이 무엇을 의미하는지 잘 모르겠습니다. Monte Carlo 학습은 개념적으로 간단하고 강력하며 구현하기 쉽습니다. 나는 일반적으로 학습 컨트롤러 엔진에 사용하지 않을 것입니다 (단순한 환경을 위해 무언가를 구현하기 위해 서두르지 않는 한). 예를 들어 여러 에이전트를 비교하기 위해 정책 평가를 위해 심각하게 고려할 것입니다.
Neil Slater

@Neul Slater Aaaah 내가 본 것은 ... 내가 찾던 답은 :) 도와 주셔서 감사합니다!
Anne-dirk

-1

기본적으로 환경에 따라 다릅니다.

TD는 Markov 속성을 활용합니다. 즉 프로세스의 미래 상태는 현재 상태에만 의존하므로 Markov 환경에서 TD를 사용하는 것이 일반적으로 더 효율적입니다.

MC는 Markov가 아닌 환경에 적합하도록 전체 학습 프로세스에 대한 보상을 기반으로 Markov 속성을 이용하지 않습니다.


나는 이것이 정확하거나 적어도 분명하다고 생각하지 않습니다. RL과 관련하여 Markov 속성은 상태와 연결됩니다. Markov 속성이 충족되지 않을 때 MC 알고리즘이 더 잘 작동하는 이유를 분명히 설명해 주시겠습니까?
nbro

분명히, 나는 효율성을 언급하고있었습니다. Markov 속성을 활용할 수있는 경우 주어진 상태, 시작 및 조치에서 시작할 수 있고 결과는 항상 동일하므로 TD가 유리하므로 TD 오류를 확실하게 계산할 수 있습니다. MDP가 아닌 경우 부분적으로 관찰 된 상태가되면 TD가 그리 효율적이지 않을 수 있습니다. 그것은 당신이 비 MDP에서 TD를 사용할 수 없다고 말하는 것은 아닙니다.하지만 비효율적 일 수 있으며 TD (1)보다는 TD 람다에서 더 나은 성공을 얻을 수 있습니다.
BigBadMe

"Markov 속성을 이용할 수 있다면 TD가 유리합니다. 어떤 상태에서든 시작하여 수행 할 수 있고 결과는 항상 동일하기 때문입니다."환경이 결정적인 경우에도 동일합니다. 이것이 Markov 속성과 어떤 관련이 있습니까? 나는 당신의 주장을 얻지 못합니다. 예를 들어 POMDP에서 TD가 MC보다 비효율적이라는 점을 어디에서 읽었습니까?
nbro

1
MDP는 정의에 의해 결정적 이지 않습니다 . 결정적 환경은 일반적으로 다음과 같이 정의됩니다. 에이전트가 상태 인 경우에스 그리고 행동을 취한다 다음 상태 에스'시간 단계에 관계없이 항상 동일합니다 . 그렇지 않으면 확률 론적입니다. MDP는 단지 환경과 그 역학을 나타내는 방법입니다.
nbro

1
"상태 S 인 경우 이전에 발생한 모든 이벤트가 해당 상태에 의해 정의되며 조치 a를 수행하면 항상 동일한 상태 S '및 보상 r을 얻게됩니다.", 아니요 , 구체적으로 사실이 아닙니다. 사실이 아닌 부분은 "행동 a를 취하면 항상 같은 상태 S '와 보상 r을 얻게됩니다."입니다. MDP에 결정적 전환 및 보상 기능 이있는 경우에만 해당됩니다 (그러나 항상 그런 것은 아닙니다).
nbro
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.