기존 LoRA의 한계점
○ 전체 미세조정에 비해 성능이 떨어짐
- 텍스트 분류, 지시 조정은 우수함. 그러나 지속적 사전 훈련(pre training)을 통한 새로운 지식을 학습하고 기억하는 능력이 제한적
-> LoRA Adapter 순위가 모델 전체 순위보다 매우 작아서 새 정보를 저장하는 능력을 제한하는 것이 원인
MoRA 소개
○ MoRA: LoRA의 새 정보 저장 능력을 개선하기 위해 Microsoft와 베이징 항공항천대학교 연구진이 2024년 5월 28일에 새로 공개한 새로운 PEFT 기법
○ 핵심 원리: 저순위 행렬 대신 정방 행렬(square matrix)을 사용하는 PEFT
- 전체 매개변수 공간에서 가능한 높은 순위에서 학습 가능한 매개변수를 사용
- 기존 모델 차원과 모라 어댑터의 입력 및 출력 차원의 불일치를 해결하기 위해 압축 및 합축 해제 기능(compress, decompress) 연동.
○ 연구 논문에서 설명하는 우수성: 고전적 방식의 전체 매개변수 파인튜닝 모델 성능에 더욱 더 근접해짐
- 생의학 및 금융 분야의 지속적인 사전 훈련에 대해서 동일한 크기의 로라와 모라 비교 결과
모라의 고순위 업데이트 특성으로 인해 새 지식을 기억하는 측면에서 로라를 능가.
○ 연구 논문에서 설명하는 한계점: 지시 조정 및 수학적 추론 작업에서는 로라와 거의 동등한 성능을 보임
- 전체 미세조정한 경우와 같은 성능 향상을 위해서는 모라 어댑터 순위를 높이면 이론적으로 가능함
-> 그러나 훈련 및 저장하는 데에 비용이 큰 문제점이 있음
도입 방법
○ 공개된 공식 MoRA 깃헙 소스 코드를 참조하여 이용 https://github.com/kongds/MoRA
○ Unsloth에는 업데이트된 기술이 아니므로 가능한 경우 자체 수정을 하거나, 업데이트가 되길 기다려야함.
결론
○ 스스로 패키지 코드 내용을 수정하여 가능하다면 사용해보면 좋지 않을까?
○ 스스로 수정이 어렵다면 결국은 Unsloth의 업데이트 혹은 자체 수정 전까지는 이런 새로운 기술 MoRA 존재에 대해 인지하는 것으로 의의를 두자
'TechStudy > LLM' 카테고리의 다른 글
NLEP: 문제 해결에 스스로 프로그램을 만들어 해결하는 LLM (0) | 2024.06.20 |
---|---|
고급(?) 파인튜닝 기술 Reranker (0) | 2024.06.12 |
Unsloth 환경을 도입하고 ORPO 파인튜닝(fine-tuning)하기 (0) | 2024.06.07 |
Fine-tuned model 독립 및 견고성(robust) 검증 (0) | 2024.06.05 |
Llama3, 그리고 ORPO (0) | 2024.06.04 |