
초록
자연어 기술 설명에서 자동 코드 생성은 소프트웨어 개발 과정에서 매우 유용할 수 있다. 본 연구에서는 파이썬 문법적 제약과 의미적 제약을 기반으로 한 지도형 자동 파이썬 코드 생성 방법인 GAP-Gen을 제안한다. 먼저, 추상 구문 트리(Abstract Syntax Tree, AST)의 단순화된 형태인 Syntax-Flow를 도입하여 파이썬 코드의 핵심 문법 정보를 유지하면서도 AST의 크기와 높은 복잡도를 줄였다. 또한 Syntax-Flow 외에, 코드 전반에 걸쳐 변수 및 함수 이름을 일관되게 추상화하는 Variable-Flow를 도입한다. 본 연구에서는 사전 훈련(pretraining)에 초점을 맞추기보다는, 계산 자원 소모를 줄이되 자동 파이썬 코드 생성 작업에서 높은 생성 성능을 유지할 수 있도록 미세 조정(finetuning) 과정을 개선하는 데 주목한다. GAP-Gen은 EdinburghNLP에서 제공하는 Code-to-Docstring 데이터셋인 CodeSearchNet, CodeSearchNet AdvTest, 그리고 Code-Docstring Corpus를 활용하여, 트랜스포머 기반 언어 모델인 T5와 CodeT5를 미세 조정한다. 실험 결과, 기존의 방법들에 비해 GAP-Gen이 자동 파이썬 코드 생성 작업에서 더 우수한 성능을 달성함을 확인하였다.