[Home] AI로 돌아가기
[관련 링크] Learning - 학습
[관련 링크] Deep Learning (DL) - 딥러닝
[Wikipedia] Reinforcement learning
강화학습 (Reinforcement Learning)
강화학습은 에이전트(Agent)가 환경(Environment)과 상호작용하며, 보상(Reward)을 최대화하는 방향으로 학습하는 기계학습의 한 분야이다.
1) 기본 개념
강화학습은 지도학습처럼 정답을 미리 알지 않고, 에이전트가 시도한 행동의 결과에 따라 주어지는 보상 값을 기반으로 학습한다. 이는 시행착오를 통해 더 나은 전략(정책)을 스스로 발견하는 방식이다.
2) 주요 구성 요소
- 에이전트 (Agent): 학습과 결정을 수행하는 주체
- 환경 (Environment): 에이전트가 행동을 수행하는 대상
- 상태 (State): 현재 환경의 정보 표현
- 행동 (Action): 에이전트가 취할 수 있는 선택
- 보상 (Reward): 행동 결과에 따른 수치형 피드백
- 정책 (Policy): 상태에 따라 행동을 선택하는 전략
- 가치 함수 (Value Function): 상태의 기대 누적 보상
3) 강화학습의 절차
강화학습은 다음의 반복 루프를 통해 학습이 이루어진다.
- 에이전트가 환경의 상태(State)를 관찰한다.
- 현재 정책에 따라 행동(Action)을 선택한다.
- 환경은 새로운 상태와 보상(Reward)을 반환한다.
- 에이전트는 해당 보상 정보를 기반으로 정책 또는 가치 함수를 업데이트한다.
- 이 과정을 수천 ~ 수백만 회 반복하며 성능을 개선한다.
4) 대표 알고리즘
강화학습에는 다양한 알고리즘이 존재하며, 대표적인 것은 다음과 같다.
- Q-learning: 가치 기반(Value-based) 접근 방식으로, Q함수(상태-행동 쌍의 가치)를 업데이트함
- Policy Gradient: 정책 기반(Policy-based) 방식으로, 확률적 정책을 직접 최적화함
- Actor-Critic: 정책 함수와 가치 함수를 동시에 학습
- PPO (Proximal Policy Optimization): 안정성과 효율성을 개선한 정책 최적화 알고리즘
5) 보상모델과 활용
보상모델은 명시적인 보상이 존재하지 않는 복잡한 환경에서, 인간 또는 AI 피드백을 바탕으로 행동의 품질을 평가하여 강화학습에 활용된다.
예: 언어모델에서는 다음과 같은 절차로 보상모델을 사용한다.
- 프롬프트에 대한 응답을 모델이 여러 개 생성한다.
- 사람 또는 AI 평가자가 응답의 선호도를 순위화한다.
- 이 데이터를 이용해 보상모델을 학습한다.
- 보상모델이 응답의 품질 점수를 예측하게 된다.
- 이 보상모델을 기반으로 언어모델을 RL로 학습한다 (예: RLHF, RLAIF).
6) 활용 사례
- 게임 AI (Atari, 바둑, 체스 등)
- 로봇 제어 및 시뮬레이션
- 자율주행 시스템
- 금융 전략 최적화
- 대화형 인공지능(ChatGPT, Bing, Claude 등)
7) AlphaGo와 강화학습
AlphaGo는 인간 기보로 초기 학습한 뒤, 자기대국(self-play)을 반복하며 강화학습으로 전략을 개선했다. 알파고 제로는 인간 데이터 없이 바둑 규칙만으로 강화학습을 수행해 기존 AlphaGo를 압도했다.
“강화학습은 AI가 자율적으로 판단하고, 경험을 통해 개선할 수 있는 길을 열었다.” – 데미스 하사비스