본 내용은 팡요랩의 강화학습 강의와 UCL Reinforcement learning Lecture 바탕으로 작성되었습니다.
□ 강화학습이 기존 머신러닝(supervised)과 다른 점
- Supervisor가 없고, reward signal만 존재 : 사람이 정답을 주는 게 아닌 reward를 maximize 하는 방향으로 학습
- Feedback이 즉각적이지 않고 delay 될 수 있음
- 지도학습에서는 iid data 를 가정을 하지만, 강화학습은 sequential data이므로 시계열성이 중요
- Agent의 반응이 다음 data에 영향을 준다
> 강화학습의 활용
- 로봇, 게임, 투자..등등
□ Reward
- scalar feedback signal, agent는 cumulative reward를 최대화하는 것이 목표 > scalar 값이므로 vector로만 표현할 수 있는 reward는 강화학습을 적용하기 어렵다. 이를 scalar로 변환시키는 작업이 필요하다.
- 따라서 reward 정의는 다음과 같은 가설을 따르게 된다 "모든 목표는 cumulative reward를 최대화"
> Sequetial Decision making
- 미래의 최종적 cumulative reward를 최대화시키는 방향으로 action이 선택되야 한다.
- 즉각적인 반응이 약하더라도 최종적인 결과를 생각해야된다.
□ Agent(뇌) & Environment(지구)
- Agent가 t시점에서 action A(t)를 하면 Environment가 Agent에게 reward R(t)랑 observation O(t)을 준다. Agent는 R, O를 바탕으로 다음 action을 취하게 된다. 주의 깊게 봐야될 점은 하첨자 t에 의해 각 sequence가 discret하게 이뤄진다는 점이다.
> History
- O,R,A를 모아둔 sequence.
□ State
- Agent의 state/ Environment의 state는 각 주체가 다음 step에서 뭘 할지 결정하는 정보, history의 함수다.
> Environment state
- Environment가 다음 observation과 reward를 결정하는데 쓰이는 정보, history의 함수
- 특정 t 시점의 환경 상태
> Agent state
- Agent가 다음 action을 하는데 사용하는 정보
> Markov state
- 다음 t+1시점 state를 취할 때 t시점의 정보만을 사용한 것은 과거 모든 정보를 사용한 것과 같다.
- 즉, t+1 시점에 결정은 t시점에만 dependent하다.
- Environment state는 Markov state다. (Agent state는 Markov하지 않은 게 존재한다)
> Full observability Environment(바둑)
- Agent가 Environment state를 직접 볼 수 있는 상태
- S(t)^a = S(t)^e : Markov
- 이를 Markov decision process(MDP)라고 정의한다.
> Partial observability Environment(포커)
- Agent가 Environment state를 간접적으로 볼 수 있는 상태
- S(t)^a != S(t)^e
- Partially observable Markov decision process(POMDP)
□ Agent의 3요소
→ Agent는 policy, value function, model로 이루어져 있다.
1) Policy : agent의 행동을 결정, state를 넣어주면 action을 출력
- Deterministice policy(integer mapping 될 수 있는 policy)
- Stochastic policy(action에 대한 확률값을 출력하는 policy)
2) Value function : 미래 reward의 기댓값을 예측하는 함수로, 현재 state를 평가하는데 사용
- policy에 dependent한 함수, 즉 특정 policy (ㅠ)가 주어졌을때, 현재 state에서의 최종 reward를 계산한다.
3) Model : agent가 environment state & reward를 예측하는 모델
□ Agent의 분류
1) Value based : value function만 있는 agent
2) Policy based : policy만 있는 agent
3) Actor Critic : value function & policy 다 있는 agent
1) Model free or Model based : model이 없는/있는 agent
→ 총 6가지 agent 조합이 가능해진다.
> Learning and Planning
- RL은 Environment를 모르면 learning, 알면 planning(eg. tree search) 두 가지 과정으로 나뉜다.
- RL은 다음의 두 과정을 통해 agent로 하여금 더 좋은 policy를 형성하게 한다.
1) Exploration : 여러 다른 탐색을 통해 Environment에 대한 다양한 정보를 찾는 과정
2) Exploitation : 1)에서 구한 정보를 reward 최대화 하는데 사용하는 과정
> Prediction & Control
- Prediction : 주어진 policy하에 미래를 평가하는, value function을 학습하고, 최종 value 즉, 최종 cumulative reward를 찾는 문제
- Control : 미래를 최적화하는, 최적의 policy를 찾는 문제
Notation : 하첨자 *는 optimal
'ML & DL' 카테고리의 다른 글
[강화학습] Lec.2 Markov decision process(MDP) (0) | 2020.02.02 |
---|---|
[머신러닝] Boosting Algorithm (3) | 2020.01.26 |
[NLP] Seq-to-Seq (0) | 2019.12.07 |
[딥러닝]RNN과 LSTM (0) | 2019.11.18 |
[머신러닝]SVM(Support Vector Machine) by MIT (0) | 2019.11.16 |