AI바라기의 인공지능

VLM : 논문리뷰 : Phi-4 Technical Report 본문

논문리뷰

VLM : 논문리뷰 : Phi-4 Technical Report

AI바라기 2024. 12. 16. 17:13

Abstract

 

우리는 데이터 품질에 중심적으로 초점을 맞춘 훈련 레시피로 개발된 140억 parameter의 language model인 phi-4를 제시합니다. 웹 콘텐츠나 코드와 같은 유기적 데이터 소스를 기반으로 pre-training되는 대부분의 language model과 달리, phi-4는 훈련 과정 전반에 걸쳐 전략적으로 synthetic data를 통합합니다. 이전 Phi 계열의 모델들은 주로 teacher model(특히 GPT-4)의 기능을 distill하는 반면, phi-4는 STEM 중심의 QA 기능에서 teacher model을 상당히 능가하며, 이는 우리의 데이터 생성 및 post-training 기술이 distillation을 넘어선다는 증거를 제공합니다. phi-3 architecture에 최소한의 변경에도 불구하고, phi-4는 특히 추론 중심 벤치마크에서 향상된 데이터, 훈련 커리큘럼 및 post-training 체계의 혁신으로 인해 크기에 비해 강력한 성능을 달성합니다.

 

 

phi-4 논문 Abstract 정리 노트

  • 주요 내용: phi-4는 140억 개의 parameter를 가진 language model로, 데이터 품질에 초점을 맞춘 훈련 방식을 사용합니다.
  • 기존 language model과의 차이점: 기존의 language model들은 웹 콘텐츠나 코드와 같은 유기적인 데이터 소스를 활용하여 pre-training을 진행하는 반면, phi-4는 훈련 과정 전반에 걸쳐 전략적으로 synthetic data(합성 데이터)를 사용합니다.
  • Phi 계열의 이전 모델과의 비교: 이전 Phi 계열 모델들은 주로 teacher model(특히 GPT-4)의 능력을 distill(추출)하는 데 중점을 두었지만, phi-4는 STEM(과학, 기술, 공학, 수학) 중심의 QA(질의응답) 능력에서 teacher model을 "상당히" 능가하는 성과를 보여주었습니다.
  • 핵심 성과: phi-4는 teacher model을 능가함으로써, 데이터 생성 및 post-training 기술이 단순한 distillation을 넘어선 수준임을 입증합니다.
  • 구조적 변화의 최소화: phi-3의 architecture에서 최소한의 변경만을 적용했음에도 불구하고, 데이터 개선, 훈련 커리큘럼 개선, post-training 방식의 혁신을 통해 특히 추론 중심의 벤치마크에서 뛰어난 성능을 보여줍니다.
  • 정리:
    • phi-4는 데이터 품질 중심의 훈련 방식을 사용하는 140억 parameter language model입니다.
    • synthetic data를 적극적으로 활용하는 것이 특징입니다.
    • 이전 모델 대비 STEM QA 능력에서 괄목할 만한 성장을 보였습니다.
    • architecture의 큰 변화 없이 데이터 및 훈련 방식 개선으로 높은 성능을 달성했습니다.

 

 

 

1 Introduction

 

