Skip to main content
QUICK REVIEW

[논문 리뷰] PanGu-Coder2: Boosting Large Language Models for Code with Ranking Feedback

Bo Shen, Jiaxin Zhang|arXiv (Cornell University)|2023. 07. 27.
Natural Language Processing Techniques인용 수 13
한 줄 요약

PanGu-Coder2는 RRTF를 도입하여 스타코더 15B에서 HumanEval, CoderEval, LeetCode 벤치마크에서 최첨단 코드 생성 성능을 달성하는 랭킹 피드백 기반 미세조정 프레임워크를 소개합니다.

ABSTRACT

Large Language Models for Code (Code LLM) are flourishing. New and powerful models are released on a weekly basis, demonstrating remarkable performance on the code generation task. Various approaches have been proposed to boost the code generation performance of pre-trained Code LLMs, such as supervised fine-tuning, instruction tuning, reinforcement learning, etc. In this paper, we propose a novel RRTF (Rank Responses to align Test&Teacher Feedback) framework, which can effectively and efficiently boost pre-trained large language models for code generation. Under this framework, we present PanGu-Coder2, which achieves 62.20% pass@1 on the OpenAI HumanEval benchmark. Furthermore, through an extensive evaluation on CoderEval and LeetCode benchmarks, we show that PanGu-Coder2 consistently outperforms all previous Code LLMs.

연구 동기 및 목표

  • 사람과 유사한 정렬 신호 하에서 올바르고 효율적인 코드를 생성하도록 Code LLM을 개선하자는 동기를 제시한다.
  • 코드 생성 작업을 위한 데이터 효율적이고 모델에 구애받지 않는 학습 패러다임(RRTF)을 제안한다.
  • 랭킹 기반 피드백이 코드 작업에서 전통적인 보상 기반 강화학습(RL) 방법을 능가할 수 있음을 입증한다.
  • 다양한 벤치마크에서 PanGu-Coder2의 우수한 성능을 보여주고 데이터 및 학습 역학을 분석한다.

제안 방법

  • RRTF 제안: 코드 LLM을 위한 샘플링, 랭킹, 그리고 학습의 3단계 프레임워크.
  • 여러 소스에서 프롬프트 생성과 응답 샘플링을 위해 Evol-Instruct를 사용한다.
  • 단위 테스트와 휴리스틱 선호도를 사용해 응답을 랭크하고 학습 신호를 생성한다.
  • 랭킹 및 지도학습 미세조정 손실을 사용하여 15B 디코더-전용 모델을 학습한다.
  • 누출을 피하기 위한 신중한 데이터 구성으로 Evol-Instruct에서 파생된 말뭉치로 사전 학습한다.
  • HumanEval, CoderEval, LeetCode 벤치마크에서 pass@k로 평가한다.

실험 결과

연구 질문

  • RQ1랭킹 기반 피드백(RRTF)이 전통적인 RL 기반 방법과 비교하여 Code LLM의 코드 생성 품질을 향상시키는가?
  • RQ2RRTF로 학습된 15B 디코더-전용 모델이 표준 벤치마크에서 최첨단 코드 생성 성능을 달성할 수 있는가?
  • RQ3데이터셋 크기와 학습 에포크가 PanGu-Coder2의 성능과 수렴에 어떤 영향을 미치는가?
  • RQ4코드 모델에 RRTF를 적용할 때 추론 및 데이터 효율성 측면의 고려사항은 무엇인가?

주요 결과

모델매개변수 수Pass@1 (%)Pass@10 (%)Pass@100 (%)
PanGu-Coder215B61.6479.5591.76
WizardCoder15B57.3073.3290.46
StarCoder15B33.6045.7879.82
  • PanGu-Coder2는 오픈 소스 모델 중에서 greedy 디코딩 시 HumanEval에서 pass@1 61.64%, pass@10 79.55%, pass@100 91.76%를 달성한다.
  • PanGu-Coder2는 HumanEval, CoderEval, LeetCode에서 greedy 디코딩 결과로 WizardCoder와 StarCoder를 능가한다.
  • PanGu-Coder2는 HumanEval에서 pass@1 62.20%, CoderEval에서 38.26%, LeetCode에서 32/30/10(쉬움/보통/어려움)을 달성한다(표 3 참고).
  • 데이터셋 크기와 학습 에포크도 정확도에 비슷한 영향을 주며 일반적으로 3-4 에포크에서 수렴을 달성한다.
  • 정량화(CTranslate2, GPTQ)를 통한 추론 최적화는 메모리를 줄이고 추론 속도를 높이며 HumanEval에 대한 영향은 다양하다.
  • PanGu-Coder2는 더 큰 규모의 모델을 능가하는 경우가 많고 일부 비교에서 GPT-4와의 간극을 좁힌다.

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

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

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

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