Skip to main content
QUICK REVIEW

[논문 리뷰] Coverage-Guided Fuzzing for Deep Neural Networks.

Xiaofei Xie, Lei Ma|arXiv (Cornell University)|2018. 09. 04.
Adversarial Robustness in Machine Learning참고 문헌 49인용 수 32
한 줄 요약

DeepHunter은 변형 변형(mutant)과 다중 플러그인 커버리지 기준을 활용하여 딥 네ural 네트워크(DNN)의 결함을 자동으로 탐지하는 커버리지 유도 퍼지 프레임워크이다. 이는 테스트 커버리지 수준을 크게 향상시키고, 특히 자원 제약이 있는 플랫폼에 배포하기 위한 모델 양자화 과정에서 발생하는 오류 행동을 드러내는데 뛰어나다.

ABSTRACT

In company with the data explosion over the past decade, deep neural network (DNN) based software has experienced unprecedented leap and is becoming the key driving force of many novel industrial applications, including many safety-critical scenarios such as autonomous driving. Despite great success achieved in various human intelligence tasks, similar to traditional software, DNNs could also exhibit incorrect behaviors caused by hidden defects causing severe accidents and losses. In this paper, we propose DeepHunter, an automated fuzz testing framework for hunting potential defects of general-purpose DNNs. DeepHunter performs metamorphic mutation to generate new semantically preserved tests, and leverages multiple plugable coverage criteria as feedback to guide the test generation from different perspectives. To be scalable towards practical-sized DNNs, DeepHunter maintains multiple tests in a batch, and prioritizes the tests selection based on active feedback. The effectiveness of DeepHunter is extensively investigated on 3 popular datasets (MNIST, CIFAR-10, ImageNet) and 7 DNNs with diverse complexities, under a large set of 6 coverage criteria as feedback. The large-scale experiments demonstrate that DeepHunter can (1) significantly boost the coverage with guidance; (2) generate useful tests to detect erroneous behaviors and facilitate the DNN model quality evaluation; (3) accurately capture potential defects during DNN quantization for platform migration.

연구 동기 및 목표

  • 자율 주행과 같은 안전이 중요한 애플리케이션에서 사용되는 딥 네ural 네트워크(DNN)에서 감지되지 않은 결함의 증가 위험을 해결하기 위해.
  • 기존 테스트 방식의 한계를 극복하기 위해 의미론적 테스트 생성을 통해 자동화되고 확장 가능하며 효과적인 DNN 퍼지 테스팅을 가능하게 하기 위해.
  • 피드백 기반 테스트 생성을 통해 오류 행동을 탐지함으로써 DNN의 품질 평가를 향상시키기 위해.
  • 모델 플랫폼 이관을 지원하기 위해 양자화 과정에서 유도된 결함을 식별하기 위해.

제안 방법

  • 입력 특성의 변경을 통해 의미론적 의미를 유지하면서도 모델 동작을 탐색할 수 있도록 변형 변형(mutant)을 활용해 새로운 테스트 입력을 생성한다.
  • 다양한 시각에서 테스트 생성을 이끌기 위해 뉴런, 활성화, 기울기 기반 메트릭 등을 포함한 다중 플러그인 커버리지 기준을 통합한다.
  • 대규모 DNN에 대한 확장성을 향상시키기 위해 병렬로 여러 테스트 케이스를 유지하고 처리한다.
  • 커버리지 기준에서 유도된 활성 피드백을 기반으로 테스트 케이스를 우선순위 정렬하여 영향력이 큰 입력에 집중한다.
  • 커버리지 피드백을 반복적으로 활용하여 테스트 입력을 개선하고 진화시켜 극단적인 케이스와 결함을 드러내도록 한다.
  • MNIST, CIFAR-10, ImageNet을 포함한 다양한 DNN 아키텍처와 데이터셋에서 종단 간 테스팅을 지원한다.

실험 결과

연구 질문

  • RQ1커버리지 유도 퍼지 테스팅이 일반적인 목적의 DNN에서 테스트 커버리지 수준을 크게 향상시킬 수 있는가?
  • RQ2DeepHunter은 다양한 아키텍처와 데이터셋에서 DNN의 오류 행동을 탐지하는 데 얼마나 효과적인가?
  • RQ3DeepHunter은 자원 제약이 있는 플랫폼에 배포하기 위해 DNN을 양자화하는 과정에서 유도된 결함을 어느 정도 정확하게 식별할 수 있는가?
  • RQ4다양한 커버리지 기준은 DNN에 대한 효과적인 테스트 생성을 이끄는 데 어떻게 비교 가능한가?
  • RQ5DeepHunter은 높은 탐지 효율성을 유지하면서도 실용적인 크기의 DNN에 대해 확장 가능한가?

주요 결과

  • DeepHunter은 6종의 다른 커버리지 기준을 활용하여 7종의 다양한 DNN에서 커버리지 수준을 크게 향상시켜 피드백 기반 테스트 생성의 효과성을 입증한다.
  • 이 프레임워크는 DNN에서 오류 행동을 드러내는 유용한 테스트 케이스를 성공적으로 생성하여 더 견고한 모델 품질 평가를 가능하게 한다.
  • DeepHunter은 DNN 양자화 과정에서 발생하는 결함을 정확하게 탐지하여 목표 플랫폼으로의 신뢰할 수 있는 모델 이관을 지원한다.
  • 배치 기반 테스트 관리 및 피드백 우선순위 정렬 전략 덕분에 대규모 DNN에 대한 확장성이 확보되면서도 탐지 능력이 손상되지 않는다.
  • MNIST, CIFAR-10, ImageNet에서의 실험 결과는 다양한 데이터셋과 모델 복잡도에서 일관된 성능 향상이 이루어짐을 확인한다.

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

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

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

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