본 포스팅은 광운대학교 "AID와 로봇을 활용한 자율 조작 학습" 강의 자료를 기반으로 작성되었습니다. 강의 내용을 블로그 형식으로 재구성한 글로, 학습 목적의 정리 포스팅임을 밝힙니다.
들어가며
딥러닝 모델을 학습할 때, 손실 함수(Loss Function)를 어떻게 정의하느냐가 모델의 본질을 결정합니다. MSE를 쓰면 출력과 정답 사이의 거리를 줄이는 회귀 모델이 되고, Cross-Entropy를 쓰면 확률 분포를 맞추는 분류기가 됩니다. 손실 함수는 "이 모델이 무엇을 잘해야 하는지"를 수학적으로 정의하는 설계도입니다.
그런데 여기서 흥미로운 질문이 하나 생깁니다. 만약 손실 함수를 모르는 상태에서, 이미 잘 학습된 모델의 출력값들만 주어진다면 어떨까요? 그 출력들을 역으로 분석해서 "이 모델은 어떤 손실 함수를 최소화하도록 학습됐을까?"를 추론할 수 있을까요?
이것이 이번 글에서 다룰 역강화학습(Inverse Reinforcement Learning, IRL)의 핵심 아이디어입니다. 강화학습(RL)이 보상 함수가 주어지면 최적 정책을 찾아가는 '정방향 문제'라면, IRL은 전문가의 행동으로부터 보상 함수를 거꾸로 추론하는 '역방향 문제'입니다.
이번 글에서는 모방학습의 가장 기본적인 접근법인 행동 복제(Behavior Cloning, BC)와, BC의 한계를 극복하기 위해 등장한 IRL을 함께 다룹니다. 두 방법을 나란히 놓고 비교하면서, "전문가를 단순히 따라 하는 것"과 "전문가의 의도까지 배우는 것"의 차이를 이해해 보겠습니다.
이번 글의 핵심 질문은 이것입니다. "전문가의 행동을 단순히 따라 하는 것을 넘어서, 전문가가 '왜' 그렇게 행동했는지까지 배울 수 있을까?"
1. MDP — 강화학습과 모방학습의 공통 언어
로봇 학습에도 먼저 정해야 할 공통 언어가 있습니다. 바로 마르코프 결정 과정(Markov Decision Process, MDP)입니다. MDP는 강화학습이든 모방학습이든, 로봇이 순서대로 행동하며 무언가를 배우는 모든 문제를 기술하는 수학적 틀입니다.
딥러닝에서 이미지 분류 문제를 다룰 때 "(이미지, 레이블)" 쌍의 형식을 먼저 정하듯, MDP는 로봇 학습의 입출력 형식을 정의합니다. 이 틀 위에서 BC는 전문가를 모방하고, RL은 보상을 최대화하며, IRL은 보상 함수를 추론합니다.
MDP의 세계에는 두 주인공이 있습니다. 에이전트(Agent)는 의사결정을 내리는 주체, 즉 우리가 학습시키려는 로봇입니다. 환경(Environment)은 에이전트를 제외한 모든 것으로, 테이블, 물건, 중력, 물리법칙 전부가 환경에 해당합니다. 환경은 에이전트의 행동에 반응해 상태를 바꾸고 결과를 피드백으로 돌려줍니다.
2. MDP의 다섯 가지 구성요소
MDP는 다섯 가지 요소로 구성됩니다.
① 상태(State, S): 특정 시점의 세상을 완벽하게 담아낸 스냅샷입니다. 에이전트가 다음 행동을 결정하는 데 필요한 모든 정보가 담겨 있습니다. 로봇이라면 현재 관절 각도, 카메라 이미지, 그리퍼 여닫이 여부 등이 모두 상태에 포함됩니다.
② 행동(Action, A): 특정 상태에서 에이전트가 할 수 있는 모든 선택지입니다. 이산적 행동(정해진 선택지: 열기/닫기)과 연속적 행동(모든 실수값: 관절 각도) 두 종류가 있습니다. 로봇 제어는 대부분 연속적 행동에 해당합니다.
③ 상태 전이 확률(Transition Dynamics, P): 환경의 규칙, 즉 물리법칙입니다. 상태 s에서 행동 a를 취했을 때 다음 상태 s'이 어떻게 결정되는지를 나타냅니다. MuJoCo의 mj_step()이 이 전이를 매 스텝 계산하는 함수입니다.
④ 보상(Reward, R): 에이전트가 행동을 했을 때 환경으로부터 받는 즉각적 점수입니다. 강화학습에서는 이 보상을 최대로 만드는 것이 목표입니다. 모방학습에서는 전문가의 행동이 보상을 최대화하는 행동이라고 가정하고, 실제로 보상을 계산하지 않아도 됩니다.
⑤ 정책(Policy, π): 상태를 입력받아 행동을 출력하는 함수입니다. 에이전트의 두뇌 역할로, 우리가 학습시키는 신경망이 바로 정책입니다.
3. 마르코프 성질 — 현재만 알면 충분하다
MDP의 M은 마르코프(Markov)에서 왔습니다. 마르코프 성질이란 "현재 상태가 미래를 예측하는 데 필요한 모든 정보를 담고 있다"는 성질입니다. 과거 이력은 필요 없고 지금 상태만 알면 다음 행동 결정에 충분하다는 가정입니다.
항아리에서 공을 꺼낼 때를 생각해보세요. 복원 추출(꺼낸 공을 다시 넣기)이라면 과거에 어떤 색을 꺼냈는지와 무관하게 매번 확률이 같습니다. 이것이 마르코프 성질이 성립하는 상황입니다. 반면 비복원 추출이라면 과거 이력이 현재 확률에 영향을 줍니다. 이 경우에도 "현재 항아리에 남은 공의 구성"을 상태로 정의하면 마르코프 성질이 다시 성립합니다.
이 성질 덕분에 로봇의 상태를 매 시점마다 독립적으로 처리할 수 있고, 복잡한 이력 추적 없이 지금 당장의 상태만으로 학습을 진행할 수 있습니다.
4. 정책, 궤적, 그리고 반환값
정책이 환경과 한 번 처음부터 끝까지 상호작용하면 하나의 궤적(Trajectory) 또는 에피소드(Episode)가 만들어집니다.
τ = (s₀, a₀, r₀, s₁, a₁, r₁, s₂, a₂, r₂, ...)
좋은 정책은 궤적 전체에서 미래에 받을 보상의 총합, 즉 반환값(Return)을 최대로 만드는 정책입니다. 이때 미래 보상에는 할인율(γ, gamma)을 적용합니다. γ는 0과 1 사이의 값으로, γ가 작을수록 지금 당장의 보상을 더 중요하게 여기고, 클수록 먼 미래 보상도 비슷하게 고려합니다. 수학적으로는 끝이 없는 문제에서 보상의 총합이 무한대로 발산하는 것을 막아주는 역할도 합니다.

