최근에 회사에서 특정 도메인용 LLM을 직접 학습시켜보자는 프로젝트가 들어왔는데, LoRA로 할지 풀 파인튜닝으로 할지를 놓고 팀원들이랑 계속 싸우고 있네요. 제 의견은 정리가 안 되고 있어서 의견을 좀 들어보려고 합니다.
일단 LoRA는 파라미터가 훨씬 적으니까 학습 속도도 빠르고 메모리도 덜 쓰는 거는 알겠어요. 저희가 A100 네 장으로 돌려야 하는데, 풀 파인튜닝하면 7B 모델도 결국 배치 사이즈를 많이 못 줄이더라고요. 근데 실제 성능 차이는 얼마나 난다고 보세요? 우리 데이터가 한국어 금융 문서 약 5만 개 정도인데, 이 정도면 LoRA도 충분히 수렴할까요?
다른 분들은 실무에서 이런 선택 어떻게 하시나요? 논문에서는 충분한 데이터가 있으면 풀 파인튜닝이 낫다고 하는데, 5만 개가 충분한 건지 모르겠어요. 사실 더 모으자고 할 수도 있지만 시간이 좀 타이트합니다.
그리고 혹시 LoRA 여러 개를 앙상블 하거나 QLoRA로 가는 게 의미 있을까요? 처음부터 너무 욕심 부리는 건가 싶기도 하고... 우선은 베이스라인을 잘 만들어야 할 것 같은데 뭘부터 시작하는 게 정석인지도 궁금합니다.
저희도 비슷한 상황을 겪었는데, 5만 개면 사실 LoRA로 충분하더라고요. 풀 파인튜닝은 데이터가 최소 100만 개 이상 되거나 도메인이 정말 특이할 때 고려하는 게 맞는 것 같아요. A100 네 장이면 LoRA로 배치 사이즈도 충분히 키울 수 있고, 금융 문서 같은 경우 LoRA 어댑터도 충분히 수렴합니다. QLoRA는 메모리 절약이 목표면 의미 있지만, 이미 A100 있으시면 LoRA로 충분하실 거 같네요. 앙상블은 시간 타이트하면 오버 엔지니어링 같아요 ㅎㅎ
흐름타는개발자
5만 개면 사실 LoRA도 충분히 수렴할 수 있거든요. 저희도 비슷한 규모 금융 데이터로 해봤는데 LoRA가 풀 파인튜닝과 성능 차이가 거의 안 났어요. 다만 domain shift가 크면 얘기가 좀 달라지긴 합니다.
A100 4장 있으면 LoRA로 가서 배치 사이즈 크게 잡고 더 긴 시간 학습시키는 게 비용 대비 효율이 훨씬 좋을 것 같아요. QLoRA는 솔직히 메모리 극한으로 짜야할 때만 하는 거고, 앙상블은 그냥 overkill인 것 같네요.
만약 나중에 성능이 안 나면 데이터 퀄리티를 더 신경 쓰세요. 파라미터 수 문제보다