Phi-1은 2023년 6월에 출시된 Microsoft가 개발한 대규모 언어 모델이다. 13억 개의 매개변수를 가진 이 모델은 코드 생성 및 이해 작업을 위해 특별히 설계된 컴팩트한 트랜스포머 아키텍처이다. Phi-1은 교과서 품질의 코드와 합성 연습 문제로 구성된 선별된 데이터 세트로 훈련되었으며, 단순한 규모보다 데이터 품질을 강조했다. 이 모델의 개발은 머신 러닝 연구에서 주목할 만한 변화를 나타냈으며, 신중하게 필터링된 데이터로 훈련될 때 더 작은 모델이 훨씬 더 큰 모델과 경쟁할 수 있음을 보여주었다.
이 모델은 훈련 데이터 품질과 모델 성능 간의 관계를 탐구하는 Microsoft의 Phi 시리즈의 일부로 소개되었다. Phi-1은 HumanEval 및 MBPP를 포함한 여러 코딩 벤치마크에서 자체 크기 기준 최첨단 결과를 달성하여 몇 배 더 큰 모델을 능가했다. 이러한 성공은 커리큘럼 학습과 데이터 선택 전략이 딥 러닝에서 가질 수 있는 잠재력을 강조했다.
아키텍처 및 훈련
Phi-1은 24개 레이어, 32개 어텐션 헤드, 2048의 은닉 차원을 가진 표준 디코더 전용 트랜스포머 아키텍처를 사용한다. 이 모델은 다른 현대 대규모 언어 모델과 유사하게 멀티 헤드 어텐션, 레이어 정규화, 및 잔차 네트워크 연결을 사용한다. 모델은 1.4조 개의 토큰으로 훈련되었지만, 핵심 혁신은 데이터 세트 구성이었다: 데이터의 70%는 필터링된 웹 코드 말뭉치에서, 30%는 대규모 언어 모델(아마도 GPT-3.5 또는 유사한 모델)을 사용하여 합성 연습 문제와 교과서 스타일 예제를 생성한 것이었다.
훈련 과정은 Adam 옵티마이저와 워밍업 단계 및 코사인 감쇠를 포함한 학습률 스케줄을 사용했다. 그래디언트 클리핑은 훈련을 안정화하기 위해 적용되었다. 모델은 약 12일 동안 512개의 A100 GPU에서 훈련되었으며, 약 1.5 페타플롭-일의 계산을 소비했다. 이는 GPT-3 또는 OpenAI의 이후 모델과 같은 더 큰 모델에 사용된 계산량보다 훨씬 적은 것이다.
데이터 선별 및 합성 데이터
Phi-1의 핵심 측면은 데이터 품질에 대한 강조이다. CodeTextbook이라고 불리는 훈련 말뭉치는 GitHub 저장소에서 고품질의 자체 포함된 코드 샘플을 필터링하여 구축되었다. 필터링 과정은 중복되거나 저품질이거나 문서화가 부족한 코드를 제거했다. 또한, 교사 모델을 사용하여 "피보나치 수열을 계산하는 함수를 작성하라"와 같은 교과서 문제를 모방한 연습 문제를 생성하고 설명을 첨부하여 합성 데이터를 생성했다.
이 접근 방식은 모델이 점차 더 복잡한 예제로 훈련되는 커리큘럼 학습에서 영감을 얻었다. 합성 데이터 생성은 교육 콘텐츠의 원칙에 따라 안내되어 예제가 명확하고 간결하며 교육적으로 건전하도록 보장했다. 이러한 데이터 선별에 대한 집중 덕분에 Phi-1은 상대적으로 작은 크기에도 불구하고 코딩 작업에서 높은 정확도를 달성할 수 있었다.
성능 및 벤치마크
Phi-1은 여러 표준 코드 생성 벤치마크에서 평가되었다. HumanEval에서 pass@1 정확도 50.6%를 달성하여 Codex(12B 매개변수에서 28.8%)와 같은 모델 및 일부 더 큰 모델을 능가했다. MBPP에서는 pass@1 55.5%를 기록했다. 이러한 결과는 Phi-1이 Google DeepMind 또는 Anthropic의 모델과 같은 많은 경쟁 모델보다 훨씬 작았기 때문에 주목할 만했다.
이 모델은 코드 설명 및 완성 작업에서도 강력한 성능을 보여주었지만, 다양한 텍스트로 훈련된 모델에 비해 일반 언어 이해에서는 덜 유능했다. 코드에 대한 특화 덕분에 개발자에게 유용한 도구가 되었으며, 코드 관련 애플리케이션을 위해 Microsoft의 Azure AI 서비스에 통합되었다.
영향 및 반응
Phi-1의 출시는 인공 지능의 효율성에 대한 더 넓은 논의에 기여했다. 이는 더 큰 모델이 항상 더 낫다는 지배적인 가정에 도전하며, 데이터 품질과 선별이 규모만큼 중요할 수 있음을 시사했다. 이는 이후 연구에 영향을 미쳤으며, Phi-1.5 및 Phi-2와 같은 Phi 시리즈의 후속 모델이 일반 텍스트로 접근 방식을 확장했다.
Phi-1은 또한 다른 연구소에서 나중에 채택한 합성 데이터 생성에 대한 관심을 불러일으켰다. 그 성공은 소규모 특화 모델이 엣지 디바이스에 배포되어 대규모 클라우드 인프라에 대한 의존도를 줄일 수 있다는 아이디어의 검증으로 여겨졌다. 그러나 일부 연구자들은 합성 데이터 생성이 강력한 교사 모델에 의존하여 접근 방식의 확장성을 제한할 수 있다고 지적했다.
한계 및 향후 방향
강점에도 불구하고 Phi-1에는 한계가 있었다. 코드로만 훈련되었기 때문에 일반 지식이 부족하여 자연어 대화나 사실 기반 질문 응답과 같은 작업을 수행할 수 없었다. 덜 일반적인 언어나 비정형 스타일의 코드와 같은 분포 외 코드에서의 성능은 덜 견고했다. 또한, 모델은 지시 따르기(instruction following)에 대해 미세 조정되지 않았기 때문에 신중한 프롬프트가 필요했다.
Phi 시리즈의 향후 작업은 더 다양한 데이터와 지시 튜닝을 통합하여 이러한 격차를 해소하는 것을 목표로 했다. Phi-1의 데이터 선별 및 합성 데이터 원칙은 이후 모델 개발에 영향을 미치며, 효율성을 유지하면서 더 넓은 기능을 달성하는 데 기여했다.