Large Language Models (LLMs)의 최근 발전은 데이터 품질의 상당한 향상이 모델 및 데이터 세트 크기로 컴퓨팅을 확장하여 전통적으로 달성했던 성능 향상과 경쟁하고 때로는 능가할 수 있음을 보여주었습니다. Phi 계열의 성공을 바탕으로, 우리는 추론 중심 작업에 대한 혁신적인 synthetic data 생성 방법을 도입하고, 훈련 커리큘럼 및 데이터 혼합을 최적화하고, post-training의 새로운 기술을 도입함으로써 소규모 language model의 성능을 더욱 발전시키는 140억 parameter 모델인 phi-4를 소개합니다. Synthetic data는 phi-4의 훈련 데이터의 대부분을 구성하며, multi-agent prompting, self-revision workflows 및 instruction reversal을 포함한 다양한 기술을 사용하여 생성됩니다. 이러한 방법을 통해 모델에서 더 강력한 추론 및 문제 해결 능력을 유도하는 데이터 세트를 구축할 수 있으며, 기존의 unsupervised datasets의 일부 약점을 해결합니다. phi-4의 Synthetic data는 또한 rejection sampling 및 Direct Preference Optimization (DPO)에 대한 새로운 접근 방식과 같은 기술이 모델의 출력을 개선하기 위해 사용되는 post-training에서 중요한 역할을 합니다. phi-4의 개발은 세 가지 핵심 축을 중심으로 진행됩니다.

  1. Pretraining 및 Midtraining을 위한 Synthetic Data: 고품질 synthetic datasets은 다양성과 관련성을 보장하기 위해 신중하게 생성되어 추론 및 문제 해결을 우선시하도록 설계되었습니다. 이전 세대의 phi에 비해 synthetic tokens의 할당을 늘리기 위해 훈련 커리큘럼을 변경하고 새로운 pretraining 및 midtraining 데이터 혼합을 생성합니다.
  2. 고품질 유기적 데이터의 큐레이션 및 필터링: 고심층 추론을 장려하고 (모델에 대한) 교육적 가치를 우선시하는 synthetic data pipeline의 시드를 추출하기 위해 웹 콘텐츠, 라이선스 도서 및 코드 저장소를 포함한 organic data 소스를 꼼꼼하게 큐레이션하고 필터링합니다. 이러한 시드는 synthetic generation pipeline의 기반을 형성합니다. 이러한 synthetic datasets을 보완하기 위해 pretraining에 직접 사용하기 위해 (지식 및 추론 측면에서) 고품질 데이터를 웹에서 필터링합니다.
  3. Post-Training: pivotal token search를 기반으로 DPO 쌍을 생성하는 새로운 기술을 개발할 뿐만 아니라 SFT datasets의 새로운 개선된 버전을 생성하여 phi-4의 post-training 레시피를 더욱 발전시킵니다. 이러한 혁신을 통해 추론 관련 작업에서 phi-4의 성능은 훨씬 더 큰 모델과 비슷하거나 능가합니다. 예를 들어, 널리 사용되는 많은 추론 관련 벤치마크에서의 성능은 Llama-3.1-405B의 성능을 충족하거나 초과합니다. 표 1에서 학술 벤치마크에서 우리 모델의 성능을 여러 현대적인 foundation models과 비교합니다. phi4는 GPQA (대학원 수준 STEM Q&A) 및 MATH (수학 경시대회) 벤치마크에서 teacher GPT-4o를 상당히 능가하는 것을 발견했습니다.

1.1 과적합 및 데이터 오염 해결

Decontamination: foundation models의 한 가지 문제점은 웹 코퍼스를 통해 벤치마크 테스트 세트의 유출과 같은 벤치마크에 대한 과적합입니다. 평가 결과에 부당한 영향이 없도록 이전 Phi 모델에 비해 phi-4의 데이터 decontamination 프로세스를 개선했습니다. decontamination 방법에 대한 자세한 내용은 부록 B에 제공됩니다.

 

AMC 벤치마크: 테스트 세트에 대한 과적합을 방지하는 가장 확실한 방법은 새로운 데이터에서 테스트하는 것입니다. 모든 훈련 데이터가 수집된 후 발생한 2024년 11월 AMC-10 및 AMC-12 수학 경시대회에서 우리 모델을 테스트했으며, 최종 모델 훈련에서 모든 하이퍼파라미터를 선택한 후에만 성능을 측정했습니다. 이 대회는 미국 수학 올림피아드 트랙의 진입점이며 매년 15만 명 이상의 학생들이 시험을 봅니다. 그림 1에서 최대 점수가 모두 150점인 네 가지 버전의 시험에 대한 평균 점수를 나타냅니다. phi-4는 유사한 크기 또는 open-weight 모델뿐만 아니라 훨씬 더 큰 frontier 모델보다 성능이 뛰어납니다. 새로운 테스트 세트에서 이처럼 강력한 성능은 MATH 벤치마크에서 phi-4의 최고 수준의 성능이 과적합이나 오염으로 인한 것이 아님을 시사합니다. 자세한 내용은 부록 C에 제공합니다.

 

오염 방지 벤치마크에 의존: GPQA와 같이 질문이 독창적이고 웹에 나타나지 않도록 설계된 벤치마크에 중요한 비중을 둡니다. 모델을 최적화하는 동안 주로 팀에서 작성한 독창적인 프롬프트로 구성된 내부 벤치마크에 의존했습니다 (자세한 내용은 5절 참조).

 

Long Chain-of-Thought 모델: OpenAI O1에서 개척하고 DeepSeek-R1-Lite-Preview 및 Qwen/QwQ-32B-Preview가 뒤따른 지난 몇 달 동안 긴 chain of thought를 생성하여 추론 시간 컴퓨팅을 확장하는 LLM 스타일이 등장했습니다. 이러한 모델은 추론 벤치마크에서 뛰어난 성능을 보이며, open weight를 가진 유일한 모델인 QwQ는 그림 1의 AMC-10/12 설정에서 평균 124.5점을 기록합니다. 그러나 QwQ는 또한 이 작업에서 phi-4보다 4배 더 많은 토큰을 사용하고 매개변수도 두 배 이상 많습니다. 따라서 QwQ의 추론 비용은 phi-4보다 훨씬 높습니다. 결과적으로 이러한 모델은 비용 또는 지연 시간과 관련하여 phi-4와 동일한 클래스에 있지 않습니다.

 

 

