Ultralytics YOLO27: 대기자 명단에 등록하세요.
YOLO 라이선스 받기
Ultralytics 용어집으로 돌아가기

Deep Reinforcement Learning

심층 강화 학습(DRL)은 신경망을 사용해 픽셀과 같은 원시 입력으로부터 정책과 가치 함수를 학습합니다. DQN, PPO, 성과, 한계를 다룹니다.

심층 강화 학습(DRL)은 보상을 극대화하기 위해 에이전트가 시행착오를 통해 학습하는 강화 학습(RL)과 에이전트가 학습한 내용을 표현하는 심층 신경망을 결합합니다. 기존 RL은 모든 상태의 값을 표에 저장하지만, 상태가 카메라 이미지나 로봇의 연속적인 관절 각도라면 이는 불가능합니다. 신경망은 대신 픽셀, 라이다 스캔, 텍스트와 같은 원시 고차원 관측값을 행동 값 또는 행동 확률에 매핑하며, 한 번도 본 적 없는 상태에도 일반화합니다. DeepMind의 DQN은 2015년 화면 픽셀과 게임 점수만으로 Atari 2600 게임 49개를 학습해 플레이하면서 유명해졌습니다. 하나의 네트워크 아키텍처와 하나의 하이퍼파라미터 세트만으로 전문 인간 게임 테스터에 견줄 만한 수준에 도달했습니다.

심층 RL의 작동 방식#

에이전트는 여전히 마르코프 결정 과정의 RL 루프를 따릅니다. 상태를 관찰하고, 행동하고, 보상을 받은 뒤, 업데이트합니다. 달라지는 점은 수백만 개의 파라미터를 가진 네트워크가 다음 항목 중 하나 이상을 담는다는 것입니다:

  • 가치 함수: 네트워크가 각 행동의 기대 수익을 예측하고, 에이전트는 가장 높은 행동을 선택합니다. DQN 네트워크는 움직임을 볼 수 있도록 84×84픽셀로 축소한 최근 게임 프레임 네 개를 입력으로 받았습니다.
  • 정책: 네트워크는 각 행동의 확률을 출력하거나, 조향 각도와 같은 연속적인 행동의 평균과 분산을 출력합니다. 정책 경사 방법은 높은 수익을 얻은 행동을 향해 정책을 직접 조정합니다.
  • 액터 및 크리틱: 액터 네트워크는 행동을 선택하고, 크리틱 네트워크는 가치 함수를 추정하여 각 행동이 기대보다 얼마나 더 나았는지 액터에 알려 줍니다. 이를 통해 업데이트의 노이즈를 줄입니다.
  • 월드 모델: Dreamer와 같은 모델 기반 에이전트는 미래 관측값과 보상을 예측하는 네트워크를 학습한 뒤, 학습된 시뮬레이터 안에서 정책을 학습합니다.

에이전트가 스스로 생성한 데이터로 네트워크를 학습하면 불안정해집니다. 연속된 프레임의 상관관계가 매우 높고 네트워크가 변하면서 목표값도 달라지기 때문입니다. DQN은 이후 알고리즘에서도 계속 사용된 두 가지 아이디어로 이 문제를 해결했습니다. 과거 전이에서 무작위 미니배치를 추출해 학습하는 경험 재생 버퍼와 주기적으로만 업데이트되는 별도의 타깃 네트워크입니다:

코드에서 구현하는 정책 경사#

정책 경사 방법은 가치 테이블을 완전히 건너뛰고 네트워크에서 행동을 샘플링한 뒤, 높은 수익으로 이어진 행동의 확률을 높입니다. 이 PyTorch 예제는 최초의 정책 경사 알고리즘인 REINFORCE로 소규모 정책 네트워크를 학습시켜, 움직이는 카트 위의 막대가 쓰러지지 않도록 제어합니다. 환경은 Gymnasium CartPole 환경입니다:

import gymnasium as gym
import torch
from torch import nn

torch.manual_seed(0)
env = gym.make("CartPole-v1")
policy = nn.Sequential(nn.Linear(4, 64), nn.ReLU(), nn.Linear(64, 2))  # cart and pole state -> logits for left/right
optimizer = torch.optim.Adam(policy.parameters(), lr=0.02)
lengths = []

for episode in range(500):
    obs, _ = env.reset(seed=episode)
    log_probs, rewards, done = [], [], False
    while not done:  # play one episode with the current policy, earning +1 per step the pole stays up
        dist = torch.distributions.Categorical(logits=policy(torch.as_tensor(obs)))
        action = dist.sample()
        obs, reward, terminated, truncated, _ = env.step(action.item())
        log_probs.append(dist.log_prob(action))
        rewards.append(reward)
        done = terminated or truncated
    # REINFORCE: raise the log-probability of actions followed by above-average discounted return
    returns = torch.tensor([sum(0.99**k * r for k, r in enumerate(rewards[t:])) for t in range(len(rewards))])
    loss = -(torch.stack(log_probs) * (returns - returns.mean()) / (returns.std() + 1e-8)).sum()
    optimizer.zero_grad()
    loss.backward()
    optimizer.step()
    lengths.append(len(rewards))

