콘텐츠로 이동

P4-19.4 보충학습: 강화학습 후속 갈래 지도

Section ID: P4-19.4 Version: v2026.07.24

보조제목: DQN, PPO, RLHF는 강화학습의 어떤 문제의식에서 갈라졌는가

P4-19.1부터 P4-19.3까지 읽고 나면 강화학습을 더 공부할 때 곧 여러 이름을 만나게 됩니다.

  • DQN
  • PPO, TRPO, A2C, A3C
  • safe reinforcement learning
  • offline reinforcement learning
  • domain randomization
  • RLHF, preference optimization

이 이름들은 서로 다른 시대와 문제의식에서 나왔지만, 한꺼번에 밀려들기 쉽습니다. 이 절은 각 알고리즘 구현을 배우기보다, 왜 이런 이름들이 분기되었는가를 큰 흐름으로 정리하는 데 집중합니다.

이 보충학습은 강화학습의 기본 정의를 다시 처음부터 설명하는 절이 아닙니다. 가치 기반 강화학습의 손잡이는 P4-19.1, 정책 기반 강화학습의 손잡이는 P4-19.2, 적용 위험의 손잡이는 P4-19.3과 개념사전에 두고, 여기서는 그 뒤에 붙는 이름들을 계보처럼만 정리합니다.

보충학습: DQN, PPO, RLHF를 강화학습 큰 흐름 안에서 읽기에서 구분할 경계

이 절은 다음 질문에 답합니다.

  • DQN은 왜 가치 기반 강화학습의 대표 후속 사례로 자주 언급되는가?
  • PPO, TRPO, A2C, A3C는 정책 기반 강화학습의 어떤 어려움을 줄이려는가?
  • safe RL, offline RL은 왜 현실 적용 문맥에서 별도 주제가 되었는가?
  • domain randomization은 sim-to-real 문제와 어떻게 연결되는가?
  • RLHF는 왜 강화학습의 일반 문제와 LLM 정렬 문제를 이어 주는가?

RLHF의 상세 학습 파이프라인과 정렬 실무는 Part 5에서 다시 다룹니다.

보충학습: DQN, PPO, RLHF를 강화학습 큰 흐름 안에서 읽기에서 복구할 연결

  • 강화학습 후속 알고리즘 이름들을 가치 기반, 정책 기반, 현실 적용 보강, LLM 정렬 연결이라는 네 갈래로 정리할 수 있습니다.
  • DQN과 PPO가 각각 어떤 전통 위에 서 있는지 설명할 수 있습니다.
  • safe RL, offline RL, domain randomization이 현실에서 함부로 시도할 수 없음이라는 문제와 연결된다는 점을 말할 수 있습니다.
  • RLHF를 LLM에 강화학습을 그대로 이식한 것이 아니라 정렬 문제에 맞게 변형된 후속 흐름으로 이해할 수 있습니다.

먼저 큰 지도를 그리기

다음 표로 큰 지도를 잡을 수 있습니다.

이름 묶음 주로 답하려는 질문
DQN 값 기반 강화학습을 더 큰 상태 공간으로 어떻게 확장할까?
PPO, TRPO, A2C, A3C 정책을 직접 배우되 너무 불안정하지 않게 만들 수 있을까?
safe RL, offline RL 현실에서 위험하거나 비싼 탐험을 줄일 수 있을까?
domain randomization 시뮬레이션에서 배운 정책을 현실로 더 잘 옮길 수 있을까?
RLHF, preference optimization 사람 선호를 반영해 LLM 출력을 더 바람직하게 만들 수 있을까?

즉, 후속 알고리즘 이름들은 모두 더 똑똑한 강화학습이 아니라, 강화학습을 더 넓은 현실 제약 아래에서 쓰기 위한 분기로 읽는 편이 맞습니다.

이 지도를 처음 읽을 때는 이름보다 무엇이 먼저 깨졌는가를 같이 적어 두는 편이 좋습니다.

먼저 깨진 직관 그래서 갈라지는 이름 묶음
Q-table로는 상태를 다 담기 어렵다 DQN
정책을 직접 바꾸면 너무 흔들린다 PPO, TRPO, A2C, A3C
현실에서는 함부로 탐험할 수 없다 safe RL, offline RL
시뮬레이션 성능이 현실에서 유지되지 않는다 domain randomization
사람 선호를 정답 라벨로 바로 둘 수 없다 RLHF, preference optimization

이 보충학습에서도 이름만 나열하지 말고, 어떤 문제 신호가 어떤 분기를 낳았는지 같이 남겨야 합니다. 같은 강화학습 계열 이름처럼 보여도 실제로 줄이려는 실패 비용과 현실 제약은 다를 수 있으므로, 이름보다 문제 신호를 먼저 적어야 합니다.

