Основные понятия
자율주행 기술에 대규모 언어 모델(LLM)을 적용하면 인간의 의도를 더 잘 이해하고 개인 맞춤형 주행 경험을 제공하여 자율주행 시스템의 다양한 측면을 향상시킬 수 있다.
Аннотация
자율주행을 위한 대규모 언어 모델(LLM4AD) 연구 논문 요약
본 연구 논문에서는 자율주행 기술에 대규모 언어 모델(LLM)을 적용하는 LLM4AD 프레임워크를 제안하고, 시뮬레이션 및 실제 차량 실험을 통해 그 효과를 검증합니다. LLM은 자연어 이해 및 추론 능력을 바탕으로 자율주행 시스템의 인지, 장면 이해, 언어 상호 작용, 의사 결정 등 다양한 측면을 향상시킬 수 있는 잠재력을 가지고 있습니다.
LLM4AD의 장점
직관적인 언어 상호 작용: LLM을 통해 인간과 차량 간의 직관적인 의사소통이 가능해집니다. 인간은 추상적인 명령과 감정을 표현할 수 있으며, LLM은 인간의 표현 뒤에 숨겨진 의도를 정확하게 파악할 수 있습니다.
맥락 이해 및 추론: LLM은 교통 법규 및 사고 보고서와 같은 다양한 출처의 맥락 정보를 이해하여 안전을 보장하고 지역 규정을 준수하는 의사 결정을 내릴 수 있습니다.
Zero-Shot 및 Few-Shot 계획: Zero-Shot 일반화 기능을 통해 LLM은 이전에 학습하지 않은 작업도 수행할 수 있습니다. 즉, LLM 기반 자율주행 시스템은 최소한의 또는 사전 경험 없이도 흔하지 않은 상황을 처리할 수 있으므로 '코너 케이스'를 자신 있게 탐색할 수 있습니다.
지속적인 학습 및 개인화: LLM은 지속적으로 학습하고 적응하여 개별 사용자의 선호도를 따르고 시간이 지남에 따라 운전 경험을 향상시킬 수 있습니다.
해석 가능성 및 신뢰: LLM은 자연어로 자신의 결정을 설명할 수 있으므로 자율주행 시스템과 사용자 간의 신뢰와 이해를 향상시킬 수 있습니다.
LLM4AD 프레임워크에서 LLM은 자율주행 시스템 내에서 의사 결정을 담당하는 '두뇌' 역할을 합니다. LLM은 차량의 '눈' 역할을 하는 인지 또는 위치 추정 모듈에 직접 영향을 미치지 않습니다. 대신, 이러한 모듈의 출력을 참조하여 상위 수준의 의사 결정 프로세스를 안내합니다. LLM은 이러한 모듈에서 처리된 데이터를 수신함으로써 정보에 입각한 의사 결정을 향상시켜 자율주행 차량의 성능을 크게 향상시킬 수 있습니다. 하위 단계에서는 차량의 제어 모듈이 '손' 역할을 하여 LLM 기반 의사 결정 프로세스에서 얻은 주행 정책을 실행합니다.
LLM4AD 프레임워크의 주요 구성 요소
인간 명령 및 평가: 인간은 LLM에 자연어로 명령(I)과 평가(F)를 직접 입력합니다. 명령에는 자율주행 에이전트에 대한 인간의 요구 사항이 포함되고, 평가는 이러한 주행 정책의 효과에 대한 피드백입니다.
시스템 메시지: 시스템 메시지(S)는 대화 또는 작업 시작 시 LLM4AD 시스템에 지침이나 컨텍스트를 제공하는 방법입니다. 시스템 메시지를 통해 개발자는 LLM4AD 시스템이 사용자와 상호 작용하거나 특정 유형의 작업을 수행할 때 따라야 하는 역할, 제약 조건 및 목표를 명확하게 정의할 수 있습니다.
상황 설명: 상황 설명은 현재 주행 컨텍스트(C)를 텍스트 설명으로 변환합니다. 상황 설명은 미리 정의된 구조를 따르고 자연어를 사용하여 현재 주행 시나리오에 대한 자세한 텍스트 설명을 제공합니다. 이를 통해 LLM에 상황 인식과 현재 주행 시나리오에 대한 포괄적인 표현을 제공하여 현재 교통 상황에서 적절한 결정을 내릴 수 있도록 합니다.
히스토리 메모리 및 메모리 모듈: 메모리 모듈은 다양한 사용자의 프로필을 저장하여 모든 사용자의 주행 경험을 향상시킵니다. 인간 사용자가 LLM4AD 시스템을 사용할 때마다 시스템은 해당 사용자와 관련된 관련 히스토리 상호 작용(H)을 기록합니다. 그런 다음 현재 인간 사용자에 대한 히스토리 데이터가 입력으로 LLM에 전송됩니다. 이러한 히스토리 상호 작용은 현재 사용자의 선호도에 대한 참조 지점 역할을 하여 시스템이 사용자 경험을 개선하도록 안내합니다. 각 여행 후에는 상호 작용 데이터가 메모리 모듈의 해당 프로필에서 업데이트됩니다.
대규모 언어 모델: LLM은 프레임워크의 핵심 모듈 역할을 하며, 히스토리 메모리(상호 작용, H), 시스템 메시지(S), 상황 설명(C), 인간 명령(I), 인간 평가(F)를 포함한 모든 입력을 수신하고 텍스트 출력(LMP, R)을 생성합니다. 여기서 중요한 점 하나는 인간과 유사한 추론 및 실제 주행 고려 사항과의 일치를 보장하기 위한 안내 신호 역할을 하는 사고의 사슬 프롬프팅[9] 기법을 사용한다는 것입니다. 사고의 사슬은 LLM에 구조화된 일련의 추론 예제를 제시하여 기존 지식 격차를 해소합니다. 일련의 논리적이고 연결된 단계를 제공함으로써 LLM은 복잡한 주행 시나리오에서 더 효과적으로 수행할 수 있습니다.
생성된 프로그램: '정책으로서의 코드[10]' 개념에서 영감을 받아 LLM의 주요 출력 중 하나는 실행 가능한 코드로 구성된 생성된 LMP(P)입니다. 이러한 코드는 환경 내에서 에고 에이전트의 주행 동작에 영향을 미치는 데 사용되며, 새로운 자연어 명령을 일반화할 수 있을 뿐만 아니라 주행 컨텍스트에 따라 모호한 언어적 설명(예: "서둘러", "좌회전")을 기반으로 속도와 같은 정확한 수치를 제공할 수도 있습니다.
출력 생각: 사고의 사슬 프롬프팅[9]을 사용하면 LLM은 프로그램 코드를 생성할 뿐만 아니라 해당 솔루션에 도달하는 데 사용된 사고 프로세스에 대한 단계별 설명도 제공합니다. 이러한 사고의 사슬은 "명령이 '서둘러'이므로 목표 속도를 높이겠습니다." 또는 "좌회전하려면 현재 속도에 따라 조향 각도를 조정해야 합니다."와 같이 각 결정에 대한 LLM의 추론을 나타냅니다. 출력 생각은 생성된 프로그램(P)과 함께 제공되어 LLM이 주행 상황 설명의 맥락에서 자연어 명령을 해석하여 속도나 조향 각도와 같은 정확한 제어 값을 생성하는 방법에 대한 통찰력을 제공합니다. 이러한 출력 생각은 LLM4AD 시스템의 의사 결정 프로세스의 투명성과 해석 가능성을 향상시킵니다.
실행기: 실행기는 LLM의 텍스트 출력과 현재 자율주행 정책 간의 다리 역할을 합니다. LLM에서 생성된 LMP(P)를 가져와 해당 환경에서 실행합니다. 이를 통해 코드가 에고 차량의 현재 상태와 상호 작용할 수 있으며, 생성된 프로그램이 실제 또는 시뮬레이션된 환경에서 의도한 주행 동작을 배포할 수 있습니다. 본 연구 범위 내에서 자율주행 시스템마다 해당 코드가 각 실행기에 의해 실행되는 방식에 약간의 차이가 있을 것입니다.