[논문 리뷰] To Code, or Not To Code? Exploring Impact of Code in Pre-training
이 논문은 대규모 언어 모델의 사전 훈련 데이터에 코드를 포함시키는 것이 성능에 미치는 영향을 조사하며, 코드가 비코드 작업 전반에서 성능을 크게 향상시킨다는 것을 입증한다. 470M에서 2.8B 파라미터의 모델을 대상으로 한 통제된 아블레이션 연구를 통해 저자들은 코드를 추가함으로써 자연어 추론 성능이 최대 8.2% 향상되고, 세계 지식 성능이 4.2% 향상되며, 코드 생성 성능이 12배 향상됨을 보여주며, 코드 품질과 쿨다운 단계 동안의 포함 여부가 성능 향상에 더욱 기여함을 밝혔다.
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가 만들고, 인간 에디터가 검토했습니다.