21. 이미지·로보틱스의 강화학습 — GRPO가 시각 생성을 만났을 때

그룹 통제: 무엇을 같게 두고 비교할 것인가

GRPO는 그룹 안의 샘플끼리 보상을 비교한다. 이미지 모델에서 한 그룹의 그림 여덟 장은 두 군데에서 갈린다. 처음에 뽑는 시작 노이즈, 그리고 디노이징 스텝마다 섞이는 노이즈다. 그룹 안의 보상 차이가 어느 쪽에서 왔는지에 따라 정책이 배우는 것이 달라질까?

역사: 시작 노이즈가 제각각이면 해킹이 났다

DDPO 같은 앞선 방법은 그룹 안의 샘플마다 서로 다른 시작 노이즈를 썼다. DanceGRPO 팀은 영상 생성에서 같은 프롬프트의 샘플에 서로 다른 시작 노이즈를 주면 언제나 리워드 해킹(보상 모델의 빈틈을 파고들어 점수만 올리는 것)이 일어나고 학습이 불안정해졌다고 보고했다. 그래서 같은 프롬프트에서 나온 샘플은 시작 노이즈 하나를 함께 쓰게 했다.

(가) 시작 노이즈가 제각각 시작 노이즈 완성본 (나) 시작 노이즈 하나를 함께 씀 시작 노이즈 완성본 주황 점 = 보상을 받는 완성본 넷

(가)에서는 네 장의 보상이 다를 때 그 차이가 시작점에서 왔는지 도중의 스텝에서 왔는지 섞여 있다. (나)에서는 출발점이 같고, 넷은 스텝마다 넣은 노이즈로만 갈라진다. 시작 노이즈를 함께 쓰면 그룹 안의 차이는 어디서 오는지, 탐색이 줄어 손해는 아닌지는 아래 문제에서 따져 본다.

ML에서: 로봇과 자율주행 — 앵커로 그룹을 묶는다

디퓨전이 로봇과 자율주행의 정책으로 쓰이는 이유는 다중 모드(좋은 행동 방식이 여러 갈래로 봉우리를 이룬) 행동 분포다 — 왼쪽으로 피할지 오른쪽으로 피할지의 평균은 정면 충돌이다. 여기에 RL을 붙이는 구조는 DDPO와 같다. 디퓨전 정책의 스텝 노이즈가 행동 공간을 탐색하고, 보상(태스크 성공, 충돌 회피)이 좋은 궤적의 디노이징 판단을 강화한다. 로봇은 초당 수십 번 행동을 정해야 해서 디노이징 스텝을 줄이는 연구도 함께 간다. 예를 들어 OneDP(Wang et al., “One-Step Diffusion Policy”, arXiv:2410.21257, ICML 2025)는 미리 학습된 디퓨전 정책을 한 스텝 생성기로 증류(큰 모델의 출력을 작은 모델이 따라 하게 학습시키는 것)해 행동 예측 주기를 1.5Hz에서 62Hz로 끌어올렸다.

자율주행. DiffusionDrive(CVPR 2025)는 주행 의도마다 앵커(직진, 좌회전, 차선 변경 등의 대표 궤적)를 두고, 앵커 근처의 노이즈에서 짧게 디노이징해 궤적을 만든다. 모방 학습만으로는 다양성과 품질 사이에서 딜레마에 빠진다 — 장면마다 정답 궤적이 하나뿐이라 그 궤적과 가장 가까운 앵커만 좋은 쪽으로 배우고, 나머지 앵커가 내는 나쁜 궤적은 바로잡을 신호가 없다. DiffusionDriveV2(arXiv:2512.07745, 2025년 12월)는 RL로 이를 풀었다. 설계에서 GRPO의 그룹을 어떻게 짜는지가 핵심이다.

NAVSIM v1 주행 점수(PDMS) 91.2를 보고했다. 앞의 DanceGRPO가 "같은 시작 노이즈"로 그룹을 묶었듯, 여기서는 "같은 앵커"로 그룹을 묶는다 — 무엇과 무엇을 비교할 것인가가 GRPO를 새 도메인에 옮길 때마다 새로 답해야 하는 질문이다.

모방 학습은 사람 시연에 있는 좋은 모드만 따라 하고, 모델이 스스로 낼 법한 나쁜 궤적은 보지 못한다. RL은 모델이 직접 뽑은 궤적을 채점하므로 나쁜 모드를 억제하고, 탐색으로 시연을 넘어설 수 있다.

문제 5 — 조별 발표의 점수

두 조가 같은 수업에서 발표했다. 가 조는 쉬운 주제를, 나 조는 어려운 주제를 제비로 뽑았다. 조원 넷의 점수는 가 조 82, 88, 85, 81, 나 조 71, 75, 73, 69점이다. (가) 여덟 명 전체 평균과 견준 차이를 구하시오. (나) 각 조의 평균과 견준 차이를 구하시오. (다) 한 사람이 발표를 얼마나 잘했는지 보려면 어느 쪽 차이를 써야 하는가?

김민준 (평상)
김민준
전체 평균이 78이니까 가 조는 +4, +10, +7, +3, 나 조는 −7, −3, −5, −9예요. 나 조는 다 못한 거네요.
선생님 (질문)
선생님
나 조에서 가장 높은 75점 학생이, 가 조에서 가장 낮은 81점 학생보다 발표를 못했다고 할 수 있나요?
이서연 (평상)
이서연
주제 운이 섞여 있어서 모르겠어요. 조 평균과 견주면 가 조는 84를 기준으로 −2, +4, +1, −3, 나 조는 72를 기준으로 −1, +3, +1, −3이에요. 75점 학생은 자기 조에서 +3, 81점 학생은 −3이고요.
김민준 (아하)
김민준
주제 운은 조원 넷이 똑같이 받으니까 조 평균을 빼면 지워지네요.
이서연 (평상)
이서연
그런데 조 평균을 빼 버리면 어려운 주제를 맡은 것의 효과는 아예 볼 수 없잖아요.
선생님 (평상)
선생님
그 주제는 누가 골랐죠?
이서연 (평상)
이서연
제비로 뽑았어요. 아, 조원이 고른 게 아니니까 애초에 개인 점수에 넣을 몫이 아니네요.