이름 묶음 먼저 보인 문제 신호 왜 이 분기가 필요했는가
DQN 값 표만으로는 상태 공간이 너무 커진다 가치 기반을 더 큰 문제로 확장하기 위해
PPO, TRPO, A2C, A3C 정책 업데이트가 쉽게 흔들린다 정책 조정을 더 안정적으로 만들기 위해
safe RL, offline RL 현실에서 마음대로 탐험할 수 없다 실패 비용과 데이터 제약을 줄이기 위해
domain randomization 시뮬레이션 성능이 현실에서 바로 깨진다 sim-to-real gap을 줄이기 위해
RLHF 사람 선호를 정답 라벨로 바로 두기 어렵다 사람 피드백을 보상 신호처럼 연결하기 위해

어떤 후속 갈래를 먼저 찾아보는가

강화학습 후속 이름이 많아 보일 때는 이름보다 지금 먼저 드러난 병목이 무엇인가를 기준으로 갈래를 잡아야 합니다.

먼저 드러난 병목 먼저 떠올릴 갈래 이유
상태 공간이 너무 커서 Q-table 직관이 깨진다 DQN 계열 가치 기반을 함수 근사로 확장하는 문제가 중심이기 때문입니다.
정책 업데이트가 자주 흔들린다 PPO, TRPO, actor-critic 계열 정책을 직접 배우되 더 안정적으로 바꾸려는 흐름과 맞닿아 있습니다.
현실에서 탐험을 마음대로 할 수 없다 safe RL, offline RL 실패 비용과 데이터 제약을 줄이는 쪽이 우선 과제이기 때문입니다.
시뮬레이션 성능이 현실에서 유지되지 않는다 domain randomization, sim-to-real 보강 배포 환경 차이를 줄이는 전략이 먼저 필요합니다.
사람 선호를 언어 모델 출력에 반영해야 한다 RLHF, preference optimization 일반 RL보다 정렬과 사람 피드백 해석이 더 중심 문제가 됩니다.

즉, 후속 이름을 찾는 일은 무슨 알고리즘이 더 유명한가를 고르는 일이 아니라, 지금 병목이 상태 표현 문제인가, 정책 안정화 문제인가, 현실 제약 문제인가, 사람 선호 반영 문제인가를 먼저 분류하는 일에 가깝습니다.

DQN은 왜 따로 자주 등장하나

P4-19.1에서 본 Q-learning은 직관이 좋지만, 상태와 행동이 커지면 표(table)로 값을 다 적기 어려워집니다. DQN은 이 지점에서 등장합니다.

즉, DQN은 Q-value를 표가 아니라 함수 근사기로 대신 표현해 더 큰 상태 공간을 다루려는 흐름입니다.

그래서 DQN은 완전히 새로운 철학이라기보다, 가치 기반 강화학습을 더 큰 문제로 확장한 대표 사례입니다.

이 흐름을 조금 더 촘촘히 적으면 다음과 같습니다.

Q-learning 직관에서 유지되는 것 DQN에서 바뀌는 것
여전히 어떤 행동이 더 가치가 큰가를 묻는다 값을 표 대신 함수 근사로 표현한다
가치 비교로 행동을 고른다 더 큰 상태 공간을 다룰 수 있게 한다
가치 기반 관점을 유지한다 신경망 같은 근사기가 들어오며 해석이 덜 직관적이 된다

즉, DQN은 가치 기반을 버린 이름이 아니라 가치 기반 직관을 더 큰 상태 공간으로 옮긴 이름으로 읽는 편이 맞습니다.

PPO와 actor-critic 계열은 왜 널리 쓰이나

P4-19.2에서 본 정책 기반 강화학습은 행동 방식을 직접 조정한다는 장점이 있지만, 학습이 흔들리기 쉽습니다. PPO, TRPO, A2C, A3C 같은 이름은 대체로 이 문제와 연결됩니다.

  • 정책을 너무 급하게 바꾸지 않게 하고 싶다
  • 학습 신호의 흔들림을 줄이고 싶다
  • actor와 critic의 역할 분담을 더 안정적으로 쓰고 싶다
계열 입문적 읽기
TRPO, PPO 정책을 한 번에 너무 크게 흔들지 않으려는 흐름
A2C, A3C actor-critic 구조를 더 실용적으로 운영하려는 흐름

즉, 이 이름들은 정책 기반 강화학습이 실전에서 자주 흔들린다는 문제에 대한 후속 대답입니다.

