Skip to main content
QUICK REVIEW

[논문 리뷰] To Code, or Not To Code? Exploring Impact of Code in Pre-training

Viraat Aryabumi, Yixuan Su|arXiv (Cornell University)|2024. 08. 20.
Second Language Acquisition and LearningPsychology인용 수 3
한 줄 요약

이 논문은 대규모 언어 모델의 사전 훈련 데이터에 코드를 포함시키는 것이 성능에 미치는 영향을 조사하며, 코드가 비코드 작업 전반에서 성능을 크게 향상시킨다는 것을 입증한다. 470M에서 2.8B 파라미터의 모델을 대상으로 한 통제된 아블레이션 연구를 통해 저자들은 코드를 추가함으로써 자연어 추론 성능이 최대 8.2% 향상되고, 세계 지식 성능이 4.2% 향상되며, 코드 생성 성능이 12배 향상됨을 보여주며, 코드 품질과 쿨다운 단계 동안의 포함 여부가 성능 향상에 더욱 기여함을 밝혔다.

ABSTRACT

Including code in the pre-training data mixture, even for models not specifically designed for code, has become a common practice in LLMs pre-training. While there has been anecdotal consensus among practitioners that code data plays a vital role in general LLMs' performance, there is only limited work analyzing the precise impact of code on non-code tasks. In this work, we systematically investigate the impact of code data on general performance. We ask "what is the impact of code data used in pre-training on a large variety of downstream tasks beyond code generation". We conduct extensive ablations and evaluate across a broad range of natural language reasoning tasks, world knowledge tasks, code benchmarks, and LLM-as-a-judge win-rates for models with sizes ranging from 470M to 2.8B parameters. Across settings, we find a consistent results that code is a critical building block for generalization far beyond coding tasks and improvements to code quality have an outsized impact across all tasks. In particular, compared to text-only pre-training, the addition of code results in up to relative increase of 8.2% in natural language (NL) reasoning, 4.2% in world knowledge, 6.6% improvement in generative win-rates, and a 12x boost in code performance respectively. Our work suggests investments in code quality and preserving code during pre-training have positive impacts.

연구 동기 및 목표

  • 대규모 언어 모델에서 비코드 태스크에 대한 코드 데이터의 영향을 체계적으로 평가하기 위해.
  • 코드 데이터가 코드 전용 능력 외의 일반화 능력 향상에 기여하는지 확인하기 위해.
  • 코드 품질, 비율, 훈련 단계(쿨다운 포함)가 모델 성능에 미치는 영향을 분석하기 위해.
  • 다양한 벤치마크, 특히 추론, 지식, LLM-기반 평가자 승리 비율에서 코드 포함 여부가 측정 가능한 성능 향상에 기여하는지 평가하기 위해.

제안 방법

  • 470M에서 2.8B 파라미터의 모델을 대상으로 한 대규모이고 통제된 사전 훈련 실험을 수행하였다.
  • 다양한 소스에서 온 증가하는 비율의 코드 데이터를 포함한 변형 모델과 텍스트 전용 사전 훈련을 비교하였다.
  • 데이터 품질 영향을 평가하기 위해 고품질의 합성 코드 및 코드 연관 데이터(예: GitHub 커밋)를 통합하였다.
  • 초기 사전 훈련 단계와 이후 쿨다운 단계에서의 코드 포함 여부에 대한 아블레이션 연구를 수행하였다.
  • 표준화된 평가를 통해 다양한 벤치마크에서 평가를 수행하였다: 자연어 추론(예: HellaSwag), 세계 지식(예: MMLU), 코드 생성(예: HumanEval), LLM-기반 평가자 승리 비율.
  • 코드 데이터에 품질 필터를 적용하여 저품질 또는 손상된 항목(예: 과도한 숫자, 0x 문자열, 최상위 도메인 목록)을 제거하였다.

실험 결과

연구 질문

  • RQ1사전 훈련 시 코드를 포함시키는 것이 자연어 추론 및 세계 지식과 같은 비코드 자연어 태스크 성능에 어떤 영향을 미치는가?
  • RQ2코드 데이터 품질, 특히 합성 코드 대비 웹 기반 코드의 영향은 하류 모델 성능에 어떤 영향을 미치는가?
  • RQ3사전 훈련의 쿨다운 단계에서 코드를 통합할 경우 여러 태스크 유형에서 추가적인 성능 향상이 이루어지는가?
  • RQ4사전 훈련 혼합물에서 코드 비율을 다양하게 조절할 경우 모델의 일반화 능력과 성능에 어떤 영향을 미치는가?

주요 결과

  • 텍스트 전용 사전 훈련 대비 코드 데이터를 사전 훈련에 포함시킬 경우 자연어 추론 태스크에서 상대적 8.2% 향상이 이루어졌다.
  • 코드 포함으로 세계 지식 벤치마크(예: MMLU)에서 상대적 4.2% 향상이 이루어졌다.
  • LLM-기반 평가자에 의한 승리 비율은 사전 훈련에 코드가 포함된 경우 6.6% 향상되었다.
  • HumanEval 벤치마크에서의 코드 성능은 사전 훈련에 코드가 포함된 경우 12배 향상되었다.
  • 고품질의 합성 코드 데이터를 사용할 경우 자연어 추론에서 상대적 9% 향상과 코드 성능에서 44% 향상이 이루어졌으며, 웹 기반 코드 대비 유의미한 성능 향상이 있었다.
  • 쿨다운 단계 동안 코드를 포함시킬 경우 자연어 추론에서 상대적 3.7% 향상, 세계 지식에서 6.8% 향상, 코드 성능에서 20% 향상이 이루어져 비코드 쿨다운 대비 추가 성능 향상이 있었다.

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

논문 읽기부터 검토까지, 연구 시간을 획기적으로 줄여보세요.

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

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