AI Briefing

CodeParrot: 코드 모델 학습

Training CodeParrot 🦜 from Scratch

·2021.12.08 09:00

핵심 내용

HuggingFace가 공개한 파이썬 코드 생성 모델 CodeParrot의 데이터셋 구축 및 학습 방법론을 소개한다.

자세히 보기

CodeParrot는 GitHub CoPilot과 유사하게 프로그래머에게 코드 제안을 제공하는 GPT-2 기반의 대규모 파이썬 코드 생성 모델이다.

데이터셋 구축 및 정제 Google BigQuery의 GitHub 덤프에서 추출한 180GB(2,000만 개 파일)의 파이썬 데이터를 활용했다. 데이터 중복이 모델 성능에 심각한 영향을 미친다는 점을 발견하여, 중복을 제거하고 정제한 50GB 규모의 codeparrot-clean 데이터셋을 구축했다.

토크나이저 및 모델 초기화 코드의 토큰을 효율적으로 분리하기 위해 기존 GPT-2 토크나이저를 기반으로 코드 전용 토크나이저를 새롭게 학습시켰다. 모델은 GPT-2 Large(1.5B 파라미터) 설정을 따르며, 수치적 안정성을 위해 scale_attn_by_layer_idx 및 reorder_and_upcast_attn 설정을 적용했다.

학습 효율화 대규모 데이터셋을 효율적으로 처리하기 위해 streaming=True 옵션을 사용하여 전체 데이터를 다운로드하는 대신 필요한 샘플을 실시간으로 스트리밍하며 학습을 진행했다.

이 한국어 요약은 AI가 자동으로 만들었습니다. 원문의 주장과 맥락은 원문에서 확인해 주세요. 저작권은 원저작자에게 있습니다.

AI 처리 방식을 확인하거나, 요약 오류와 출처 표기 문제, 삭제 요청을 문의 · 건의로 알려주세요.