이 차이를 더 직접적으로 읽으면 다음과 같습니다.

먼저 보이는 어려움 후속 계열이 줄이려는 것
한 번의 업데이트가 정책을 너무 크게 바꾼다 업데이트 폭
보상 신호가 들쑥날쑥하다 학습 변동성
정책은 직접 배우고 싶지만 값 정보도 버리기 아깝다 actor와 critic의 역할 분담 불안정

따라서 PPO, TRPO, A2C, A3C는 각각 이름이 달라도 공통적으로 정책을 직접 배우는 장점은 살리되, 너무 불안정하게 무너지지 않게 하자는 방향을 공유합니다.

safe RL과 offline RL은 왜 별도 주제가 되었나

P4-19.3에서 본 것처럼 현실에서는 탐험 자체가 위험하거나 비쌀 수 있습니다. 그래서 다음 두 갈래가 따로 커졌습니다.

  • safe RL: 탐험과 정책 개선을 하더라도 위험 제약을 더 엄격하게 다루려는 흐름
  • offline RL: 새 탐험을 많이 하지 않고, 이미 모인 데이터로 정책을 배우려는 흐름

이 둘은 모두 마음껏 시도해 볼 수 없다는 현실 문제에서 나왔습니다.

둘을 함께 묶되 차이도 같이 남겨 두면 좋습니다.

갈래 먼저 줄이려는 위험 기본 발상
safe RL 시도 중 발생할 수 있는 직접 위험 탐험과 학습을 하더라도 제약을 더 엄격히 둔다
offline RL 새 시도를 해야만 생기는 비용과 위험 이미 모인 데이터 안에서 먼저 배우려 한다

즉, 둘 다 현실 제약에서 나왔지만, safe RL은 시도는 하되 더 안전하게, offline RL은 시도를 줄이고 이미 있는 데이터로 먼저에 더 가깝습니다.

domain randomization은 왜 sim-to-real과 연결되나

시뮬레이션에서 잘 배운 정책이 현실에서 실패하는 이유 중 하나는 환경 차이입니다. domain randomization은 시뮬레이션 조건을 일부러 더 다양하게 흔들어, 현실 차이에 덜 약한 정책을 만들려는 방향으로 이해할 수 있습니다.

즉, 핵심은 다음과 같습니다.

현실을 완벽히 복사할 수 없다면, 시뮬레이션을 너무 한 가지 조건에만 맞추지 말자.

이 생각을 더 구체화하면 다음과 같습니다.

시뮬레이션을 한 조건에만 맞출 때 일부러 조건을 흔들 때 기대하는 것
특정 조명, 마찰, 지연에만 과하게 적응한다 현실 차이에 덜 민감한 정책을 얻고 싶다
시뮬레이터 안에서는 점수가 높다 현실에서 갑자기 무너질 가능성을 줄이고 싶다

즉, domain randomization은 시뮬레이터 점수를 최대화하는 기법이라기보다, 시뮬레이터 안에서 너무 깔끔한 세계만 배우지 않게 하는 보강으로 읽는 편이 좋습니다.

RLHF는 왜 여기서도 중요하고, Part 5에서도 다시 보나

RLHF(reinforcement learning from human feedback)는 이름 그대로 보면 강화학습의 한 갈래처럼 보입니다. 하지만 LLM 문맥에서는 일반 게임이나 로봇 제어와 같은 문제를 그대로 옮긴 것이 아닙니다.

  • LLM은 사람 선호나 평가 기준을 바로 정답 라벨로 두기 어려운 경우가 많습니다.
  • 그래서 사람 피드백을 보상 신호처럼 바꾸어 정책을 조정하려는 흐름이 등장했습니다.
  • 이때 강화학습 언어와 정렬(alignment) 언어가 만납니다.

즉, RLHF는 강화학습 일반론의 일부이면서도, LLM 정렬이라는 별도 맥락 때문에 Part 5에서 다시 자세히 볼 필요가 있습니다.

이 차이를 강화학습 일반 문제와 나란히 두면 더 분명해집니다.

비교 항목 일반 제어 문제의 강화학습 RLHF가 주로 다루는 쪽
행동 대상 이동, 제어, 선택 행동 텍스트 출력 정책
사람 목표와의 연결 보상 설계를 통해 간접 연결 사람 선호 피드백을 더 직접 반영하려 함
왜 따로 어렵나 탐험과 환경 반응이 어렵다 선호 해석과 정렬 목표가 어렵다

따라서 RLHF는 단순히 LLM에도 RL을 쓴다가 아니라, 사람 피드백을 어떻게 보상처럼 해석할 것인가가 전면으로 나온 갈래로 읽어야 합니다.