5. 가치 함수와 최적 정책
좋은 행동을 선택하려면 각 상황과 선택지의 가치를 평가해야 합니다. 이것이 가치 함수의 역할입니다.
상태 가치 함수 V(s)는 특정 상태 s에 있을 때, 이후 정책 π를 따랐을 때 기대되는 반환값입니다. "지금 이 상황이 얼마나 유리한가"를 숫자 하나로 나타냅니다. 행동 가치 함수 Q(s, a)는 상태 s에서 행동 a를 취한 뒤, 이후 정책 π를 따랐을 때의 기대 반환값입니다. "지금 이 상황에서 이 선택이 얼마나 좋은가"를 평가합니다.
MDP의 최종 목표는 최적 정책 π*를 찾는 것입니다. 모방학습은 여기서 핵심 가정 하나를 추가합니다. "전문가의 정책 π_expert가 최적 정책 π*에 매우 가깝다." 이 가정 아래, 전문가의 행동을 복제하는 것이 최적 정책에 근접하는 지름길이 됩니다. 이것이 행동 복제(BC)의 출발점입니다.
6. 행동 복제(BC) — 강화학습을 지도학습으로
행동 복제(Behavior Cloning, BC)는 모방학습 분야에서 가장 기본적이고 고전적인 알고리즘입니다. 1980년대 자율주행 연구(ALVINN 프로젝트)에서 시작해 지금도 많은 연구의 강력한 기반으로 쓰입니다.
BC의 핵심 아이디어는 복잡한 MDP 문제를 단순한 지도학습 문제로 변환하는 것입니다. 전문가의 궤적 시퀀스에서 시간의 연결고리를 끊고, 각 시점을 독립적인 (상태, 행동) 쌍으로 분리합니다.
τ = (s₀, a₀, s₁, a₁, s₂, a₂, ...)
↓
𝒟_BC = {(s₀, a₀), (s₁, a₁), (s₂, a₂), ...}
상태(s_i)가 입력 데이터(X), 전문가 행동(a_i)이 정답 레이블(Y)이 됩니다. 이제 남은 것은 표준 지도학습입니다.
손실 함수는 행동의 유형에 따라 다릅니다. 로봇 관절 제어처럼 연속적인 행동에는 MSE를, 이산적인 선택지라면 Cross-Entropy Loss를 씁니다.
L(θ) = (1/N) Σ ||π_θ(sᵢ) - aᵢ||² ← MSE (로봇 제어, 연속 행동)
L(θ) = (1/N) Σ CrossEntropy(π_θ(sᵢ), aᵢ) ← Cross-Entropy (이산 행동)
모델 아키텍처도 입력 형태에 따라 결정됩니다. 관절 각도처럼 저차원 벡터라면 MLP, 카메라 이미지라면 CNN(대표적으로 ResNet), 둘 다 사용한다면 CNN 인코더와 MLP 인코더의 특징 벡터를 결합(Concatenate)하고 MLP 헤드에서 최종 행동을 예측하는 멀티모달 구조를 씁니다.
학습 루프는 표준 지도학습과 완전히 동일합니다. 미니배치 샘플링 → 순전파(행동 예측) → 손실 계산 → 역전파 → 옵티마이저 업데이트. 딥러닝 배경이 있으신 분이라면 하루 안에 구현 가능합니다.
7. BC의 치명적 약점 — 분포 불일치
BC는 단순하고 빠르고 강력하지만, 치명적인 약점이 있습니다. 분포 불일치(Distribution Mismatch) 문제입니다.
학습할 때 모델은 오직 전문가가 방문했던 상태들만 봅니다. 그런데 실제로 로봇을 돌려보면 학습된 정책은 완벽하지 않아 작은 실수를 저지르고, 이는 전문가가 한 번도 가보지 않은 낯선 상태로 이어집니다. 낯선 상태에서 모델은 어떻게 해야 할지 배운 적이 없고, 더 큰 실수를 합니다. 그 실수는 더 낯선 상태로 이어지고... 이 악순환이 오차 누적(Compounding Errors)입니다.
통계적으로 이를 공변량 변화(Covariate Shift)라고 합니다. 학습 시 입력 분포(전문가가 방문한 상태들)와 실행 시 입력 분포(학습된 정책이 만드는 상태들)가 달라지는 현상입니다.
자율주행 예시가 가장 직관적입니다. 전문가 운전자는 항상 차선 중앙으로만 주행해 데이터를 수집했습니다. BC 모델은 "차선 중앙에서는 직진"을 완벽하게 학습했지만, 미세한 오차로 살짝 벗어나는 순간 — 이 상태는 데이터에 없었습니다. 중앙으로 복귀하는 방법을 배운 적이 없으니 계속 벗어나다 결국 이탈합니다.

