강화학습이란?
강화학습(Reinforcement Learning, RL)은 에이전트가 주어진 환경 안에서 상태를 인식하고, 가능한 여러 행동들 중에서 보상을 최대화할 수 있는 행동을 선택하는 학습 방법입니다. 이 방식은 에이전트가 랜덤하게 행동을 수행한 후, 그 행동에 대해 보상(reward)이나 페널티를 받으면서 학습이 이루어집니다. 결국, 에이전트는 보상을 최대화하는 행동을 찾도록 모델이 학습됩니다. 강화 학습 - 위키백과, 우리 모두의 백과사전
강화학습의 구성 요소
강화학습에서 중요한 요소는 상태(state), 행동(action), 그리고 **보상(reward)**입니다. 에이전트는 주어진 환경에서 각 시간 단계마다 상태를 인식하고, 그에 맞는 행동을 선택합니다. 그 후, 선택한 행동에 대해 보상을 받으며, 이를 바탕으로 계속 학습을 진행합니다.
Input Data for RL
강화학습의 학습 과정은 다음과 같은 형태의 데이터로 구성됩니다:
$$H=<S_1, A_1, R_1, S_2, A_2, R_2, \cdots, S_T, A_T, R_T>$$
or
$$H=<O_1, A_1, R_1, O_2, A_2, R_2, \cdots, O_T, A_T, R_T>$$
- $S_t$: 시간 $t$에서의 상태
- $A_t$: 시간 $t$에서 에이전트가 취한 행동
- $R_t$: 상태 $S_t$에서의 보상
Observation vs State
상태(State)와 관찰(Observation)은 종종 혼동되지만, 중요한 차이가 있습니다.
- State: 환경의 현재 상태에 대한 모든 정보를 포함하는 개념
Observation: 상태의 부분 집합으로, 일반적으로 상태에 대한 모든 정보를 알 수 없습니다.
환경의 상태 (Environment State)
강화학습에서는 환경의 상태가 에이전트의 학습에 중요한 영향을 미칩니다. 상태를 어떻게 정의하고 해석하는지가 에이전트의 성능에 큰 영향을 주기 때문에, 상태의 개념을 정확히 이해하는 것이 중요합니다.
에이전트의 상태 (Agent State)
에이전트는 자신이 처한 상황에 따라 현재 상태를 평가하고, 그에 맞는 행동을 선택합니다. 이 과정은 에이전트가 보상을 극대화하는 방향으로 학습을 진행하는 중요한 부분입니다.
완전 관측 환경 (Fully Observable Environments)
완전 관측 환경에서는 상태가 관찰과 동일합니다. 이 경우 에이전트는 환경의 모든 상태 정보를 정확하게 알 수 있습니다.
$$S_t^{e'}=S_t^e\ \mathrm{with}\ S_t^{e'}=f_s^a(S_t^a, O_t)$$
부분 관측 환경 (Partially Observable Environments)
부분 관측 환경에서는 상태와 관찰이 동일하지 않습니다. 에이전트는 환경의 모든 정보를 알지 못하고, 관찰된 정보에 기반해 상태를 추정해야 합니다.
$$S_t^{e'}\neq S_t^e\ \mathrm{with}\ S_t^{e'}=f_s^a(S_t^a, O_t)$$
강화학습 에이전트의 주요 구성 요소
강화학습 에이전트는 여러 핵심 요소로 구성됩니다. 각 요소는 에이전트가 최적의 행동을 선택하도록 돕는 역할을 합니다.
1. 정책 (Policy)
정책은 에이전트가 주어진 상태에서 어떤 행동을 취할지 결정하는 함수입니다. 이를 통해 에이전트는 상황에 맞는 최적의 행동을 선택할 수 있습니다.
- 결정론적 정책 (Deterministic policy): 에이전트는 주어진 상태에서 항상 동일한 행동을 선택합니다.
$$a=π(s)a = \pi(s)$$
- 확률적 정책 (Stochastic policy): 에이전트는 주어진 상태에서 특정 행동을 선택할 확률을 가집니다.
$$π(a∣s)=P(At=a∣St=s)\pi(a|s) = \mathbb{P}(A_t = a | S_t = s)$$
2. 가치 함수 (Value Function)
가치 함수는 어떤 상태나 행동이 장기적으로 얼마나 좋은지를 추정하는 함수입니다. 이는 에이전트가 미래의 보상을 예측하고, 현재의 상태가 얼마나 좋은지를 평가하는 데 사용됩니다.
$$vπ(s)=E[Rt+1+γRt+2+γ2Rt+3+⋯∣St=s]with0≤γ≤1v_\pi(s) = \mathbb{E}[R_{t+1} + \gamma R_{t+2} + \gamma^2 R_{t+3} + \cdots | S_t = s] \quad \text{with} \quad 0 \leq \gamma \leq 1$$
여기서 $\gamma$는 할인율(discount factor)로, 미래의 보상에 대해 가중치를 부여하는 역할을 합니다. $\gamma$ 값이 0에 가까울수록 미래의 보상은 덜 중요한 것으로 간주되고, 1에 가까울수록 미래 보상이 중요해집니다.
3. 모델 (Model)
$$P(St+1∣St=s,At=a)\mathbb{P}(S_{t+1} | S_t = s, A_t = a)$$
모델은 에이전트가 환경의 반응을 예측하는 함수입니다. 이를 통해 에이전트는 자신의 행동이 환경에 미치는 영향을 예측하고, 더 나은 의사결정을 내릴 수 있습니다. 다만, 모델 기반 학습은 최근에는 점차 "모델 없는" 강화학습 방식이 주목받고 있습니다.
'인공지능' 카테고리의 다른 글
[논문리뷰] 지속학습(Continual Learning)의 3가지 시나리오 (0) | 2025.03.13 |
---|---|
생성형 AI와 LLM(Large-Language Model)에 대하여 (1) | 2025.02.09 |
[Do it! 딥러닝 입문 리뷰] 6장. 2개의 층을 연결합니다 - 다층 신경망 (0) | 2022.02.21 |
[Do it! 딥러닝 입문 리뷰] 5장. 훈련 노하우를 배웁니다 (0) | 2022.02.19 |
[Do it! 딥러닝 입문 리뷰] 4장. 분류하는 뉴런을 만듭니다 - 이진분류 (0) | 2022.02.19 |