알려진, 그리고 알려지지 않은 메트릭스 수치화 또는 지표 수치화를 통한 ADAS 및 AV 개발

Korean translation: 2020 년 11 월 16 일
English: 2020 년 11 월 4 일
소비자들의 안전을 보장하고 신뢰를 얻을 수 있는 자율주행차(AV)를 개발하기 위해서는 알고리즘을 훈련, 검증 및 테스트할 수 있는 방대한 양의 데이터를 필요로 합니다. 고위험군에 속하며 희박하게 발생하는 사고을 파악할 수 있도록 시스템을 훈련시키기 위해서 얼마나 많은 양의 데이터가 필요한지에 대한 업계의 합의된 의견은 아직 없습니다. 주행과 시뮬레이션을 통해 대량의 데이터가 생산되고 있으나 데이타의 논바이너리 특성과 자율주행차 디버깅의 복잡성으로 데이터 분석 작업이 쉽지 않습니다.

여러 기업들은 대량의 AV 데이터 관리 문제에 대한 해결방안으로 데이터 웨어하우스 및 인프라 관리의 효율성을 높이는데 주력하고 있습니다 (예: BMW의 하이 퍼포먼스 D3 플랫폼). 그러나 저희 Applied 팀은 이번 블로그에서 주행 및 시뮬레이션 데이터를 활용하여 요구 사항을 알아내고 추적하면서 데이터 공백을 채우는 모범사례들을 살펴보도록 하겠습니다.


진행 상황 평가: 무엇이 가장 중요한가?

주행 및 시뮬레이션 데이터 분석을 통해 이뤄져야 하는 가장 중요한 과제는 AV 개발 프로그램의 진행 상황을 지속적으로 혹은 매주 평가하는 것입니다. 이를 위해 다음과 같은 두 가지의 질문을 해볼 수 있습니다: 1) AV 시스템은 알려진 요구 사항을 얼마나 충족시키고 있는가? 2) 다음으로 해결해야 할 알려지지 않은 주행 시나리오는 무엇인가?


알려진 요인 평가: 자율 주행을 위한 KPI 추적하기

편안함(예: 최대 저크), 충돌할 때까지 걸리는 시간, 특정 시나리오에서 요구되는 완충장치와 같은 다양한 차원에서 개발 관련 핵심 성과 지표(Key Performance Indicator; KPI)를 설정하고 개발 성과를 추적해야 합니다. KPI는 자율 주행 시스템의 안전 여부와 편안함의 정도를 평가하는 척도입니다. 개발팀은 KPI 성과를 측정하기 위해 기존의 요구 사항과 주행 데이터 및 시뮬레이션 테스트 결과를 비교하여 시스템이 요구 사항을 충족하고 있는지 평가해야 합니다.

예를 들어, 고속도로 차선 유지를 위한 운행 설계 영역(Operational Design Domain; ODD)에 측면 자동 제어 시스템의 결함을 포함시키고, 도로의 곡률이 이 결함에 미치는 영향을 추적할 수 있습니다. 이 경우, 도로 곡률을 기준으로 데이터를 모두 집계하여 정해진 일정 수치를 통과하지 못하는 시스템의 결함을 찾아내야 합니다. KPI를 효과적으로 추적하기 위해서는 같은 시나리오를 가지고 지표들을 매주 측정하거나 새로운 주행 데이터보다는 이전 주행 데이터를 가지고 KPI를 다시 측정하기를 권장 드립니다. 낙엽이나 도로 상태의 변화 등과 같은 외부 요인이 데이터에 미치는 영향을 최소화할 수 있기 때문입니다.
그림 1: 격자 뷰에서의 관측기 오류 


맞춤형 KPI와 더불어 AV 업계에서 널리 알려진 안전 모델을 도입할 수도 있습니다. 예를 들어, 모빌아이의 ‘책임 민감성 안전 모델(Responsibility Sensitive Safety; RSS)’은 자율주행차가 안전하게 운행하는지에 대한 인간의 직관적 판단을 평가하는 수학적 모델입니다. 이 모델을 도입하여 ‘앞의 차량과 안전거리를 유지하기’와 같은 추상적인 안전 규칙을 지킬 수 있게 해주는 직관적 판단을 평가에 포함시킬 수 있습니다. KPI의 점수는 특정 시나리오 및 모든 데이터별로 산출할 수 있습니다. 

AV 프로그램 개발이 진행될수록 차량의 안전성 역시 높아지므로 KPI 측정 기준 역시 더 엄격하게 적용되어야 합니다. 시간이 흐름에 따라 안전 주행의 기준을 높임으로써 이전 단계로의 회귀를 방지하고 현재의 기술 개발의 성과를 미래의 기술 개발로 이어나갈 수 있습니다.

대부분의 AV 개발 프로그램은 아직 “이 스택은 안전한가?”라는 질문에 바로 답을 할 수는 없는 단계이지만 스택이 지난주 보다 더 안전해졌는지를 수치화하는 것은 중요한 과제입니다. KPI 추적을 통해 AV 프로그램 개발에 진척이 있는지 수치화하여 평가할 수 있습니다.


알려지지 않은 시나리오의 파악: 공백 채우기

많은 시나리오들이 아직 다 알려지지 않았기 때문에 AV 개발에 있어 사각지대는 여전히 존재합니다. ‘의도한 안전기능’(Safety of The Intended Functionality, SOTIF)과 이를 반영하는 범위 설정 방법에 관한 내용은 지난번운행 설계 영역의 범위 설정에 관한 포스팅에서 확인하실 수 있습니다.