표 1: 일련의 표준 벤치마크에서 phi-4의 성능. 첫 번째 벤치마크 세트는 프롬프트/추출/온도=0.5를 지정하는 OpenAI의 simple-evals 프레임워크를 사용합니다. 우리는 비슷한 추론 비용의 소규모 모델과 더 큰 모델과 비교합니다.

 

그림 1: 2024년 11월 AMC-10 및 AMC-12 시험에서 여러 모델의 평균 성능. 이것은 온도 t = 0.5로 100회 실행한 네 가지 시험의 평균 점수(최대 점수 150점)입니다. 우리는 simple-evals를 따라 t = 0.5를 선택했습니다. 오차 막대는 추정치의 2σ입니다. 경시대수학에서 phi-4는 open-weight가 아닌 모델과 비교해도 자체 weight-class보다 훨씬 높은 점수를 얻습니다.

 

 

 

 
 

 

 

phi-4 논문 1 Introduction 정리 노트

  • LLM 발전 동향: Large Language Models (LLMs)의 최근 발전은 모델 크기나 데이터 세트 크기를 늘려 컴퓨팅을 확장하는 것보다 데이터 품질 향상이 성능 향상에 더 중요할 수 있음을 보여줍니다.
  • phi-4의 개발 배경: 기존 Phi 계열 모델들의 성공을 기반으로, 더 작은 규모의 language model의 성능을 더욱 발전시키기 위해 phi-4가 개발되었습니다.
  • phi-4의 핵심 특징 및 목표:
    • 140억 parameter 모델: phi-4는 비교적 작은 규모의 모델입니다.
    • 혁신적인 synthetic data 생성 방법: 추론 중심 작업에 특화된 synthetic data 생성 방법을 도입했습니다.
    • 최적화된 훈련: 훈련 커리큘럼 및 데이터 혼합을 최적화했습니다.
    • 새로운 post-training 기술: post-training 단계에서 새로운 기술을 도입했습니다.
  • Synthetic data의 중요성:
    • phi-4 훈련 데이터의 대부분을 구성합니다.
    • multi-agent prompting, self-revision workflows, instruction reversal 등 다양한 기술을 사용하여 생성됩니다.
    • 모델의 추론 및 문제 해결 능력 향상에 기여합니다.
    • 기존 unsupervised datasets의 약점을 보완합니다.
    • post-training에서도 중요한 역할을 하며, rejection sampling 및 새로운 DPO(Direct Preference Optimization) 접근 방식과 같은 기술이 사용됩니다.
  • phi-4 개발의 세 가지 핵심 축:
    1. Pretraining 및 Midtraining을 위한 Synthetic Data: 추론 및 문제 해결 능력을 우선시하는 고품질 synthetic datasets을 생성하고, 데이터의 다양성과 관련성을 확보합니다. 이전 세대의 phi 모델보다 synthetic tokens의 비중을 늘립니다.
    2. 고품질 Organic Data의 큐레이션 및 필터링: 웹 콘텐츠, 라이선스 도서, 코드 저장소 등 organic data 소스를 꼼꼼하게 선별하고 필터링하여 고심층 추론을 유도하고 교육적 가치가 높은 synthetic data pipeline의 시드를 추출합니다. pretraining에 직접 사용할 고품질 데이터를 웹에서 추가로 필터링합니다. 여기서 '교육적 가치'는 모델의 지식 및 추론 능력 향상에 기여하는 정보를 의미합니다.
    3. Post-Training: SFT datasets의 새로운 개선된 버전을 생성하고, pivotal token search 기반의 새로운 DPO 쌍 생성 기술을 개발하여 post-training 과정을 개선합니다.
  • 주요 성과 및 비교:
    • 추론 관련 작업에서 훨씬 큰 모델과 비슷하거나 능가하는 성능을 보입니다.
    • 예를 들어, 많은 널리 사용되는 추론 관련 벤치마크에서 Llama-3.1-405B의 성능을 충족하거나 초과합니다.
    • GPQA (대학원 수준 STEM Q&A) 및 MATH (수학 경시대회) 벤치마크에서 teacher 모델인 GPT-4o를 "상당히" 능가합니다.
  • 과적합 및 데이터 오염 방지 노력:
    • 벤치마크 과적합 문제(예: 테스트 세트 유출)를 방지하기 위해 이전 Phi 모델보다 향상된 데이터 decontamination 과정을 거쳤습니다.
    • 새로운 데이터(2024년 11월 AMC-10 및 AMC-12 수학 경시대회)에서 테스트하여 과적합 여부를 검증했습니다.
    • 웹에 없는 독창적인 질문으로 구성된 벤치마크(예: GPQA)를 중요하게 고려했습니다.
    • 팀에서 직접 작성한 독창적인 프롬프트로 구성된 내부 벤치마크를 활용했습니다.
  • Long Chain-of-Thought 모델과의 비교:
    • 긴 chain of thought를 생성하여 추론 시간 컴퓨팅을 확장하는 모델(예: QwQ)과 비교했을 때, phi-4는 훨씬 적은 연산량과 parameter로 유사하거나 더 나은 성능을 보입니다. 즉, 비용 및 지연 시간 측면에서 효율적입니다.

