주변 환경과 상호작용하면서 무언가를 배워나간다는 것은 학습과 지능에 관한 거의 모든 이론의 기저에 깔린 개념이다. 세상으로 나온 아기는 누가 무언가를 알려주지 않아도 팔을 휘두르거나 주위를 둘러보며 경험을 쌓고 상호작용하며 자신과 주변 환경에 대해서 배워나가게 된다.
우리는 이제 상호작용으로 부터 배우는 과정에서 컴퓨터를 활용하는 방법을 탐구할 것이다. 이 때, 인공지능 연구자나 엔지니어의 시각에서 이상적인 학습 환경을 가정하고 그 안에서 다양한 학습 방법이 갖는 효과에 대해서 수학적 분석과 컴퓨터 실험을 통해 분석할 것이다.
- 참고
1) 앞으로 나올 수학적 증명에 대하여..
수학적 증명은 개념의 간결함과 내재된 일반성을 해치지 않으면서, 올바른 방향을 제시할 수 있을 정도로만 진행된다. 너무 스트레스 받지 말고 그냥 한 번 해보고 이래서 되는구나! 정도만 이해하면 된다.
2) Summary of Notation
<목차>
1.1 Reinforcement Learning
1.2 Examples
1.3 Elements of Reinforcement Learning
1.4 Limitations and Scope
1.5 An Extended Example: Tic-Tac-Toe
1.6 Summary
1.7 History of Reinforcement Learning
1.1 Reinforcement Learning
- 강화학습이란
강화학습이란, 주어진 상황에서 어떠한 행동을 취할지를 학습하는 것을 의미한다. 그 행동의 결과는 최대한의 보상을 가져다줘야만하며, 그 보상 함수는 수치적으로 표현할 수 있어야 한다. 학습자((agent))는 어떤 행동을 취할지에 대한 어떠한 지침도 받지 않고 오로지 시행착오를 통해 최대의 보상을 가져다주는 행동을 찾아내야만 한다. 여기서 흥미로운 점은 행동의 직접적인 보상 뿐 아니라, 상황에 영향을 미침으로써 발생되는 지연된 보상 또한 고려해야한다.
강화학습 문제는 ch3에서 배우게 될 Markov Decsion Process, MDP에 대한 최적 제어 이론을 활용하여 체계화됐다. 이는 나중에 더 자세하게 배울 거지만 MDP를 푸는 데 적합한 모든 방법이 바로 강화학습임을 알고 넘어가자.
- 강화학습과 기계학습의 개념 구분
1) 강화학습 vs 지도 학습((Supervised-learning))
대부분의 기계학습 분야에서 연구되고 있는 지도학습과 강화학습은 다르다. 학습자가 취해야 할 올바른 행동이 대한 지침((label))이 포함된 지도 학습은 상호작용으로부터 학습한느 강화학습에 적합하지 않다. 상호작용으로부터 배우는 강화학습 문제에서는 경험에 의존하여 바람직한 행동의 예제를 찾는다. 즉 학습자는 미지의 영역에서 라벨 없이 자신의 경험으로부터 배울 수 있어야 한다.
2) 강화학습 vs 비지도 학습((Unsupervised-learning))
비지도 학습과 강화학습은 다르다. 비지도 학습은 보통 label이 없는 데이터 집합에서 숨겨진 구조를 찾아 나간다. 클러스터링을 생각하면 된다. 라벨이 없다는 이유로 강화학습을 비지도 학습이라고 생각하기 쉽지만, 강화학습은 보상을 최대로 만들기 위해 노력할 뿐 숨겨진 구조를 찾으려고 하지는 않는다. 더 자세히 말하면 숨겨진 구조를 찾는게 도움은 될 수 있으나 그것만으로는 보상을 최대로 만드는 강화학습의 문제를 풀지 못한다. 그렇기에 강화학습은 비지도 학습과 구분된다.
- 탐험((Exploration))과 활용((Exploitation)) Trade-Off
강화학습 학습자는 많은 보상을 얻기 위해 과거에 보상을 획득하는 데 효과적이었던 행동들을 활용해야만 한다. 하지만 이러한 효과적인 행동들을 발견하려면 과거에 하지 않았던 행동을을 시도하며 탐험해야만 한다. 이러한 탐험과 활용 사이에 균형을 잡는 문제 즉 탐험과 활용의 딜레마는 수십 년 동안 수학자들의 집중적인 연구대상이었지만 여전히 미해결의 문제로 남아있다.
- 불확실한 주변 환경과 상호작용하는 목표 지향적인 강화학습의 학습자
강화학습의 또다른 핵심은 불확실한 주변 환경과 상호작용하는 목표 지향적인 강화학습의 학습자에 대한 문제를 분명하게 고려한다는 점이다.모든 강화학습의 학습자는 분명한 목표가 있고, 주변 환경의 여러 측면을 감지할 수 있으며, 그 환경에 영향을 주기 위한 행동을 선택할 수 있다. 더욱이, 학습자는 자신이 마주한 환경이 불확실하다고 생각해도 학습을 수행해야 한다는 사실을 인지한 상태로 학습을 시작한다.
1.2 Examples
강화학습을 이해하기 위해 강화 학습의 발전에 중요한 역할을 했던 예제와 적용 사례를 보고 넘어가자. 그냥 한 번 읽고 넘어가면 된다.
모든 예제는 학습자와 그를 둘러싼 주변 환경 사이의 상호작용을 다루고 있다. 학습자는 상호작용을 통해 얻는 자신의 경험을 활용하여 시간이 지남에 따라 행동 능력을 키우게 된다. 주변 환경에는 불확실한 요소들이 있지만, 학습자는 목표를 이루기 위한 방법을 모색하게 된다. 이 때의 행동이 주변 환경에 영향을 미치게 되기에 올바른 선택을 하기 위해서는 행동의 간접적인 영향과 지금의 행동이 일정 시간이 자난 후에 미칠 영향을 고려해야 한다.
1.3 Elements of Reinforcement Learning
앞에서 계속 언급하던 학습자((Agent))와 주변 환경((Environment))을 포함하여 강화학습에는 6가지의 주요한 구성 요소가 존재한다.
1) 정책((Policy))
정책은 특정 시점에서 학습자가 취하는 행동을 정의한다. 일반적으로 정책은 각 행동이 선택될 확률을 부여하고 그 확률에 따라 확률에 따라 행동을 선택하게 한다.
2) Reward Signal
보상 신호은 강화학습이 성취해야할 목표를 정의하는 확률론적 함수라고 볼 수 있다. 다. 매 시간마다 주변 환경은 강화학습을 이용하는 학습자에게 reward라고 불리는 하나의 숫자 보상 신호를 전달하게 된다. 학습자의 유일한 목표는 장기간에 걸쳐 얻게되는 보상의 총합을 최대로 하는 것이다. 따라서 학습자는 이 보상이 좋은 것인지 나쁜 것인지 판단할 수 있어야 한다.
3) Value function
특정 시점 이후의 상태와 그 상태에 포함된 장점을 고려하여 장기적 관점으로 평가한 상태((state))의 가치을 보이는 함수. -> 가치((value))는 그 상태의 시작점부터 일정한 시간 동안 학습자가 기대할 수 있는 보상((reward))의 총량이다.
장기적으로 최대한 많은 보상을 얻기 위해서 학습자는 보상이 최대한 행동보다는 장기적인 관점에서 가치가 최대인 행동을 선택해야 한다. 하지만 이러한 가치의 크기를 결정하는 것은 학습자의 전 생애주기 동안 학습자가 관찰하는 것들로 부터 반복적으로 추정해야 하는 매우 어려운 행동이며,이 때문에 이 책에서 다루는 강화학습 알고리즘에서 가장 중요한 것은 효과적으로 가치((value)를 추정하는 것이다. 가치 추정은 강화학습에서 핵심적인 역할을 한다.
4) Model
모델은 환경의 변화를 모사한다. 즉 환경이 어떻게 변하는지 추정할 수 있게 해준다. 예를 들면 모델은 어떠한 행동에 따른 다음 상태와 보상을 예측한다. 모델은 계획((planning))을 위해 사용된다.
cf. planning이란: 미래의 상황을 실제로 경험하기 전에 가능성만을 고려하여 일련의 행동을 결정하는 방법. 어떠한 행동에 따른 다음 상태와 보상을 모델을 통해 예측할 수 있으므로 이게 가능해진다.
이러한 모델과 계획을 사용하여 강화학습의 문제를 해결한 방법을 model-based이라고 한다. 즉 내 행동을 통해 바뀌게 될 상태와 보상을 예측할 수 있으므로 실제로 경험하기 전에 가능성을 고려하여 행동을 선택하는 것이다.
이와 반대되는 model-free는 계획과 반대되는 전적으로 시행착오 학습자가 취하는 방법이다. model이 없기에 내 행동으로 인해 바뀌게 될 상태와 보상들을 예측할 수 없으므로 그냥 계속 시행착오를 통해 학습을 진행하게 된다.
'Reinforcement learning > 0. Intro' 카테고리의 다른 글
ch1. The Reinforcement Learning Problem 2 (Introduction) (2) | 2024.12.26 |
---|