reinforced learning 간단 정리
Q-러닝 (Q-Learning):
Q-러닝은 강화학습에서 가장 기본적인 오프-정책(off-policy) 방법 중 하나로, 에이전트가 상태-행동 가치 함수(Q-함수)를 학습하여 최적의 정책을 찾는 알고리즘입니다. 에이전트는 환경과 상호 작용하며 보상을 받고, 이를 기반으로 Q-함수를 업데이트하여 각 상태에서 어떤 행동을 선택해야 최대의 누적 보상을 얻을 수 있는지 학습합니다.
예를 들어, 미로 찾기 게임에서 에이전트가 출발점에서 목표 지점까지 최단 경로를 찾는 상황을 생각해봅시다. 미로의 각 위치는 상태(state)에 해당하며, 에이전트는 상하좌우로 이동하는 행동(action)을 취할 수 있습니다. 목표 지점에 도달하면 보상(reward)을 받습니다. 에이전트는 처음에는 무작위로 움직이지만, Q-러닝 알고리즘을 통해 각 상태에서 어떤 행동을 취해야 최대의 누적 보상을 얻을 수 있는지 학습하게 됩니다.
딥 Q-네트워크 (Deep Q-Network, DQN) (오프-정책):
DQN은 Q-러닝의 확장으로, 신경망을 사용하여 대규모의 상태 공간에서도 Q-함수를 근사합니다. 이를 통해 이미지와 같은 고차원 입력도 처리할 수 있습니다. DQN은 경험 재생(memory replay)과 타깃 네트워크(target network)와 같은 기술을 사용하여 학습의 안정성을 높입니다.
**아타리 게임 '브레이크아웃(Breakout)'**을 플레이하는 에이전트를 생각해봅시다. 이 게임에서는 공을 튕겨 벽돌을 깨는 것이 목표이며, 화면의 픽셀 데이터가 상태로 주어집니다. DQN은 신경망을 사용하여 이 고차원 이미지 데이터를 처리하고, 왼쪽이나 오른쪽으로 패들을 움직이는 최적의 행동을 예측합니다. 경험 재생(memory replay)을 통해 과거의 플레이 데이터를 저장하고 무작위로 샘플링하여 학습함으로써 안정성을 높입니다.
정책 그래디언트 방법 (Policy Gradient method) (온-정책):
정책 그래디언트 방법은 정책 자체를 직접 파라미터화하고, 보상의 기대값을 최대화하는 방향으로 정책의 파라미터를 업데이트합니다. 온-정책 방법으로, 현재의 정책을 따라 수집된 데이터를 사용하여 학습합니다. 대표적인 알고리즘으로 REINFORCE가 있습니다.
카트폴(cart-pole) 문제를 고려해봅시다. 에이전트는 이동하는 카트 위에 세워진 막대기를 넘어뜨리지 않고 최대한 오래 유지해야 합니다. 정책 그래디언트 방법은 에이전트의 정책을 직접 파라미터화하여, 어느 방향으로 카트를 움직일지에 대한 확률을 학습합니다. 에피소드 동안 받은 보상을 최대화하기 위해 정책의 파라미터를 업데이트합니다.
액터-크리틱 방법 (Actor-Critic method):
액터-크리틱은 정책 기반 방법과 가치 기반 방법을 결합한 알고리즘입니다. 액터(actor)는 정책을 담당하고, 크리틱(critic)은 가치 함수를 평가합니다. 크리틱의 피드백을 받아 액터는 정책을 업데이트하며, 이로써 학습 효율성과 안정성을 향상시킵니다.
로봇 팔로 물체 잡기 작업을 수행한다고 가정해봅시다. 액터는 로봇 팔이 어떤 방향으로 움직일지 결정하는 정책을 제공합니다. 크리틱은 현재 상태에서의 행동이 얼마나 좋은지 평가하는 가치 함수(value function)를 제공합니다. 크리틱의 평가를 바탕으로 액터는 정책을 업데이트하여 더 나은 행동을 취할 수 있게 됩니다.
PPO (Proximal Policy Optimization) (온-정책):
PPO는 트러스트 리전 폴리시 옵티마이제이션(TRPO)의 단점을 개선한 알고리즘으로, 정책 업데이트 시 큰 변화가 일어나지 않도록 제한합니다. 이는 클리핑(clipping)과 같은 간단한 기법을 사용하여 구현되며, 안정적이면서도 효율적인 학습을 가능하게 합니다.
강화학습을 통한 게임 캐릭터 조종에서, 에이전트는 복잡한 지형에서 장애물을 피하며 목표 지점에 도달해야 합니다. PPO 알고리즘은 정책을 업데이트할 때 큰 변화가 발생하지 않도록 손실 함수를 설계하여 안정적인 학습을 보장합니다. 이는 에이전트가 이전에 학습한 정책에서 너무 벗어나지 않으면서도 성능을 향상시킬 수 있게 해줍니다.
DDPG (Deep Deterministic Policy Gradient) (오프-정책):
DDPG는 연속적인 액션 스페이스에서 동작하는 오프-정책 알고리즘입니다. 딥 Q-네트워크와 정책 그래디언트 방법을 결합하여 액터-크리틱 구조를 채택합니다. 경험 재생과 타깃 네트워크를 사용하여 학습의 안정성을 높입니다.
연속적인 제어가 필요한 드론 비행을 생각해봅시다. 드론은 3차원 공간에서 부드럽게 움직여 특정 지점을 통과해야 합니다. DDPG 알고리즘은 액터-크리틱 구조를 사용하여 연속적인 행동(예: 드론의 속도와 방향)을 결정합니다. 경험 재생을 통해 수집한 데이터를 사용하여 학습하며, 오프-정책 방법으로 샘플 효율성을 높입니다.
SAC (Soft Actor-Critic) (오프-정책):
SAC는 최대 엔트로피 강화학습 프레임워크를 기반으로 한 알고리즘으로, 정책의 탐색성을 높이기 위해 정책 엔트로피를 보상에 포함합니다. 이는 샘플 효율성과 학습 안정성을 향상시키며, 오프-정책 데이터를 사용하여 효율적인 학습이 가능합니다.
로봇의 문 열기 작업에서, 로봇은 문손잡이의 위치와 움직임에 대한 불확실성이 높은 환경에서 작업해야 합니다. SAC 알고리즘은 최대 엔트로피 강화학습을 적용하여 로봇이 다양한 시도를 통해 최적의 행동을 탐색하도록 합니다. 정책의 엔트로피를 보상에 포함시킴으로써 탐험과 이용의 균형을 맞추고, 불확실한 환경에서도 안정적인 성능을 보입니다.