print(f"Average episode length: first 20 = {sum(lengths[:20]) / 20:.0f}, last 20 = {sum(lengths[-20:]) / 20:.0f}")

스크립트는 first 20 = 14, last 20 = 500을 출력합니다. 학습되지 않은 네트워크는 약 14단계 안에 막대를 떨어뜨리지만, 에피소드 500회를 학습한 뒤에는 모든 에피소드에서 최대 500단계까지 균형을 유지합니다. 다른 난수 시드에서는 같은 스크립트가 학습 도중 정체되거나 성능이 붕괴할 수 있습니다. 크리틱과 근접 정책 최적화(PPO)의 클리핑 업데이트는 이러한 높은 분산을 줄이기 위해 고안되었습니다. Stable-Baselines3와 같은 라이브러리는 PPO, DQN, 소프트 액터-크리틱(SAC)의 검증된 구현을 제공합니다.

주요 응용 분야#

  • 게임: Atari 이후 심층 RL 에이전트는 AlphaGo로 바둑 세계 챔피언을 이겼고, AlphaStar로 StarCraft II에서 그랜드마스터 수준에 도달했습니다. 이들은 인간의 게임 기록을 통한 학습과 RL 자기 대국을 결합했습니다.
  • 드론 레이싱: 시뮬레이션에서 심층 RL로 학습하고 실제 비행 데이터로 미세 조정한 취리히 대학교의 Swift 드론은 2023년 챔피언 조종사 세 명 각각과의 여러 맞대결에서 승리했으며, 기록상 가장 빠른 레이스 시간을 세웠습니다.
  • 핵융합 에너지: DeepMind와 EPFL의 스위스 플라스마 센터는 심층 RL 정책으로 토카막의 자기 코일을 제어해 플라스마의 형태를 여러 가지로 조정했으며, 서로 분리된 플라스마 "방울" 두 개를 동시에 만들기도 했습니다.
  • 로보틱스: 다리가 달린 로봇은 수천 대의 시뮬레이션 로봇에서 학습한 정책을 사용해 험한 지형에서 걷는 법을 익힙니다. 마찰과 질량을 무작위로 바꾸어 실제 하드웨어로 옮긴 뒤에도 정책이 안정적으로 작동하게 합니다.
  • 언어 모델: 선호도 기반 또는 자동 검증 보상을 사용한 트랜스포머 정책의 RL 미세 조정은 오늘날의 채팅 어시스턴트와 추론 모델을 탄생시켰습니다.

관측으로서의 지각#

DQN의 합성곱 신경망은 보상만으로 보는 법을 학습해야 했으며, 매 스텝마다 84×84×4 = 28,224개의 픽셀 값을 입력으로 받았습니다. 많은 로봇 및 자율주행 시스템은 대신 사전 학습된 컴퓨터 비전 모델의 출력을 정책에 입력합니다. 이로써 관측 공간이 작아지고 RL 알고리즘은 의사 결정에 샘플을 사용할 수 있습니다. Ultralytics YOLO26은 추적 모드에서 각 카메라 프레임을 모든 객체의 클래스, 바운딩 박스, 지속적인 ID로 변환합니다. 이 객체 중심 상태에서 정책은 프레임 간 객체의 움직임도 읽을 수 있습니다.

과제#