8. BC의 한계 극복 — 데이터 증강과 DAgger
데이터 증강(Data Augmentation)은 가장 간단한 접근입니다. 이미지에 무작위 자르기, 밝기 조절 등을 적용하거나, 관절 각도에 작은 가우시안 노이즈를 추가해 모델이 미세한 오차에 덜 민감하게 만듭니다. BC의 약점을 완전히 해결하진 못하지만 성능을 눈에 띄게 향상시킵니다.
DAgger(Dataset Aggregation)는 더 근본적인 해결책입니다. BC의 문제는 모델이 방문하는 낯선 상태에 대한 데이터가 없다는 것이므로, 이를 의도적으로 수집합니다.
1. 현재까지 수집된 데이터로 정책 π_i 학습
2. 학습된 π_i를 실제 환경에서 실행하며 방문하는 상태 기록
3. 전문가에게 "이 상황에서 어떻게 해야 했는지" 정답 레이블 받기
4. 새로 수집된 쌍을 기존 데이터셋에 추가
5. 1번으로 돌아가 반복
이 과정을 반복하면 데이터셋이 점점 풍부해져 분포 불일치가 줄어듭니다. BC가 고정된 데이터셋으로 한 번만 학습하는 것과 달리, DAgger는 모델과 전문가가 상호작용하며 데이터셋을 점진적으로 키워나갑니다.
그런데 DAgger도 결국 "어떻게(How)" 행동하는지를 학습하는 데 집중합니다. 전문가가 "왜(Why)" 그렇게 행동했는지는 여전히 묻지 않습니다. 이 근본적인 한계를 해결하려면 다른 시각이 필요합니다.
9. BC가 못 배우는 것 — 전문가의 '의도'
아기가 걸음마를 배우는 과정을 생각해보세요. 어른의 다리 근육 움직임을 정확히 복제하는 것이 아니라, "저 목표점에 가고 싶다"는 의도를 가지고 자신만의 방법으로 걷기를 터득합니다. BC는 근육 움직임을 복제하는 방식이고, 우리가 다음에 살펴볼 IRL은 의도를 역으로 파악하는 방식입니다.
BC는 전문가의 표면적 행동은 따라하지만, 그 행동 뒤에 숨겨진 의도나 목표는 이해하지 못합니다. 이것이 두 가지 중요한 한계를 만들어냅니다.
첫째, BC는 전문가 데이터의 성능이 이론적인 상한선입니다. 아무리 잘 학습해도 BC는 전문가보다 나을 수 없습니다. 전문가가 비효율적인 경로로 작업을 수행했더라도, BC는 그 비효율적인 경로를 그대로 학습합니다.
둘째, 환경 변화에 취약합니다. 물체 위치가 조금만 바뀌거나 조명 조건이 달라지면 학습된 (상태, 행동) 매핑이 깨져 성능이 급격히 저하됩니다. 특정 환경에 과적합된 정책은 환경이 바뀌면 무용지물이 될 수 있습니다.
이 한계를 근본적으로 해결하려면, 전문가의 행동 뒤에 있는 보상 함수를 역으로 추론하는 것이 필요합니다.
10. 역강화학습(IRL) — 전문가의 의도를 역으로 추론하다
역강화학습(Inverse Reinforcement Learning, IRL)은 단순히 행동을 복제하는 것을 넘어 전문가의 숨겨진 의도를 보상 함수라는 수학적 형태로 학습하는 방법입니다.
강화학습과 역강화학습의 관계는 방향성의 차이입니다.
강화학습 (RL) = 정방향 문제
입력: 보상 함수 R + 환경
출력: 최적 정책 π*
"보상이라는 원인으로부터 행동이라는 결과를 찾아간다"
역강화학습 (IRL) = 역방향 문제
입력: 전문가의 행동 데이터 D_expert
출력: 보상 함수 R̂ (→ 이후 RL로 정책 학습)
"행동이라는 결과로부터 보상이라는 원인을 역으로 추적한다"
IRL의 핵심 가정은 "전문가의 행동은 어떤 보상 함수를 최대화하는 최적 행동이다"입니다. 따라서 전문가의 행동을 관찰함으로써 그 숨겨진 보상 함수를 역으로 추론할 수 있다는 것입니다.
딥러닝으로 비유하면 이렇습니다. "어떤 손실 함수를 최소화하면 이런 출력이 나올까?" — IRL은 이 질문을 로봇 학습에 던집니다. 전문가의 출력(행동)을 보고 그 배후의 손실 함수(보상 함수)를 역으로 찾아내는 것입니다.