요약: phi-4는 데이터 품질, 특히 추론 능력 향상에 초점을 맞춘 140억 parameter의 language model입니다. synthetic data의 적극적인 활용, 훈련 방식 및 post-training 기술 개선을 통해 뛰어난 성능을 달성했으며, 특히 추론 관련 작업에서 두각을 나타냅니다. 과적합 및 데이터 오염 문제 방지에도 많은 노력을 기울였습니다.

 

 

 

2 데이터 접근 방식

 

 

 

2.1 Synthetic Data의 목적

pretraining의 중요한 구성 요소로서 Synthetic data는 점점 더 보편화되고 있으며, Phi 시리즈의 모델들은 Synthetic data의 중요성을 일관되게 강조해 왔습니다. organic data의 저렴한 대체재 역할을 하는 것이 아니라, Synthetic data는 organic data에 비해 몇 가지 직접적인 이점을 가지고 있습니다.

Structured and Gradual Learning. organic datasets에서 토큰 간의 관계는 종종 복잡하고 간접적입니다. 현재 토큰을 다음 토큰에 연결하려면 많은 추론 단계가 필요할 수 있으므로 모델이 next-token prediction에서 효과적으로 학습하기 어렵습니다. 반대로, language model에 의해 생성된 각 토큰은 정의상 이전 토큰에 의해 예측되므로 모델이 결과 추론 패턴을 더 쉽게 따를 수 있습니다. 이러한 방식으로 Synthetic data는 일종의 "떠먹여 주기" 역할을 하여 소화하기 쉽고 점진적인 방식으로 과제를 제시할 수 있습니다.

이를 설명하는 간단한 예는 수학 문제에 대한 사람이 쓴 해답이 최종 답으로 시작될 수 있다는 것입니다. 이 답은 사람이나 LLM 모두에게 즉시 출력하기에는 너무 어렵습니다. 사람은 비선형 편집을 통해 답을 생성했지만 pretraining은 LLM이 선형으로 생성하는 방법을 배우도록 기대합니다. 수학 문제에 대한 synthetic 해답에는 이러한 장애물이 없습니다.

Alignment with Inference Contexts. Synthetic data는 일반적으로 모델이 생성할 것으로 예상되는 출력 형식에 더 가깝습니다. 이러한 데이터에 대한 훈련은 모델의 pretraining 경험을 추론 중에 발생하는 시나리오와 일치시키는 데 도움이 됩니다. 이러한 일치는 생성 중에 보이는 컨텍스트가 모델이 pretrained된 데이터와 관련하여 in-distribution 상태를 유지하도록 보장합니다.

예를 들어, 웹 포럼은 LLM 상호 작용과 스타일이 매우 다릅니다. 어떤 사실이 웹 포럼 데이터에만 나타나는 경우, pretrained된 모델은 자신이 생성하는 채팅에서 발생할 가능성이 매우 낮다고 생각합니다. 웹 포럼의 사실을 LLM의 언어 스타일로 다시 작성하면 추론의 LLM 채팅 컨텍스트 중에 사실에 더 쉽게 접근할 수 있습니다.

Principles. phi-4를 위한 Synthetic data 생성에 대한 우리의 접근 방식은 다음 원칙을 따릅니다.

  1. Diversity: 데이터는 각 도메인 내의 하위 주제와 기술을 포괄적으로 다루어야 합니다. 이를 위해서는 organic 소스에서 다양한 시드를 큐레이션해야 합니다.
  2. Nuance and Complexity: 효과적인 훈련에는 도메인의 복잡성과 풍부함을 반영하는 미묘하고 사소하지 않은 예가 필요합니다. 데이터는 기본 사항을 넘어 edge cases 및 고급 예제를 포함해야 합니다.
  3. Accuracy: 코드는 올바르게 실행되어야 하고, 증명은 유효해야 하며, 설명은 확립된 지식을 준수해야 합니다.
  4. Chain-of-Thought: 데이터는 체계적인 추론을 장려하여 모델에 문제에 대한 다양한 접근 방식을 단계별로 가르쳐야 합니다. 이는 복잡한 작업에 대한 일관된 출력을 조성합니다.

 

2.2 Pretraining 및 Midtraining을 위한 Synthetic Data

