이 블로그 게시물은 자율주행 시스템 개발을 위한 Applied Intuition의 로그 데이터 관리 핸드북에서 다양한 주제를 강조하는 3부작 시리즈 중 두 번째 게시물입니다. 로그 관리 라이프사이클 및 로그 데이터로 구동되는 다양한 워크플로우에 대한 소개는 1부에서 읽어보실 수 있습니다. 이 두 번째 게시물에서는 흥미로운 이벤트 표시에 특히 중점을 둔 로그 탐색 모범 사례를 제시합니다. 이 주제에 대해 자세히 알아보려면, 본 게시물을 확인하시거나 아래의 전체 핸드북에 액세스하십시오.
로그 탐색이란 무엇입니까?
로그 탐색은 로그 관리 라이프사이클의 중요한 부분입니다. 자율주행 프로그램이 로그 파일을 수집한 후, 데이터 처리 파이프라인은 이러한 파일을 사용 가능한 형식으로 변환하고, 다양한 팀들이 특정 사용 사례에 따라 이를 탐색합니다.
로그에서 가치를 추출하기 위해 프로그램은 수집된 대량의 데이터를 처리하고(그림 1), 더 빠른 데이터 검색이 가능하도록 인덱스를 구축해야 합니다. 그런 다음 오프라인 알고리즘으로 데이터를 보강하고, 흥미로운 이벤트를 표시하고, 데이터를 시각화하고, 시스템 성능 및 운영 설계 도메인(ODD) 적용 범위를 분석할 수 있습니다. 로그 관리 핸드북에서 이러한 각 단계를 자세히 설명하는 동안, 이 블로그 게시물은 흥미로운 이벤트를 표시하는 데 중점을 둡니다.
검토를 위한 흥미로운 이벤트 표시
분류(triage) 팀, 알고리즘 엔지니어 및 기타 로그 데이터 사용자의 작업에는, 로그 데이터에서 관련 이벤트를 식별하고 해당 이벤트를 검토하여 자율주행 시스템의 성능을 평가하는 작업이 포함됩니다. 오늘날의 SAE 레벨 2 (L2) 및 L3 자율주행 시스템은 이미 급제동, 가속 및 저크와 같은 이벤트를 기록합니다. 다음 섹션에서는 자율주행 프로그램이 표시해야 하는 다양한 유형의 이벤트와 검증, 모션 플래닝 및 인식 팀이 이러한 이벤트를 가장 잘 표시할 수 있는 방법에 대해 설명합니다.
운영자 자율주행모드 해제 (disengagements) 및 시스템 에스컬레이션 표시
자율주행 시스템이 작동하는 동안 발생하는 모든 개입은 검토를 위해 표시되어야 합니다. 개입에는 운영자 자율주행모드 해제(즉, 안전 운영자가 개입하여 L4 자율주행 시스템에서 자율주행 모드를 해제하는 상황) 및 시스템 에스컬레이션(즉, 안전 운영자 또는 차량 소유자가 개입하여 L2 또는 L3 자율주행 시스템을 제어하는 상황)이 포함됩니다. 가능한 경우, 표시되는 이벤트에는 관련 안전 운영자의 의견이 포함되어야 합니다. 안전 운영자의 의견은 팀이 시스템 오류로 인해 발생할 수 있는 근본 원인 이벤트를 신속하게 검토하는 데 도움이 될 수 있습니다. 표시되는 이벤트에는 자율주행 시스템의 의도된 기동, 근처 액터의 행동, 팀이 이벤트를 자율주행 시스템의 ODD 내부 또는 외부에서 발생하는 것으로 분류하는 데 도움이 되는 지도 정보와 같은 정보도 포함될 수 있습니다.
검증 및 모션 플래닝 팀: 시나리오 태그
시나리오 태그는 검증 및 모션 플래닝 팀이 자율주행 시스템의 성능을 평가하는 데 도움이 됩니다. 검증 팀은 시나리오 태그를 사용하여 특정 상황과 일치하는 시나리오를 찾을 수 있습니다. 시나리오 태그는 행동 주석(behavior annotation), 지도 또는 지리적 정보, ODD 데이터를 결합하는 경우가 많습니다. 예를 들어, 시나리오 태그는 "고속도로의 차선 변경" 및 "비가 올 때 끼어들기"와 같은 시나리오를 표시하는 데 도움이 됩니다. 그런 다음, 검증 팀은 동일한 태그로 시나리오에 대한 집계 분석을 수행하여, 자율주행 시스템이 특정 상황에서 어떻게 작동하는지 이해할 수 있습니다.
모션 플래닝 팀은 시나리오 태그를 결합하여, 특히 어려운 상황에 대한 사람의 설명(human description)을 만들 수 있습니다. 예를 들어, "주차장에서 차량 이탈" 및 "인접한 자전거"로 필터링하면 모든 모션 플래닝 팀과 관련된 에지 케이스가 표시됩니다.
인식 팀: 자동 오류 감지
자율주행 시스템 개발에는 레이블이 지정되지 않은 풍부한 원시 데이터가 사용됩니다. 불행하게도 고품질 레이블을 얻는 데 비용이 많이 들고, 표준 고속도로 주행과 같은 일반적인 시나리오에 라벨을 붙이는 것은 인식 모델 성능에 대한 수익률을 감소시킵니다. 따라서, 인식 모델은 이전 버전의 모델에서 잘못 분류된 데이터에 대해 훈련되어야 합니다(그림 2). 인식 팀은 기록된 데이터에서 이러한 사례를 자동으로 식별하는 프로세스를 구현할 수 있습니다.
잠재적 오류를 자동으로 표면화하기 위해 인식 팀은 차량 내(on-vehicle) 모델의 출력을 보다 강력한 오프라인 인식 모델의 출력과 비교하고, 두 모델이 일치하지 않는 경우를 찾을 수 있습니다. 이러한 불일치는 차량 내 인식 스택의 오류를 나타낼 수 있으며, 수동 검토 및 라벨 지정을 위해 팀원에게 보내야 합니다.
이상 현상(anomalies) 표시
사전 정의된 특정 이벤트를 찾는 것 외에도, 일반적으로 자율주행 프로그램은 수동 검토를 위해 로그 데이터에서 예측하지 못한 이상 현상을 표시하는 것을 유용하게 활용할 수 있습니다. 이상 현상에는 사전 선택된 디멘션(예: 가장 공격적인 컷인)에 대한 예상치 못한 메트릭과 머신 러닝(ML)을 통해 표시된 보이지 않는 에지 사례가 있는, 알려진(known) 시나리오가 포함될 수 있습니다. 일반적인 ML 기반 이상 현상 탐지 기술은 감독되지 않은(unsupervised) 학습을 활용하여 예상치 못한 데이터를 탐지합니다. 팀은 기록 데이터 창을 기반으로 다음 타임스탬프를 예측하기 위해, 로그 데이터에서 가장 관련성이 높은 채널의 하위 집합에 대한 ML 모델을 학습시킵니다. 그런 다음, 이 모델은 로그에서 실행되고 예측 격차가 가장 큰 이벤트를 표시합니다. 기존 데이터에 따라 자율주행 시스템이 가장 예상치 못한 방식으로 동작하거나 하위 시스템이 예측할 수 없는 방식으로 동작하는 경우입니다. 자동화된 이상 현상 탐지는 진행 중인 연구 분야입니다. 그러나, 페타바이트의 로그 데이터를 검색할 때 자동화의 한계에 직면하게 되는 자율주행 프로그램에서 점점 더 인기를 끌고 있다.
결론
흥미로운 이벤트를 표시하고 검토하는 것은 모든 자율 프로그램의 로그 탐색 프로세스에서 필수적인 단계입니다. 팀은 검증, 인식 및 모션 플래닝 팀이 자율주행 시스템을 평가하는 데 도움이 되는, 운영자 자율주행모드 해제, 시스템 에스컬레이션, 이상 현상 및 기타 이벤트를 표시하기 위해 다양한 기술을 활용할 수 있습니다. 데이터 처리, 보강, 시각화 및 분석과 같은 로그 탐색 프로세스의 다른 단계에 대해 알아보려면 아래에서 전체 핸드북을 다운로드하고, 블로그 게시물 시리즈의 세 번째 및 마지막 부분을 계속 지켜봐 주십시오.
이 핸드북에 대한 질문이 있는 경우 Applied Intuition 팀에 문의하시거나, 당사 웹 사이트에서 Applied Intuition의 로그 관리 솔루션에 대해 자세히 알아보십시오.