보도 자료 요약
컬럼비아 대학교와 버지니아 대학교의 연구진은 이미지를 분류하는 데 사용되는 심층 신경망 — Google Photos에서 의료 진단 시스템에 이르는 모든 것의 배후에 있는 소프트웨어 — 의 체계적인 오류를 자동으로 찾아내는 DeepInspect라는 테스트 도구를 개발했다. 이 팀은 일회성 실수를 넘어서는 유형의 실패에 의해 동기를 얻었다. 즉, 모델이 한 범주의 이미지 전체를 다른 범주와 일관되게 혼동하거나, 두 그룹의 사람들을 불평등하게 다루는 경우 — 그들이 "혼동(confusion)"과 "편향(bias)" 오류라고 부르는 문제들이다. 대부분의 기존 테스트 방법이 하는 것처럼 개별 이미지를 검사하는 대신, DeepInspect는 모델이 각 클래스의 이미지를 처리할 때 신경망 내부의 어떤 뉴런이 발화하는지를 추적한 다음, 클래스별로 그러한 활성화 패턴의 통계적 프로파일을 구축함으로써 작동한다. 두 클래스가 의심스럽게 유사한 뉴런 집합을 활성화하면, 도구는 그것들을 혼동 가능성이 있는 것으로 표시한다. 모델이 예컨대 "남자"와 "서핑보드" 대 "여자"와 "서핑보드" 사이에 서로 다른 거리를 유지하면, 그 비대칭을 잠재적 편향으로 표시한다. ImageNet, COCO, CIFAR를 포함한 8개의 신경망 모델과 6개의 잘 알려진 데이터셋에 걸쳐 테스트되어, 이 도구는 수백 개의 실제 분류 실수를 발견했으며, 상위 순위 결과에 초점을 맞췄을 때 혼동 오류를 최대 100%의 정밀도로, 편향 오류를 최대 84%의 정밀도로 탐지했다. 특히, 적대적 공격에 견고하도록 특별히 설계된 모델에서도 이러한 클래스 수준의 결함을 밝혀냈는데, 이는 두 유형의 문제가 대체로 독립적임을 시사한다. 이 연구가 중요한 이유는 클래스 수준 버그가 고립된 오예측과 달리 사용자나 객체 전체 그룹에 영향을 미치는 구조적 약점 — 흑인의 사진을 고릴라로 태깅한 Google의 악명 높은 2015년 사건으로 이어진 종류의 결함 — 을 나타내며, 기존 테스트 프레임워크가 그것들을 대체로 놓치기 때문이다.
초록
이미지 분류기는 소비자 및 비즈니스 응용에서 안전이 중요한 영역에 이르기까지 오늘날 소프트웨어의 중요한 구성 요소이다. 심층 신경망(DNN)의 출현은 그러한 광범위한 성공 뒤에 있는 핵심 촉매이다. 그러나 광범위한 채택은 이미지 분류를 위해 DNN에 의존하는 소프트웨어 시스템의 견고성에 대한 심각한 우려와 함께 온다. 민감하고 중요한 상황에서 여러 심각한 오류 동작이 보고되었기 때문이다. 우리는 개발자가 자신의 소프트웨어의 이미지 분류기를 엄격하게 테스트하고 수용 가능할 때까지 배포를 미루어야 한다고 주장한다. 우리는 클래스 속성 위반에 기반하여 이미지 분류기 견고성을 테스트하는 접근법을 제시한다. 우리는 인기 있는 DNN 이미지 분류기에서 보고된 많은 오류 사례가 학습된 모델이 한 클래스를 다른 클래스와 혼동하거나 일부 클래스를 다른 클래스보다 편향되게 다루기 때문에 발생함을 발견했다. 이러한 버그는 대개 하나 이상의 해당 클래스의 일부 클래스 속성을 위반한다. 대부분의 DNN 테스트 기법은 이미지별 위반에 초점을 맞추므로 클래스 수준의 혼동이나 편향을 탐지하지 못한다. 우리는 DNN 기반 이미지 분류 소프트웨어에서 클래스 기반 혼동 및 편향 오류를 자동으로 탐지하는 테스트 기법을 개발했다. 우리는 우리의 구현인 DeepInspect를 여러 인기 있는 이미지 분류기에서 평가했으며, 혼동 오류에 대해 최대 100%(평균 72.6%)의 정밀도를, 편향 오류에 대해 최대 84.3%(평균 66.8%)의 정밀도를 얻었다. DeepInspect는 널리 사용되는 모델에서 수백 개의 분류 실수를 발견했으며, 그중 다수는 혼동이나 편향을 나타내는 오류를 드러냈다.
세부 정보
인용
@inproceedings{tian2020testing,
title = {Testing DNN Image Classifiers for Confusion & Bias Errors},
author = {Tian, Yuchi and Zhong, Ziyuan and Ordonez, Vicente and Kaiser, Gail and Ray, Baishakhi},
year = {2020},
booktitle = {International Conference on Software Engineering. ICSE 2020},
url = {https://arxiv.org/abs/1905.07831},
}