Core Concepts
코드 생성 모델의 강건성을 향상시키기 위해 다양한 코드 변형을 활용한 데이터 증강과 대조 학습 등의 강건 학습 기법을 제안한다.
Abstract
이 논문은 코드 생성 모델의 강건성 향상을 위한 CodeFort 프레임워크를 제안한다. 코드 생성 모델은 입력 프롬프트에 대한 작은 변형에도 일관성 없고 잘못된 출력을 생성하여 성능이 크게 저하되는 문제가 있다. 이를 해결하기 위해 CodeFort는 다음과 같은 접근법을 제안한다:
코드 변형을 문맥 독립적 변형과 문맥 의존적 변형으로 구분하고, 각각에 적합한 강건 학습 기법을 적용한다.
데이터 증강, 배치 증강, 적대적 로짓 페어링, 대조 학습 등의 강건 학습 기법을 설계하여 적용한다. 특히 변수/함수 이름 변경에 대한 강건성 향상을 위해 ALPD와 ContraName 기법을 제안한다.
실험 결과, CodeFort는 기존 접근법 대비 평균 강건성 지표를 크게 향상시켰으며, 특히 구문 변형에 대한 강건성이 크게 개선되었다.
Stats
코드 생성 모델의 성능 저하가 가장 큰 변형은 구문 변형으로, 기존 모델의 통과율이 95.04%에서 2.58%로 크게 감소한다.
제안 방법은 구문 변형에 대한 통과율을 53.35%로 크게 향상시켰다.
Quotes
"코드 생성 모델은 작은 변형에도 일관성 없고 잘못된 출력을 생성하여 성능이 크게 저하되는 문제가 있다."
"코드 생성 모델의 강건성 향상은 실제 응용에서의 사용자 경험 향상을 위해 매우 중요하다."