Skip to main content
QUICK REVIEW

[논문 리뷰] The Impact of Class Rebalancing Techniques on the Performance and Interpretation of Defect Prediction Models

Chakkrit Tantithamthavorn, Ahmed E. Hassan|arXiv (Cornell University)|2018. 01. 31.
Software Engineering Research인용 수 37
한 줄 요약

이 연구는 101개의 소프트웨어 데이터셋에서 결함 예측 모델에 대해 오버샘플링, 언더샘플링, SMOTE, ROSE의 네 가지 클래스 재균형 기법이 미치는 영향을 조사한다. 재균형화가 재현율을 크게 향상시키지만 모델의 해석 가능성은 악화시키며, AUC는 영향을 받지 않는 것으로 나타났다. 이에 따라 저자들은 AUC를 표준 성능 지표로 추천하고, 모델에서 실행 가능한 통찰을 도출할 때는 재균형화를 경계할 것을 경고한다.

ABSTRACT

Defect prediction models that are trained on class imbalanced datasets (i.e., the proportion of defective and clean modules is not equally represented) are highly susceptible to produce inaccurate prediction models. Prior research compares the impact of class rebalancing techniques on the performance of defect prediction models. Prior research efforts arrive at contradictory conclusions due to the use of different choice of datasets, classification techniques, and performance measures. Such contradictory conclusions make it hard to derive practical guidelines for whether class rebalancing techniques should be applied in the context of defect prediction models. In this paper, we investigate the impact of 4 popularly-used class rebalancing techniques on 10 commonly-used performance measures and the interpretation of defect prediction models. We also construct statistical models to better understand in which experimental design settings that class rebalancing techniques are beneficial for defect prediction models. Through a case study of 101 datasets that span across proprietary and open-source systems, we recommend that class rebalancing techniques are necessary when quality assurance teams wish to increase the completeness of identifying software defects (i.e., Recall). However, class rebalancing techniques should be avoided when interpreting defect prediction models. We also find that class rebalancing techniques do not impact the AUC measure. Hence, AUC should be used as a standard measure when comparing defect prediction models.

연구 동기 및 목표

  • 대규모 실험 연구를 통해 이전 연구에서 갈등하는 결과를 해결하고, 결함 예측에서 클래스 재균형화의 영향을 규명한다.
  • 다양한 데이터셋과 분류기에서 재균형화가 결함 예측 모델의 성능과 해석 가능성에 미치는 영향을 분석한다.
  • 재균형화가 측정 가능한 이점이나 악영향을 초래하는 실험 조건을 규명한다.
  • 실무자와 연구자가 언제이고 어떻게 재균형화 기법을 적용할 것인지에 대한 실행 가능한 가이드라인을 제공한다.

제안 방법

  • 연구는 오픈소스 및 기업 소유 소프트웨어 시스템에서 확보한 101개의 결함 예측 데이터셋을 대상으로 오버샘플링, 언더샘플링, SMOTE, ROSE의 네 가지 재균형 기법을 평가한다.
  • 결함 예측 모델은 랜덤 포레스트, 로지스틱 회귀, 나이브 베이즈, AVNNet, C5.0, xGBTree, GBM의 일곱 가지 분류 알고리즘을 사용해 학습한다.
  • 성능 평가에는 10개의 지표를 사용한다: 세 가지 임계치 독립 지표(예: AUC)와 일곱 가지 임계치 의존 지표(예: 정밀도, 재현율, F-measure).
  • 실험 설정(예: 데이터셋 불균형도, 차원 수)과 모델 성능/해석 가능성 간의 관계를 분석하기 위해 통계 모델을 구축한다.
  • SMOTE의 파라미터 k는 k=5와 k=14에서 테스트하여 민감도를 평가하였으며, 결과에 유의미한 차이가 없음을 확인하였다.
  • 해석 가능성은 기준 모델과 재균형화된 모델의 상위 랭크 특성들을 비교하여 개념 이탈을 탐지함으로써 평가한다.

실험 결과

연구 질문

  • RQ1다양한 데이터셋과 분류기에서 다양한 클래스 재균형 기법이 결함 예측 모델의 성능에 어떤 영향을 미치는가?
  • RQ2클래스 재균형화는 특히 특성 중요도 이동 측면에서 결함 예측 모델의 해석 가능성에 어느 정도 영향을 미치는가?
  • RQ3재균형화에 민감한 성능 지표는 무엇이며, AUC처럼 불변성을 유지하는 지표는 무엇인가?
  • RQ4데이터셋 불균형도, 차원 수 등 어떤 실험 조건에서 재균형화가 재현율 향상에 가장 유익한가?
  • RQ5분류 알고리즘의 선택이 성능 및 해석 가능성에 대한 재균형화의 영향을 어떻게 조절하는가?

주요 결과

  • 결함 비율이 45%에서 55% 사이인 결함 예측 데이터셋은 전체의 8%에 불과하여 실제 소프트웨어 시스템에서 광범위한 클래스 불균형이 존재함을 시사한다.
  • AUC 지표는 네 가지 재균형 기법 중 어느 것도 유의미하게 영향을 받지 않으며, 일반 머신러닝 문헌의 결과와 정반대이다.
  • 클래스 재균형화 기법은 재현율 향상에 가장 효과적이지만 정밀도는 가장 크게 낮추므로 완전성과 정확성 사이의 트레이드오프가 존재한다.
  • 가장 큰 성능 향상은 고도로 불균형적이며 저차원 데이터셋에서 로지스틱 회귀와 함께 언더샘플링을 사용할 경우 관찰된다.
  • 해석 가능성은 유의미하게 악화된다: 신경망을 사용한 재균형화 모델에서 기준 모델과 상위 특성의 겹침 비율은 23%~34%이며, 로지스틱 회귀의 경우 55%~62%이다.
  • 랜덤 포레스트 모델의 경우, 재균형화된 모델의 상위 특성 중 68%~71%가 기준 모델의 상위 순위에 포함되지 않아 상당한 개념 이탈이 발생함을 나타낸다.

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

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

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

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