Temporal Difference (TD) 학습은 강화학습에서 사용되는 중요한 기법으로 현재 상태에서 미래 상태로의 보상 변화를 예측하고 이를 통해 값을 점진적으로 데이트하는 방법입니다. TD 학습은 마르코프 결정 과정(MDP)의 가치 함수(상태 가치 함수 또는 행동 가치 함수)를 추정하는 데 사용됩니다.
TD 학습의 특징
1. 단기적 보상 예측
• TD 학습은 미래의 보상을 예측할 때 한 번에 모든 정보를 고려하는 것이 아니라 단계별로 보상을 업데이트합니다.
• 즉, 에이전트는 현재 상태에서 받은 보상과 다음 상태에서 예측되는 보상을 결합하여, 더 정확한 미래 보상 예측을 수행합니다.
2. 벨만 방정식 기반:
• TD 학습은 벨만 방정식을 기반으로 동작합니다. 벨만 방정식은 상태 가치 함수나 행동 가치 함수를 계산하는 방법을 제공합니다.
• 이 과정에서 현재 추정 값과 새로운 보상을 결합하여 점진적으로 업데이트합니다.
• TD 학습은 벨만 방정식을 기반으로 동작합니다. 벨만 방정식은 상태 가치 함수나 행동 가치 함수를 계산하는 방법을 제공합니다.
• 이 과정에서 현재 추정 값과 새로운 보상을 결합하여 점진적으로 업데이트합니다.
3. 오프라인 학습(Off-policy)과 온-라인 학습(On-policy):
• TD 학습은 SARSA(On-policy TD)와 Q-learning(Off-policy TD)처럼 여러 알고리즘에서 사용될 수 있습니다.
• SARSA는 에이전트가 현재 상태에서 실제로 취한 행동에 대해서만 학습합니다.
• Q-learning은 주어진 상태에서 가능한 최적의 행동을 취한다고 가정하고, 실제로는 어떤 행동을 취했는지와 상관없이 최적 정책을 학습합니다.
• TD 학습은 SARSA(On-policy TD)와 Q-learning(Off-policy TD)처럼 여러 알고리즘에서 사용될 수 있습니다.
• SARSA는 에이전트가 현재 상태에서 실제로 취한 행동에 대해서만 학습합니다.
• Q-learning은 주어진 상태에서 가능한 최적의 행동을 취한다고 가정하고, 실제로는 어떤 행동을 취했는지와 상관없이 최적 정책을 학습합니다.
TD 학습 알고리즘 예시
1. SARSA (State-Action-Reward-State-Action)
• SARSA는 TD 학습의 한 종류로, 에이전트가 실제로 취한 행동에 대한 보상을 사용하여 상태-행동 가치 함수(Q)를 업데이트합니다.
• 알고리즘은 현재 상태에서 행동을 취하고, 다음 상태로 전이된 후, 다음 상태에서 선택된 행동을 고려하여 가치 함수를 갱신합니다.
1. SARSA (State-Action-Reward-State-Action)
• SARSA는 TD 학습의 한 종류로, 에이전트가 실제로 취한 행동에 대한 보상을 사용하여 상태-행동 가치 함수(Q)를 업데이트합니다.
• 알고리즘은 현재 상태에서 행동을 취하고, 다음 상태로 전이된 후, 다음 상태에서 선택된 행동을 고려하여 가치 함수를 갱신합니다.
2. Q-learning (Off-policy TD)
• Q-learning은 TD 학습에서 벗어나 최적의 정책을 학습하는 오프라인 방법입니다.
• 이 알고리즘은 최고의 행동을 선택할 때 얻을 수 있는 최대 보상을 추정하여 상태-행동 가치 함수(Q-value)를 업데이트합니다. Q-learning은 탐색과 활용을 균형 있게 다룹니다.
• Q-learning은 TD 학습에서 벗어나 최적의 정책을 학습하는 오프라인 방법입니다.
• 이 알고리즘은 최고의 행동을 선택할 때 얻을 수 있는 최대 보상을 추정하여 상태-행동 가치 함수(Q-value)를 업데이트합니다. Q-learning은 탐색과 활용을 균형 있게 다룹니다.
TD 학습의 장점
1. 효율성
전체 에피소드를 기다리지 않고 현재 경험만을 통해 값을 업데이트하므로 빠른 학습이 가능합니다.
1. 효율성
전체 에피소드를 기다리지 않고 현재 경험만을 통해 값을 업데이트하므로 빠른 학습이 가능합니다.
2. 온라인 학습
TD 학습은 실시간으로 값을 업데이트할 수 있어, 시뮬레이션이나 실제 환경에서도 사용 가능합니다.
TD 학습은 실시간으로 값을 업데이트할 수 있어, 시뮬레이션이나 실제 환경에서도 사용 가능합니다.
3. 배치 학습이 불필요
기존의 몬테카를로 방법처럼 에피소드가 끝날 때까지 기다리지 않아도 되어 더 효율적입니다.
기존의 몬테카를로 방법처럼 에피소드가 끝날 때까지 기다리지 않아도 되어 더 효율적입니다.
결론
Temporal Difference 학습은 강화학습에서 중요한 역할을 하며, 동적 환경에서의 학습을 가능하게 하는 방법입니다. 이를 통해 에이전트는 최적의 정책을 점진적으로 학습할 수 있으며, 다양한 알고리즘에서 활용됩니다.