11. 보상 함수 — 작업의 가장 간결한 표현
IRL이 굳이 보상 함수를 추론하려는 이유가 있습니다. 보상 함수가 정책보다 훨씬 강력한 지식의 표현이기 때문입니다.
정책(Policy)은 작업 수행 방법(HOW)을 설명합니다. 환경에 매우 의존적입니다. 특정 로봇, 특정 물건 위치에 맞게 학습된 정책은 환경이 바뀌면 무용지물이 될 수 있습니다.
반면 보상 함수(Reward Function)는 작업의 목표(WHAT)를 설명합니다. 정책보다 훨씬 간결하고 환경 변화에 덜 민감합니다. "컵을 잡는 것이 중요하다"는 보상 함수는 컵의 위치가 바뀌어도 그대로 유지됩니다. 바뀐 환경에서 이 보상 함수를 목표로 RL을 다시 수행하면 새로운 최적 정책을 찾아낼 수 있습니다.
이러한 특성에서 세 가지 장점이 생깁니다.
일반화: 정책은 특정 환경에 과적합되기 쉽지만, 보상 함수(목표)는 환경이 변해도 유지될 가능성이 높습니다. 안정성: "충돌하지 마라"는 행동 규칙보다, "충돌하면 -1000점"이라는 보상 함수가 더 강건한 안전성을 보장합니다. 설명가능성: 학습된 보상 함수를 분석하면 에이전트가 무엇을 중요하게 생각하는지(의도)를 이해할 수 있습니다.
보상 함수를 표현하는 방식 자체도 딥러닝과 함께 진화해왔습니다.
초기 방식 (선형 모델):
R(s) = w^T φ(s)
→ 전문가가 직접 설계한 특징 벡터 φ(s)에 대한 최적 가중치 w를 찾음
현재 방식 (딥러닝):
R_θ(s, a)
→ 신경망이 원본 상태 s와 행동 a를 직접 입력받아 복잡한 비선형 보상값을 출력
12. IRL 알고리즘의 역사와 진화
IRL은 2000년대 초부터 시작해 GAN의 등장과 함께 혁신적인 변화를 겪었습니다. 각 단계의 핵심 아이디어와 어떤 문제를 해결했는지 살펴보겠습니다.
Ng & Russell (2000) — IRL의 수학적 출발점
IRL이라는 문제 자체를 최초로 수학적으로 공식화한 연구입니다. 보상 함수를 R(s) = w^T φ(s) 형태의 선형 모델로 가정하고, 전문가가 직접 설계한 특징 벡터에 대한 최적 가중치를 찾는 접근법이었습니다. "IRL이라는 문제가 존재한다"는 것을 수학적으로 정의했다는 점에서 의의가 있습니다.
Abbeel & Ng (2004) — 견습학습(Apprenticeship Learning)
새로운 관점을 제시했습니다. 보상 함수 자체를 정확히 찾는 것보다, '전문가만큼 잘하는' 정책을 찾는 것에 집중하는 방식입니다. 핵심은 **특징 기대치 매칭(Feature Expectation Matching)**입니다. 학습된 정책의 특징 기대치가 전문가의 특징 기대치와 거의 같아지도록 만드는 것이 목표입니다.
Ratliff et al. (2006) — 최대 마진(Max Margin)
불확실성 문제를 최적화 관점으로 공식화했습니다. 핵심 아이디어는 "전문가의 행동이 다른 행동들보다 그냥 좋은 것이 아니라, 압도적으로 좋아야 한다"는 것입니다. 전문가의 총점이 다른 어떤 정책의 총점보다 일정한 마진(Margin) 이상으로 크도록 하는 보상 함수를 찾습니다. 이를 통해 의미 없는 보상 함수(예: 모든 행동에 0점)가 정답이 되는 상황을 방지합니다.
Ziebart et al. (2008) — 최대 엔트로피 IRL(Maximum Entropy IRL)
불확실성에 대한 가장 근본적이고 확률적인 해결책입니다. 핵심 아이디어는 "전문가의 행동은 설명하되, 그 외에는 최대한 아무것도 모르는 상태를 유지하자"입니다. 가능한 보상 함수들 중, 전문가의 행동을 설명하면서 엔트로피가 최대인 확률 분포를 유도하는 보상 함수를 선택합니다. 불필요한 가정을 최소화해 관찰된 데이터에만 과적합되지 않는, 가장 일반화 성능이 높은 보상 함수를 찾습니다.
딥러닝으로 비유하자면, 최대 엔트로피 원칙은 "데이터가 말해주는 것만 믿고, 나머지에 대해서는 편향을 갖지 말자"는 원칙입니다. 정규화(Regularization)의 정신과 깊이 닮아있습니다.
공통적인 한계 — 계산 복잡도
지금까지의 모든 IRL 방법론은 내부에서 RL 문제를 반복적으로 풀어야 합니다. 보상 함수를 한 번 업데이트할 때마다 전체 MDP를 푸는 과정이 필요한 병목 현상입니다. 복잡한 로봇 제어 같은 큰 문제에 적용하기 어렵다는 한계가 있었습니다.
13. GAIL — GAN으로 IRL의 한계를 뛰어넘다
GAIL (Generative Adversarial Imitation Learning, Ho & Ermon, 2016)은 IRL의 치명적인 계산 복잡도 문제를 해결한 획기적인 방법입니다. 핵심 아이디어는 딥러닝에서 이미 검증된 GAN(생성적 적대 신경망) 프레임워크를 모방학습에 그대로 적용하는 것입니다.
Generator(생성자) = 정책 π 전문가의 궤적과 비슷해 보이는 '가짜' 궤적을 생성합니다.
Discriminator(판별자) = 보상 함수 역할 주어진 궤적이 전문가의 '진짜'인지 생성자의 '가짜'인지 구별합니다. 판별자가 "진짜 전문가의 궤적 같아!"라고 판단할수록 정책은 높은 보상을 받습니다.
학습 과정에서 정책(Generator)은 판별자를 속이도록(더 전문가처럼 행동하도록) 학습하고, 판별자(Discriminator)는 진짜와 가짜를 더 잘 구분하도록 학습합니다. 이 경쟁적 학습이 반복되면서 정책의 궤적이 전문가의 궤적 분포와 점점 가까워집니다. IRL의 '목표(분포 매칭)'와 RL의 '학습 과정'을 하나의 적대적 학습 루프로 통합하여 효율성을 극대화한 방식입니다.
GAIL이 특히 빛나는 작업은 장기적 균형 유지가 필요한 작업입니다. 외다리 점프(Hopper), 이족 보행(Walker), 인간형 로봇 보행(Humanoid) 같은 작업에서 BC는 초반의 작은 오차를 회복하지 못하고 빠르게 실패하지만, GAIL은 판별자로부터 보상을 받으며 작은 실수도 다시 균형을 되찾으려는 강건한 정책을 학습합니다.
반면 로봇팔 위치 이동(Reacher)처럼 상태 공간이 단순하고 목표가 명확한 작업에서는 BC만으로도 충분히 좋은 성능을 낼 수 있습니다. 간단한 문제는 단순한 지도학습만으로 해결 가능합니다.
14. BC vs IRL — 어떻게 다른가
두 방법을 나란히 비교해보겠습니다.
학습 목표의 차이
BC는 전문가의 정책(Policy)을 직접 복제하는 것이 목표입니다. "어떻게(How)" 행동하는지에 집중합니다. IRL은 전문가의 보상 함수(Reward Function)를 알아내는 것이 목표입니다. "왜(Why)" 그렇게 행동하는지에 집중합니다.
학습 구조의 차이
BC는 (상태, 행동) 쌍을 이용한 지도학습(Supervised Learning)입니다. 고정된 데이터셋만 사용하는 오프라인 학습입니다. IRL은 보상 함수를 업데이트하는 루프 내부에 강화학습(RL) 전체가 포함됩니다. 학습 과정에서 가상의 정책을 계속 환경과 상호작용시켜야 하는 온라인 학습입니다.
데이터 활용 방식의 차이
BC는 데이터를 독립적인 (상태, 행동) 샘플로 취급합니다. 시간 순서와 무관합니다. IRL은 행동의 순서가 중요합니다. 데이터를 (상태, 행동, 다음 상태)가 연결된 궤적(Trajectory) 단위로 활용합니다.
구분 행동 복제 (BC) 역강화학습 (IRL)
| 학습 대상 | 정책 | 보상 함수 → 정책 |
| 집중하는 것 | 어떻게(HOW) | 왜(WHY) |
| 학습 방식 | 지도학습 (오프라인) | RL 포함 루프 (온라인) |
| 계산 복잡도 | 낮음 | 높음 |
| 성능 상한 | 전문가 수준 | 전문가 초과 가능 |
| 환경 변화 강건성 | 약함 | 강함 |
| 구현 난이도 | 낮음 | 높음 |
핵심 트레이드오프는 단순성/효율성(BC) vs 일반화/강건성(IRL) 사이에 있습니다. 어느 쪽이 무조건 낫다는 것이 아니라, 문제의 복잡도, 요구되는 성능 수준, 가용한 계산 자원을 종합적으로 고려해 전략적으로 선택해야 합니다.

