ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • LLM Model의 새로운 Fine-tuning 방식 - LoRA Tuning
    Machine Learning 2023. 7. 28. 09:47
    반응형

    사실 이 개념은 나온지는 오래된 개념이지만

    Bert, RoBERTa처럼 그렇게 크지 않은 모델을 사용할 때는 그냥 Full-fine tuning을 진행하지 굳이 LoRA를 사용하지는 않았습니다.

    Bert-Base: 450M, RoBERTa: 1.3GB 정도입니다.

    Llama가 나오면서 이 모델들을 Full Fine tuning을 하기에는 컴퓨팅 소스가 매우 크기 때문에 LoRA가 빛을 발했다고 저는 생각합니다.

    개념은 기존의 Pre-trained Layer의 가중치는 고정을 한체, 새로운 레이어의 가중치만을 학습을 시키는데도, 실제 성능의 차이가 많지 않다고 합니다.

    동작 방식은 기존 LLM Model은 RAM에 저장을 하고 CPU inference만 진행하고, LoRA 가중치는 GPU에 저장을 해서 학습을 진행합니다.

     

     

    LoRA 논문:

    https://arxiv.org/pdf/2106.09685.pdf

     

    같이보면 좋은 글:

    2023.11.07 - [Machine Learning] - AI의 잠재력을 최대한 발휘하다: 효과적인 LLM Prompt(프롬프트) 작성법

     

    AI의 잠재력을 최대한 발휘하다: 효과적인 LLM Prompt(프롬프트) 작성법

    인공지능의 발전은 우리의 상상력을 현실로 만드는 데 한걸음 더 다가가게 해주었습니다. Large Language Models (LLM)은 특히 텍스트 기반 작업을 자동화하고 인간처럼 소통할 수 있는 능력을 제공합

    datacook.tistory.com

     

    GPT3.5 요약본


    마이크로소프트에서 개발된 LoRA(Low-Rank Adaptation of Large Language Models)는 언어 모델에 대한 저차원 적응 기술로, 큰 규모의 언어 모델을 빠르고 효율적으로 사용할 수 있도록 한다. LoRA는 사전 훈련된 모델 가중치를 고정시키고 학습 가능한 랭크 분해 행렬을 사용하여 학습 가능한 파라미터 수를 줄인다. 이를 통해 GPU 메모리 요구 사항을 줄이고 모델 품질을 유지하며, 다른 작업에도 쉽게 적용할 수 있다. LoRA는 기존의 어댑터와 비교하여 처리량을 높이는 효과적인 기술이다.

    LoRA는 저장 요구량과 작업 전환 오버헤드를 줄여주는 기술로, 적응형 옵티마이저를 사용하여 효율적인 훈련을 제공하고 하드웨어의 진입 장벽을 낮출 수 있다. 또한, LoRA는 선형 디자인을 사용하여 배포 시 훈련 가능한 행렬을 고정된 가중치와 병합할 수 있으며, 추론 지연시간을 도입하지 않는다. 이 논문은 사전 훈련된 자기 회귀 언어 모델을 다운스트림 조건부 텍스트 생성 작업에 적응시키는 방법을 제안하고, 작업별 매개변수 증분을 효율적으로 처리하는 접근 방식을 소개한다.

    이 논문은 기존의 모델 적응을 효율적으로 만들기 위한 연구를 검토하고 있다. 어댑터 레이어 추가와 입력 레이어 활성화 형태의 최적화가 효율적인 적응을 위한 주요 전략이지만, 이러한 전략은 대규모 및 지연 감지를 요하는 제품 시나리오에서 제한이 있다. 어댑터 레이어는 추론 지연을 도입하며, 어댑터의 변형과 디자인에 대해 논문은 설명하고 있다. 어댑터 레이어는 작은 병목 차원을 가지고 있어 원래 모델의 매개변수를 제한하고 있다. 그러나 어댑터 레이어는 순차적으로 처리되어야 하므로 대규모 신경망에서는 속도 지연이 발생한다. 또한 프롬프트 최적화와 샤딩된 모델 등 다른 도전적인 문제에 대해서도 논문은 언급하고 있다. 이 요약은 GPT-2 medium의 단일 forward pass의 추론 레이턴시를 측정한 결과를 보여주고 있다.

    로라(Latent Over-parameterized Retrained Attention)는 하위 작업 간에 빠른 전환을 가능하게 하며, 추론 중 추가 지연을 도입하지 않는 방법이다. 모델은 특정 값 W0와 BA를 계산하여 저장함으로써 다양한 작업에 효율적으로 적응하고 복구할 수 있다. 이 접근 방식은 메모리 오버헤드를 최소화하고 추론 과정이 빠르게 유지되도록 보장한다. 로라를 적용하여 학습 가능한 매개변수 수를 줄일 수 있다. 트랜스포머 아키텍처에서는 self-attention 모듈과 MLP 모듈에 각각 가중치 행렬이 있다. 주의 가중치만 적용하고 MLP 모듈은 고정함으로써 단순성과 매개변수 효율성을 유지한다. 또한 다른 유형의 주의 가중치 행렬을 실험하여 성능에 미치는 영향을 연구한다. MLP 레이어, LayerNorm 레이어 및 편향을 적용하는 실험은 향후 연구에 남겨진다.

    이 연구는 LoRA (Layer-wise Recursive Adaptation)라는 새로운 모델병렬 기술을 소개하고 그 이점을 설명한다. LoRA를 사용하면 VRAM 사용량을 대폭 감소시킬 수 있고, 체크포인트 크기를 줄여 GPU 수를 줄일 수 있다. 또한, LoRA는 파인튜닝 작업을 수행할 때 그레디언트 계산이 필요하지 않아 더욱 효율적이다. 실험 결과로는 RoBERTa, DeBERTa, GPT-2, GPT-3 175B 모델들에 대한 하향 작업 성능을 평가하였고, LoRA의 성능이 우수하다는 것을 보여주었다.

    위의 데이터는 RoBlarge와 DeBXXL이라는 두 가지 제품의 성능을 나타내는 수치를 보여줍니다. 이러한 성능은 다양한 어댑터 및 기술을 사용하며, 평균과 표준편차로 제공됩니다. 또한, Table 2는 RoBERTabase, RoBERTalarge, DeBERTaXXL 모델을 사용한 다양한 적응 방법의 GLUE 벤치마크 성능을 보여줍니다. 이 표에는 MNLI의 전체 정확도, CoLA의 Matthew 상관관계, STS-B의 Pearson 상관관계, 그리고 다른 작업들에 대한 정확도가 포함되어 있습니다. Prefix-embedding tuning, Prefix-layer tuning, Adapter tuning, AdapterDrop, 그리고 LoRA는 다양한 모델 적용 방법을 나타내며, 학습 가능한 매개 변수의 수는 각각의 방법에 따라 결정됩니다.

    위의 정보는 다양한 모델과 방법, 학습 가능한 매개 변수, E2E NLG 도전 과제의 결과를 포함하고 있습니다. 각 모델의 BLEU, NIST, MET, ROUGE, L, CIDEr, GPT 값도 제공되며, LoRA가 다른 기준선 모델들보다 우수한 성능을 보이는 것을 확인할 수 있습니다. 또한 RoBERTa와 DeBERTa XXL의 성능에 대한 결과도 제시되었습니다. 이 연구는 LoRA의 NLU와 NLG 모델에서의 성능을 비교하고자 합니다.

    이 연구는 GPT-3 175B 모델의 다양한 적응 방법의 성능을 비교하는 결과를 제시한다. 그 결과, LoRA가 이전 접근 방식보다 우수한 성능을 보여준다는 것을 확인할 수 있다. 또한, LoRA로 GPT-3를 확장한 결과도 언급되었다. 연구에서는 LoRA가 세 가지 데이터셋에서 세부 튜닝 기준을 초과하거나 맞추는 것을 발견했으며, 더 많은 학습 가능한 매개변수를 가지는 것이 항상 이점을 가져오지는 않는다는 점도 언급되었다. 최종적으로, 이 연구는 대량의 텍스트로 훈련된 언어 모델들이 사전 훈련 후 세부 조정하는 것이 성능 향상에 도움이 되며, 더 큰 Transformer 모델을 훈련시키는 것이 여전히 활발한 연구 방향임을 보여준다. GPT-3는 현재까지 가장 큰 단일 Transformer 언어 모델로, 175B의 매개변수를 가지고 있다.

    GPT-3 175B는 프롬프트 엔지니어링 또는 프롬프트 해킹을 사용하여 모델의 성능을 극대화하는 것이 어렵다. 이를 해결하기 위해 이 논문은 어댑터 레이어를 도입하여 파라미터 효율적인 적응을 제안한다. 또한, 최근에는 입력 워드 임베딩을 최적화하는 방법도 제안되었다. 이 연구는 저차원 구조를 가진 모델을 사용하여 적대적 훈련에 유용하며, 이는 이론적으로도 타당하다고 주장한다.

    이 연구는 LoRA의 경험적인 이점을 고려하여 하위 작업에서 학습된 저차원 적응의 특성을 더 자세히 설명하고자 한다. GPT-3 175B에 초점을 맞추어 연구를 진행하였으며, 사전 훈련된 Transformer의 어떤 가중치 행렬을 적응해야 하는지에 대한 연구를 수행하였다. 연구 결과, LoRA가 작은 랭크에 대해 이미 경쟁력을 갖고 있다는 것을 보여주며, 작은 랭크의 적응 행렬이 충분하다는 것을 시사한다. 그러나 모든 작업이나 데이터셋에 작은 랭크가 작동할 것으로 기대하지 않는다.

    이 연구는 Ar=8과 Ar=64에 대한 서브스페이스 유사성을 조사하고, 적응 행렬의 낮은 랭크와 부분 공간 유사성에 대해 분석한다. Ar=8과 Ar=64는 동일한 사전 훈련 모델을 사용하여 학습되며, 상위 특이 벡터 방향이 가장 유용하고 다른 방향은 임의의 노이즈를 포함할 수 있다고 나타낸다. ∆W와 W의 관계를 조사한 결과, ∆W와 W의 상관 관계가 있으며 ∆WqWq의 노름이 가장 작다는 결론을 도출하였다. 이 연구는 GPT-3의 사전 훈련된 언어 모델을 적응시키는 기작에 대한 통찰력을 제공한다.

    이 논문은 LoRA (Language Model Fine-Tuning)의 가중치 행렬 선택에 대한 원리적인 방법을 탐구하고, 가중치 행렬의 랭크 결핍이 미래 작업에 대한 영감의 원천이 될 수 있다는 가설을 제시한다. 이를 위해 가우시안 튜닝 및 휴리스틱 기법을 사용하여 실험을 수행하였다. 이 논문은 LoRA가 어떻게 강인한 성능을 발휘하는지에 대한 연구를 다루고 있으며, 적대적 훈련, 초모수화, 층 정규화 등의 다른 연구 결과들과 함께 언어 모델이 적은 학습 데이터로도 학습할 수 있다는 것을 보여주고 있다.

    위 인용문은 자연어 처리와 딥러닝에 관한 다양한 연구 논문들의 제목과 출판 정보를 제공합니다. 이 논문들은 다국어 및 교차언어에 초점을 맞춘 의미론적 텍스트 유사성, 자연어 처리를 위한 통합된 아키텍처, 딥러닝에서의 매개변수 예측, 딥러닝의 사전 훈련 등 다양한 주제를 다루고 있습니다. 위 논문들은 기계 학습 및 자연어 처리 분야에서의 다양한 연구 결과를 제시하고 있으며, 파라미터 효율적인 전이 학습, 합성곱 신경망의 속도 향상, 인공 신경망 초기화 및 정규화, 확률적 최적화 알고리즘, 거대한 모델 크기 조절 방법 등에 대한 연구도 포함되어 있습니다.

    위의 인용문은 다양한 주제에 대한 연구 결과를 다루는 논문들에 대한 간단한 정보를 제공하고 있습니다. 이러한 논문들은 초과 매개변수화된 행렬 감지, 이차 활성화 함수를 가진 신경망의 알고리즘적 규제, 파라미터 효율적 전이 학습, GPT의 이해 능력 등 자연어 처리와 관련된 다양한 주제를 다루고 있습니다. 또한, BERT 사전학습 모델의 최적화된 접근 방법, 가중치 감쇠 정규화 기법, 효율적인 저차원 복소 어댑터 레이어, 구조화된 데이터를 텍스트로 자동 생성하는 기술, end-to-end 생성 모델을 위한 새로운 도전과제에 대한 연구도 포함되어 있습니다. 이외에도 감성 트리뱅크에서의 의미 구성에 대한 심층 모델, 어텐션 메커니즘을 사용한 모델 등에 대한 논문도 언급되고 있습니다.

    위의 논문은 자연어 이해를 위한 벤치마크 및 분석 플랫폼인 "Glue"와 "Superglue"에 대한 연구를 다루고 있으며, 또한 "Neural network acceptability judgments" 주제에 대한 연구도 포함되어 있다. 이 논문들은 자연어 처리 분야에서 중요한 주제들에 대한 연구를 제공한다. 또한, Transformer에 대한 연구도 다루고 있으며, 딥러닝 모델에서 저차원 특징 벡터를 추출하기 위한 방법과 파라미터 조정 방법, 그리고 구조화된 쿼리 생성을 위한 강화학습 모델에 대한 연구도 포함되어 있다. 세밀 조정은 대량 및 소량의 데이터셋에서 모델 성능 향상을 가져올 수 있다는 결론이다.

    Adapter layers는 사전 훈련된 모델에 추가되는 외부 모듈이며, LoRA는 병렬적으로 추가되는 외부 모듈로 볼 수 있다. 어댑터 레이어는 추가적인 지연을 초래하며, 이 지연은 모델 배치 크기와 시퀀스 길이에 따라 완화될 수 있다. GPT-2 medium에서의 실험 결과, 작은 배치 크기와 짧은 시퀀스 길이의 경우 추가된 지연이 상당히 크다. 또한, 다양한 자연어 이해 작업을 포함하는 GLUE 벤치마크와 WikiSQL, SAMSum, E2E NLG Challenge, DART 데이터셋에 대해 설명한다.

    위의 정보는 WebNLG 데이터셋과 관련된 내용을 설명하고 있습니다. 이 데이터셋에는 22,000개의 예시가 있으며, 14개의 범주로 구성되어 있습니다. 학습 중에 볼 수 있는 9개 범주와 볼 수 없는 5개 범주로 나뉘어 평가됩니다. 연구에서는 LoRA를 학습하기 위해 AdamW와 선형 학습률 감소 스케줄을 사용하고, 다양한 하이퍼파라미터를 조정하여 실험을 진행했습니다. 이 문서는 RoBERTa와 GPT-2 모델에 대한 하이퍼파라미터를 설명하고 있습니다.

    이 요약은 GPT-3 실험에서 사용된 하이퍼파라미터와 DeBERTa XXL 모델의 GLUE 벤치마크에 대한 정보를 제공합니다. 또한, GPT-2 LoRA의 하이퍼파라미터와 관련된 내용과 LoRA와 접두사 기반 접근법을 결합한 실험 결과를 평가합니다. LoRA+PrefixEmbed(LoRA+PE)은 접두사 임베딩 튜닝을 결합한 것이고, LoRA+PrefixLayer(LoRA+PL)은 접두사 레이어 튜닝을 결합한 것입니다. 실험 결과에서는 LoRA+PE가 LoRA 및 접두사 임베딩 튜닝보다 우수한 성능을 나타내는 반면, LoRA+PL은 LoRA보다 약간 성능이 떨어지는 것을 확인할 수 있습니다.

    이 연구는 DART와 WebNLG에서 다양한 적응 접근 방식을 평가하고, LoRA가 프리픽스 기반 접근법보다 더 나은 성능을 보여주거나 비슷한 성능을 보인다는 것을 보여줍니다. 또한, GPT-2와 GPT-3의 다양한 적응 방식에 대한 성능 및 학습 가능한 매개변수 수를 제시하였으며, 저런 규모의 데이터 작업에는 prefix 기반 접근 방식이 적합하지 않을 수 있다는 결과를 얻었습니다. 논문은 또한 MNLI-n 작업에서 다른 적응 접근 방식의 성능과 훈련 하이퍼파라미터를 제시하였습니다.

    이 논문은 다양한 변수와 결과값을 나타내며, GPT-3의 적응 방법과 하이퍼파라미터를 조사한다. 실험 결과를 통해 저자들은 LORA 모듈들 간의 상관 관계와 업데이트 행렬의 차원에 대한 결과를 분석하였다. 또한, GPT-2의 실험 결과를 통해 모델 크기와 적응에 대한 최적 랭크 사이의 관계를 조사하였다. 이 연구는 저차원 행렬 업데이트에 대한 이해를 높이는 데에 기여할 수 있다.

    이 분석은 모델 적응을 위해 얼마나 강하게 과업에 특화된 방향을 증폭해야 하는지에 대한 질문을 다루고 있다. 또한, ∆W의 SVD 분해에서 좌측 특이 행렬과 우측 특이 행렬의 비율을 특징 증폭 계수로 고려할 수 있다는 것을 밝혔다. 결과적으로, 다운스트림 작업의 정확도를 달성하기 위해서는 각 레이어마다 특징 방향이 크게 증폭되어야 한다는 것을 알 수 있었다. 또한, 모델 적응을 위해 필요한 내재적 순위는 낮다는 증거를 얻을 수 있었다. GPT-2 Medium는 E2E NLG Challenge에서 좋은 성능을 보였으며, 조정된 최적 랭크는 검증 손실에 대해 16이었고, BLEU에 대해서는 4였다. Wq와 ∆Wq의 특이 방향 간의 유사성은 r과 무작위 기준선에 따라 달라진다는 것을 확인할 수 있었다.

    반응형
Designed by Tistory.