자율주행 시스템과 E2E 기술 이야기
혹시 영화나 뉴스에서 자율주행차 보신 적 있으신가요? 사람이 운전대에서 손 떼고 편하게 책을 보거나 다른 일을 하는 모습, 정말 먼 미래 같았는데 어느덧 우리 곁으로 성큼 다가오고 있죠! 이렇게 똑똑하게 움직이는 자율주행차의 '뇌' 역할을 하는 시스템이 최근 큰 변화를 겪고 있다고 합니다. 오늘은 이 변화에 대해 아주 쉽게, 마치 친구에게 이야기하듯 풀어보려 합니다.
자율주행 시스템을 만드는 것은 마치 아주 복잡한 로봇을 만드는 것과 같아요. 현실 세계는 예측 불가능한 일들로 가득하니까요.
옛날 방식: 부품을 조립하는 '모듈 시스템'
자율주행 초기에는 이 복잡한 문제를 여러 개의 작은 부품, 즉 '모듈'로 나누어서 해결했어요. 각 부품은 자기 역할만 잘하면 된다고 생각한 거죠.
눈처럼 보는 센서가 먼저 주변을 살펴봄 (예: 카메라, 레이더 등)
본 것을 인지하는 뇌가 “저건 사람이다, 신호등이다”라고 판단
어디로 갈지 계획을 짜고,
핸들과 브레이크를 조절해서 차를 움직여요
주요 구성: 센서 시스템 → 인지 시스템 → 측위 시스템 → 계획 시스템 → 제어 시스템
1. 센서 시스템 (Sensor system): 자동차의 '눈' 역할을 합니다. 카메라, 레이더, 라이다 같은 센서로 주변 환경 정보를 모아요.
2. 인지 시스템 (Perception system): 모아진 복잡한 센서 정보를 사람이 이해하기 쉬운 정보로 바꿔줍니다. '앞에 차가 있네', '사람이 건너가네' 같은 식으로 말이죠. 이 과정에서 원본 데이터의 복잡성을 줄여서 다음 단계가 쉽게 처리하도록 만들어요.
3. 측위 시스템 (Localization system): 차가 지금 정확히 어디에 있는지 알려줍니다. 고정밀 지도 같은 것을 사용하기도 해요.
4. 플래닝 시스템 (Planning system): 인지 시스템에서 받은 정보를 바탕으로 '어떻게 움직일지' 주행 계획을 세웁니다. 차선 변경, 속도 조절, 경로 선택 등을 결정해요. 규칙 기반이나 AI 기반일 수 있어요.
5. 제어 시스템 (Control system): 플래닝 시스템의 명령에 따라 실제로 차의 핸들, 가속/제동 페달을 움직입니다.
이렇게 정보를 단계별로 가공하고 변환하는데, 이 과정에서 문제가 생길 수 있어요.
- 정보가 손실될 수 있어요: 각 단계를 거치면서 원본 정보가 변형되거나 일부 사라지기도 합니다.
- 오류가 다음 단계로 퍼져요: 인지 시스템에서 작은 실수가 발생하면, 그 실수가 다음 단계인 플래닝에 영향을 미쳐 잘못된 계획을 세울 위험이 커집니다. 예를 들어, 카메라는 신호등을 봤는데, 인지하는 뇌가 헷갈려서 잘못 판단하면, 그 다음 계획도, 운전도 다 잘못될 수 있어요.
- 불확실성을 다루기 어려워요: 인지 시스템이 내놓는 정보는 '차가 있다/없다' 처럼 딱 정해진(deterministic) 정보 위주라, '차가 있을 수도 있고 없을 수도 있다' 같은 불확실하거나 유연한 정보를 다루기 어렵습니다.
- 전체 시스템을 최적화하기 어려워요: 각 부품(모듈)을 따로 만들다 보니, '가장 안전하고 편안한 운전'이라는 하나의 목표를 위해 시스템 전체를 한 번에 최고 성능으로 만들기가 쉽지 않아요.
- 복잡성이 커져요: 중간 단계의 한계를 보완하기 위해 측위 시스템 같은 부품을 추가하다 보면 시스템이 점점 더 복잡해지고, 관리하기가 어려워집니다.
새로운 방식: 모든 것을 한 번에 처리하는 '엔드투엔드 시스템' (E2E)
이런 모듈 시스템의 한계를 극복하기 위해 등장한 것이 바로 엔드투엔드(End-to-End, E2E) 방식입니다. 이건 마치 아주 똑똑한 AI 한 명이 센서가 보는 모든 것을 보고 바로 '이렇게 움직여!' 하고 운전 명령을 내리는 것과 같아요.
쉽게 말하면, 카메라로 본 화면을 바로 운전 명령으로 바꾸는 구조예요.
예전에는
“저건 사람이다 → 오른쪽으로 피하자 → 핸들을 돌려라”
이렇게 처리했다면,
E2E는
“이 화면이니까 핸들을 이렇게 돌려야겠군”
처럼 직접 행동으로 옮기는 방식이에요. 훨씬 간단하죠?
E2E 시스템: 시스템의 시작점(센서 입력)부터 끝점(제어 명령)까지 하나의 통합 구조로 처리하는 방식
E2E 시스템은 센서에서 들어온 있는 그대로의 데이터(raw sensor data)를 최소한의 중간 단계만 거치거나 통합해서 곧바로 차량 제어 명령(driving control commands)으로 바꿔냅니다. 데이터를 엄청나게 많이 학습해서 문제를 해결하는 데이터 중심적인 접근 방식이라고 할 수 있어요.
E2E 시스템의 핵심은 플래너가 가공이 덜 된 중간 단계의 '특징(feature)' 정보, 그것도 불확실성이 포함된 정보를 직접 받아서 사용하는 것입니다. 예를 들어, 복잡한 센서 데이터를 '버드 아이 뷰(Bird's Eye View, BEV) 특징 맵' 형태나 각 작업별 '쿼리 특징(query features)' 형태로 플래너에 전달하는 방식이죠.
○ 예: Bird’s Eye View(BEV) 맵, 태스크별 Query Feature 등 사용
※ Feature: 센서 데이터에서 추출한 중간 표현 정보로, 모델이 이해할 수 있는 형태로 변환됨
※ BEV(Bird's Eye View): 차량 상공에서 바라본 시점의 2D 평면도 형태 표현
E2E 시스템이 주목받는 이유(장점)는 다음과 같습니다:
- 구조가 단순해요: 모듈 시스템처럼 여러 단계를 거치지 않고, 크게 엔드투엔드 시스템과 제어 시스템으로 나눌 수 있어 구조가 단순해집니다. 모듈 방식이 복잡성을 키우는 방향이라면, E2E는 데이터를 통해 단순한 구조를 개선합니다.
- 데이터 활용이 효율적이에요: 대규모 운전 데이터를 활용하여 모델을 학습시키고 시스템을 최적화하는 데 유리합니다. 사람의 운전 데이터를 잘 활용하면 시스템을 확장하기 쉬워요.
- 인지 에러에 덜 민감해요 (강건성): 중간 단계에서 불확실성을 포함한 특징 정보를 다루기 때문에, 딱 떨어지지 않는 정보에도 유연하게 대처하며 인지 과정의 오류에 덜 영향을 받습니다.
- 시스템 전체를 한 번에 최적화하기 쉬워요: 인지 따로, 계획 따로 학습시키는 대신, 전체 시스템을 한 번에 또는 여러 부분을 함께(jointly) 학습시켜서 하나의 목표를 향해 성능을 높일 수 있습니다.
E2E 시스템 학습의 핵심: '데이터' 그리고 '안전'
E2E 시스템은 똑똑해지기 위해 데이터가 정말 많이 필요해요.
- 대규모 데이터로 '기본 학습'(Pre-training): 사람이 기본적인 운전 기술을 배우는 것처럼, 시스템도 대규모의 운전 데이터로 기본적인 지식을 학습합니다.
- 정제된 데이터로 '세부 조정'(Fine-tuning): 시스템이 우리가 원하는 대로 안전하고 정확하게 움직이도록, 사고 직전 같은 위험하거나 드문 상황(edge-case scenarios) 등 특정 시나리오에 해당하는 정제된 데이터로 미세하게 조정하는 과정이 필요합니다. 이런 데이터는 현실에서 얻기 어렵다는 문제가 있어요.
그래서 데이터를 자동으로 효율적으로 수집하고, 필요한 정보만 골라내고, 이름을 붙이는(라벨링) 과정을 자동화하는 것이 매우 중요합니다. 마치 끊임없이 배우는 시스템(Continuous Learning Framework)처럼 말이죠. 어떤 회사에서는 국내에서만 100만 Scene(약 30초 분량의 데이터 묶음)을, 장기적으로는 전 세계 500만 Scene 데이터를 모으는 것을 목표로 하고 있다고 합니다.
E2E 시스템은 많은 장점이 있지만, 자율주행은 사람의 생명과 직결되는 안전성(Safety-critical)이 가장 중요하기 때문에 해결해야 할 숙제도 많습니다. AI 모델이 가끔 예상치 못한 행동을 하는 '야생마' 같은 특성을 길들이는 것이 중요하죠.
E2E의 안전성을 높이기 위한 노력들
E2E 시스템의 안전성을 높이기 위해 여러 기술이 연구되고 있습니다.
- 다양한 궤적 생성 및 평가: AI가 운전할 수 있는 여러 가지 가능한 주행 방법(trajectory)을 만들어 보고, 안전성이나 편안함 같은 기준에 따라 가장 좋은 방법을 고르는 방식입니다. 사람이 '이 길은 좀 위험할 것 같으니 다른 길로 가자'라고 생각하는 것과 비슷하죠.
- 월드 모델 (World Model): 현재 데이터를 바탕으로 앞으로 환경이 어떻게 변할지 예측하고 미리 시뮬레이션해보는 기술입니다. AI가 자신의 행동이 어떤 결과를 가져올지 예측해서 안전한 계획을 세우는 데 도움을 줍니다. 시뮬레이션을 통해 학습할 때 현실과의 차이(Sim2Real gap)를 줄이는 데도 활용될 수 있습니다. 미래 예측은 순차적인 데이터를 사용하며, BEV 예측, 모션 예측, 잠재 공간(latent space) 예측 등 다양한 방식으로 이루어질 수 있습니다. 생성된 이미지처럼 그럴듯해 보이지만 완벽하진 않다고 합니다.
- 리워드 모델 (Reward Model): AI 스스로 다양한 주행 계획(trajectory)이 얼마나 안전한지, 얼마나 편안한지 등을 평가할 수 있도록 학습된 모델입니다.
- 강화 학습 활용: 안전성 향상을 위한 후처리 학습(Post-training) 과정에서 강화 학습을 활용하여 AI가 위험을 피하고 안전한 행동을 배우도록 할 수 있습니다. 강화 학습(PPO등)은 행동에 대한 보상을 받으며 학습하기 때문에 모방 학습으로는 배우기 어려운 '왜' 그렇게 행동해야 하는지, 즉 인과 관계를 파악하는 데 유리하다는 장점이 있습니다.
※ PPO(Proximal Policy Optimization): 안정적이고 효율적인 강화 학습 알고리즘
자율주행 시스템은 이렇게 모듈 방식에서 엔드투엔드 방식으로 발전하고 있습니다. E2E는 구조를 단순화하고 데이터를 효율적으로 활용할 수 있다는 큰 장점이 있지만, 사람의 생명과 직결되는 안전성 확보를 위해 데이터 불균형, 예측 불가능성 등 많은 도전 과제를 해결해야 합니다. 혹여나 자율주행차의 사고가 발생시 현상이 안전운행에 위해를 준다면 리콜을 해야하는데, 제작사 입장에서는 어려움이 있을 듯합니다.
앞으로 자율주행 기술이 어떻게 더 안전하고 똑똑하게 발전해 나갈지 계속 지켜보는 것도 흥미로울 것 같습니다!
중국은 자율주행 및 반도체 산업에서 E2E(End-to-End) 구조 전환과 SoC(System on Chip) 개발에 박차를 가하고 있습니다. 주요 기업들은 AI 기반 통합 플랫폼과 독자적인 칩 개발을 통해 자율주행 기술의 국산화와 고도화를 추진 중입니다. 샤오펑, 화웨이, 바이두 등은 E2E 방식을 적극 도입하고, 자체 SoC 칩 개발에 대규모 투자를 단행하는 등 기술 자립을 강화하고 있습니다. 바이두의 Apollo 플랫폼, 호라이즌 로보틱스의 풀스택 자율주행 솔루션, 테슬라의 FSD(Full Self-Driving) 도입 등은 중국 내 기술 전환의 대표적 사례입니다.
테슬라는 2023년 이후 자율주행 소프트웨어의 패러다임을 E2E(End-to-End) 신경망으로 전환하고 있습니다. 특히 2024년 11월 FSD v12.5.6.3 업데이트를 통해 고속도로 주행까지 E2E가 적용되어, 최신 하드웨어 차량에서는 센서 입력부터 차량 제어까지 모든 과정을 AI가 직접 처리합니다. 이를 통해 주행의 부드러움과 안전성이 크게 향상되었으며, 앞으로 더 많은 차량과 주행 환경에 E2E 기술이 확장될 전망입니다
한국 산업계는 미국과 중국의 이러한 구조적 변화와 기술 발전 방향을 면밀히 분석하고, 미중 기업 간 기술 협력, 공동 R&D, 공급망 다변화 등 전략적 대응이 필요합니다. 미국 및 중국 시장의 급속한 변화에 능동적으로 대응하며, 기술 경쟁력과 협력 네트워크를 강화해야 할 시점입니다.