지금 Part 4에서 잡는 것 Part 5에서 다시 보는 것
RLHF가 왜 강화학습 계보와 연결되는가 LLM 학습 파이프라인 안에서 RLHF가 어디에 들어가는가
사람 피드백을 보상처럼 다룰 수 있다는 생각 reward model, preference data, alignment 절차

사례 및 예시

사례 1. DQN, PPO, RLHF가 한꺼번에 나왔을 때 무엇부터 구분해야 할까

강화학습 입문자가 자료를 찾다 보면 게임 성능을 다루는 DQN, 정책 안정화를 말하는 PPO, LLM 정렬 문맥의 RLHF를 한 자리에서 연달아 만나기 쉽습니다. 사람이 먼저 쓰기 쉬운 기준은 보통 요즘 자주 보이는 강화학습 이름들, 더 강한 최신 알고리즘들처럼 한 묶음으로 읽는 것입니다.

하지만 이 기준은 곧 한계를 드러냅니다. 이름만 최신성으로 묶으면 왜 DQN이 나왔는가, 왜 PPO가 따로 널리 쓰이는가, 왜 RLHF가 일반 제어 문제와 다르게 읽혀야 하는가가 흐려집니다. 실제로는 세 이름이 모두 강화학습 개선판이라서 함께 등장하는 것이 아니라, 서로 다른 병목에 대한 답으로 갈라진 것입니다.

flowchart TD
  A["DQN, PPO, RLHF를 함께 마주함"]
  B["어떤 병목이 먼저 나타나는지 묻는다"]
  C["상태 공간이 너무 큼"]
  D["정책 갱신이 불안정함"]
  E["사람 선호가 출력을 이끌어야 함"]
  F["DQN 계열로 읽는다"]
  G["PPO 또는 actor-critic 계열로 읽는다"]
  H["RLHF 또는 선호 학습 계열로 읽는다"]

  A --> B
  B --> C --> F
  B --> D --> G
  B --> E --> H
만난 이름 사람이 먼저 묶기 쉬운 기준 곧 드러나는 한계 현재 절이 바꾸는 해석
DQN 유명한 게임 강화학습 알고리즘 왜 값 기반 계열에서 나왔는지 흐려진다 큰 상태 공간 때문에 Q-table이 무너진 흐름으로 읽는다
PPO 성능 좋은 최신 RL 알고리즘 왜 정책 안정화가 중심 문제였는지 가려진다 정책 업데이트 흔들림을 줄이려는 흐름으로 읽는다
RLHF 강화학습을 LLM에 붙인 이름 사람 선호와 정렬 문제가 사라진다 사람 피드백을 보상처럼 연결하는 정렬 갈래로 읽는다

이 사례를 handoff 메모처럼 줄이면 다음처럼 적을 수 있습니다.

만난 이름 바로 읽어야 할 문제의식 다음에 확인할 연결
DQN 가치 기반을 더 큰 상태 공간으로 어떻게 확장했는가 함수 근사와 Part 4 신경망 연결
PPO 정책 업데이트를 어떻게 덜 흔들리게 만들었는가 actor-critic, 정책 안정화
RLHF 사람 피드백을 어떻게 보상 신호처럼 연결했는가 Part 5 정렬과 preference optimization

같은 자리에 이름이 여러 개 나올수록, 무엇을 계산하나보다 무엇이 먼저 문제였나를 먼저 적는 습관이 중요합니다. 이 사례의 확인 가능한 결과는 DQN, PPO, RLHF를 모두 알고 있다가 아니라, 각 이름을 보고 먼저 떠올려야 할 병목 질문이 달라졌는가로 닫힙니다. 이 보충학습의 목적도 바로 그 분기 감각을 고정하는 데 있습니다.

연습 및 예제

이번 연습은 강화학습 후속 이름을 알고리즘 이름 암기가 아니라 병목과 분기로 다시 읽는 데 초점을 둡니다.

문제 상황:

  • DQN, PPO, offline RL, RLHF 같은 이름이 한꺼번에 나오면 모두 더 좋은 강화학습처럼 뭉쳐 보이기 쉽다

입력(input):

  • 먼저 드러난 병목 4가지
  • 각 병목에 대응하는 후속 갈래 후보

기대 출력(output):

  • 어떤 이름을 먼저 찾아봐야 하는지에 대한 대응표

확인할 개념:

  • 후속 알고리즘 이름은 유명세보다 무슨 병목에서 나왔는가로 먼저 읽어야 한다
  • 가치 기반 확장, 정책 안정화, 현실 제약 보강, LLM 정렬 연결은 서로 다른 분기다