주행 데이터의 공백을 찾아내는 기존의 방법을 살펴보면 다음과 같습니다. 가장 확실한 방법은 시스템이 어떤 종류의 액터와 상호작용을 했는지(혹은 상호작용을 하지 않았는지), 시스템이 지도상의 어느 지역을 주행했는지(혹은 주행하지 않았는지) 등의 상세 정보를 시각화한 보고서를 작성하는 것입니다. 지리적 영역뿐만 아니라 교차로의 종류, 도로의 크기, 고속도로 출구와 같은 특정 지역 지도에 나타나는 특징과 데이터를 비교해볼 수도 있습니다. 이러한 분석을 통해 어디에서 문제가 자주 일어나는지 보여주고 기존 데이터의 공백이 어디인지 설명할 수 있어야 합니다.

확실성은 낮지만 퍼셉션 스택 정보를 분석하여 시스템이 ‘혼동’하고 있는 부분을 찾아내는 방법도 있습니다. 분석 대상이 불확실도가 높은 대상으로 분류 및 라벨링이 되어 있는 경우 유용한 방법이라 할 수 있습니다.

인간의 개입 및 이탈이 일어난 경우에도 설정된 범위 내의 공백을 찾아낼 수 있습니다. AV 스택의 모듈이 어떻게 조합되든지 결함이 전파될 수 있기 때문에 AV 시스템의 전반적인 문제의 원인을 정확하게 찾아내기란 쉽지 않습니다. 문제의 근본 원인을 찾아내기 위해서는 포스트 센서 융합 바운딩 박스, 근본적인메트릭스, 관련 스택 모듈의 기록과 더불어 센서 데이터의 시각화가 요구됩니다. 다른 버전의 스택으로 시뮬레이션을 다시 시도하는 것 역시 실세계에서 발생하는 결함을 디버깅하는데 도움이 될 수 있습니다. 발생한 상황에서 새로운 요구 사항을 도출하고 이를 기존의 요구 사항 항목에 추가합니다.

데이터 공백 채우기

데이터의 공백을 찾아내는 작업을 통해 개발팀은 기술 개발, 데이터 수집, 합성 데이터 생성, 데이터 주석 달기 등에 우선순위를 부여할 수 있게 됩니다. 실세계에서 더 많은 주행 데이터를 수집하는 방법은 확장성이 낮습니다. 불충분한 데이터 수집은 결국 다양한 에지 케이스 시나리오에 대한 검증 공백으로 이어집니다.

합성 시나리오를 만들면 확장성을 높일 수 있습니다. 센서 시뮬레이션에 관한 지난 포스팅에서도 살펴보았듯이 절차적 생성 방식은 적은 비용으로 다양한 정보 입력을 가능하게 하며, 실사 같은 도로 환경을 빠르게 구현해 낼 수 있습니다. 특히 실세계에서 구하기 어려운 데이터가 필요하거나 같은 시나리오의 다양한 변수들을 테스트해보고 싶은 경우 유용합니다. 퍼셉션 훈련 데이터의 공백은 합성 데이터에 주석을 달아 채울 수 있습니다. 퍼셉션 시스템 개발에 유용한 합성 데이터의 필요조건 에 대해 다룬 지난 포스팅을 참조하십시오.

마찬가지로, 수집한 모든 데이터에 주석을 다는 것 역시 불가능합니다.

훈련용 데이터 셋 규모를 축소하기 위해 사용하는 일반적인 방법은 능동적 학습, 즉 퍼셉션시스템에 혼선을 일으키는 특이 상황을 파악하기 위해 주행 데이터를 스스로 학습하는 알고리즘을 이용하는 것입니다. 학습 모델들을 비교하여 관심사를 유추해내는 것과 비슷한 방식으로 샘플 데이터 학습을 통해 큐레이티드된 정보를 얻을 수도 있습니다. 큐레이트된 정보는 수동 라벨링을 거쳐 훈련 데이터 세트에 추가됩니다. 이 방법을 사용하는 경우, 훈련 데이터 중 영향을 가장 크게 미치는 정보에만 비싼 라벨링을 허용하는 과정에서  ‘불충분하게 분류된’ 데이터의 비율이 높아질 수 있습니다.

공백이 발견되면 공백을 채우기 위한 기술 개발에 주력함으로써 이전 단계로의 회귀를 미연에 방지해야 합니다. 이를 위해 맞춤형 대시보드를 만들고 개발 대상에 대한 요구 사항 및 이와 관련된 주행 시나리오, 그리고 KPI를 추적하는 데 심혈을 기울여야 합니다. 추적 결과를 바탕으로 회귀 분석을 실시하는 경우에도 대시보드를 사용할 수 있습니다.

현재 스택의 가장 큰 공백이 어디인지 결정되면, 데이터 수집 및 기술 개발 노력이 이어져야 합니다. 데이터의 공백을 찾아내고 기술 개발을 반복하면서 시스템의 기능 개선을 위해 필요한 작업이 무엇인지에 대한 지속적인 분석이 이루어져야 합니다.


Applied의 제안

어떤 방법이 최선인지에 대한 의견은 상황에 따라, 그리고 팀에 따라 달라질 수 있습니다. 저희 Applied는 자율 주행차 개발 목표 달성 정도를 평가할 수 있도록 주행 시나리오의요구 사항 충족시키지 못하는 데이터의 공백을 찾아내고 수천 시간에 달하는 운행 기록 중에서 이상을 탐지해 내는 툴을 제공하고 있습니다. 즉각적으로 나타나는 회귀 문제 및 근본 원인을 분석할 수 있는 분석 툴 및 시각화 툴을 활용하여 경영진과 엔지니어링 팀의 소통을 활성화하고 대량의 운행 기록에서 자율 주행 관련 통찰을 얻으실 수 있습니다. 알려진 요인과 알려지지 않은 요인을 평가하는 방법에 대한 더 자세한 정보를 원하시면 Applied 엔지니어 팀으로 연락해 주세요.

Read English publication