11일 전
TFix: 텍스트-텍스트 트랜스포머를 이용한 코드 오류 수정 학습
{Martin Vechev, Veselin Raychev, Jingxuan He, Berkay Berabi}

초록
프로그램 내 오류를 수정하는 문제는 오랜 기간 동안 상당한 관심을 받아왔다. 효과적인 코드 수정 도구를 구축하는 데 있어 핵심 과제는 다양한 오류를 포괄적으로 포착하면서도 높은 정확도를 유지하는 것이다. 본 논문에서는 이러한 과제에 대응하여, 새로운 학습 기반 시스템인 TFix를 제안한다. TFix는 프로그램 텍스트를 직접 처리하며, 코드 수정 문제를 텍스트에서 텍스트로의 변환(task)으로 재정의한다. 이를 통해 자연어로 사전 훈련된 강력한 Transformer 기반 모델을 활용할 수 있으며, GitHub 커밋에서 수집한 대규모이고 고품질의 데이터셋을 통해 코드 수정을 생성하도록 세부 조정(fine-tuning)할 수 있다. TFix는 특정 프로그래밍 언어나 오류 유형에 국한되지 않으며, 실제로 인기 있는 정적 분석기에서 보고된 52개의 서로 다른 오류 유형을 동시에 세부 조정함으로써 정밀도를 향상시켰다. 대규모 자바스크립트 프로그램 데이터셋을 대상으로 한 평가 결과에 따르면, TFix는 실용적으로 효과적임을 입증했다. 즉, 67퍼센트의 경우에서 오류를 해결하는 코드를 성공적으로 생성할 수 있으며, 기존의 학습 기반 접근법들에 비해 상당히 뛰어난 성능을 보였다.