먼저 드러난 병목 성급하게 붙이기 쉬운 이름 더 먼저 대응시킬 갈래
상태 공간이 너무 커져 Q-table이 무너진다 PPO DQN 계열
정책 업데이트가 너무 흔들린다 DQN PPO, TRPO, A2C, A3C
새 탐험을 실제로 많이 할 수 없다 RLHF safe RL, offline RL
사람 선호를 언어 모델 출력에 반영해야 한다 DQN RLHF, preference optimization

같은 판단을 아주 작은 벡터 비교로도 확인할 수 있습니다. 아래 코드는 각 후속 갈래가 어떤 문제 축에 더 가까운지 점수 벡터로 두고, 관찰된 병목과 가장 가까운 갈래를 cosine_similarity로 찾습니다. 실제 연구 계보를 이 숫자로 증명하려는 예제가 아니라, 이름보다 병목을 먼저 읽는 습관을 계산 형태로 확인하는 예제입니다.

import pandas as pd
from sklearn.metrics.pairwise import cosine_similarity

axes = ["state_space", "policy_stability", "real_world_constraint", "human_preference"]
branches = pd.DataFrame(
    [
        [0.95, 0.10, 0.05, 0.05],
        [0.20, 0.95, 0.10, 0.05],
        [0.10, 0.25, 0.95, 0.05],
        [0.05, 0.25, 0.20, 0.95],
    ],
    index=["DQN", "PPO", "offline_RL", "RLHF"],
    columns=axes,
)

bottlenecks = pd.DataFrame(
    [
        [1.00, 0.10, 0.10, 0.00],
        [0.10, 1.00, 0.20, 0.10],
        [0.10, 0.20, 1.00, 0.10],
        [0.00, 0.20, 0.10, 1.00],
    ],
    index=[
        "huge_state_space",
        "unstable_policy_update",
        "cannot_explore_online",
        "human_preference_feedback",
    ],
    columns=axes,
)

scores = cosine_similarity(bottlenecks, branches)
score_table = pd.DataFrame(scores, index=bottlenecks.index, columns=branches.index)

for bottleneck, row in score_table.iterrows():
    best_branch = row.idxmax()
    print(bottleneck, "->", best_branch, "score=", round(row[best_branch], 3))

실행 결과는 다음과 같습니다.

1
2
3
4
huge_state_space -> DQN score= 0.998
unstable_policy_update -> PPO score= 0.989
cannot_explore_online -> offline_RL score= 0.997
human_preference_feedback -> RLHF score= 0.992

이 출력은 DQN이 항상 정답 같은 자동 분류기를 만들자는 뜻이 아닙니다. 병목을 상태 공간, 정책 안정성, 현실 제약, 사람 선호 축으로 먼저 써 보면, 어떤 후속 갈래를 먼저 찾아볼지 더 명확해진다는 점을 보여 줍니다.

직접 판단해 보기

아래 관찰을 보고, 어느 해석이 더 안전한지 먼저 골라 봅니다.

관찰 성급한 결론 더 안전한 해석
DQN과 PPO가 둘 다 자주 언급된다 둘 다 같은 종류의 성능 업그레이드다 하나는 가치 기반 확장, 다른 하나는 정책 안정화 흐름이다
offline RL이 따로 분기됐다 단지 데이터가 적어서 생긴 이름이다 현실에서 새 탐험을 많이 못 하는 제약과 직접 연결된다
RLHF가 강화학습 목록에 들어 있다 일반 제어 문제의 RL을 그대로 LLM에 옮긴 것이다 사람 선호를 보상처럼 연결하는 정렬 문제로 다시 읽어야 한다

이 표의 목적은 이름을 외우는 데 있지 않습니다. 무슨 병목이 먼저 보였는가, 그래서 어느 갈래를 먼저 찾아봐야 하는가를 바로 분류하는 습관을 만드는 데 있습니다.

체크리스트

  • DQN은 가치 기반 강화학습을 큰 상태 공간으로 확장한 흐름이고, PPO·TRPO·A2C·A3C는 정책 기반 강화학습의 불안정성을 줄이려는 흐름이라는 점을 설명할 수 있는가
  • safe RL, offline RL, domain randomization은 현실 제약과 배포 위험 때문에 나온 갈래라는 점을 설명할 수 있는가
  • RLHF가 강화학습이 LLM 정렬과 만나는 지점이라는 점을 설명할 수 있는가
  • 여러 이름이 한꺼번에 나올 때 무슨 병목에서 나온 이름인가를 먼저 묻는 습관이 잡혔는가?

출처와 참고 자료