우리는 50가지 광범위한 유형의 synthetic datasets을 만들었으며, 각 데이터 세트는 다양한 주제, 기술 및 상호 작용 특성에 걸쳐 서로 다른 시드 세트와 서로 다른 다단계 prompting 절차에 의존하며, 총 약 400B의 가중치 없는 토큰으로 축적됩니다. 부록 D에서 synthetic generation에서 가져온 몇 가지 예제 transcript를 제공합니다. 여기서는 phi-4를 위한 synthetic datasets 생성에 사용된 새로운 방법론을 강조합니다.

• Seed Curation: synthetic dataset 생성은 여러 도메인에서 제공된 고품질 시드로 시작됩니다. 큐레이션된 이러한 시드는 synthetic data 생성을 위한 기반을 제공하여 모델의 훈련 목표에 맞춘 연습, 토론 및 추론 작업을 생성할 수 있도록 합니다.

  1. Web 및 Code 기반 시드: 높은 복잡성, 추론 깊이 및 교육적 가치를 보여주는 콘텐츠에 중점을 두고 웹 페이지, 서적 및 코드 저장소에서 발췌문과 스니펫을 추출합니다. 품질을 보장하기 위해 2단계 필터링 프로세스를 사용합니다. 첫째, 강력한 교육적 잠재력을 가진 페이지를 식별하고, 둘째, 선택한 페이지를 구절로 분할하여 각 구절의 사실 및 추론 콘텐츠를 평가합니다.
  2. 질문 데이터 세트: 웹사이트, 포럼 및 Q&A 플랫폼에서 많은 질문 세트를 수집했습니다. 그런 다음 이러한 질문을 다수 기반 기술을 사용하여 난이도의 균형을 맞추기 위해 필터링했습니다. 특히 각 질문에 대해 여러 개의 독립적인 답변을 생성하고 다수결 투표를 적용하여 응답의 일관성을 평가했습니다. 모든 답변이 일치하는 경우(질문이 너무 쉬움을 나타냄) 또는 답변이 완전히 일치하지 않는 경우(질문이 너무 어렵거나 모호함을 나타냄) 질문을 삭제했습니다. 이 필터링 프로세스는 모델의 추론 및 문제 해결 능력을 자극하는 동시에 접근 가능한 질문 데이터 세트를 생성합니다. 다수 답변은 rejection-sampling 기반 생성에서 ground truth 대신 사용되었습니다.
  3. 다양한 소스에서 Question-Answer 쌍 생성: 시드 큐레이션을 위해 사용하는 또 다른 기술은 language models를 활용하여 서적, 과학 논문 및 코드와 같은 organic 소스에서 question-answer 쌍을 추출하는 것입니다. 이 접근 방식은 텍스트 내에서 명시적인 Q&A 쌍을 식별하는 데만 의존하지 않습니다. 대신 텍스트에서 deduction chains 또는 논리적 진행을 감지하도록 설계된 pipeline을 포함합니다. language model은 추론 또는 문제 해결 프로세스의 주요 단계를 식별하고 이를 질문과 해당 답변으로 재구성합니다. 우리의 실험에 따르면 올바르게 수행되면 결과 콘텐츠에 대한 훈련이 원래 콘텐츠에 대한 훈련보다 (학술 및 내부 벤치마크의 개선 측면에서) 훨씬 더 효과적일 수 있습니다.

• Rewrite 및 Augment: 시드는 다단계 prompting workflows를 통해 synthetic data로 변환됩니다. 여기에는 주어진 구절의 유용한 콘텐츠 대부분을 연습, 토론 또는 구조화된 추론 작업으로 다시 작성하는 것이 포함됩니다.

• Self-revision: 초기 응답은 모델이 추론 및 사실적 정확성에 초점을 맞춘 루브릭의 안내에 따라 자체 출력을 비판하고 이후 개선하는 피드백 루프를 통해 반복적으로 개선됩니다.

• Code 및 기타 작업을 위한 Instruction Reversal: 명령에서 출력을 생성하는 모델의 능력을 향상시키기 위해 instruction reversal 기술을 사용했습니다. 예를 들어, 코드 데이터 코퍼스에서 기존 코드 스니펫을 가져와 문제 설명 또는 작업 프롬프트를 포함하는 해당 명령을 생성하는 데 사용합니다. 결과 synthetic data 쌍은 코드 앞에 명령이 나타나도록 구성되었습니다. 원래 코드와 재생성된 코드 간의 충실도가 높은 데이터만 유지하여 명령과 출력 간의 일치를 보장합니다. 이 방법은 다른 특정 사용 사례로 일반화할 수 있습니다.

• Code 및 기타 과학 데이터의 유효성 검사: 적절한 경우 추론 중심의 synthetic datasets 유효성 검사를 위한 테스트를 통합합니다. synthetic code 데이터는 실행 루프 및 테스트를 통해 유효성이 검사됩니다. 과학 데이터 세트의 경우 높은 관련성, 근거 및 난이도 균형을 보장하도록 설계된 방법을 사용하여 과학 자료에서 질문을 추출합니다.

 

 