15. 딥러닝과의 연결 고리
여기까지 이해하셨다면, BC와 IRL 모두 딥러닝 개념과 깊게 연결되어 있음을 느끼실 겁니다.
BC는 표준 회귀/분류 문제와 동일합니다. 상태가 X, 전문가 행동이 Y입니다. MSE는 회귀, Cross-Entropy는 분류에 쓰던 바로 그 손실 함수입니다. 훈련 루프도 완전히 같습니다. BC의 분포 불일치 문제는 딥러닝의 일반화(Generalization) 문제와 본질적으로 같습니다. 다만 로봇 제어에서는 오차가 시간 축을 따라 누적된다는 점이 더 치명적입니다.
IRL의 최대 엔트로피 원칙은 딥러닝의 정규화(Regularization) 개념과 닮아있습니다. 관찰된 데이터만큼만 믿고, 나머지에 대해서는 편향을 최소화한다는 점에서 동일한 정신입니다.
GAIL은 딥러닝에서 이미 검증된 GAN 프레임워크를 그대로 모방학습에 가져온 것입니다. Generator가 정책이 되고, Discriminator가 보상 함수가 되는 구조입니다. 이 순간이 "딥러닝의 그것과 같은 거잖아?" 하는 순간입니다.
오프라인 평가(테스트셋 손실)와 온라인 평가(실제 태스크 성공률) 사이의 괴리도 주목할 필요가 있습니다. BC에서는 손실이 낮아도 실제 로봇이 실패하는 경우가 많은데, 오프라인 평가는 분포 불일치를 전혀 반영하지 못하기 때문입니다. IRL과 GAIL이 온라인 평가에서 BC보다 강건한 이유가 여기에 있습니다.
마치며
이번 글에서 다룬 내용을 한 줄씩 정리하면 이렇습니다.
MDP는 강화학습과 모방학습의 공통 수학적 언어로, 상태/행동/전이/보상/정책 다섯 요소로 구성됩니다. 행동 복제(BC)는 MDP를 지도학습으로 변환하는 방법으로, 구현이 간단하고 빠르지만 분포 불일치와 오차 누적이라는 치명적 약점이 있습니다. BC는 전문가의 표면적 행동(How)은 따라하지만, 그 뒤에 숨겨진 의도나 목표(Why)는 이해하지 못합니다. 역강화학습(IRL)은 전문가의 행동으로부터 숨겨진 보상 함수를 역으로 추론하는 방법으로, 일반화 능력과 환경 변화 강건성이 뛰어납니다. 보상 함수는 정책보다 더 간결하고 환경 변화에 덜 민감한 작업의 핵심 표현입니다. IRL 알고리즘은 선형 모델 → 견습학습 → 최대 마진 → 최대 엔트로피 → GAIL 순서로 진화하며 불확실성과 계산 복잡도 문제를 극복해왔습니다. BC와 IRL은 단순성/효율성 vs 일반화/강건성의 트레이드오프 관계에 있으며, 문제에 따라 전략적으로 선택해야 합니다.
'Study Archives > Robotics' 카테고리의 다른 글
| [자율 조작 로봇 이해 ⑦] 학습이 끝난 로봇을 평가하는 법 — 추론, 일반화 검증, 정량적 평가 (0) | 2026.05.28 |
|---|---|
| [자율 조작 로봇 이해 ⑥] LeRobot으로 모방학습 시작하기 — ACT 정책 학습 실습 (0) | 2026.05.28 |
| [자율 조작 로봇 이해 ④] 조작 데이터 수집과 전처리 (0) | 2026.05.22 |
| [자율 조작 로봇 이해 ③] 기구학과 동역학 입문 (0) | 2026.05.22 |
| [자율 조작 로봇 이해 ②] MuJoCo로 로봇 팔 띄우고 움직여보기 (0) | 2026.05.22 |