Skip to main content
QUICK REVIEW

[논문 리뷰] DeepTest: Automated Testing of Deep-Neural-Network-driven Autonomous Cars

Yuchi Tian, Kexin Pei|arXiv (Cornell University)|2017. 08. 28.
Adversarial Robustness in Machine Learning참고 문헌 53인용 수 220
한 줄 요약

DeepTest는 이미지 변환을 적용하여 뉴런 커버리지를 최대화하고 변형관계(metamorphic-relations)를 사용하여 자율주행 모델에서 잘못된 DNN 동작을 검출한다.

ABSTRACT

Recent advances in Deep Neural Networks (DNNs) have led to the development of DNN-driven autonomous cars that, using sensors like camera, LiDAR, etc., can drive without any human intervention. Most major manufacturers including Tesla, GM, Ford, BMW, and Waymo/Google are working on building and testing different types of autonomous vehicles. The lawmakers of several US states including California, Texas, and New York have passed new legislation to fast-track the process of testing and deployment of autonomous vehicles on their roads. However, despite their spectacular progress, DNNs, just like traditional software, often demonstrate incorrect or unexpected corner case behaviors that can lead to potentially fatal collisions. Several such real-world accidents involving autonomous cars have already happened including one which resulted in a fatality. Most existing testing techniques for DNN-driven vehicles are heavily dependent on the manual collection of test data under different driving conditions which become prohibitively expensive as the number of test conditions increases. In this paper, we design, implement and evaluate DeepTest, a systematic testing tool for automatically detecting erroneous behaviors of DNN-driven vehicles that can potentially lead to fatal crashes. First, our tool is designed to automatically generated test cases leveraging real-world changes in driving conditions like rain, fog, lighting conditions, etc. DeepTest systematically explores different parts of the DNN logic by generating test inputs that maximize the numbers of activated neurons. DeepTest found thousands of erroneous behaviors under different realistic driving conditions (e.g., blurring, rain, fog, etc.) many of which lead to potentially fatal crashes in three top performing DNNs in the Udacity self-driving car challenge.

연구 동기 및 목표

  • DNN 구동 자율차에 대한 안전-임계 테스트를 촉진하고 수작업 데이터 수집의 한계를 강조한다.
  • 입력-출력 공간을 탐색하는 가이드 신호로 뉴런 커버리지를 도입한다.
  • 실제적이고 변환 기반의 테스트 입력을 합성해 뉴런 커버리지를 확장한다.
  • 변형 관계를 자동 테스트 오라클로 제안해 잘못된 코너 케이스 행동을 탐지한다.
  • Udacity 자율주행 모델에서 접근 방식을 평가하고 탐지된 사례를 공개한다.

제안 방법

  • 활성화된 뉴런의 비율을 전체 뉴런 대비로 정의하고 이를 통해 DNN 입력 공간을 구분한다.
  • seed 이미지에 밝기/대비, 블러, 비, 안개, 평행이동, 회전, 스케일, 시어를 적용하여 현실적인 합성 테스트 입력을 생성한다.
  • 다수의 변환을 결합하고 커버리지를 극대화하기 위해 뉴런 커버리지를 가이드로 하는 그리디 탐색을 제안한다.
  • 변형된 입력들 간의 출력 사이의 변형 관계를 활용해 상세한 수동 명세 없이도 자동으로 잘못된 동작을 탐지한다.
  • Keras/TensorFlow 백본을 사용한 세 가지 Udacity 상위 모델(Chauffeur, Rambo, Epoch)에 대해 DeepTest를 구현하고 결과를 평가한다.

실험 결과

연구 질문

  • RQ1뉴런 커버리지가 자율주행 차량의 출력(조향 각도 및 방향)과 상관관계가 있는가?
  • RQ2다른 현실적 이미지 변환이 DNN의 서로 다른 뉴런을 활성화하는가?
  • RQ3변환을 결합하면 뉴런 커버리지가 더 확대되어 더 많은 코너 케이스를 드러낼 수 있는가?
  • RQ4변형된 입력하에서 변형 관계가 잘못된 동작을 탐지하는 효과적인 테스트 오라클 역할을 할 수 있는가?

주요 결과

  • 뉴런 커버리지는 다양한 입력-출력 쌍에 따라 달라지며 모델 전반에서 조향 각도와 방향과 통계적으로 유의한 상관관계를 보인다.
  • 다른 이미지 변환이 서로 다른 뉴런을 활성화하며 일반적으로 모델 전반에서 뉴런 커버리지가 증가한다.
  • 변환의 결합은 커버리지를 더욱 증가시키며 테스트 입력 합성을 위한 뉴런 커버리지를 가이드하는 탐색을 뒷받침한다.
  • DeepTest는 Rain, Fog, Blur 등 현실적 조건에서 세 가지 상위 Udacity DNN 모델에서 수천 개의 잘못된 동작을 발견했으며, 심각한 시나리오를 포함한다.
  • 합성 테스트 이미지는 DNN 강건성을 향상시키는 재학습에 사용될 수 있으며, 저자는 발견된 잘못된 동작에 공개 접근을 제공하고 테스트 이미지 및 DeepTest 소스를 공개할 계획이다.

더 나은 연구,지금 바로 시작하세요

연구 설계부터 논문 작성까지, 연구 시간을 획기적으로 줄여보세요.

카드 등록 없음 · 무료 플랜 제공

이 리뷰는 AI가 만들고, 인간 에디터가 검토했습니다.