2.3 Web 및 Q&A 데이터의 큐레이션 및 필터링

Q&A datasets. 우리는 공개 웹사이트를 검토하고, 기존 datasets에 의존하고, 외부 datasets을 확보함으로써 수천만 개의 고품질 organic 문제와 해답을 수집했습니다. 이전 모델의 경험에 따르면 question-answer 데이터는 수학적 추론 및 학업 성취도와 같은 다양한 능력에 상당한 기여를 했습니다. 우리의 ablation studies는 organic 질문이 synthetic 질문보다 훨씬 더 효과적임을 보여주었습니다. 더 큰 dataset을 얻기 위해 organic 질문의 dataset을 synthetic하게 증강하는 여러 가지 방법을 사용했습니다. 이러한 다시 작성된 질문들이 모델의 능력을 향상시켰지만, 그 효과는 두드러지지 않았습니다. 수집된 질문의 상당 부분에는 정확한 해답이 부족했습니다. 이를 해결하기 위해 해답을 synthetic하게 생성된 것으로 대체하고 정확도를 높이기 위해 다수결 투표를 사용했습니다. 수집된 모든 질문과 해답은 테스트 세트와의 중복이 없는지 확인하기 위해 철저한 decontamination 과정을 거쳤습니다.

고품질 Web Data Targeting. 우리는 추론 중심적이고 미묘한 자료(예: 학술 논문, 교육 포럼 및 프로그래밍 튜토리얼)를 우선시하여 phi-4를 위한 광범위한 고품질 organic data 소스를 수집했습니다. 이 텍스트를 직접 훈련하는 것 외에도 다양한 웹 소스를 특수한 synthetic data 생성 pipelines의 시드로 사용했습니다. 깨끗하고 정확한 자연 데이터가 synthetic data의 시드에 절대적으로 중요하다는 것을 발견했습니다. 사소한 오류로 인해 파생된 synthetic 문서의 품질이 심각하게 저하될 수 있습니다. 따라서 웹 데이터의 완벽주의적인 큐레이션에 많은 투자를 했습니다. 아래에서 주요 기술과 고려 사항에 대해 논의합니다.

• Targeted Acquisitions: 우리는 외부에서 사용 가능한 코퍼스의 일반적인 표준보다 높은 수준의 포괄성, 최신성 및 청결성을 목표로 공개적으로 사용이 허용되거나(예: arXiv, PubMed Central, GitHub) 명시적으로 라이선스가 부여된(예: 라이선스 도서) 추론 중심 문서의 주요 저장소를 포함했습니다.

• Filtering Web Dumps: 포럼, 블로그, 강의 자료, 도메인별 위키와 같은 정보가 풍부한 웹 소스의 long tail을 포착하기 위해 ∼ 106개의 LLM 생성 주석으로 훈련된 작은 (non-LLM) 분류기를 사용하여 대량 웹 덤프에서 최고 품질의 문서 중 일부를 선택하는 방식을 취했습니다. 이 접근 방식은 STEM 관련 키워드에 과도하게 집중하는 경향이 있으므로 고품질 non-STEM 콘텐츠(예: 예술, 역사, 여행, 문화 및 엔터테인먼트)를 증폭하기 위한 특수한 pipeline을 만들었습니다. 이러한 주제 분류도 LLM annotator를 distill하여 얻었습니다. 마지막으로 n-gram 통계 및 압축 비율에 따라 이상치를 감지하여 손상된 텍스트와 이진 파일을 제거했습니다.

• Multilingual Data: 우리는 모델이 독일어, 스페인어, 프랑스어, 포르투갈어, 이탈리아어, 힌디어 및 일본어를 포함한 광범위한 언어를 처리할 수 있도록 다국어 datasets을 통합했습니다. 여기에는 CommonCrawl 및 Wikipedia에서 고품질 다국어 문서를 소싱하고 처리하는 작업이 포함되었습니다. 우리의 다국어 처리 pipeline은 fastText를 기반으로 하여 문서를 176개 언어로 분류하는 데 사용되는 언어 식별 모델로 구성되며, 웹 덤프 필터링에 사용되는 것과 동일한 분류기를 사용하여 품질을 필터링합니다. 분류기는 다국어 LLM 생성 주석으로 훈련되었습니다.

• Custom Extraction and Cleaning Pipelines: 이질적인 organic data 소스 간의 충분한 청결성과 균일성을 보장하기 위해 맞춤형 heuristics 및 parser 모음이 필요했습니다. 각 대상 데이터 소스에 대해 다양한 파일 형식(예: 다중 파일 TeX 소스, ePub 및 기타 XML 유사 형식, Microsoft Word 문서 및 PDF)을 수집하기 위한 맞춤형 pipelines을 구축했습니다. 일반 웹 데이터의 경우, 순진한 parser에 의해 자주 손상되는 깨지기 쉬운 콘텐츠(예: TeX/MathML 방정식, 코드 블록, 표 및 포럼 스레드 구조)를 보존하기 위해 상당한 주의를 기울여 맞춤형 HTML-to-text 추출기를 구축했습니다. 이 추출기는 boilerplate, 광고, 방정식 및 syntax-highlighter artifacts와 같은 요소를 구별하기 위해 다양한 신호(예: HTML 태그 이름, CSS 클래스, 콘텐츠 길이 및 트리 깊이)를 사용하여 DOM 트리를 정리하고 정규화합니다.

