TinyZero 따라하기 (3)

 Colab용 간이 실행 코드

Colab Pro에서 TinyZero를 실행할 수 있도록 만든 간이 실행 코드. 복잡한 스크립트 없이 사전 학습 (pretraining) 파트만 실행해보는 버전.


# [1] 기본 셋업

!git clone https://github.com/Jiayi-Pan/TinyZero.git

%cd TinyZero

!pip install -r requirements.txt


# [2] Pretraining 설정 파일 확인

!cat configs/pretrain_config.yaml


# [3] 사전 학습 실행

!accelerate launch train.py \

  --config_file configs/pretrain_config.yaml

⚠️ accelerate config는 Colab에서는 자동 설정되므로 생략 가능함.
GPU는 Colab Pro+에서 A100 나오면 더 좋음.


주요 코드 흐름 분석

TinyZero는 PPO (Proximal Policy Optimization) 를 사용한 RLHF (Reinforcement Learning with Human Feedback) 기반 언어모델 훈련 구조를 단순화한 프로젝트야.

핵심 구성요소

파일

설명

train.py

사전 학습 수행 (Pretraining, PPO 없이)

train_ppo.py

PPO 알고리즘 기반 강화 학습 수행

model.py

HuggingFace 기반 GPT 모델 정의

dataset.py

Pretraining용 학습 데이터 생성 및 처리

reward_model.py

생성된 응답 평가용 보상 모델

ppo_trainer.py

PPO 알고리즘 핵심 로직 (update steps 등)


흐름 요약

[1] train.py

  • load_dataset()create_dataloader()Trainer.train()

  • PPO 없이 기본 언어모델 사전학습 수행

[2] train_ppo.py

  • 사용자 질문에 대한 응답을 생성 →

  • reward_model로 평가 →

  • PPOTrainer로 파라미터 업데이트

[3] ppo_trainer.py

  • Advantage 계산

  • Policy gradient로 업데이트

  • KL-penalty로 안정성 유지

Comments

Popular posts from this blog

TinyZero 따라하기 (1)

TinyZero 따라하기 (2)