정리 (가) 가 조 +4, +10, +7, +3, 나 조 −7, −3, −5, −9. (나) 가 조 −2, +4, +1, −3, 나 조 −1, +3, +1, −3. (다) 조 평균과의 차이. 조원 모두가 함께 받은 운(주제)은 같은 조 안에서 평균을 빼면 지워지고, 남는 것이 개인의 몫이다.

문제 6 — (킬러) 시작 노이즈를 공유하는 이유

DanceGRPO는 한 그룹의 모든 샘플이 같은 시작 노이즈를 공유하게 한다. 민준은 "탐색이 줄어드니 손해"라고 하고, 서연은 "시작 노이즈까지 다르게 해야 그룹 평균이 프롬프트의 기대 보상을 제대로 추정한다"고 한다. (가) 시작 노이즈가 제각각이면 그룹 내 보상 차이의 출처는 무엇과 무엇인가? (나) 정책 그래디언트는 어느 쪽 차이에서만 배울 수 있는가? (다) 두 학생의 주장을 각각 평가하시오.

선생님 (평상)
선생님
(가)부터요. 시작 노이즈가 제각각이면 그룹 내 보상 차이는 어디서 오죠?
이서연 (평상)
이서연
두 군데요. 시작 노이즈 xT\textcolor{#1c9c60}{x_T}가 달라서 생기는 차이, 그리고 스텝마다 섞이는 노이즈 — 즉 정책이 고른 행동 — 가 달라서 생기는 차이.
선생님 (질문)
선생님
(나) 정책 그래디언트는 둘 중 어느 쪽에서 배우죠? ∇log⁡π\nabla \log \textcolor{#1565c0}{\pi} 가 어디에 붙는지 보세요.
김민준 (평상)
김민준
로그확률은 스텝 전이 pθ(xt−1∣xt)\textcolor{#1565c0}{p_\theta}(\textcolor{#1c9c60}{x_{t-1}} \mid \textcolor{#1c9c60}{x_t}) 에만 있어요. 시작 노이즈 xT\textcolor{#1c9c60}{x_T}는 그냥 N(0,I)\mathcal{N}(0, I)에서 뽑은 거라 θ가 없어요.
이서연 (생각)
이서연
그러면 시작 노이즈 때문에 생긴 보상 차이도 어드밴티지에 섞여 들어가는데, 그 차이를 스텝 행동의 로그확률에 대고 올리고 내리는 거네요. 운이 좋았던 시작점 덕분에 받은 점수를 스텝 행동의 공으로 돌리는 셈이에요.
선생님 (평상)
선생님
그럼 (다). 민준 학생은 "탐색이 줄어 손해"라고 했죠.
김민준 (당황)
김민준
줄어드는 탐색은 시작 노이즈 쪽인데, 그건 원래 정책이 배울 수 없는 차이였네요. 스텝 노이즈의 탐색은 그대로 남고요. 손해가 아니라 잡음을 뺀 거였어요.
김민준 (평상)
김민준
아까 조별 발표 문제랑 같네요. 주제 운으로 생긴 차이까지 개인 점수에 넣으면 안 되듯, 시작 노이즈 운을 스텝 행동의 공으로 돌리면 안 되죠. 같은 조 안에서 비교해야 개인 기여가 보여요.
선생님 (평상)
선생님
서연 학생은 "그룹 평균이 기대 보상을 제대로 추정해야 한다"고 했어요. 틀린 말인가요?
이서연 (의심)
이서연
틀리진 않은데… 공유하면 그룹 평균은 "이 프롬프트 + 이 시작 노이즈"에서의 기대 보상이 되니까, 추정하는 대상이 좁아지는 거예요. 그런데 어드밴티지는 "같은 조건에서 이 행동이 평균보다 나았나"를 보는 거라, 오히려 조건을 맞춘 쪽이 맞는 베이스라인이네요.
이서연 (깨달음)
이서연
베이스라인은 상태에 조건을 걸수록 분산이 줄잖아요. V(s)\textcolor{#00897b}{V}(s)가 E[R]\mathbb{E}[\textcolor{#d9670b}{R}]보다 나은 베이스라인인 것처럼요. 시작 노이즈도 상태의 일부로 본 거네요.
선생님 (평상)
선생님
그래요. 서연 학생은 추정 대상을 넓게 잡는 게 좋다고 봤지만, 베이스라인은 같은 상태에서의 기대값일수록 좋아요. 대신 여러 시작 노이즈를 보려면 그룹을 여러 개 만들면 되죠.

정리 (가) 시작 노이즈의 차이 + 스텝 행동의 차이. (나) 로그확률은 스텝 전이에만 있으므로 스텝 행동의 차이에서만 배울 수 있다. 시작 노이즈 차이는 어드밴티지에 섞이는 잡음이다. (다) 민준: 줄어드는 탐색은 원래 배울 수 없는 쪽이라 손해가 아니다. 서연: 그룹 평균의 추정 대상은 좁아지지만, 같은 상태에 조건을 건 베이스라인이 분산이 더 작다(V(s)\textcolor{#00897b}{V}(s)가 E[R]\mathbb{E}[\textcolor{#d9670b}{R}]보다 나은 베이스라인인 것과 같은 논리). 다양한 시작 노이즈는 여러 그룹으로 확보한다.