2.4 Post-Training datasets

우리의 post-training 데이터는 다음으로 구성됩니다.

• Supervised Fine-Tuning (SFT) Datasets: 공개적으로 사용 가능한 datasets과 synthetic하게 생성된 데이터의 혼합에서 가져온 신중하게 큐레이션된 사용자 프롬프트를 사용하여 여러 모델 응답을 생성하고 LLM 기반 평가 프로세스를 사용하여 최상의 응답을 선택합니다.

• Direct Preference Optimization (DPO): rejection sampling 및 LLM 평가를 기반으로 DPO 쌍을 생성하며, 이 중 일부는 아래 4.3절에서 설명하는 pivotal token 기반 쌍 생성 방식에 기반합니다.

 

 

 

2.1 Synthetic Data의 목적

  • Synthetic data 활용의 증가: pretraining의 핵심 요소로서 Synthetic data의 활용이 점차 늘어나고 있으며, Phi 모델 시리즈는 일관되게 Synthetic data의 중요성을 강조해 왔습니다.
  • Organic data 대비 Synthetic data의 장점: Synthetic data는 단순히 organic data의 저렴한 대체재가 아닌, 다음과 같은 직접적인 이점을 가집니다.
    • 구조화되고 점진적인 학습 (Structured and Gradual Learning):
      • Organic datasets에서는 토큰 간의 관계가 복잡하고 간접적인 경우가 많아 모델이 next-token prediction을 효과적으로 학습하기 어렵습니다.
      • 반면, language model이 생성한 각 토큰은 이전 토큰에 의해 예측되므로 모델이 추론 패턴을 쉽게 따를 수 있습니다.
      • Synthetic data는 "떠먹여 주는" 방식으로, 소화하기 쉽고 점진적인 과제를 제시합니다.
      • 예시: 사람이 쓴 수학 문제 해설은 최종 답부터 시작할 수 있지만, pretraining은 LLM이 선형적으로 답을 생성하도록 학습시키므로 Synthetic 해설이 더 적합합니다.
    • 추론 컨텍스트와의 정렬 (Alignment with Inference Contexts):
      • Synthetic data는 모델이 생성할 것으로 예상되는 출력 형식과 더 유사합니다.
      • 이러한 데이터로 훈련하면 모델의 pretraining 경험과 추론 시나리오가 일치하게 됩니다.
      • 생성 중 보이는 컨텍스트가 pretraining 데이터와 in-distribution 상태를 유지합니다.
      • 예시: 웹 포럼과 LLM의 상호 작용 스타일은 매우 다르므로, 웹 포럼의 내용을 LLM 스타일로 바꿔주면 추론 시 더 쉽게 활용할 수 있습니다.
  • Synthetic data 생성의 원칙:
    1. 다양성 (Diversity): 각 도메인 내 하위 주제와 기술을 포괄적으로 다뤄야 하며, 이를 위해 organic 소스에서 다양한 시드를 큐레이션해야 합니다.
    2. 미묘함과 복잡성 (Nuance and Complexity): 도메인의 복잡성과 풍부함을 반영하는 미묘하고 중요한 예제를 포함해야 하며, 기본 사항을 넘어 edge cases 및 고급 예제까지 포함해야 합니다.
    3. 정확성 (Accuracy): 코드 실행, 증명, 설명 등이 확립된 지식을 준수해야 합니다.
    4. Chain-of-Thought: 단계별 문제 접근 방식을 모델에 가르쳐 체계적인 추론을 장려해야 하며, 복잡한 작업에 대한 일관된 출력을 생성해야 합니다.