심층 RL은 데이터 비용이 많이 듭니다. DQN은 게임당 5천만 프레임, 즉 약 38일 동안 플레이하는 분량으로 학습했습니다. 이런 이유로 대부분의 로봇 정책은 시뮬레이션에서 학습한 다음 하드웨어로 이전합니다. 시뮬레이션 물리는 현실과 정확히 일치하지 않으므로 엔지니어는 도메인 무작위화로 마찰, 질량, 조명, 텍스처를 무작위화하고, 드문 조건을 위해 합성 데이터를 추가합니다. 결과는 무작위 시드, 하이퍼파라미터, 구현 세부 사항에 따라서도 크게 달라지는데, 이러한 재현성 문제는 중요한 심층 강화 학습에서 설명합니다. 강력한 최적화 알고리즘은 불완전한 보상의 허점도 찾아내는데, 이를 보상 해킹이라고 합니다. 예를 들어 보트 경주 에이전트가 경주를 완주하는 대신 점수를 모으며 끝없이 원을 도는 법을 학습한 경우가 있습니다.

  • 강화 학습: 더 광범위한 분야입니다. 표 형식 RL은 작은 문제에 적합하며, 심층 RL은 신경망을 함수 근사기로 사용하는 RL입니다.
  • 딥러닝: 일반적인 딥러닝은 고정된 레이블 데이터셋으로 학습합니다. 심층 RL에서는 에이전트가 자체 행동으로 데이터를 생성하며, 학습 신호는 레이블 대신 지연된 보상입니다.
  • 인간 피드백 기반 강화 학습 (RLHF): 인간 선호도 비교로 학습한 보상 모델이 직접 작성한 보상을 대체하는 심층 RL 방법으로, 언어 모델을 정렬하는 데 사용됩니다.
  • 모델 예측 제어: MPC는 매 제어 단계에서 명시적 모델을 대상으로 새로운 최적화를 수행하는 반면, 학습된 심층 RL 정책은 네트워크의 순전파 한 번으로 각 행동을 선택합니다.

솔루션 살펴보기

스포츠 분야의 컴퓨터 비전

스포츠 분야의 컴퓨터 비전

Ultralytics YOLO가 선수 및 공 추적, 경기력 분석, 코칭 인사이트, 선수 재활을 통해 스포츠 비전을 구현하는 방법을 알아보세요.
자세히 알아보기
항공 이미지 컴퓨터 비전

항공 이미지 컴퓨터 비전

Ultralytics YOLO를 활용해 드론 및 항공 이미지를 농업, 양식업, 보전, 지리 공간 분석을 위한 실시간 인사이트로 전환하세요.
자세히 알아보기
항공우주 분야의 컴퓨터 비전

항공우주 분야의 컴퓨터 비전

Ultralytics YOLO를 활용해 항공기 검사, 활주로 FOD 감지, 공항 지상 운영, 복합재 결함 감지 등 항공우주 분야에 컴퓨터 비전을 적용하세요.
자세히 알아보기
보안 분야의 컴퓨터 비전

보안 분야의 컴퓨터 비전

Ultralytics YOLO 모델로 모든 시설을 보호하세요. Vision AI는 경계 모니터링, 위협 감지, 번호판 인식, 작업장 안전을 지원합니다.
자세히 알아보기
로보틱스 분야의 컴퓨터 비전

로보틱스 분야의 컴퓨터 비전

Ultralytics YOLO 모델로 더 스마트한 머신을 구현하세요. 로보틱스 분야의 Vision AI는 자율 주행, 인식, 객체 추적, 실시간 제어를 지원합니다.
자세히 알아보기
물류 분야의 컴퓨터 비전

물류 분야의 컴퓨터 비전

Ultralytics YOLO 모델로 물류를 간소화하세요. 비전 AI는 화물 검사, 분류, 차량 추적, 실시간 창고 안전 모니터링을 지원합니다.
자세히 알아보기
리테일 분야의 컴퓨터 비전

리테일 분야의 컴퓨터 비전

Ultralytics YOLO 모델로 리테일의 새로운 가능성을 열어 보세요. 비전 AI는 재고 추적, 선반 모니터링, 대기열 관리, 더욱 심층적인 고객 인사이트를 지원합니다.
자세히 알아보기
의료 분야의 컴퓨터 비전

의료 분야의 컴퓨터 비전

Ultralytics YOLO 모델로 의료 솔루션을 구축하세요. 의료 분야의 비전 AI는 의료 영상 판독을 가속화하고, 진단을 개선하며, 환자 모니터링을 지원합니다.
자세히 알아보기
제조 분야의 컴퓨터 비전

제조 분야의 컴퓨터 비전

Ultralytics YOLO 모델로 제조 공정을 최적화하세요. 비전 AI는 품질 관리, 결함 탐지, PPE 규정 준수, 조립 라인 자동화를 지원합니다.
자세히 알아보기
자동차 분야의 컴퓨터 비전

자동차 분야의 컴퓨터 비전

Ultralytics YOLO 모델로 자동차 분야에 컴퓨터 비전을 적용하세요. 비전 AI는 도로 안전, 운전자 지원, 차량 자동화를 개선해 더 스마트한 도로를 구현합니다.
자세히 알아보기
농업 분야의 컴퓨터 비전

농업 분야의 컴퓨터 비전

Ultralytics YOLO 모델로 스마트 농업에 비전 AI를 도입하세요. 작물 모니터링, 가축 추적, 정밀 농업을 지원하여 더 높은 수확량과 더 스마트한 농업을 실현합니다.
자세히 알아보기

함께 AI의 미래를 만들어 가세요!

머신러닝의 미래와 함께 여정을 시작하세요