반응형
1. 강화학습의 정의
- 보상(Reward)를 정희하고 이를 최대하하는 방식을 찾아내는 것
2. 강화학습의 특징
- Trial and Error
- Delayed Reward
- 예를 들어, 바둑게임을 강화학습으로 학습시킬 때, t시간의 바둑게임의 이미지를 입력으로 하면, 모델은 그 상태에서 가장 이길 가능성이 높은 t+1 시간의 수를 두게 됩니다. 이렇게 계속 게임을 진행하고 해당 게임이 끝나면 게임의 승패가 보상으로 주어지게 됩니다. 모델을 학습시키기 위해, 각 시간에서 다양한 수를 둬보는 과정이 Trial and Error라고 합니다.
- 또한, 주체 즉 Agent가 여러 Action을 해보고 각각의 Reward를 비교하면서 Reward를 최대화하도록 행동하는 방식을 학습하는 것이 Delayed Reward입니다. 주어진 데이터뿐만 아니라 Agent의 Action도 Reward에 영향을 준다는 점이 다른 지도/비지도 학습과의 차이점 입니다.
- 강화학습은 DP에서 출발했는데 “환경”에 대한 정보가 주어졌는지에 따라 DP와 RL로 나뉘게 됩니다.
3. Markov Decision Process(MDP)
- 강화학습은 MDP로 정의되는 문제를 풀 수 있다고 합니다. MDP는 State, Action , Probability, Reward, return의 튜플로 정의됩니다. 바둑게임을 기준으로 해당 단계에서의 바둑판의 상태가 State , 각 단계에 두는 수가 Action, State간 이동할 확률이 Probabilty, 각 단계에서의 reward의 기댓값이 Reward, Discount factor로 시간에 따른 reward의 감소를 표현하기 위한 상수가 return입니다. 이외에도 Policy라는 개념이 있는데 State가 주어졌을 때, 어떤 액션을 취할지 정하는 방식으로 정의됩니다.
4. Value Function
- DP 및 RL의 목표는 “Reward를 최대화하는 Policy를 찾는 것”
- State에서 얻을 수 있는 reward의 기댓값을 표현하기 위해 State-value function을 정의함
- 따라서, State에서 여러 state 중 가장 reward를 많이 받을 수 있을 것 같은 state로 움직이는 전략을 짤 수 있음. 하지만 이 때, P에 따라 움직이기 때문에, 원하는 state로 움직이지 못할 수 있다는 한계가 존재함.
- 이를 보완하기 위한 개념이 state와 action에 따른 기대 reward를 계산하는 state action-value function
5. Bellman equation(벨만 방정식)
벨만 방정식은 MDP에서 모든 상태에 대해 기대 미래 보상을 최대화하는 함수로써, 가치 함수와 Q 함수의 기본적인 개념을 설명합니다. 이 방정식은 현재 상태의 가치와 다음 상태의 가치 사이의 관계를 연결하며, 이를 통해 가치 함수나 Q 함수를 반복적으로 업데이트 할 수 있습니다. 이러한 업데이트 방식을 통해 강화학습 알고리즘은 보상을 최대화하는 정책을 학습하는 데 사용됩니다.
6. Q-Learning
- Q-Learning은 위에서 언급한 state action-value function을 이용한 학습 방법입니다. 이 방법은 주어진 상태에서 가능한 모든 행동을 고려하여 이를 통해 최적의 정책을 학습하는 방법입니다.
- Q-Learning의 핵심은 Bellman equation을 기반으로 한 업데이트 규칙입니다. 이 규칙에 따르면, 각 행동 후의 새로운 Q 값은 이전 Q 값과 새로운 경험(보상과 다음 상태)을 통해 업데이트됩니다.
- 이러한 방법은 환경에 대한 사전 지식이 없이도 효과적으로 학습할 수 있으며, 이는 강화학습의 가장 큰 장점 중 하나입니다.
7. Policy Gradient
- Policy Gradient는 강화학습의 또 다른 주요 방법론입니다. 이 방법은 행동의 확률을 직접 모델링하여, 보상을 최대화하는 행동을 선택하는 확률을 높이는 방향으로 정책을 업데이트합니다.
- 이 방법은 연속적인 행동 공간에서 특히 유용하며, 또한 다양한 환경에서의 학습에 매우 유연합니다.
- 하지만, Policy Gradient 방법은 종종 높은 분산과 함께 경험적인 샘플이 필요하다는 단점이 있습니다. 이를 개선하기 위한 다양한 기법들이 연구되고 있습니다.
8. Actor-Critic 방법
- Actor-Critic 방법은 강화학습의 중요한 알고리즘 중 하나로, Policy Gradient 방법과 Value-based 방법을 결합한 방식입니다.
- 이 방법에서 'Actor'는 현재의 정책(policy)을 따르는 역할을 하고, 'Critic'은 이 정책을 평가하고 개선하는 역할을 합니다.
- Actor-Critic 방법은 실시간으로 정책을 개선하면서도 안정적인 학습을 가능하게 하는 장점이 있습니다.
9. Exploration and Exploitation
- 강화학습에서는 탐색(Exploration)과 활용(Exploitation)의 균형을 맞추는 것이 중요합니다.
- 탐색은 새로운 행동을 시도하고 새로운 정보를 수집하는 과정을 의미하며, 활용은 현재 가지고 있는 정보를 이용해 최대의 보상을 얻는 행동을 선택하는 과정을 의미합니다.
- 이 둘의 균형을 잡는 것은 강화학습의 주요 도전 과제 중 하나로, 이를 해결하기 위해 다양한 전략들이 제안되고 있습니다.
10. Off-policy and On-policy Learning
- Off-policy 학습과 On-policy 학습은 강화학습에서 데이터를 수집하고 학습하는 방법에 관한 개념입니다.
- Off-policy 학습은 현재의 정책과 상관없이 데이터를 수집하고 학습하는 방법을 의미하며, 이 방법은 데이터의 재사용이 가능하다는 장점이 있습니다.
- 반면에, On-policy 학습은 현재 정책에 따라 데이터를 수집하고 학습하는 방법을 의미합니다. 이 방법은 학습 과정이 실시간으로 이루어진다는 장점이 있습니다.
11. Monte Carlo Methods
- Monte Carlo 방법은 강화학습에서 사용되는 학습 방법 중 하나입니다.
- 이 방법은 각 에피소드가 완료된 후에 학습이 이루어지며, 각 상태의 가치를 추정하는 데 사용됩니다.
- Monte Carlo 방법은 단순하고 이해하기 쉬우며, 복잡한 동적 프로그래밍 방법을 사용하지 않고도 문제를 해결할 수 있다는 장점이 있습니다.
12. Temporal-Difference Learning
- 시간차 학습(Temporal-Difference Learning)은 Monte Carlo 방법과 Dynamic Programming의 중간에 위치한 기법입니다.
- 이 방법은 각 에피소드를 완료할 필요 없이, 각 단계에서 즉시 추정치를 업데이트하므로 학습이 빠르다는 장점이 있습니다.
- 시간차 학습은 경험을 직접 학습에 사용하므로, 모델 기반의 방법보다는 모델 프리(model-free) 방법에서 주로 사용됩니다.
13. Deep Reinforcement Learning
- 깊은 강화학습(Deep Reinforcement Learning)은 강화학습과 딥러닝을 결합한 분야입니다.
- 이 방법은 신경망을 사용하여 복잡한 특징을 학습하고, 이를 바탕으로 최적의 정책을 결정합니다.
- 깊은 강화학습은 복잡한 문제에 대해 높은 성능을 보이지만, 학습이 어렵고 계산 비용이 높다는 단점이 있습니다.
14. Partially Observable Markov Decision Process (POMDP)
- 부분적으로 관찰 가능한 마르코프 결정 과정(POMDP)은 상태의 모든 정보가 주어지지 않는 상황에서 사용되는 기법입니다.
- POMDP는 에이전트가 관찰을 통해 상태에 대한 불확실성을 줄이려고 시도하는 상황을 모델링합니다.
- POMDP는 복잡한 환경에서 강화학습을 적용할 수 있게 해주지만, 계산 복잡성이 높아서 실제 문제에 적용하기 어렵습니다.
15. Multi-Agent Reinforcement Learning
- 다중 에이전트 강화학습(Multi-Agent Reinforcement Learning)은 여러 에이전트가 상호작용하는 환경에서 학습하는 기법입니다.
- 이 방법은 각 에이전트가 개별적으로 학습하거나, 다른 에이전트와 협력하거나 경쟁하면서 학습합니다.
- 다중 에이전트 강화학습은 현실 세계의 많은 문제를 모델링할 수 있지만, 학습이 복잡하고 안정성을 유지하는 것이 어렵습니다.
16. DDPG (Deep Deterministic Policy Gradient)
- DDPG는 연속적인 행동 영역에서 활용가능한 Actor-Critic 방법론에 기반한 강화학습 알고리즘입니다.
- 이 방법론에서는 Actor가 현재의 정책을 따르는데 활용되고, Critic은 Q 함수(즉, 행동 가치 함수) 학습에 쓰입니다.
- 이 방법론은 Off-Policy 학습을 활용하므로, 과거의 경험을 재활용할 수 있습니다.
17. PPO (Proximal Policy Optimization)
- PPO는 Policy Gradient 방법론에 기반하지만, 학습의 안정성을 향상시키기 위해 목표 정책이 학습 과정에서 너무 크게 변하지 않도록 제한하는 방법을 사용합니다.
- 이 방법은 데이터 활용의 효율성과 안정적인 성능 향상 사이에서 균형을 찾습니다.
- PPO는 On-Policy 학습을 활용하므로, 학습 과정에서 실시간으로 데이터를 수집하고 업데이트합니다.
18. TD3 (Twin Delayed DDPG)
- TD3는 DDPG의 변형으로, 과도한 Q 값 추정을 완화하기 위해 두 개의 Critic 네트워크를 사용합니다.
- 이 방법론은 또한 행동에 잡음을 추가하여 탐색을 향상시키고, 정책 업데이트를 지연시킴으로써 학습의 안정성을 높입니다.
- TD3는 복잡하고 연속적인 행동 영역을 가진 강화학습 문제를 해결하는 데 효과적입니다.
-
반응형
'Study > AI' 카테고리의 다른 글
[OPEN API] 파이썬으로 한국은행🏦 API를 활용한 금리/환율 데이터 수집하기 (4) | 2024.11.10 |
---|---|
[OPEN API] 파이썬으로 한국거래소 코스피 종가 데이터 수집하기 (3) | 2024.11.09 |
[ML] 머신러닝 프로젝트 사이클 (0) | 2023.05.07 |
[AI] 모델 기반 협업필터링 (0) | 2023.04.02 |
[AI] Collaborative Filltering(협업필터링) (0) | 2023.04.02 |