2.2 Pretraining 및 Midtraining을 위한 Synthetic Data

  • 50가지 유형의 Synthetic datasets: 각기 다른 시드와 다단계 prompting 절차를 사용하는 50가지 광범위한 유형의 Synthetic datasets을 생성하여 총 약 400B의 unweighted tokens을 확보했습니다.
  • phi-4의 Synthetic datasets 생성 방법론:
    • 시드 큐레이션 (Seed Curation): 여러 도메인의 고품질 시드에서 시작합니다.
      1. Web 및 Code 기반 시드: 높은 복잡성, 추론 깊이, 교육적 가치를 가진 웹 페이지, 서적, 코드 저장소의 발췌문과 스니펫을 추출하고, 2단계 필터링(교육적 잠재력 식별 → 사실 및 추론 콘텐츠 점수화)을 거칩니다.
      2. 질문 데이터 세트: 웹사이트, 포럼, Q&A 플랫폼에서 질문을 수집하고, 다수 기반 기술로 난이도를 조절합니다 (여러 독립적인 답변 생성 후 다수결 투표, 너무 쉽거나 어렵거나 모호한 질문은 제외).
      3. 다양한 소스의 Question-Answer 쌍 생성: language models를 활용하여 서적, 논문, 코드 등 organic 소스에서 question-answer 쌍을 추출합니다 (텍스트 내 명시적인 Q&A 쌍 식별뿐 아니라 deduction chains 또는 논리적 진행 감지).
    • Rewrite 및 Augment: 시드를 다단계 prompting workflows를 통해 Synthetic data로 변환합니다 (유용한 콘텐츠를 연습, 토론, 구조화된 추론 작업 등으로 재작성).
    • Self-revision: 모델이 자체 출력을 비판하고 개선하는 피드백 루프를 통해 초기 응답을 반복적으로 개선합니다 (추론 및 사실적 정확성에 중점).
    • Code 및 기타 작업을 위한 Instruction Reversal: 기존 코드 스니펫에서 문제 설명 또는 작업 프롬프트를 포함하는 명령을 생성하여 명령에서 출력을 생성하는 모델의 능력을 향상시킵니다 (명령이 코드 앞에 오도록 구성, 원래 코드와 재생성된 코드 간의 높은 일치도를 가진 데이터만 유지).
    • Code 및 기타 과학 데이터의 유효성 검사: 코드 데이터는 실행 루프 및 테스트를 통해, 과학 데이터는 높은 관련성, 근거, 난이도 균형을 보장하는 방법으로 질문을 추출하여 유효성을 검사합니다.

2.3 Web 및 Q&A 데이터의 큐레이션 및 필터링

  • Q&A datasets: 수천만 개의 고품질 organic 문제와 해답을 수집했습니다 (웹사이트 검토, 기존 datasets 활용, 외부 datasets 확보). organic 질문이 synthetic 질문보다 훨씬 효과적이며, synthetic하게 질문을 증강해도 효과는 크지 않았습니다. 해답이 부정확한 질문은 synthetic하게 생성된 해답으로 대체하고 다수결 투표를 사용했습니다. 모든 질문과 해답은 테스트 세트와의 중복을 방지하기 위한 decontamination 과정을 거쳤습니다.
  • 고품질 Web Data Targeting: 추론 중심적이고 미묘한 자료(학술 논문, 교육 포럼, 프로그래밍 튜토리얼 등)를 우선시하여 다양한 고품질 organic data 소스를 수집했으며, 웹 소스를 specialized synthetic data 생성 pipelines의 시드로 활용했습니다. 깨끗하고 정확한 자연 데이터가 synthetic data 시드에 매우 중요하며, 웹 데이터 큐레이션에 많은 투자를 했습니다.
    • Targeted Acquisitions: arXiv, PubMed Central, GitHub 등 공개적으로 사용 가능하거나 라이선스가 부여된(라이선스 도서 등) 추론 중심 문서 저장소를 포함했습니다.
    • Filtering Web Dumps: LLM 생성 주석으로 훈련된 작은 분류기를 사용하여 대량 웹 덤프에서 고품질 문서 일부를 선택하고, STEM 외 콘텐츠를 증폭하기 위한 특수한 pipeline을 만들었습니다.
    • Multilingual Data: 독일어, 스페인어, 프랑스어, 포르투갈어, 이탈리아어, 힌디어, 일본어 등 다양한 언어 처리를 위해 다국어 datasets을 통합했으며, fastText 기반 언어 식별 모델과 웹 덤프 필터링에 사용되는 동일한 분류기를 사용했습니다.
    • Custom Extraction and Cleaning Pipelines: 이질적인 organic data 소스 간의 청결성과 균일성을 위해 맞춤형 heuristics 및 parser 모음을 구축하고, 다양한 파일 형식을 처리하기 위한 custom pipelines을 만들었으며, 특히 깨지기 쉬운 콘텐츠(TeX/MathML 방정식, 코드 블록, 표, 포럼 스레드 구조 등) 보존에 주의를 기울였습니다.

2.4 Post-Training datasets

  • Supervised Fine-Tuning (SFT) Datasets: 공개 datasets과 synthetic data의 혼합에서 가져온 사용자 프롬프트를 사용하여 여러 모델 응답을 생성하고 LLM 기반 평가로 최적의 응답을 선택합니다.
  • Direct Preference Optimization (DPO): rejection sampling 및 LLM 평가 기반으로 DPO 쌍을 생성하며, 일부는 pivotal token 기반 쌍 생성 방식에 기반합니다.