Belangrijkste concepten
현재 대규모 코드 모델은 자연어 지시에 기반한 코드 생성 시 다국어 편향성을 보이며, 이를 완화하기 위한 프롬프팅 및 지시 튜닝 방법이 효과적임
Samenvatting
이 연구는 대규모 코드 모델(LCM)의 다국어 편향성을 탐구합니다. 먼저 다국어 벤치마크 X-HumanEval-X를 구축하여 LCM의 다국어 이해 및 다국어 생성 성능을 체계적으로 평가합니다. 실험 결과, LCM은 영어 지시어에 비해 중국어 지시어에서 최소 13% 성능 저하를 보이며, 프로그래밍 언어 간에도 최대 20.9%의 성능 격차를 나타냅니다.
이후 프롬프팅 단계에서의 번역 기법과 지시 튜닝 단계에서의 다국어 데이터 활용을 통해 다국어 편향성을 완화할 수 있음을 확인했습니다. 구체적으로:
- 중국어 지시어를 영어로 번역하는 one-step 및 multi-step 전략이 편향성을 17.2%에서 3.8%까지 낮출 수 있습니다.
- 영어와 중국어 데이터를 혼합하거나 번역 인식 튜닝을 수행하면 다국어 편향성을 6.1% 수준으로 낮출 수 있으며, 코드 생성 성능도 향상됩니다.
- 다양한 프로그래밍 언어를 활용한 지시 튜닝은 다국어 편향성을 40% 감소시키고 전반적인 코드 생성 성능을 높일 수 있습니다.
이 연구 결과는 연구자와 개발자들이 LCM의 다국어 편향성을 완화하고 코드 생성 능력을 향상시키는 데 도움이 될 것입니다.
Statistieken
중국어 지시어 사용 시 LCM의 코드 생성 성능(Pass@1)이 최소 13% 감소한다.
LCM의 프로그래밍 언어 간 코드 생성 성능 격차는 최대 20.9%에 달한다.
one-step 및 multi-step 번역 전략을 통해 다국어 편향성을 17.2%에서 3.8%까지 낮출 수 있다.
다국어 데이터를 활용한 지시 튜닝으로 다국어 편향성을 6.1% 수준까지 낮출 수 있으며, 코드 생성 성능도 31%~46% 향상된다.
Citaten
"LCMs can generate highly feasible solutions for programming problems described in natural language."
"LCMs demonstrate proficiency in generating solutions when provided with instructions in English, yet may falter when faced with semantically equivalent instructions in other NLs such as Chinese."
"LCMs to generate code exhibits variety across different programming languages (PLs), such as Python and C++."