소프트웨어 결함 예측 이해: 불확실성 정량화 및 성능 평가에 관한 대규모 실증 연구
요약
소프트웨어 결함 예측(SDP)에서 불확실성 정량화(UQ) 지표의 신뢰성을 검증하기 위해 16개 분류기와 다양한 지표를 대상으로 대규모 실증 연구를 수행했습니다. 연구 결과, UQ의 성능은 프로젝트 내(WPDP)와 프로젝트 간(CPDP) 환경에 따라 문맥 의존성이 매우 높게 나타났습니다.
핵심 포인트
- UQ 지표는 프로젝트 내 예측 환경에서 특정 성능 지표와 상관관계가 높음
- 성능(변별력)과 교정(Calibration)은 서로 관련이 있으나 상호 대체 불가능함
- 프로젝트 간 예측(CPDP) 시 불확실성 신호의 신뢰성이 약화되거나 역전됨
- 전이된 확률을 품질 보증 결정에 사용하기 전 반드시 재검증이 필요함
소프트웨어 결함 예측 (Software defect prediction, SDP) 분류기는 검사 우선순위 지정, 임계값 조정 (threshold tuning), 그리고 리스크 커뮤니케이션에 사용되는 확률을 생성합니다. 확률 기반의 불확실성 정량화 (Uncertainty quantification, UQ)는 예측 신뢰도를 특징짓지만, 일반적인 UQ 지표들이 성능과 교정 (calibration)을 신뢰성 있게 나타내는지 여부는 여전히 불분명합니다. 우리는 SDP를 위한 확률 기반 UQ에 대해 대규모 실증 연구를 수행했습니다. 우리는 16개의 대표적인 분류기에 대해 5개의 UQ 지표, 6개의 성능 지표, 그리고 3개의 교정 지표를 평가했습니다. 우리는 두 가지 예측 설정 하에서 이러한 관계를 분석했습니다: 36개의 벤치마크 데이터셋을 사용하는 프로젝트 내 결함 예측 (within-project defect prediction, WPDP), 그리고 32개의 기능 호환 데이터셋을 사용하는 프로젝트 간 결함 예측 (cross-project defect prediction, CPDP)입니다. 결과에 따르면 UQ는 문맥 의존성이 매우 높았습니다. WPDP 환경에서 UQ는 MCC, F1 score 및 기타 지표보다 거짓 양성률 (false positive rate) 및 AUC와 더 일관되게 상관관계가 있었으며, 이러한 상관관계는 분류기 범주와 데이터셋 컬렉션에 따라 다르게 나타났습니다. 성능과 교정은 서로 관련이 있었지만 상호 대체 가능한 것은 아니었습니다. 변별력 (discrimination)이 강한 분류기라도 여전히 큰 교정 오차 (calibration error)를 보일 수 있었습니다. CPDP 환경에서는 여러 UQ-성능 및 UQ-교정 상관관계가 약화되거나 역전되었으며, 이는 불확실성 신호가 프로젝트 간에 신뢰성 있게 전이되지 않음을 나타냅니다. 따라서 UQ는 특정 성능 목표에 따라 평가되어야 합니다. 교정은 여러 지표를 사용하여 독립적으로 평가되어야 합니다. 전이된 확률은 품질 보증 (quality-assurance) 결정을 안내하기 전에 반드시 재검증되어야 합니다.
AI 자동 생성 콘텐츠
본 콘텐츠는 arXiv Codex (cs.SE)의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.
원문 바로가기