BYOD: LoRA만 학습하여 하나의 Colab GPU로 자기회귀 모델을 확산 언어 모델로 변환하기(Build Your Own DLM)

LoRA만 학습하는 '자기회귀 → 마스킹 확산 언어 모델' 변환 레시피: 기본 모델의 모든 매개변수를 동결하고, 어댑터가 최종 매개변수의 4.1–5.8%를 차지합니다. 변환된 모델은 전체 마스킹된 시퀀스에서 출발하여 병렬로 예측하고 반복적으로 노이즈를 제거하며, 통제된 주의력 테스트에서 양방향 컨텍스트를 활용합니다. 저자들은 Gemma 2 9B, Llama 3.1 8B, Qwen2.5 7B, Ministral 8B의 네 가지 모델에서 아키텍처별 특수 튜닝 없이도 변환에 성공했으며, Ministral은 공개적으로 보고된 최초의 Mistral 계열 변환이라고 주장합니다.

LoRA만 학습하는 '자기회귀 → 마스킹 확산 언어 모델' 변환 레시피: 기본 모델의 모든 매개변수를 동결하고, 어댑터가 최종 매개변수의 4.1–5.8%를 차지합니다. 변환된 모델은 전체 마스킹된 시퀀스에서 출발하여 병렬로 예측하고 반복적으로 노이즈를 제거하며, 통제된 주의력 테스트에서 양방향 컨텍스트를 활용합니다. 저자들은 Gemma 2 9B, Llama 3.1 8B, Qwen2.5 7B, Ministral 8B의 네 가지 모델에서 아키텍처별 특수 튜닝 없이도 변환에 성공했으며, Ministral은 공개적으로 보고된 최초의 Mistral 계열 변환이라고 주장합니다.

좋아요 8 · 코드 스타 수 2

이유

  • 낮은 비용: 저자들은 각 변환이 25,000번의 반복과 최대 102.4M 토큰으로, Google Colab GPU 한 대에서 3.1–4.0시간 내에 완료된다고 주장합니다. 어댑터를 기본 모델에 병합한 후에도 매개변수 수는 변하지 않습니다.
  • 저자들은 가장 강력한 BYOD-Gemma가 9개 작업에서 평균 50.6%을 기록했으며, 동일한 평가 프레임워크에서 LLaDA 8B Instruct는 51.9%을 기록했다고 주장합니다. 또한 부모 모델의 지식을 대부분 유지했습니다.
  • 직접 확인할 수 있음: 네 가지 변환 모두 Hugging Face Space에서 온라인 데모를 제공하며, Gemma / Llama 등의 LoRA 어댑터는 이미 Hugging Face에 업로드되었습니다(Ruurd/BYOD-Gemma-2-9B 등). 학습 및 평가 코드는 MIT 라이선스이며, Colab 노트북에서 학습 중 손실 곡선과 노이즈 제거 과정을 실시간으로 확인할 수 있습니다.

사용법

  • 가장 빠른 방법: README의 Colab 노트북 notebooks/train_diffusion.ipynb를 열고 모델을 선택하여 학습한 후, 6단계에서 대화형 추론 페이지를 엽니다.
  • 로컬 실행: pip install -e ., cp .env.example .env를 실행하여 Hugging Face 읽기 전용 토큰을 입력한 후, python train.py --model llama --mode quick을 실행합니다(quick 모드는 1B급 소형 모델과 rank-128 LoRA를 사용하며 논문 점수를 재현하지 않습니다. paper 모드는 rank-1024 LoRA를 사용하며, 원본 실행에는 96 GB의 VRAM이 필요했습니다).
  • 추론: lad-generic의 load_hub_adapter_session("Ruurd/BYOD-Gemma-2-9B", …)과 denoise(…)를 사용해야 하며, 일반적인 인과적 generate()는 사용할 수 없습니다. python merge_adapter.py를 실행하면 어댑터를 기본 모델에 병합할 수 있습니다.

위험 요소

  • 저자들은 낮은 단계 수에서의 개방형 생성 품질이 주요 약점임을 명시했습니다. 128개의 토큰을 생성할 때 64단계를 사용하면 퍼플렉시티가 8.3–11.1이며, LLaDA는 4.1, 원본 자기회귀 모델은 2.2–3.0입니다.
  • Llama, Gemma 등 부모 모델은 게이트웨이 저장소이므로 먼저 이용약관에 동의해야 합니다. 어댑터는 기본 모델의 라이선스(예: Gemma 라이선스)를 따릅니다.
  • 평가에 포함된 코드 벤치마크는 생성된 Python 코드를 실행하므로, README에서는 일회용 환경 사용을 권장합니다. 점수는 저자들이 보고한 값입니다.

열기 · 코드 · Hugging Face 논문 페이지

Hugging Face Daily Papers

최신 AI 소식 보기