Gemma 4, Cloud Run Jobs로 펫 품종 분류 성능 향상!
Gemma 4 출시와 함께 향상된 추론 능력과 아키텍처 효율성을 소개하며, Apache 2.0 라이선스를 통해 개발 유연성을 제공
NVIDIA RTX PRO 6000 GPU를 탑재한 Cloud Run Jobs를 활용하여 Gemma 4 모델을 fine-tuning하는 방법을 제시하며, 4-bit 양자화(QLoRA)를 통해 메모리 사용량 최적화
멀티모달 입력 처리, 레이블 마스킹, LoRA 설정 등 코드 변경 사항을 상세히 설명하고, 700개 샘플 학습 시 89% 정확도 달성
Gemma 4 아키텍처의 특징과 멀티모달 데이터 처리
Gemma 4는 이미지, 비디오, 오디오를 네이티브하게 처리하는 멀티모달(Multimodal) 아키텍처를 지원하며, 256K 컨텍스트 윈도우(Context Window)를 통해 대용량 데이터 처리가 가능하다. 특히, AutoModelForMultimodalLM 클래스를 사용하여 다양한 입력 형식을 처리하고, 이미지 데이터는 텍스트보다 먼저 입력하여 안정성을 확보한다. 또한, 이미지에 맞는 동적 토큰 수를 계산하여 정확한 레이블 마스킹(Label Masking)을 구현한다. 이러한 구조는 멀티모달 데이터(Multimodal Data) 처리의 효율성을 높인다.
LoRA를 활용한 Gemma 4 Fine-tuning 최적화
본문에서는 Gemma 4 fine-tuning을 위해 LoRA(Low-Rank Adaptation) 기법을 적용하고, Gemma4ClippableLinear 레이어의 활성화 클리핑(Activation Clipping) 문제를 해결하는 방법을 제시한다. 특히, `target_modules="all-linear"` 설정을 통해 비전 타워(Vision Tower)의 모든 레이어를 학습에 포함시켜 모델의 성능을 향상시킨다. 또한, QLoRA(4-bit Quantization)와 Gradient Checkpointing을 활용하여 VRAM 사용량(VRAM Usage)을 최소화하고, 31B 파라미터 모델의 안정적인 학습을 지원한다.
Cloud Run Jobs를 활용한 서버리스 GPU 환경 구축
Cloud Run Jobs를 사용하여 Gemma 4 모델을 fine-tuning하는 과정을 설명하며, NVIDIA RTX PRO 6000 GPU를 활용하여 서버리스(Serverless) 환경에서 대규모 모델 학습을 가능하게 한다. GCS(Google Cloud Storage)에 모델 가중치를 저장하여 학습 시간(Training Time)을 단축하고, Cloud Build를 통해 컨테이너 이미지를 생성한다. 또한, Cloud Run Job 생성 시 GPU, CPU, 메모리 설정을 지정하고, GCS 버킷을 볼륨 마운트(Volume Mount)하여 모델에 접근한다. 이러한 과정을 통해 GPU 자원 관리(GPU Resource Management)의 효율성을 높인다.
Gemma 4 Fine-tuning 결과 및 성능 분석
Gemma 4 모델은 Gemma 3 대비 향상된 성능을 보이며, 특히 31B 모델은 Arena AI 텍스트 리더보드에서 3위를 기록했다. 본문에서는 700개 샘플 학습 시 89%의 정확도를 달성했으며, 전체 데이터셋(4,000개) 학습 시 STOA(State-of-the-Art) 수준인 94%의 정확도를 달성했다. LoRA 설정(Rank 64 / Alpha 64)과 5e-5 학습률을 통해 시각적 특징(Visual Features)을 정교하게 학습하여, 펫 품종 분류(Pet Breed Classification) 문제에 대한 성능을 향상시켰다.
Gemma 4 Fine-tuning을 위한 코드 변경 사항
Gemma 4 모델을 fine-tuning하기 위해 필요한 코드 변경 사항을 상세히 설명한다. 특히, 멀티모달 입력(Multimodal Input) 순서, AutoModelForMultimodalLM 클래스 사용, 레이블 마스킹(Label Masking) 구현, Gemma4ClippableLinear 레이어 처리, LoRA 설정 등을 다룬다. 이러한 변경 사항은 Gemma 4의 새로운 아키텍처에 적합하도록 설계되었으며, 모델의 정확도(Model Accuracy)를 향상시키는 데 기여한다.