LoRA: 대규모 언어 모델의 저랭크 적응
초록
자연어 처리의 중요한 패러다임은 일반 도메인 데이터에 대한 대규모 사전학습과 특정 작업 또는 도메인으로의 적응으로 이루어진다. 더 큰 모델을 사전학습함에 따라, 모든 모델 파라미터를 재학습하는 full fine-tuning은 덜 실현 가능해진다. GPT-3 175B를 예로 들면, 각각 175B 파라미터를 가진 fine-tuned 모델의 독립 인스턴스를 배포하는 것은 지나치게 비싸다. 우리는Low-RankAdaptation, 또는 LoRA를 제안하는데, 이는 사전학습된 모델 가중치를 동결하고 Transformer 아키텍처의 각 층에 학습 가능한 rank decomposition 행렬을 주입하여 downstream 작업을 위한 학습 가능한 파라미터 수를 크게 줄인다. Adam으로 fine-tuned된 GPT-3 175B와 비교하여, LoRA는 학습 가능한 파라미터 수를 10,000배 줄이고 GPU 메모리 요구량을 3배 줄일 수 있다. LoRA는 학습 가능한 파라미터가 더 적고, training throughput이 더 높으며, adapter와 달리추가적인 inference latency가 없음에도 불구하고, RoBERTa, DeBERTa, GPT-2, GPT-3에서 모델 품질 면에서 fine-tuning과 동등하거나 더 나은 성능을 보인다. 우리는 또한 언어 모델 적응에서 rank-deficiency에 대한 경험적 조사를 제공하며, 이는 LoRA의 효능을 설명해 준다. 우리는 PyTorch 모델과 LoRA의 통합을 용이하게 하는 패키지를 공개하고, RoBERTa, DeBERTa, GPT-2에 대한 우리의 구현과 모델 체크포인트를 다음에 제공한다:https://github.com/microsoft/LoRA.
1 서론
자연어 처리의 많은 응용은 적응시키는 데 의존한다하나의대규모 사전학습 언어 모델을여러downstream 응용으로. 이러한 적응은 보통fine-tuning을 통해 이루어지며, 이는 사전학습 모델의 모든 파라미터를 업데이트한다. fine-tuning의 주요 단점은 새 모델이 원래 모델만큼 많은 파라미터를 포함한다는 것이다. 더 큰 모델들이 몇 달마다 학습됨에 따라, 이는 GPT-2에 대한 단순한 “불편함”에서(Radford et al.,b)또는 RoBERTa large에 대한(Liu et al.,2019)1750억 개의 학습 가능한 파라미터를 가진 GPT-3에 대한 중요한 배포 과제로 바뀐다(Brown et al.,2020).111GPT-3 175B는 few-shot learning으로도 사소하지 않은 성능을 달성하지만, fine-tuning은Appendix A.
에 보인 것처럼 그 성능을 크게 향상시킨다. 많은 이들이 일부 파라미터만 적응시키거나 새로운 작업을 위한 외부 모듈을 학습함으로써 이를 완화하려고 했다. 이런 방식으로, 우리는 각 작업에 대해 사전학습 모델에 더해 소수의 task-specific 파라미터만 저장하고 로드하면 되므로, 배포 시 운영 효율성이 크게 향상된다. 그러나 기존 기법들은 종종 모델 깊이를 확장함으로써 inference latency를 도입하거나(Houlsby et al.,2019; Rebuffi et al.,2017)모델의 사용 가능한 sequence length를 줄인다(Li&Liang,2021; Lester et al.,2021; Hambardzumyan et al.,2020; Liu et al.,2021) (Section 3). 더 중요하게는, 이러한 방법들은 종종 fine-tuning baseline에 필적하지 못하여, 효율성과 모델 품질 사이의 trade-off를 제기한다.
우리는Li et al. (2018a); Aghajanyan et al. (2020)에서 영감을 얻는데, 이들은 학습된 over-parametrized 모델들이 사실 낮은 intrinsic dimension 위에 놓여 있음을 보여준다. 우리는 모델 적응 동안 가중치의 변화 또한 낮은 “intrinsic rank”를 가진다고 가정하며, 이는 우리가 제안하는Low-RankAdaptation (LoRA) 접근법으로 이어진다. LoRA는 사전학습 가중치를 동결한 채로 두면서, 적응 동안 dense layer의 변화에 대한 rank decomposition 행렬을 대신 최적화함으로써 신경망의 일부 dense layer를 간접적으로 학습할 수 있게 한다. 이는Figure 1에 보인 바와 같다. GPT-3 175B를 예로 사용하여, 우리는 매우 낮은 rank(즉,r에서Figure 1하나 또는 둘일 수 있음)도 full rank(즉,d)가 12,288만큼 높을 때에도 충분하여 LoRA를 storage- 및 compute-efficient하게 만든다는 것을 보인다.
LoRA는 여러 핵심 장점을 지닌다.
-
•
사전학습 모델은 공유될 수 있으며 서로 다른 작업을 위한 많은 작은 LoRA 모듈을 구축하는 데 사용될 수 있다. 우리는 공유 모델을 동결하고 행렬을 교체함으로써 작업을 효율적으로 전환할 수 있다그리고의Figure 1, 저장 요구량과 task-switching overhead를 크게 줄인다.
-
•
LoRA는 대부분의 파라미터에 대해 gradient를 계산하거나 optimizer state를 유지할 필요가 없기 때문에, adaptive optimizer를 사용할 때 학습을 더 효율적으로 만들고 하드웨어 진입 장벽을 최대 3배까지 낮춘다. 대신 우리는 주입된 훨씬 더 작은 low-rank 행렬만 최적화한다.
-
•
우리의 단순한 선형 설계는 배포 시 학습 가능한 행렬을 동결된 가중치와 병합할 수 있게 하며,inference latency를 도입하지 않는다완전히 fine-tuned된 모델과 비교하여, 구성상.
-
•
LoRA는 많은 선행 방법들과 직교적이며 prefix-tuning과 같은 많은 방법들과 결합될 수 있다. 우리는 예를Appendix E.
용어와 관례
우리는 Transformer 아키텍처를 자주 참조하고 그 차원에 대한 통상적인 용어를 사용한다. 우리는 Transformer layer의 입력 및 출력 차원 크기를라고 부른다. 우리는, , , 그리고를 self-attention 모듈의 query/key/value/output projection matrix를 가리키기 위해 사용한다.또는는 사전학습된 weight matrix를 가리키고는 적응 동안 그 누적 gradient update를 가리킨다. 우리는를 LoRA 모듈의 rank를 나타내는 데 사용한다. 우리는(Vaswani et al.,2017; Brown et al.,2020)가 정한 관례를 따르고, 모델 최적화를 위해 Adam을 사용하며(Loshchilov&Hutter,2019; Kingma&Ba,2017)Transformer MLP feedforward dimension을 사용한다.
2 문제 정의
우리의 제안은 training objective에 구애받지 않지만, 우리는 동기 부여 사용 사례로 language modeling에 초점을 맞춘다. 아래는 language modeling 문제, 특히 task-specific prompt가 주어졌을 때 conditional probability의 최대화에 대한 간략한 설명이다.
사전학습된 autoregressive language model이 주어졌다고 가정하자로 매개변수화된. 예를 들어,는 GPT와 같은 일반적인 multi-task learner일 수 있다(Radford et al.,b; Brown et al.,2020)Transformer 아키텍처에 기반한(Vaswani et al.,2017). 이 사전학습 모델을 요약, machine reading comprehension (MRC), natural language to SQL (NL2SQL)과 같은 downstream conditional text generation 작업에 적응시키는 것을 고려하자. 각 downstream task는 context-target 쌍의 training dataset으로 표현된다:, 여기서 둘 다그리고토큰의 시퀀스이다. 예를 들어, NL2SQL에서,는 자연어 질의이고는 그에 대응하는 SQL 명령이다; 요약에서는,는 기사의 내용이고는 그 요약이다.
full fine-tuning 동안, 모델은 사전학습된 가중치로 초기화된다그리고 업데이트되어conditional language modeling objective를 최대화하기 위해 반복적으로 gradient를 따름으로써:
| (1) |
full fine-tuning의 주요 단점 중 하나는각downstream task에 대해, 우리가서로 다른파라미터 집합을 학습한다는 것이다그 차원이같다. 따라서, 사전학습 모델이 크다면(GPT-3처럼을 가진), fine-tuned 모델의 많은 독립 인스턴스를 저장하고 배포하는 것은 가능하다 하더라도 어려울 수 있다.
이 논문에서, 우리는 더 parameter-efficient한 접근법을 채택하는데, 여기서 task-specific parameter increment는 훨씬 더 작은 크기의 파라미터 집합에 의해 추가로 인코딩된다와 함께. 찾는 작업은따라서 다음에 대한 최적화가 된다:
| (2) |
이어지는 절들에서, 우리는 low-rank representation을 사용하여 인코딩할 것을 제안한다이는 compute- 및 memory-efficient하다. 사전학습 모델이 GPT-3 175B일 때, 학습 가능한 파라미터의 수는 다음만큼 작을 수 있다의.
3 기존 해결책들은 충분히 좋지 않은가?
우리가 해결하고자 하는 문제는 결코 새로운 것이 아니다. transfer learning의 시작 이래로, 수십 개의 연구가 모델 적응을 더 parameter- 및 compute-efficient하게 만들고자 했다. 잘 알려진 일부 연구에 대한 조사는Section 6을 참조하라. language modeling을 예로 들면, 효율적인 적응과 관련해 두 가지 두드러진 전략이 있다: adapter layer를 추가하는 것(Houlsby et al.,2019; Rebuffi et al.,2017; Pfeiffer et al.,2021; Rücklé et al.,2020)또는 input layer activation의 어떤 형태를 최적화하는 것(Li&Liang,2021; Lester et al.,2021; Hambardzumyan et al.,2020; Liu et al.,2021). 그러나 두 전략 모두 특히 대규모이고 latency-sensitive한 production scenario에서 한계를 가진다.
Adapter Layer는 Inference Latency를 도입한다
adapter에는 많은 변형이 있다. 우리는Houlsby et al. (2019)의 원래 설계에 초점을 맞추는데, 이는 Transformer block당 두 개의 adapter layer를 가지며, 더 최근의Lin et al. (2020)의 것은 block당 하나만 가지지만 추가적인 LayerNorm을 포함한다(Ba et al.,2016). layer를 pruning하거나 multi-task setting을 활용하여 전체 latency를 줄일 수는 있지만(Rücklé et al.,2020; Pfeiffer et al.,2021), adapter layer의 추가 compute를 우회할 직접적인 방법은 없다. adapter layer는 작은 bottleneck dimension을 가져 적은 파라미터(때로는원래 모델의 1%)를 가지도록 설계되어 있어 추가할 수 있는 FLOPs를 제한하므로, 이는 문제가 아닌 것처럼 보인다. 그러나 큰 neural network는 latency를 낮게 유지하기 위해 hardware parallelism에 의존하며, adapter layer는 순차적으로 처리되어야 한다. 이는 batch size가 일반적으로 1만큼 작은 online inference setting에서 차이를 만든다. GPT-2에서 inference를 실행하는 것과 같은 model parallelism이 없는 일반적인 scenario에서(Radford et al.,b)medium을 단일 GPU에서 실행할 때, 매우 작은 bottleneck dimension을 사용하더라도 adapter를 사용할 때 latency의 눈에 띄는 증가를 본다 (Table 1).
| Batch Size | 32 | 16 | 1 |
| Sequence Length | 512 | 256 | 128 |
| 0.5M | 11M | 11M | |
| Fine-Tune/LoRA | 1449.40.8 | 338.00.6 | 19.82.7 |
| 1482.01.0 (+2.2%) | 354.80.5 (+5.0%) | 23.92.1 (+20.7%) | |
| 1492.21.0 (+3.0%) | 366.30.5 (+8.4%) | 25.82.2 (+30.3%) |
Prompt를 직접 최적화하는 것은 어렵다
prefix tuning으로 예시되는 다른 방향은(Li&Liang,2021)다른 도전에 직면한다. 우리는 prefix tuning이 최적화하기 어렵고 그 성능이 학습 가능한 파라미터에 대해 비단조적으로 변한다는 것을 관찰하며, 이는 원 논문의 유사한 관찰을 확인한다. 더 근본적으로, 적응을 위해 sequence length의 일부를 예약하는 것은 downstream task를 처리하는 데 사용 가능한 sequence length를 필연적으로 줄이며, 우리는 이것이 prompt tuning을 다른 방법들과 비교하여 덜 성능 좋게 만든다고 의심한다. 작업 성능에 대한 연구는Section 5.
4 우리의 방법
우리는 LoRA의 단순한 설계와 그 실질적인 이점을 설명한다. 여기서 개괄한 원칙은 deep learning model의 모든 dense layer에 적용되지만, 우리는 동기 부여 사용 사례로서 실험에서 Transformer language model의 특정 가중치에만 초점을 맞춘다.
4.1 Low-Rank-Parametrized Update Matrix
신경망은 matrix multiplication을 수행하는 많은 dense layer를 포함한다. 이 layer들의 weight matrix는 일반적으로 full-rank를 가진다. 특정 작업에 적응할 때,Aghajanyan et al. (2020)는 사전학습된 language model이 낮은 “instrisic dimension”을 가지며 더 작은 subspace로의 random projection에도 불구하고 여전히 효율적으로 학습할 수 있음을 보인다. 이에 영감을 받아, 우리는 적응 동안 가중치에 대한 업데이트 또한 낮은 “intrinsic rank”를 가진다고 가정한다. 사전학습된 weight matrix에 대해, 우리는 후자를 low-rank decomposition으로 표현함으로써 그 업데이트를 제한한다, 여기서, 그리고 rank. 학습 동안,는 동결되어 gradient 업데이트를 받지 않는 반면,그리고는 학습 가능한 매개변수를 포함한다. 둘 다그리고는 같은 입력과 곱해지고, 각각의 출력 벡터는 좌표별로 합산된다는 점에 유의하라.에 대해, 우리의 수정된 forward pass는 다음을 산출한다:
| (3) |
우리는 우리의 재매개변수화를Figure 1에 설명한다. 우리는에 대해 무작위 Gaussian 초기화를 사용하고, 에 대해서는 0을 사용하므로,는 학습 시작 시 0이다. 그런 다음 우리는를만큼 스케일링하는데, 여기서는에 있는 상수이다. Adam으로 최적화할 때,을 튜닝하는 것은 초기화를 적절히 스케일링하면 learning rate를 튜닝하는 것과 대략 같다. 결과적으로, 우리는 단순히을 우리가 시도하는 첫 번째로 설정하고 튜닝하지 않는다. 이 스케일링은 우리가 (Yang&Hu,2021).
Full Fine-tuning의 일반화.fine-tuning의 더 일반적인 형태는 사전 학습된 매개변수의 부분집합을 학습하는 것을 허용한다. LoRA는 한 걸음 더 나아가 adaptation 동안 weight matrices에 대한 누적 gradient update가 full-rank일 것을 요구하지 않는다. 이는 모든 weight matrices에 LoRA를 적용하고 모든 biases를 학습할 때222그들은 weights와 비교해 무시할 만한 수의 매개변수를 나타낸다., 우리는 LoRA rank를 설정함으로써 full fine-tuning의 표현력을 대략 회복한다사전 학습된 weight matrices의 rank로. 다시 말해, 학습 가능한 매개변수의 수를 늘릴수록333어려운 작업에 적응할 때의 불가피성., LoRA를 학습하는 것은 원래 모델을 학습하는 것에 대략 수렴하는 반면, adapter 기반 방법들은 MLP로 수렴하고 prefix 기반 방법들은 긴 입력 시퀀스를 받을 수 없는 모델로 수렴한다.
추가적인 Inference Latency 없음.production에 배포될 때, 우리는 명시적으로 계산하고 저장할 수 있다그리고 평소처럼 inference를 수행할 수 있다. 둘 다그리고는에 있다는 점에 유의하라. 다른 downstream task로 전환해야 할 때, 우리는 회복할 수 있다를 빼서그리고 그런 다음 다른를 더함으로써, 이는 매우 적은 memory overhead를 갖는 빠른 연산이다. 결정적으로, 이는 우리가 construction에 의해 fine-tuned model과 비교해 inference 중 어떤 추가 latency도 도입하지 않음을 보장한다.
4.2 Transformer에 LoRA 적용하기
원칙적으로, 우리는 학습 가능한 매개변수의 수를 줄이기 위해 neural network의 weight matrices의 어떤 부분집합에도 LoRA를 적용할 수 있다. Transformer architecture에서는 self-attention module에 네 개의 weight matrices가 있다 () 그리고 MLP module에는 두 개가 있다. 우리는(또는, )를 차원의 단일 matrix로 취급한다, 비록 출력 차원은 보통 attention heads로 분할되지만. 우리는 우리의 연구를attention weights만 adaptation하는 것으로 downstream tasks에 대해 제한하고, 단순성과 parameter-efficiency를 위해 MLP modules를 freeze한다(따라서 downstream tasks에서 학습되지 않는다).우리는 Transformer에서 서로 다른 유형의 attention weight matrices를 adaptation하는 효과를 추가로 연구한다Section 7.1에서. MLP layers, LayerNorm layers, 그리고 biases를 adaptation하는 것에 대한 경험적 조사는 future work로 남겨둔다.
실용적 이점과 한계.가장 중요한 이점은 memory와 storage 사용량의 감소에서 온다. Adam으로 학습된 대형 Transformer의 경우, 우리는 그 VRAM 사용량을 최대까지 줄인다, 만약라면, frozen parameters에 대한 optimizer states를 저장할 필요가 없기 때문이다. GPT-3 175B에서, 우리는 학습 중 VRAM 소비를 1.2TB에서 350GB로 줄인다.와 query 및 value projection matrices만 adaptation되는 경우, checkpoint 크기는 대략 10,000만큼 줄어든다(350GB에서 35MB로)444우리는 deployment 동안 여전히 350GB 모델이 필요하다; 그러나 100개의 adapted models를 저장하는 것은 350GB + 35MB * 100만 필요하다100 * 350GB와 대비해 354GB35TB.. 이는 우리가 훨씬 더 적은 GPU로 학습하고 I/O bottlenecks를 피할 수 있게 한다. 또 다른 이점은 모든 parameters가 아니라 LoRA weights만 교체함으로써 배포 중 훨씬 더 낮은 비용으로 tasks 간 전환할 수 있다는 것이다. 이는 VRAM에 pre-trained weights를 저장하는 machines에서 즉석으로 교체될 수 있는 많은 customized models의 생성을 가능하게 한다. 또한 우리는 full fine-tuning과 비교해 GPT-3 175B에서 학습 중 25% speedup을 관찰한다555GPT-3 175B의 경우, full fine-tuning의 training throughput은 V100 GPU당 32.5 tokens/s이다; model parallelism을 위한 weight shards 수가 동일할 때, LoRA의 throughput은 V100 GPU당 43.1 tokens/s이다.이는 대다수 parameters에 대한 gradient를 계산할 필요가 없기 때문이다.
LoRA에도 한계가 있다. 예를 들어, 서로 다른그리고를 가진 다른 tasks에 대한 입력들을 단일 forward pass에서 batch 처리하는 것은 간단하지 않다, 만약 하나가그리고를안으로 흡수하여 추가 inference latency를 제거하기로 선택한다면. 비록 latency가 중요하지 않은 시나리오에서는 weights를 merge하지 않고 batch의 samples에 사용할 LoRA modules를 동적으로 선택하는 것이 가능하다.
5 경험적 실험
우리는 LoRA의 downstream task performance를 RoBERTa에서 평가한다(Liu et al.,2019), DeBERTa(He et al.,2021), 그리고 GPT-2(Radford et al.,b), GPT-3 175B로 scale up하기 전에(Brown et al.,2020). 우리의 실험은 natural language understanding (NLU)부터 generation (NLG)까지 광범위한 tasks를 포괄한다. 구체적으로, 우리는 GLUE를 평가한다(Wang et al.,2019)benchmark를 RoBERTa와 DeBERTa에 대해. 우리는Li&Liang (2021)의 setup을 GPT-2에서 직접 비교를 위해 따르고, WikiSQL을 추가한다(Zhong et al.,2017)(NL to SQL queries) 그리고 SAMSum(Gliwa et al.,2019)(conversation summarization)를 GPT-3에서의 large-scale experiments에 대해. 우리가 사용하는 datasets에 대한 자세한 내용은Appendix C를 보라. 우리는 모든 실험에 NVIDIA Tesla V100을 사용한다.
5.1 Baselines
다른 baselines와 폭넓게 비교하기 위해, 우리는 prior work에서 사용된 setups를 복제하고 가능한 경우 그들이 보고한 수치를 재사용한다. 그러나 이는 일부 baselines가 특정 실험에만 나타날 수 있음을 의미한다.
Fine-Tuning (FT)은 adaptation을 위한 일반적인 접근법이다. fine-tuning 동안, 모델은 pre-trained weights와 biases로 초기화되고, 모든 model parameters가 gradient updates를 거친다.간단한 변형은 다른 layers는 freeze하면서 일부 layers만 update하는 것이다. 우리는 prior work에서 보고된 그러한 baseline 하나를 포함한다(Li&Liang,2021)GPT-2에서, 이는 마지막 두 layers만 adaptation한다 ().
Bias-only 또는 BitFit은 다른 모든 것을 freeze하면서 bias vectors만 학습하는 baseline이다. 동시대에, 이 baseline은 BitFit에서도 연구되었다(Zaken et al.,2021).
Prefix-embedding tuning (PreEmbed)은 input tokens 사이에 special tokens를 삽입한다. 이러한 special tokens는 학습 가능한 word embeddings를 가지며 일반적으로 model’s vocabulary 안에 없다. 그러한 tokens를 어디에 배치할지는 performance에 영향을 미칠 수 있다. 우리는 그러한 tokens를 prompt 앞에 붙이는 “prefixing”과 prompt에 덧붙이는 “infixing”에 집중하며; 둘 다 다음에서 논의된다Li&Liang (2021). 우리는 사용한다(resp.)는 prefix (resp. infix) tokens의 수를 나타낸다. 학습 가능한 parameters의 수는.
Prefix-layer tuning (PreLayer)은 prefix-embedding tuning의 확장이다. 일부 special tokens에 대한 word embeddings(또는 동등하게, embedding layer 이후의 activations)만 학습하는 대신, 우리는 모든 Transformer layer 이후의 activations를 학습한다. 이전 layers에서 계산된 activations는 단순히 학습 가능한 것들로 대체된다. 결과적인 학습 가능한 parameters의 수는, 여기서는 Transformer layers의 수이다.
Adapter tuning은 다음에서 제안된 바와 같이Houlsby et al. (2019)self-attention module(및 MLP module)과 뒤따르는 residual connection 사이에 adapter layers를 삽입한다. adapter layer에는 중간에 nonlinearity가 있는 biases를 가진 두 개의 fully connected layers가 있다. 우리는 이 원래 설계를라고 부른다. 최근,Lin et al. (2020)은 adapter layer가 MLP module 이후와 LayerNorm 이후에만 적용되는 더 효율적인 설계를 제안했다. 우리는 그것을라고 부른다. 이는 다음에서 제안된 또 다른 설계와 매우 유사하다Pfeiffer et al. (2021), 우리는 이를라고 부른다. 우리는 또한 AdapterDrop이라고 불리는 또 다른 baseline을 포함한다(Rücklé et al.,2020)이는 더 큰 효율성을 위해 일부 adapter layers를 drop한다 (). 우리는 비교하는 baselines의 수를 최대화하기 위해 가능한 경우 prior works의 수치를 인용한다; 그것들은 첫 번째 열에 asterisk (*)가 있는 행들에 있다. 모든 경우에, 우리는 가진다여기서는 adapter layers의 수이고는 학습 가능한 LayerNorms의 수이다(예:).
LoRA는 기존 weight matrices와 병렬로 trainable pairs of rank decomposition matrices를 추가한다. 다음에서 언급한 것처럼Section 4.2, 우리는 단순성을 위해 대부분의 실험에서 LoRA를그리고에만 적용한다. 학습 가능한 parameters의 수는 rank에 의해 결정된다그리고 원래 weights의 shape에 의해:, 여기서는 우리가 LoRA를 적용하는 weight matrices의 수이다.
5.2 RoBERTa base/large
| 모델&방법 | # 학습 가능 | |||||||||
| 매개변수 | MNLI | SST-2 | MRPC | CoLA | QNLI | QQP | RTE | STS-B | Avg. | |
| (FT)* | 125.0M | 87.6 | 94.8 | 90.2 | 63.6 | 92.8 | 91.9 | 78.7 | 91.2 | 86.4 |
| (BitFit)* | 0.1M | 84.7 | 93.7 | 92.7 | 62.0 | 91.8 | 84.0 | 81.5 | 90.8 | 85.2 |
| ()* | 0.3M | 87.1.0 | 94.2.1 | 88.51.1 | 60.8.4 | 93.1.1 | 90.2.0 | 71.52.7 | 89.7.3 | 84.4 |
| ()* | 0.9M | 87.3.1 | 94.7.3 | 88.4.1 | 62.6.9 | 93.0.2 | 90.6.0 | 75.92.2 | 90.3.1 | 85.4 |
| (LoRA) | 0.3M | 87.5.3 | 95.1.2 | 89.7.7 | 63.41.2 | 93.3.3 | 90.8.1 | 86.6.7 | 91.5.2 | 87.2 |
| (FT)* | 355.0M | 90.2 | 96.4 | 90.9 | 68.0 | 94.7 | 92.2 | 86.6 | 92.4 | 88.9 |
| (LoRA) | 0.8M | 90.6.2 | 96.2.5 | 90.91.2 | 68.21.9 | 94.9.3 | 91.6.1 | 87.42.5 | 92.6.2 | 89.0 |
| () | 3.0M | 90.2.3 | 96.1.3 | 90.2.7 | 68.31.0 | 94.8.2 | 91.9.1 | 83.82.9 | 92.1.7 | 88.4 |
| () | 0.8M | 90.5.3 | 96.6.2 | 89.71.2 | 67.82.5 | 94.8.3 | 91.7.2 | 80.12.9 | 91.9.4 | 87.9 |
| () | 6.0M | 89.9.5 | 96.2.3 | 88.72.9 | 66.54.4 | 94.7.2 | 92.1.1 | 83.41.1 | 91.01.7 | 87.8 |
| () | 0.8M | 90.3.3 | 96.3.5 | 87.71.7 | 66.32.0 | 94.7.2 | 91.5.1 | 72.92.9 | 91.5.5 | 86.4 |
| (LoRA) | 0.8M | 90.6.2 | 96.2.5 | 90.21.0 | 68.21.9 | 94.8.3 | 91.6.2 | 85.21.1 | 92.3.5 | 88.6 |
| (FT)* | 1500.0M | 91.8 | 97.2 | 92.0 | 72.0 | 96.0 | 92.7 | 93.9 | 92.9 | 91.1 |
| (LoRA) | 4.7M | 91.9.2 | 96.9.2 | 92.6.6 | 72.41.1 | 96.0.1 | 92.9.1 | 94.9.4 | 93.0.2 | 91.3 |
RoBERTa(Liu et al.,2019)는 BERT에서 원래 제안된 pre-training recipe를 최적화했다(Devlin et al.,2019a)그리고 훨씬 더 많은 학습 가능한 parameters를 도입하지 않고 후자의 task performance를 향상시켰다. RoBERTa는 최근 몇 년 동안 GLUE benchmark와 같은 NLP leaderboards에서 훨씬 더 큰 models에 추월당했지만(Wang et al.,2019)그것은 practitioners 사이에서 그 크기에 비해 여전히 경쟁력 있고 인기 있는 pre-trained model로 남아 있다. 우리는 HuggingFace Transformers library에서 pre-trained RoBERTa base (125M)와 RoBERTa large (355M)를 가져온다(Wolf et al.,2020)그리고 GLUE benchmark의 tasks에서 서로 다른 efficient adaptation approaches의 performance를 평가한다. 우리는 또한 복제한다Houlsby et al. (2019)그리고Pfeiffer et al. (2021)그들의 setup에 따라. 공정한 비교를 보장하기 위해, adapters와 비교할 때 LoRA를 평가하는 방식에 두 가지 중요한 변경을 가한다. 첫째, 우리는 모든 tasks에 대해 동일한 batch size를 사용하고 adapter baselines와 맞추기 위해 sequence length 128을 사용한다. 둘째, 우리는 MRPC, RTE, 그리고 STS-B에 대해 모델을 pre-trained model로 초기화하며, fine-tuning baseline처럼 이미 MNLI에 adaptation된 model이 아니다. 다음의 더 제한적인 setup을 따르는 runs는Houlsby et al. (2019)로 label된다. 결과는 다음에 제시된다Table 2(상위 세 Sections). 사용된 hyperparameters에 대한 자세한 내용은Section D.1를 보라.
5.3 DeBERTa XXL
DeBERTa(He et al.,2021)는 훨씬 더 큰 scale로 학습되고 GLUE와 같은 benchmarks에서 매우 경쟁력 있게 수행하는 BERT의 더 최근 variant이다(Wang et al.,2019)그리고 SuperGLUE(Wang et al.,2020). 우리는 LoRA가 GLUE에서 fully fine-tuned DeBERTa XXL (1.5B)의 performance와 여전히 맞먹을 수 있는지 평가한다. 결과는 다음에 제시된다Table 2(하단 Section). 사용된 hyperparameters에 대한 자세한 내용은Section D.2를 보라.
5.4 GPT-2 medium/large
LoRA가 NLU에서 full fine-tuning에 대한 경쟁력 있는 대안이 될 수 있음을 보였으므로, 우리는 LoRA가 GPT-2 medium 및 large와 같은 NLG models에서도 여전히 우세한지 답하고자 한다(Radford et al.,b). 우리는 우리의 setup을 가능한 한 가깝게 유지한다Li&Liang (2021)직접 비교를 위해. space constraint 때문에, 우리는 E2E NLG Challenge에서의 결과만 제시한다 (Table 3) 이 절에서. WebNLG에 대한 결과는Section F.1을 참조하라(Gardent et al.,2017)및 DART(Nan et al.,2020). 사용된 하이퍼파라미터 목록은Section D.3.
| 모델&방법 | # 학습 가능 | E2E NLG Challenge | ||||
| 매개변수 | BLEU | NIST | MET | ROUGE-L | CIDEr | |
| GPT-2 M (FT)* | 354.92M | 68.2 | 8.62 | 46.2 | 71.0 | 2.47 |
| GPT-2 M ()* | 0.37M | 66.3 | 8.41 | 45.0 | 69.8 | 2.40 |
| GPT-2 M ()* | 11.09M | 68.9 | 8.71 | 46.1 | 71.3 | 2.47 |
| GPT-2 M () | 11.09M | 67.3.6 | 8.50.07 | 46.0.2 | 70.7.2 | 2.44.01 |
| GPT-2 M ()* | 25.19M | 68.1 | 8.59 | 46.0 | 70.8 | 2.41 |
| GPT-2 M (PreLayer)* | 0.35M | 69.7 | 8.81 | 46.1 | 71.4 | 2.49 |
| GPT-2 M (LoRA) | 0.35M | 70.4.1 | 8.85.02 | 46.8.2 | 71.8.1 | 2.53.02 |
| GPT-2 L (FT)* | 774.03M | 68.5 | 8.78 | 46.0 | 69.9 | 2.45 |
| GPT-2 L () | 0.88M | 69.1.1 | 8.68.03 | 46.3.0 | 71.4.2 | 2.49.0 |
| GPT-2 L () | 23.00M | 68.9.3 | 8.70.04 | 46.1.1 | 71.3.2 | 2.45.02 |
| GPT-2 L (PreLayer)* | 0.77M | 70.3 | 8.85 | 46.2 | 71.7 | 2.47 |
| GPT-2 L (LoRA) | 0.77M | 70.4.1 | 8.89.02 | 46.8.2 | 72.0.2 | 2.47.02 |
| 모델&방법 | # 학습 가능 | WikiSQL | MNLI-m | SAMSum |
| 매개변수 | Acc. (%) | Acc. (%) | R1/R2/RL | |
| GPT-3 (FT) | 175,255.8M | 73.8 | 89.5 | 52.0/28.0/44.5 |
| GPT-3 (BitFit) | 14.2M | 71.3 | 91.0 | 51.3/27.4/43.5 |
| GPT-3 (PreEmbed) | 3.2M | 63.1 | 88.6 | 48.3/24.2/40.5 |
| GPT-3 (PreLayer) | 20.2M | 70.1 | 89.5 | 50.8/27.3/43.5 |
| GPT-3 () | 7.1M | 71.9 | 89.8 | 53.0/28.9/44.8 |
| GPT-3 () | 40.1M | 73.2 | 91.5 | 53.2/29.0/45.1 |
| GPT-3 (LoRA) | 4.7M | 73.4 | 91.7 | 53.8/29.8/45.9 |
| GPT-3 (LoRA) | 37.7M | 74.0 | 91.6 | 53.4/29.2/45.1 |
5.5 GPT-3 175B로 스케일 업
LoRA에 대한 최종 stress test로서, 우리는 175 billion 매개변수를 가진 GPT-3로 스케일 업한다. 높은 훈련 비용 때문에, 우리는 모든 항목에 대해 하나씩 제공하는 대신, random seeds에 걸쳐 주어진 task에 대한 전형적인 표준편차만 보고한다. 사용된 하이퍼파라미터에 대한 자세한 내용은Section D.4를 참조하라.
에서 보인 바와 같이Table 4, LoRA는 세 dataset 모두에서 fine-tuning baseline과 일치하거나 초과한다. 모든 방법이 더 많은 학습 가능 매개변수를 갖는 것으로부터 단조롭게 이득을 얻지는 않는다는 점에 유의하라. 이는Figure 2에 나타난다. prefix-embedding tuning에 256개보다 많은 special token을 사용하거나 prefix-layer tuning에 32개보다 많은 special token을 사용할 때 상당한 성능 저하를 관찰한다. 이는 다음의 유사한 관찰을 뒷받침한다Li&Liang (2021). 이 현상에 대한 철저한 조사는 이 연구의 범위를 벗어나지만, 우리는 더 많은 special token을 갖는 것이 입력 분포를 pre-training 데이터 분포로부터 더 멀리 이동시키기 때문이라고 의심한다. 별도로, 우리는 low-data regime에서 서로 다른 적응 접근법의 성능을Section F.3.
6 관련 연구
Transformer Language Models.Transformer(Vaswani et al.,2017)는 self-attention을 많이 사용하는 sequence-to-sequence architecture이다.Radford et al. (a)는 Transformer decoder의 stack을 사용하여 이를 autoregressive language modeling에 적용했다. 그 이후로 Transformer 기반 language model은 NLP를 지배해 왔으며, 많은 task에서 state-of-the-art를 달성했다. BERT와 함께 새로운 paradigm이 등장했다(Devlin et al.,2019b)및 GPT-2(Radford et al.,b)– 둘 다 대량의 text로 훈련된 대형 Transformer language model이다 – 여기서 general domain data에 대한 pre-training 후 task-specific data에 대한 fine-tuning은 task-specific data로 직접 훈련하는 것에 비해 상당한 성능 향상을 제공한다. 더 큰 Transformer를 훈련하는 것은 일반적으로 더 나은 성능을 가져오며 여전히 활발한 연구 방향이다. GPT-3(Brown et al.,2020)는 175B 매개변수로 현재까지 훈련된 가장 큰 단일 Transformer language model이다.
Prompt Engineering and Fine-Tuning.GPT-3 175B는 단지 몇 개의 추가 training example만으로도 자신의 행동을 적응시킬 수 있지만, 결과는 input prompt에 크게 의존한다(Brown et al.,2020). 이는 원하는 task에서 model의 성능을 극대화하기 위해 prompt를 구성하고 형식화하는 경험적 기술을 필요로 하며, 이는 prompt engineering 또는 prompt hacking으로 알려져 있다. Fine-tuning은 general domain에서 pre-training된 model을 특정 task에 맞게 다시 훈련한다Devlin et al. (2019b); Radford et al. (a). 그것의 변형에는 매개변수의 subset만 학습하는 것이 포함된다Devlin et al. (2019b); Collobert&Weston (2008), 그러나 실무자들은 downstream performance를 극대화하기 위해 종종 그들 모두를 다시 훈련한다. 그러나 GPT-3 175B의 거대함은 그것이 생성하는 큰 checkpoint와 pre-training과 동일한 memory footprint를 가지기 때문에 높은 hardware 진입 장벽으로 인해 일반적인 방식으로 fine-tuning을 수행하는 것을 어렵게 만든다.
Parameter-Efficient Adaptation.많은 이들이 삽입을 제안했다adapterlayer를 neural network의 기존 layer 사이에(Houlsby et al.,2019; Rebuffi et al.,2017; Lin et al.,2020). 우리의 방법은 유사한 bottleneck 구조를 사용하여 weight update에 low-rank constraint를 부과한다. 핵심적인 기능적 차이는 우리의 학습된 weight가 inference 중 main weight와 merge될 수 있어 어떤 latency도 도입하지 않는다는 점이며, 이는 adapter layer의 경우에는 그렇지 않다 (Section 3). adapter의 동시대적 확장은compacter (Mahabadi et al.,2021), 이는 본질적으로 어떤 미리 정해진 weight sharing scheme을 가진 Kronecker product를 사용하여 adapter layer를 parametrizes한다. 마찬가지로, LoRA를 다른 tensor product 기반 방법과 결합하면 잠재적으로 그것의 parameter efficiency를 향상시킬 수 있으며, 우리는 이를 future work로 남긴다. 더 최근에는 많은 이들이 fine-tuning 대신 input word embedding을 최적화하는 것을 제안했는데, 이는 prompt engineering의 continuous하고 differentiable한 일반화와 유사하다(Li&Liang,2021; Lester et al.,2021; Hambardzumyan et al.,2020; Liu et al.,2021). 우리는 실험 절에 다음과의 비교를 포함한다Li&Liang (2021)그러나 이 계열의 연구들은 prompt에서 더 많은 special token을 사용하는 방식으로만 scale up할 수 있으며, positional embedding이 학습될 때 이는 task token에 사용 가능한 sequence length를 차지한다.
Low-Rank Structures in Deep Learning.Low-rank structure는 machine learning에서 매우 흔하다. 많은 machine learning 문제는 특정한 intrinsic low-rank structure를 가진다(Li et al.,2016; Cai et al.,2010; Li et al.,2018b; Grasedyck et al.,2013). 더구나 많은 deep learning task, 특히 심하게 over-parametrized된 neural network를 가진 task의 경우, 학습된 neural network는 훈련 후 low-rank properties를 누릴 것이라고 알려져 있다(Oymak et al.,2019). 일부 이전 연구들은 원래 neural network를 훈련할 때 low-rank constraint를 명시적으로 부과하기도 했다(Sainath et al.,2013; Povey et al.,2018; Zhang et al.,2014; Jaderberg et al.,2014; Zhao et al.,2016; Khodak et al.,2021; Denil et al.,2014); 그러나 우리가 아는 한, 이러한 연구 중 어느 것도 frozen model에 대한 low-rank update를 다음을 위해 고려하지 않는다downstream task에 대한 적응. 이론 문헌에서는 neural network가 corresponding (finite-width) neural tangent kernel을 포함한 다른 classical learning method보다 우수하다는 것이 알려져 있다(Allen-Zhu et al.,2019; Li&Liang,2018)underlying concept class가 특정 low-rank structure를 가질 때(Ghorbani et al.,2020; Allen-Zhu&Li,2019; 2020a). 다음의 또 다른 이론적 결과는Allen-Zhu&Li (2020b)low-rank adaptation이 adversarial training에 유용할 수 있음을 시사한다. 요컨대, 우리는 우리가 제안한 low-rank adaptation update가 문헌에 의해 충분히 동기부여된다고 믿는다.
7 Low-Rank Updates 이해하기
LoRA의 경험적 이점을 고려하여, 우리는 downstream task에서 학습된 low-rank adaptation의 속성을 더 설명하고자 한다. low-rank structure는 여러 실험을 병렬로 실행할 수 있게 하여 hardware 진입 장벽을 낮출 뿐만 아니라, update weight가 pre-trained weight와 어떻게 상관되는지에 대한 더 나은 interpretability를 제공한다는 점에 유의하라. 우리는 GPT-3 175B에 연구를 집중하며, 여기서 task 성능에 부정적 영향을 주지 않고 학습 가능 매개변수의 가장 큰 감소(최대 10,000)를 달성했다.
우리는 다음 질문들에 답하기 위해 일련의 경험적 연구를 수행한다: 1) parameter budget constraint가 주어졌을 때,어떤 weight matrix의 subset을 pre-trained Transformer에서 적응시켜야 downstream performance를 극대화할 수 있는가? 2) “optimal” adaptation matrix는 정말로 rank-deficient한가? 그렇다면, 실제로 사용하기에 좋은 rank는 무엇인가? 3) 다음 사이의 연결은 무엇인가그리고? 다음은다음과 높은 상관관계를 가지는가? 다음은 얼마나 큰가와 비교하여?
우리는 질문 (2)와 (3)에 대한 우리의 답이 downstream task에 pre-trained language model을 사용하는 근본 원리에 빛을 비춘다고 믿으며, 이는 NLP에서 중요한 주제이다.
7.1 Transformer의 어떤 Weight Matrix에 LoRA를 적용해야 하는가?
제한된 parameter budget이 주어졌을 때, downstream task에서 최고의 성능을 얻기 위해 어떤 유형의 weight를 LoRA로 적응시켜야 하는가? 에서 언급했듯이Section 4.2, 우리는 self-attention module의 weight matrix만 고려한다. 우리는 GPT-3 175B에서 18M(대략 FP16으로 저장하면 35MB)의 parameter budget을 설정하며, 이는 다음에 해당한다우리가 한 유형의 attention weight를 적응시키는 경우 또는우리가 두 유형을 적응시키는 경우, 모든 96개 layer에 대해. 결과는 다음에 제시된다Table 5.
| # of Trainable Parameters = 18M | |||||||
| Weight Type | |||||||
| Rank | 8 | 8 | 8 | 8 | 4 | 4 | 2 |
| WikiSQL (%) | 70.4 | 70.0 | 73.0 | 73.2 | 71.4 | 73.7 | 73.7 |
| MultiNLI (%) | 91.0 | 90.8 | 91.0 | 91.3 | 91.3 | 91.3 | 91.7 |
모든 매개변수를 다음에 두는 것은 유의하라또는상당히 낮은 성능을 초래하는 반면, 둘 다 적응시키는 것은그리고최고의 결과를 산출한다. 이는 rank 4조차도 다음에서 충분한 정보를 포착함을 시사한다따라서 더 큰 rank로 단일 유형의 weight를 적응시키는 것보다 더 많은 weight matrix를 적응시키는 것이 바람직하다.
7.2 최적 Rank는 무엇인가LoRA에 대해?
우리는 rank의 효과에 주의를 돌린다model 성능에 대해. 우리는 적응시킨다, , 그리고 비교를 위해 단지만을.
| Weight Type | ||||||
| WikiSQL(%) | 68.8 | 69.6 | 70.5 | 70.4 | 70.0 | |
| 73.4 | 73.3 | 73.7 | 73.8 | 73.5 | ||
| 74.1 | 73.7 | 74.0 | 74.0 | 73.9 | ||
| MultiNLI (%) | 90.7 | 90.9 | 91.1 | 90.7 | 90.7 | |
| 91.3 | 91.4 | 91.3 | 91.6 | 91.4 | ||
| 91.2 | 91.7 | 91.7 | 91.5 | 91.4 |
Table 6은 놀랍게도 LoRA가 이미 매우 작은 값으로도 경쟁력 있게 수행함을 보여준다(에 대해 단지보다 더욱 그렇다). 이는 업데이트 행렬이 매우 작은 “intrinsic rank”를 가질 수 있음을 시사한다.666그러나 우리는 작은이 모든 task나 dataset에 대해 작동할 것이라고 기대하지는 않는다. 다음 사고 실험을 고려하라: downstream task가 pre-training에 사용된 언어와 다른 언어라면, 전체 model을 재훈련하는 것(인 LoRA와 유사함)은 작은.이 발견을 더 뒷받침하기 위해, 우리는 서로 다른 선택의와 서로 다른 random seed에 의해 학습된 부분공간들의 overlap을 확인한다. 우리는을 증가시키는 것이 더 의미 있는 부분공간을 포함하지 않는다고 주장하며, 이는 low-rank adaptation matrix가 충분함을 시사한다.
서로 다른 것들 사이의 subspace similarity.주어진와가 rank와로 학습된 adaptation matrix들이며같은 pre-trained model을 사용한다고 할 때, 우리는 singular value decomposition을 수행하고 right-singular unitary matrix와.777유사한 분석은와 left-singular unitary matrix로 수행될 수 있음에 유의하라 – 우리는를 실험에 사용한다.우리는 답하고자 한다: 상위singular vector들이 span하는 부분공간 중 얼마나 많은 부분이에서 (에 대해) 상위singular vector들이 span하는 부분공간 안에 포함되는가의 (에 대해)? 우리는 Grassmann distance에 기반한 normalized subspace similarity로 이 양을 측정한다 (Appendix G의 더 형식적인 논의를 보라)
| (4) |
여기서는의 top-singular vector에 해당하는 열들을 나타낸다.
는 범위가이며, 여기서은 부분공간들의 완전한 overlap을 나타내고은 완전한 분리를 나타낸다. 다음을 보라Figure 3에서가 어떻게 변하는지, 우리가와를 변화시킬 때. 우리는 공간 제약으로 인해 96개 중 48번째 layer만 살펴보지만, 결론은 다른 layer들에도 성립하며, 이는 다음에 보인다Section H.1.
우리는중요한 관찰을 한다, 출처는Figure 3.
상위 singular vector에 해당하는 방향들은와사이에서 상당히 overlap하지만, 다른 것들은 그렇지 않다. 구체적으로,(각각)는와(각각)의normalized similarity를 가진 dimension 1의 부분공간을 공유하여,왜이 GPT-3에 대한 우리의 downstream task들에서 꽤 잘 수행되는지에 대한 설명을 제공한다.
둘 다와가 같은 pre-trained model을 사용하여 학습되었으므로,Figure 3은와의 상위 singular-vector 방향들이 가장 유용하며, 다른 방향들은 잠재적으로 훈련 중 축적된 random noise를 대부분 포함한다는 것을 나타낸다. 따라서 adaptation matrix는 실제로 매우 낮은 rank를 가질 수 있다.
서로 다른 random seed들 사이의 subspace similarity.우리는로 두 random seeded run 사이의 normalized subspace similarity를 그려 이를 추가로 확인하며, 이는 다음에 보인다Figure 4. 는보다 더 높은 “intrinsic rank”를 가지는 것으로 보인다. 왜냐하면 더 많은 공통 singular value 방향들이에 대해 두 run 모두에서 학습되기 때문이며, 이는 우리의 경험적 관찰과 일치한다, 위치는Table 6. 비교로, 우리는 또한 두 random Gaussian matrix를 그리는데, 이들은 서로 어떤 공통 singular value 방향도 공유하지 않는다.
7.3 Adaptation Matrix는 어떻게와 비교되는가?
우리는와사이의 관계를 더 조사한다. 특히,는와 높은 상관관계를 갖는가? (또는 수학적으로,는의 top singular direction들에 대부분 포함되는가?) 또한,는에서의 해당 방향들과 비교해 얼마나 “큰가”? 이는 pre-trained language model을 적응시키는 underlying mechanism을 밝히는 데 도움을 줄 수 있다.
이 질문들에 답하기 위해, 우리는를의 -dimensional subspace에 투영한다다음을 계산함으로써, 여기서/는의 left/right singular-vector matrix이다. 그런 다음, 우리는와사이의 Frobenius norm을 비교한다. 비교로, 우리는 또한를 계산한다,를 topsingular vector들로 대체하여, 대상은또는 random matrix이다.
| Random | Random | |||||
| 0.32 | 21.67 | 0.02 | 1.90 | 37.71 | 0.33 | |
우리는여러 결론을 도출한다, 출처는Table 7. 첫째,는와 random matrix에 비해 더 강한 상관관계를 가지며, 이는가 이미안에 있는 일부 feature들을 증폭함을 나타낸다. 둘째,, 는의 top singular direction들을 단순히 반복하는 대신,에서 강조되지 않은 방향들을 증폭한다. 셋째, 증폭 계수는 상당히 크다:에 대해. 다음을 보라Section H.4왜가 더 작은 증폭 계수를 가지는지에 대해. 우리는 또한 다음에 visualization을 제공한다Section H.3에서 우리가로부터 더 많은 top singular direction들을 포함할 때 correlation이 어떻게 변하는지에 대해. 이는 low-rank adaptation matrix가 잠재적으로일반적인 pre-training model에서 학습되었지만 강조되지 않은, 특정 downstream task에 중요한 feature들을 증폭한다.
8 결론 및 향후 연구
거대한 language model을 fine-tuning하는 것은 필요한 hardware와 서로 다른 task에 대해 독립적인 instance를 호스팅하기 위한 storage/switching cost 측면에서 엄청나게 비싸다. 우리는 LoRA를 제안하는데, 이는 높은 model quality를 유지하면서 inference latency를 도입하지도 않고 input sequence length를 줄이지도 않는 효율적인 adaptation strategy이다. 중요하게도, model parameter의 대부분을 공유함으로써 service로 배포될 때 빠른 task-switching을 가능하게 한다. 우리는 Transformer language model에 초점을 맞추었지만, 제안된 원칙들은 dense layer를 가진 어떤 neural network에도 일반적으로 적용 가능하다.
향후 연구에는 많은 방향이 있다. 1) LoRA는 다른 효율적인 adaptation method들과 결합될 수 있으며, 잠재적으로 orthogonal improvement를 제공할 수 있다. 2) fine-tuning 또는 LoRA 뒤의 mechanism은 전혀 명확하지 않다 – pre-training 중 학습된 feature들은 downstream task에서 잘 작동하도록 어떻게 변환되는가? 우리는 LoRA가 full fine-tuning보다 이에 답하는 것을 더 다루기 쉽게 만든다고 믿는다. 3) 우리는 LoRA를 적용할 weight matrix를 선택하기 위해 대부분 heuristic에 의존한다. 이를 수행하는 더 원칙적인 방법이 있는가? 4) 마지막으로,의 rank-deficiency는도 rank-deficient일 수 있음을 시사하며, 이는 향후 연구에 영감의 원천이 될 수도 있다.
References
- Aghajanyan et al. (2020) Armen Aghajanyan, Luke Zettlemoyer, and Sonal Gupta. Intrinsic Dimensionality가 Language Model Fine-Tuning의 효과성을 설명한다. arXiv:2012.13255 [cs], 2020년 12월. URLhttp://arxiv.org/abs/2012.13255.
- Allen-Zhu&Li (2019) Zeyuan Allen-Zhu and Yuanzhi Li. Kernels를 넘어, ResNet은 무엇을 효율적으로 학습할 수 있는가? InNeurIPS, 2019. Full version available athttp://arxiv.org/abs/1905.10337.
- Allen-Zhu&Li (2020a) Zeyuan Allen-Zhu and Yuanzhi Li. Backward feature correction: deep learning은 어떻게 deep learning을 수행하는가. arXiv preprint arXiv:2001.04413, 2020a.
- Allen-Zhu&Li (2020b) Zeyuan Allen-Zhu and Yuanzhi Li. Feature purification: adversarial training은 어떻게 robust deep learning을 수행하는가. arXiv preprint arXiv:2005.10190, 2020b.
- Allen-Zhu et al. (2019) Zeyuan Allen-Zhu, Yuanzhi Li, and Zhao Song. over-parameterization을 통한 deep learning의 convergence theory. InICML, 2019. Full version available athttp://arxiv.org/abs/1811.03962.
- Ba et al. (2016) Jimmy Lei Ba, Jamie Ryan Kiros, and Geoffrey E. Hinton. Layer normalization, 2016.
- Brown et al. (2020) Tom B. Brown, Benjamin Mann, Nick Ryder, Melanie Subbiah, Jared Kaplan, Prafulla Dhariwal, Arvind Neelakantan, Pranav Shyam, Girish Sastry, Amanda Askell, Sandhini Agarwal, Ariel Herbert-Voss, Gretchen Krueger, Tom Henighan, Rewon Child, Aditya Ramesh, Daniel M. Ziegler, Jeffrey Wu, Clemens Winter, Christopher Hesse, Mark Chen, Eric Sigler, Mateusz Litwin, Scott Gray, Benjamin Chess, Jack Clark, Christopher Berner, Sam McCandlish, Alec Radford, Ilya Sutskever, and Dario Amodei. Language Model은 Few-Shot Learner이다. arXiv:2005.14165 [cs], 2020년 7월. URLhttp://arxiv.org/abs/2005.14165.
- Cai et al. (2010) Jian-Feng Cai, Emmanuel J Candès, and Zuowei Shen. 행렬 완성을 위한 singular value thresholding 알고리즘. SIAM Journal on optimization, 20(4):1956–1982, 2010.
- Cer et al. (2017) Daniel Cer, Mona Diab, Eneko Agirre, Inigo Lopez-Gazpio, and Lucia Specia. Semeval-2017 task 1: 의미론적 텍스트 유사성 다국어 및 교차언어 중심 평가. Proceedings of the 11th International Workshop on Semantic Evaluation (SemEval-2017), 2017. doi:10.18653/v1/s17-2001. URLhttp://dx.doi.org/10.18653/v1/S17-2001.
- Collobert&Weston (2008) Ronan Collobert and Jason Weston. 자연어 처리를 위한 통합 아키텍처: 멀티태스크 학습을 갖춘 심층 신경망. 에서Proceedings of the 25th international conference on Machine learning, ICML ’08, pp. 160–167, New York, NY, USA, July 2008. Association for Computing Machinery. ISBN 978-1-60558-205-4. doi:10.1145/1390156.1390177. URLhttps://doi.org/10.1145/1390156.1390177.
- Denil et al. (2014) Misha Denil, Babak Shakibi, Laurent Dinh, Marc’Aurelio Ranzato, and Nando de Freitas. 딥러닝에서 매개변수 예측, 2014.
- Devlin et al. (2019a) Jacob Devlin, Ming-Wei Chang, Kenton Lee, and Kristina Toutanova. Bert: 언어 이해를 위한 깊은 양방향 transformers의 사전 학습, 2019a.
- Devlin et al. (2019b) Jacob Devlin, Ming-Wei Chang, Kenton Lee, and Kristina Toutanova. BERT: 언어 이해를 위한 Deep Bidirectional Transformers의 사전 학습. arXiv:1810.04805 [cs], May 2019b. URLhttp://arxiv.org/abs/1810.04805. arXiv: 1810.04805.
- Dolan&Brockett (2005) William B. Dolan and Chris Brockett. 문장 패러프레이즈 말뭉치를 자동으로 구축하기. 에서Proceedings of the Third International Workshop on Paraphrasing (IWP2005), 2005. URLhttps://aclanthology.org/I05-5002.
- Gardent et al. (2017) Claire Gardent, Anastasia Shimorina, Shashi Narayan, and Laura Perez-Beltrachini. webnlg challenge: rdf 데이터로부터 텍스트 생성. 에서Proceedings of the 10th International Conference on Natural Language Generation, pp. 124–133, 2017.
- Ghorbani et al. (2020) Behrooz Ghorbani, Song Mei, Theodor Misiakiewicz, and Andrea Montanari. 신경망은 언제 kernel methods를 능가하는가? arXiv preprint arXiv:2006.13409, 2020.
- Gliwa et al. (2019) Bogdan Gliwa, Iwona Mochol, Maciej Biesek, and Aleksander Wawer. Samsum corpus: 추상적 요약을 위한 인간 주석 대화 데이터셋. CoRR, abs/1911.12237, 2019. URLhttp://arxiv.org/abs/1911.12237.
- Grasedyck et al. (2013) Lars Grasedyck, Daniel Kressner, and Christine Tobler. 저랭크 텐서 근사 기법에 대한 문헌 조사. GAMM-Mitteilungen, 36(1):53–78, 2013.
- Ham&Lee (2008) Jihun Ham and Daniel D. Lee. Grassmann 판별 분석: 부분공간 기반 학습에 대한 통합적 관점. 에서ICML, pp. 376–383, 2008. URLhttps://doi.org/10.1145/1390156.1390204.
- Hambardzumyan et al. (2020) Karen Hambardzumyan, Hrant Khachatrian, and Jonathan May. WARP: Word-level Adversarial ReProgramming. arXiv:2101.00121 [cs], December 2020. URLhttp://arxiv.org/abs/2101.00121. arXiv: 2101.00121.
- He et al. (2021) Pengcheng He, Xiaodong Liu, Jianfeng Gao, and Weizhu Chen. Deberta: disentangled attention을 갖춘 decoding-enhanced bert, 2021.
- Houlsby et al. (2019) Neil Houlsby, Andrei Giurgiu, Stanislaw Jastrzebski, Bruna Morrone, Quentin de Laroussilhe, Andrea Gesmundo, Mona Attariyan, and Sylvain Gelly. NLP를 위한 Parameter-Efficient Transfer Learning. arXiv:1902.00751 [cs, stat], June 2019. URLhttp://arxiv.org/abs/1902.00751.
- Jaderberg et al. (2014) Max Jaderberg, Andrea Vedaldi, and Andrew Zisserman. 저랭크 전개로 convolutional neural networks 가속하기. arXiv preprint arXiv:1405.3866, 2014.
- Khodak et al. (2021) Mikhail Khodak, Neil Tenenholtz, Lester Mackey, and Nicolò Fusi. 인수분해된 신경 계층의 초기화와 정규화, 2021.
- Kingma&Ba (2017) Diederik P. Kingma and Jimmy Ba. Adam: 확률적 최적화를 위한 방법, 2017.
- Lepikhin et al. (2020) Dmitry Lepikhin, HyoukJoong Lee, Yuanzhong Xu, Dehao Chen, Orhan Firat, Yanping Huang, Maxim Krikun, Noam Shazeer, and Zhifeng Chen. Gshard: 조건부 계산과 자동 sharding으로 거대 모델 확장하기, 2020.
- Lester et al. (2021) Brian Lester, Rami Al-Rfou, and Noah Constant. Parameter-Efficient Prompt Tuning을 위한 Scale의 힘. arXiv:2104.08691 [cs], April 2021. URLhttp://arxiv.org/abs/2104.08691. arXiv: 2104.08691.
- Li et al. (2018a) Chunyuan Li, Heerad Farkhoor, Rosanne Liu, and Jason Yosinski. 목적 함수 지형의 내재적 차원 측정. arXiv:1804.08838 [cs, stat], April 2018a. URLhttp://arxiv.org/abs/1804.08838. arXiv: 1804.08838.
- Li&Liang (2021) Xiang Lisa Li and Percy Liang. Prefix-Tuning: 생성을 위한 Continuous Prompts 최적화. arXiv:2101.00190 [cs], January 2021. URLhttp://arxiv.org/abs/2101.00190.
- Li&Liang (2018) Yuanzhi Li and Yingyu Liang. 구조화된 데이터에 대한 확률적 경사 하강법을 통한 과매개변수화된 신경망 학습. 에서Advances in Neural Information Processing Systems, 2018.
- Li et al. (2016) Yuanzhi Li, Yingyu Liang, and Andrej Risteski. 교대 최소화를 통한 가중 저랭크 근사의 복구 보장. 에서International Conference on Machine Learning, pp. 2358–2367. PMLR, 2016.
- Li et al. (2018b) Yuanzhi Li, Tengyu Ma, and Hongyang Zhang. 과매개변수화된 matrix sensing 및 quadratic activations를 갖춘 신경망에서의 알고리즘적 정규화. 에서Conference On Learning Theory, pp. 2–47. PMLR, 2018b.
- Lin et al. (2020) Zhaojiang Lin, Andrea Madotto, and Pascale Fung. parameter-efficient transfer learning을 통해 다재다능한 generative language model 탐색. 에서Findings of the Association for Computational Linguistics: EMNLP 2020, pp. 441–459, Online, November 2020. Association for Computational Linguistics. doi:10.18653/v1/2020.findings-emnlp.41. URLhttps://aclanthology.org/2020.findings-emnlp.41.
- Liu et al. (2021) Xiao Liu, Yanan Zheng, Zhengxiao Du, Ming Ding, Yujie Qian, Zhilin Yang, and Jie Tang. GPT도 이해한다. arXiv:2103.10385 [cs], March 2021. URLhttp://arxiv.org/abs/2103.10385. arXiv: 2103.10385.
- Liu et al. (2019) Yinhan Liu, Myle Ott, Naman Goyal, Jingfei Du, Mandar Joshi, Danqi Chen, Omer Levy, Mike Lewis, Luke Zettlemoyer, and Veselin Stoyanov. Roberta: 강건하게 최적화된 bert 사전학습 접근법, 2019.
- Loshchilov&Hutter (2017) Ilya Loshchilov and Frank Hutter. Decoupled weight decay regularization. arXiv preprint arXiv:1711.05101, 2017.
- Loshchilov&Hutter (2019) Ilya Loshchilov and Frank Hutter. Decoupled weight decay regularization, 2019.
- Mahabadi et al. (2021) Rabeeh Karimi Mahabadi, James Henderson, and Sebastian Ruder. Compacter: 효율적인 저랭크 hypercomplex adapter layers, 2021.
- Nan et al. (2020) Linyong Nan, Dragomir Radev, Rui Zhang, Amrit Rau, Abhinand Sivaprasad, Chiachun Hsieh, Xiangru Tang, Aadit Vyas, Neha Verma, Pranav Krishna, et al. Dart: Open-domain structured data record to text generation. arXiv preprint arXiv:2007.02871, 2020.
- Novikova et al. (2017) Jekaterina Novikova, Ondřej Dušek, and Verena Rieser. e2e dataset: end-to-end generation을 위한 새로운 도전과제. arXiv preprint arXiv:1706.09254, 2017.
- Oymak et al. (2019) Samet Oymak, Zalan Fabian, Mingchen Li, and Mahdi Soltanolkotabi. jacobian의 저랭크 구조 활용을 통한 신경망의 일반화 보장. arXiv preprint arXiv:1906.05392, 2019.
- Pfeiffer et al. (2021) Jonas Pfeiffer, Aishwarya Kamath, Andreas Rücklé, Kyunghyun Cho, and Iryna Gurevych. Adapterfusion: 전이 학습을 위한 비파괴적 태스크 합성, 2021.
- Povey et al. (2018) Daniel Povey, Gaofeng Cheng, Yiming Wang, Ke Li, Hainan Xu, Mahsa Yarmohammadi, and Sanjeev Khudanpur. 심층 신경망을 위한 반직교 저랭크 행렬 인수분해. 에서Interspeech, pp. 3743–3747, 2018.
- Radford et al. (a) Alec Radford, Karthik Narasimhan, Tim Salimans, and Ilya Sutskever. 생성적 사전 학습을 통한 언어 이해 개선. pp. 12, a.
- Radford et al. (b) Alec Radford, Jeffrey Wu, Rewon Child, David Luan, Dario Amodei, and Ilya Sutskever. 언어 모델은 비지도 멀티태스크 학습자이다. pp. 24, b.
- Rajpurkar et al. (2018) Pranav Rajpurkar, Robin Jia, and Percy Liang. 당신이 모르는 것을 알라: squad를 위한 답할 수 없는 질문들. CoRR, abs/1806.03822, 2018. URLhttp://arxiv.org/abs/1806.03822.
- Rebuffi et al. (2017) Sylvestre-Alvise Rebuffi, Hakan Bilen, and Andrea Vedaldi. residual adapters를 사용한 여러 시각 도메인 학습. arXiv:1705.08045 [cs, stat], November 2017. URLhttp://arxiv.org/abs/1705.08045. arXiv: 1705.08045.
- Rücklé et al. (2020) Andreas Rücklé, Gregor Geigle, Max Glockner, Tilman Beck, Jonas Pfeiffer, Nils Reimers, and Iryna Gurevych. Adapterdrop: transformers에서 adapters의 효율성에 관하여, 2020.
- Sainath et al. (2013) Tara N Sainath, Brian Kingsbury, Vikas Sindhwani, Ebru Arisoy, and Bhuvana Ramabhadran. 고차원 출력 타깃을 가진 심층 신경망 훈련을 위한 low-rank matrix factorization. In2013 IEEE international conference on acoustics, speech and signal processing, pp. 6655–6659. IEEE, 2013.
- Shoeybi et al. (2020) Mohammad Shoeybi, Mostofa Patwary, Raul Puri, Patrick LeGresley, Jared Casper, and Bryan Catanzaro. Megatron-lm: model parallelism을 사용한 수십억 parameter 언어 모델 훈련, 2020.
- Socher et al. (2013) Richard Socher, Alex Perelygin, Jean Wu, Jason Chuang, Christopher D. Manning, Andrew Ng, and Christopher Potts. sentiment treebank에 대한 의미 구성성을 위한 recursive deep models. InProceedings of the 2013 Conference on Empirical Methods in Natural Language Processing, pp. 1631–1642, Seattle, Washington, USA, October 2013. Association for Computational Linguistics. URLhttps://aclanthology.org/D13-1170.
- Vaswani et al. (2017) Ashish Vaswani, Noam Shazeer, Niki Parmar, Jakob Uszkoreit, Llion Jones, Aidan N Gomez, Łukasz Kaiser, and Illia Polosukhin. Attention is all you need. InProceedings of the 31st International Conference on Neural Information Processing Systems, pp. 6000–6010, 2017.
- Wang et al. (2019) Alex Wang, Amanpreet Singh, Julian Michael, Felix Hill, Omer Levy, and Samuel R. Bowman. Glue: 자연어 이해를 위한 multi-task benchmark 및 분석 플랫폼, 2019.
- Wang et al. (2020) Alex Wang, Yada Pruksachatkun, Nikita Nangia, Amanpreet Singh, Julian Michael, Felix Hill, Omer Levy, and Samuel R. Bowman. Superglue: 범용 언어 이해 시스템을 위한 더 까다로운 benchmark, 2020.
- Warstadt et al. (2018) Alex Warstadt, Amanpreet Singh, and Samuel R Bowman. 신경망 acceptability judgments. arXiv preprint arXiv:1805.12471, 2018.
- Williams et al. (2018) Adina Williams, Nikita Nangia, and Samuel Bowman. 추론을 통한 문장 이해를 위한 광범위한 coverage의 challenge corpus. InProceedings of the 2018 Conference of the North American Chapter of the Association for Computational Linguistics: Human Language Technologies, Volume 1 (Long Papers), pp. 1112–1122, New Orleans, Louisiana, June 2018. Association for Computational Linguistics. doi:10.18653/v1/N18-1101. URLhttps://www.aclweb.org/anthology/N18-1101.
- Wolf et al. (2020) Thomas Wolf, Lysandre Debut, Victor Sanh, Julien Chaumond, Clement Delangue, Anthony Moi, Pierric Cistac, Tim Rault, Rémi Louf, Morgan Funtowicz, Joe Davison, Sam Shleifer, Patrick von Platen, Clara Ma, Yacine Jernite, Julien Plu, Canwen Xu, Teven Le Scao, Sylvain Gugger, Mariama Drame, Quentin Lhoest, and Alexander M. Rush. Transformers: 최첨단 자연어 처리. InProceedings of the 2020 Conference on Empirical Methods in Natural Language Processing: System Demonstrations, pp. 38–45, Online, October 2020. Association for Computational Linguistics. URLhttps://www.aclweb.org/anthology/2020.emnlp-demos.6.
- Yang&Hu (2021) Greg Yang and Edward J. Hu. 무한 폭 신경망에서의 특징 학습. arXiv:2011.14522 [cond-mat], May 2021. URLhttp://arxiv.org/abs/2011.14522. arXiv: 2011.14522.
- Zaken et al. (2021) Elad Ben Zaken, Shauli Ravfogel, and Yoav Goldberg. Bitfit: transformer-based masked language-models를 위한 간단한 parameter-efficient fine-tuning, 2021.
- Zhang et al. (2014) Yu Zhang, Ekapol Chuangsuwanich, and James Glass. low-rank matrix factorization을 사용한 심층 신경망 bottleneck features 추출. In2014 IEEE international conference on acoustics, speech and signal processing (ICASSP), pp. 185–189. IEEE, 2014.
- Zhao et al. (2016) Yong Zhao, Jinyu Li, and Yifan Gong. 심층 신경망을 위한 low-rank plus diagonal adaptation. In2016 IEEE International Conference on Acoustics, Speech and Signal Processing (ICASSP), pp. 5005–5009. IEEE, 2016.
- Zhong et al. (2017) Victor Zhong, Caiming Xiong, and Richard Socher. Seq2sql: reinforcement learning을 사용하여 자연어에서 structured queries 생성. CoRR, abs/1709.00103, 2017. URLhttp://arxiv.org/abs/1709.00103.
Appendix A대규모 언어 모델은 여전히 parameter updates가 필요하다
Few-shot learning, 또는 prompt engineering은 우리가 소수의 training samples만 가지고 있을 때 매우 유리하다. 그러나 실제로는 성능에 민감한 applications를 위해 몇천 개 이상의 training examples를 선별할 여유가 있는 경우가 많다. 다음에 보이듯이Table 8, fine-tuning은 크고 작은 datasets에서 few-shot learning과 비교해 model performance를 극적으로 향상시킨다. 우리는 GPT-3 paper에서 RTE에 대한 GPT-3 few-shot result를 가져온다(Brown et al.,2020). MNLI-matched의 경우, class당 두 개의 demonstrations와 총 여섯 개의 in-context examples를 사용한다.
| Method | MNLI-m (Val. Acc./%) | RTE (Val. Acc./%) |
| GPT-3 Few-Shot | 40.6 | 69.0 |
| GPT-3 Fine-Tuned | 89.5 | 85.4 |
Appendix BAdapter Layers가 도입하는 Inference Latency
Adapter layers는 pre-trained model에 추가되는 외부 modules로,sequential방식인 반면, 우리의 제안인 LoRA는 parallel 방식으로 추가되는 외부 modules로 볼 수 있다. 따라서 adapter layers는 base model에 더해 계산되어야 하며, 필연적으로 추가 latency를 도입한다. 다음에서 지적된 것처럼Rücklé et al. (2020), adapter layers가 도입하는 latency는 model batch size 및/또는 sequence length가 hardware parallelism을 충분히 활용할 만큼 충분히 클 때 완화될 수 있다. 우리는 GPT-2 medium에 대한 유사한 latency study로 그들의 관찰을 확인하고, batch size가 작은 online inference와 같은 시나리오에서는 추가 latency가 상당할 수 있음을 지적한다.
우리는 100 trials에 걸쳐 평균을 내어 NVIDIA Quadro RTX8000에서 single forward pass의 latency를 측정한다. 우리는 input batch size, sequence length, 그리고 adapter bottleneck dimension을 변화시킨다. 우리는 두 가지 adapter designs를 테스트한다: 다음의 원래 설계Houlsby et al. (2019), 이를 우리는라고 부르며, 그리고 다음의 최근 더 효율적인 variantLin et al. (2020), 이를 우리는라고 부른다. 참조하라Section 5.1designs에 대한 더 자세한 내용은. 우리는 no-adapter baseline과 비교한 percentage slow-down을 다음에 그린다Figure 5.
Appendix CDataset Details
GLUE Benchmark는 광범위한 자연어 이해 tasks의 모음이다. 여기에는 MNLI (inference,Williams et al. (2018)), SST-2 (sentiment analysis,Socher et al. (2013)), MRPC (paraphrase detection,Dolan&Brockett (2005)), CoLA (linguistic acceptability,Warstadt et al. (2018)), QNLI (inference,Rajpurkar et al. (2018)), QQP888https://quoradata.quora.com/First-Quora-Dataset-Release-Question-Pairs(question-answering), RTE (inference), 그리고 STS-B (textual similarity,Cer et al. (2017))가 포함된다. 광범위한 coverage는 GLUE benchmark를 RoBERTa와 DeBERTa 같은 NLU models를 평가하기 위한 표준 metric으로 만든다. 개별 datasets는 서로 다른 permissive licenses 하에 공개된다.
WikiSQL는 다음에서 소개되었고Zhong et al. (2017)다음을 포함한다/training/validation examples. task는 자연어 questions와 table schemata로부터 SQL queries를 생성하는 것이다. 우리는 context를 다음으로 encode하고target을 다음으로 encode한다. dataset은 BSD 3-Clause License 하에 release된다.
SAMSum은 다음에서 소개되었고Gliwa et al. (2019)다음을 포함한다/training/test examples. 이는 두 사람 사이의 staged chat conversations와 linguists가 작성한 해당 abstractive summaries로 구성된다. 우리는 context를 ”\n”으로 연결된 utterances 뒤에 ”\n\n”을 붙인 것으로 encode하고, target을 다음으로 encode한다. dataset은 non-commercial licence: Creative Commons BY-NC-ND 4.0 하에 release된다.
E2E NLG Challenge는 처음 다음에서 소개되었다Novikova et al. (2017)end-to-end, data-driven natural language generation systems를 훈련하기 위한 dataset으로, data-to-text evaluation에 흔히 사용된다. E2E dataset은 대략 다음으로 구성된다training,validation, 그리고restaurant domain의 test examples. input으로 사용되는 각 source table은 여러 references를 가질 수 있다. 각 sample input은 해당 natural language reference text와 함께 slot-value pairs의 sequence로 구성된다. dataset은 Creative Commons BY-NC-SA 4.0 하에 release된다.
DART는 다음에서 설명된 open-domain data-to-text dataset이다Nan et al. (2020). DART inputs는 ENTITY — RELATION — ENTITY triples의 sequences로 구조화된다. 총 다음의examples를 가진 DART는 E2E와 비교해 훨씬 더 크고 복잡한 data-to-text task이다. dataset은 MIT license 하에 release된다.
WebNLG는 data-to-text evaluation에 흔히 사용되는 또 다른 dataset이다(Gardent et al.,2017). 다음의examples를 가진 WebNLG는 총 14개의 distinct categories로 구성되며, 그중 9개는 training 동안 seen이다. 총 14개 categories 중 5개는 training 동안 seen이 아니지만 test set에 나타나므로, evaluation은 일반적으로 “seen” categories (S), “unseen” categories (U), 그리고 “all” (A)로 나누어진다. 각 input example은 SUBJECT — PROPERTY — OBJECT triples의 sequence로 표현된다. dataset은 Creative Commons BY-NC-SA 4.0 하에 release된다.
Appendix DExperiments에서 사용된 Hyperparameters
D.1 RoBERTa
우리는 선형 learning rate decay schedule과 함께 AdamW를 사용하여 학습한다. 우리는 LoRA에 대해 learning rate, training epoch 수, batch size를 sweep한다. 다음을 따라Liu 등(2019), MRPC, RTE, STS-B에 적응할 때 일반적인 초기화 대신 LoRA modules를 우리의 최상의 MNLI checkpoint로 초기화한다; pre-trained model은 모든 task에서 frozen 상태로 유지된다. 우리는 5개의 random seeds에 대한 median을 보고한다; 각 run의 결과는 best epoch에서 가져온다. 다음의 설정과 공정하게 비교하기 위해Houlsby 등(2019)및Pfeiffer 등(2021), 우리는 model sequence length를 128로 제한하고 모든 task에 대해 고정된 batch size를 사용했다. 중요하게도, MRPC, RTE, STS-B에 적응할 때 이미 MNLI에 적응된 model 대신 pre-trained RoBERTa large model에서 시작한다. 이 제한된 설정의 runs는 다음으로 표시된다. 우리의 runs에서 사용된 hyperparameters는 다음을 보라Table 9.
| 방법 | Dataset | MNLI | SST-2 | MRPC | CoLA | QNLI | QQP | RTE | STS-B |
| Optimizer | AdamW | ||||||||
| Warmup Ratio | 0.06 | ||||||||
| LR Schedule | Linear | ||||||||
| RoBERTa base LoRA | Batch Size | 16 | 16 | 16 | 32 | 32 | 16 | 32 | 16 |
| # Epochs | 30 | 60 | 30 | 80 | 25 | 25 | 80 | 40 | |
| Learning Rate | 5E-04 | 5E-04 | 4E-04 | 4E-04 | 4E-04 | 5E-04 | 5E-04 | 4E-04 | |
| LoRA Config. | |||||||||
| LoRA | 8 | ||||||||
| Max Seq. Len. | 512 | ||||||||
| RoBERTa large LoRA | Batch Size | 4 | 4 | 4 | 4 | 4 | 4 | 8 | 8 |
| # Epochs | 10 | 10 | 20 | 20 | 10 | 20 | 20 | 30 | |
| Learning Rate | 3E-04 | 4E-04 | 3E-04 | 2E-04 | 2E-04 | 3E-04 | 4E-04 | 2E-04 | |
| LoRA Config. | |||||||||
| LoRA | 16 | ||||||||
| Max Seq. Len. | 128 | 128 | 512 | 128 | 512 | 512 | 512 | 512 | |
| RoBERTa large LoRA | Batch Size | 4 | |||||||
| # Epochs | 10 | 10 | 20 | 20 | 10 | 20 | 20 | 10 | |
| Learning Rate | 3E-04 | 4E-04 | 3E-04 | 2E-04 | 2E-04 | 3E-04 | 4E-04 | 2E-04 | |
| LoRA Config. | |||||||||
| LoRA | 16 | ||||||||
| Max Seq. Len. | 128 | ||||||||
| RoBERTa large (3M) | Batch Size | 32 | |||||||
| # Epochs | 10 | 20 | 20 | 20 | 10 | 20 | 20 | 20 | |
| Learning Rate | 3E-05 | 3E-05 | 3E-04 | 3E-04 | 3E-04 | 3E-04 | 3E-04 | 3E-04 | |
| Bottleneck | 64 | ||||||||
| Max Seq. Len. | 128 | ||||||||
| RoBERTa large (0.8M) | Batch Size | 32 | |||||||
| # Epochs | 5 | 20 | 20 | 20 | 10 | 20 | 20 | 20 | |
| Learning Rate | 3E-04 | 3E-04 | 3E-04 | 3E-04 | 3E-04 | 3E-04 | 3E-04 | 3E-04 | |
| Bottleneck | 16 | ||||||||
| Max Seq. Len. | 128 | ||||||||
| RoBERTa large (6M) | Batch Size | 32 | |||||||
| # Epochs | 10 | 5 | 10 | 10 | 5 | 20 | 20 | 10 | |
| Learning Rate | 3E-05 | 3E-04 | 3E-04 | 3E-04 | 3E-04 | 3E-04 | 3E-04 | 3E-04 | |
| Bottleneck | 64 | ||||||||
| Max Seq. Len. | 128 | ||||||||
| RoBERTa large (0.8M) | Batch Size | 32 | |||||||
| # Epochs | 10 | 5 | 10 | 10 | 5 | 20 | 20 | 10 | |
| Learning Rate | 3E-04 | 3E-04 | 3E-04 | 3E-04 | 3E-04 | 3E-04 | 3E-04 | 3E-04 | |
| Bottleneck | 8 | ||||||||
| Max Seq. Len. | 128 | ||||||||
D.2 DeBERTa
우리는 다시 선형 learning rate decay schedule과 함께 AdamW를 사용하여 학습한다. 다음을 따라He 등(2021), 우리는 learning rate, dropout probability, warm-up steps, batch size를 tune한다. 우리는 다음에서 사용한 것과 같은 model sequence length를 사용한다(He 등,2021)우리의 비교를 공정하게 유지하기 위해. 다음을 따라He 등(2021), MRPC, RTE, STS-B에 적응할 때 일반적인 초기화 대신 LoRA modules를 우리의 최상의 MNLI checkpoint로 초기화한다; pre-trained model은 모든 task에서 frozen 상태로 유지된다. 우리는 5개의 random seeds에 대한 median을 보고한다; 각 run의 결과는 best epoch에서 가져온다. 우리의 runs에서 사용된 hyperparameters는 다음을 보라Table 10.
| 방법 | Dataset | MNLI | SST-2 | MRPC | CoLA | QNLI | QQP | RTE | STS-B |
| Optimizer | AdamW | ||||||||
| Warmup Ratio | 0.1 | ||||||||
| LR Schedule | Linear | ||||||||
| DeBERTa XXL LoRA | Batch Size | 8 | 8 | 32 | 4 | 6 | 8 | 4 | 4 |
| # Epochs | 5 | 16 | 30 | 10 | 8 | 11 | 11 | 10 | |
| Learning Rate | 1E-04 | 6E-05 | 2E-04 | 1E-04 | 1E-04 | 1E-04 | 2E-04 | 2E-04 | |
| Weight Decay | 0 | 0.01 | 0.01 | 0 | 0.01 | 0.01 | 0.01 | 0.1 | |
| CLS Dropout | 0.15 | 0 | 0 | 0.1 | 0.1 | 0.2 | 0.2 | 0.2 | |
| LoRA Config. | |||||||||
| LoRA | 8 | ||||||||
| Max Seq. Len. | 256 | 128 | 128 | 64 | 512 | 320 | 320 | 128 | |
D.3 GPT-2
우리는 모든 GPT-2 models를 AdamW를 사용하여 학습한다(Loshchilov&Hutter,2017)5 epochs 동안 선형 learning rate schedule과 함께. 우리는 다음에 설명된 batch size, learning rate, beam search beam size를 사용한다Li&Liang (2021). 따라서 우리는 LoRA에 대해서도 위 hyperparameters를 tune한다. 우리는 3개의 random seeds에 대한 mean을 보고한다; 각 run의 결과는 best epoch에서 가져온다. GPT-2에서 LoRA에 사용된 hyperparameters는 다음에 나열되어 있다Table 11. 다른 baselines에 사용된 것들은 다음을 보라Li&Liang (2021).
| Dataset | E2E | WebNLG | DART |
| Training | |||
| Optimizer | AdamW | ||
| Weight Decay | 0.01 | 0.01 | 0.0 |
| Dropout Prob | 0.1 | 0.1 | 0.0 |
| Batch Size | 8 | ||
| # Epoch | 5 | ||
| Warmup Steps | 500 | ||
| Learning Rate Schedule | Linear | ||
| Label Smooth | 0.1 | 0.1 | 0.0 |
| Learning Rate | 0.0002 | ||
| Adaptation | |||
| LoRA | 32 | ||
| Inference | |||
| Beam Size | 10 | ||
| Length Penalty | 0.9 | 0.8 | 0.8 |
| no repeat ngram size | 4 | ||
D.4 GPT-3
모든 GPT-3 experiments에 대해, 우리는 AdamW를 사용하여 학습한다(Loshchilov&Hutter,2017)batch size 128 samples와 weight decay factor 0.1로 2 epochs 동안. 우리는 WikiSQL에 대해 sequence length 384를 사용한다(Zhong 등,2017), MNLI에 대해 768(Williams 등,2018), 그리고 SAMSum에 대해 2048(Gliwa 등,2019). 우리는 모든 method-dataset combinations에 대해 learning rate를 tune한다. 다음을 보라Section D.4사용된 hyperparameters에 대한 더 자세한 내용은. prefix-embedding tuning의 경우, 우리는 최적의및가 각각 256과 8이며, 총trainable parameters임을 발견했다. 우리는및를 prefix-layer tuning에 사용하며trainable parameters로 전체적으로 최고의 성능을 얻는다. 우리는 LoRA에 대해 두 가지 parameter budgets를 제시한다: 4.7M (또는) 및 37.7M (또는). 우리는 각 run에서 best validation performance를 보고한다. 우리의 GPT-3 experiments에서 사용된 training hyperparameters는 다음에 나열되어 있다Table 12.
| Hyperparameters | Fine-Tune | PreEmbed | PreLayer | BitFit | LoRA | |
| Optimizer | AdamW | |||||
| Batch Size | 128 | |||||
| # Epoch | 2 | |||||
| Warmup Tokens | 250,000 | |||||
| LR Schedule | Linear | |||||
| Learning Rate | 5.00E-06 | 5.00E-04 | 1.00E-04 | 1.6E-03 | 1.00E-04 | 2.00E-04 |
Appendix ELoRA를 Prefix Tuning과 결합하기
LoRA는 기존 prefix-based approaches와 자연스럽게 결합될 수 있다. 이 section에서, 우리는 WikiSQL과 MNLI에서 LoRA와 prefix-tuning variants의 두 가지 조합을 평가한다.
LoRA+PrefixEmbed (LoRA+PE)는 LoRA를 prefix-embedding tuning과 결합하며, 여기서 우리는 삽입한다embeddings가 trainable parameters로 취급되는 special tokens를. prefix-embedding tuning에 대한 자세한 내용은 다음을 보라Section 5.1.
LoRA+PrefixLayer (LoRA+PL)는 LoRA를 prefix-layer tuning과 결합한다. 우리는 또한 삽입한다special tokens를; 그러나 이러한 tokens의 hidden representations가 자연스럽게 evolve하도록 두는 대신, 우리는 매 Transformer block 이후 그것들을 input agnostic vector로 대체한다. 따라서 embeddings와 subsequent Transformer block activations 모두 trainable parameters로 취급된다. prefix-layer tuning에 대한 자세한 내용은 다음을 보라Section 5.1.
다음에서Table 15, 우리는 WikiSQL과 MultiNLI에서 LoRA+PE와 LoRA+PL의 evaluation results를 보여준다. 우선, LoRA+PE는 WikiSQL에서 LoRA와 prefix-embedding tuning 둘 다를 크게 능가하는데, 이는 LoRA가 prefix-embedding tuning과 어느 정도 orthogonal함을 나타낸다. MultiNLI에서는 LoRA+PE의 조합이 LoRA보다 더 잘 수행하지 않는데, 아마도 LoRA 자체가 이미 human baseline에 필적하는 성능을 달성하기 때문일 수 있다. 둘째, 우리는 LoRA+PL이 더 많은 trainable parameters를 가지고도 LoRA보다 약간 더 나쁘게 수행한다는 것을 알아차린다. 우리는 이를 prefix-layer tuning이 learning rate 선택에 매우 민감하여 LoRA+PL에서 LoRA weights의 optimization을 더 어렵게 만든다는 사실에 기인한다고 본다.
Appendix F추가 경험적 실험
F.1 GPT-2에 대한 추가 실험
우리는 또한 DART에서 우리의 실험을 반복한다(Nan et al.,2020)및 WebNLG(Gardent et al.,2017)의 설정을 따라Li&Liang (2021). 결과는 다음에 표시되어 있다Table 13. 다음에 보고된 E2E NLG Challenge에서의 우리의 결과와 유사하게,Section 5, 동일한 수의 학습 가능한 매개변수가 주어졌을 때 LoRA는 prefix 기반 접근법보다 더 잘 수행하거나 적어도 동등하게 수행한다.
| 방법 | # 학습 가능 | DART | ||
| 매개변수 | BLEU | MET | TER | |
| GPT-2 Medium | ||||
| Fine-Tune | 354M | 46.2 | 0.39 | 0.46 |
| 0.37M | 42.4 | 0.36 | 0.48 | |
| 11M | 45.2 | 0.38 | 0.46 | |
| 24M | 41.0 | 0.34 | 0.56 | |
| PrefLayer | 0.35M | 46.4 | 0.38 | 0.46 |
| LoRA | 0.35M | 47.1.2 | 0.39 | 0.46 |
| GPT-2 Large | ||||
| Fine-Tune | 774M | 47.0 | 0.39 | 0.46 |
| 0.88M | 45.7.1 | 0.38 | 0.46 | |
| 23M | 47.1.1 | 0.39 | 0.45 | |
| PrefLayer | 0.77M | 46.7 | 0.38 | 0.45 |
| LoRA | 0.77M | 47.5.1 | 0.39 | 0.45 |
| 방법 | WebNLG | ||||||||
| BLEU | MET | TER | |||||||
| U | S | A | U | S | A | U | S | A | |
| GPT-2 Medium | |||||||||
| Fine-Tune (354M) | 27.7 | 64.2 | 46.5 | .30 | .45 | .38 | .76 | .33 | .53 |
| (0.37M) | 45.1 | 54.5 | 50.2 | .36 | .39 | .38 | .46 | .40 | .43 |
| (11M) | 48.3 | 60.4 | 54.9 | .38 | .43 | .41 | .45 | .35 | .39 |
| (24M) | 18.9 | 53.6 | 36.0 | .23 | .38 | .31 | .99 | .49 | .72 |
| Prefix (0.35M) | 45.6 | 62.9 | 55.1 | .38 | .44 | .41 | .49 | .35 | .40 |
| LoRA (0.35M) | 46.7.4 | 62.1.2 | 55.3.2 | .38 | .44 | .41 | .46 | .33 | .39 |
| GPT-2 Large | |||||||||
| Fine-Tune (774M) | 43.1 | 65.3 | 55.5 | .38 | .46 | .42 | .53 | .33 | .42 |
| (0.88M) | 49.8.0 | 61.1.0 | 56.0.0 | .38 | .43 | .41 | .44 | .35 | .39 |
| (23M) | 49.2.1 | 64.7.2 | 57.7.1 | .39 | .46 | .43 | .46 | .33 | .39 |
| Prefix (0.77M) | 47.7 | 63.4 | 56.3 | .39 | .45 | .42 | .48 | .34 | .40 |
| LoRA (0.77M) | 48.4.3 | 64.0.3 | 57.0.1 | .39 | .45 | .42 | .45 | .32 | .38 |
F.2 GPT-3에 대한 추가 실험
우리는 서로 다른 적응 방법을 사용한 GPT-3에 대한 추가 실행을 다음에 제시한다Table 15. 초점은 성능과 학습 가능한 매개변수 수 사이의 트레이드오프를 식별하는 데 있다.
| 방법 | 하이퍼파라미터 | # 학습 가능한 매개변수 | WikiSQL | MNLI-m |
| Fine-Tune | - | 175B | 73.8 | 89.5 |
| PrefixEmbed | 0.4 M | 55.9 | 84.9 | |
| 0.9 M | 58.7 | 88.1 | ||
| 1.7 M | 60.6 | 88.0 | ||
| 3.2 M | 63.1 | 88.6 | ||
| 6.4 M | 55.9 | 85.8 | ||
| PrefixLayer | 5.1 M | 68.5 | 89.2 | |
| 10.1 M | 69.8 | 88.2 | ||
| 20.2 M | 70.1 | 89.5 | ||
| 44.1 M | 66.4 | 89.6 | ||
| 76.1 M | 64.9 | 87.9 | ||
| 7.1 M | 71.9 | 89.8 | ||
| 21.2 M | 73.2 | 91.0 | ||
| 40.1 M | 73.2 | 91.5 | ||
| 77.9 M | 73.2 | 91.5 | ||
| 304.4 M | 72.6 | 91.5 | ||
| LoRA | 4.7 M | 73.4 | 91.7 | |
| 4.7 M | 73.4 | 91.3 | ||
| 9.4 M | 73.3 | 91.4 | ||
| 9.4 M | 74.1 | 91.2 | ||
| 18.8 M | 73.7 | 91.3 | ||
| 18.8 M | 73.7 | 91.7 | ||
| 37.7 M | 73.8 | 91.6 | ||
| 37.7 M | 74.0 | 91.7 | ||
| 301.9 M | 73.6 | 91.4 | ||
| 603.8 M | 73.9 | 91.4 | ||
| LoRA+PE | 37.8 M | 75.0 | 91.4 | |
| 151.1 M | 75.9 | 91.1 | ||
| 302.1 M | 76.2 | 91.3 | ||
| LoRA+PL | 52.8 M | 72.9 | 90.2 |
F.3 저데이터 체제
저데이터 체제에서 서로 다른 적응 접근법의 성능을 평가하기 위해. 우리는 MNLI의 전체 훈련 세트에서 100, 1k 및 10k개의 훈련 예제를 무작위로 샘플링하여 저데이터 MNLI-를 형성한다태스크. 다음에서Table 16, 우리는 MNLI-에서 서로 다른 적응 접근법의 성능을 보여준다. 놀랍게도 PrefixEmbed와 PrefixLayer는 MNLI-100 데이터셋에서 매우 저조하게 수행하며, PrefixEmbed는 무작위 기회보다 약간만 더 잘 수행한다(37.6% vs. 33.3%). PrefixLayer는 PrefixEmbed보다 더 잘 수행하지만 MNLI-100에서 Fine-Tune 또는 LoRA보다 여전히 상당히 나쁘다. prefix 기반 접근법과 LoRA/Fine-tuning 사이의 격차는 훈련 예제 수를 늘릴수록 작아지며, 이는 prefix 기반 접근법이 GPT-3의 저데이터 태스크에 적합하지 않을 수 있음을 시사할 수 있다. LoRA는 MNLI-100과 MNLI-Full 모두에서 fine-tuning보다 더 나은 성능을 달성하고, MNLI-1k와 MNLI-10K에서는 () 무작위 시드로 인한 분산을 고려할 때 비교 가능한 결과를 달성한다.
| 방법 | MNLI(m)-100 | MNLI(m)-1k | MNLI(m)-10k | MNLI(m)-392K |
| GPT-3 (Fine-Tune) | 60.2 | 85.8 | 88.9 | 89.5 |
| GPT-3 (PrefixEmbed) | 37.6 | 75.2 | 79.5 | 88.6 |
| GPT-3 (PrefixLayer) | 48.3 | 82.5 | 85.9 | 89.6 |
| GPT-3 (LoRA) | 63.8 | 85.6 | 89.2 | 91.7 |
MNLI-n에서 서로 다른 적응 접근법의 훈련 하이퍼파라미터는 다음에 보고되어 있다Table 17. 우리는 MNLI-100 세트에서 PrefixLayer에 더 작은 learning rate를 사용한다. 더 큰 learning rate에서는 훈련 손실이 감소하지 않기 때문이다.
| 하이퍼파라미터 | 적응 | MNLI-100 | MNLI-1k | MNLI-10K | MNLI-392K |
| Optimizer | - | AdamW | |||
| Warmup Tokens | - | 250,000 | |||
| LR Schedule | - | Linear | |||
| Batch Size | - | 20 | 20 | 100 | 128 |
| # Epoch | - | 40 | 40 | 4 | 2 |
| Learning Rate | FineTune | 5.00E-6 | |||
| PrefixEmbed | 2.00E-04 | 2.00E-04 | 4.00E-04 | 5.00E-04 | |
| PrefixLayer | 5.00E-05 | 5.00E-05 | 5.00E-05 | 1.00E-04 | |
| LoRA | 2.00E-4 | ||||
| PrefixEmbed | 16 | 32 | 64 | 256 | |
| 적응- | PrefixEmbed | 8 | |||
| 특정 | PrefixTune | ||||
| LoRA | |||||
Appendix G부분공간 사이의 유사도 측정
이 논문에서 우리는 측도를 사용한다두 열 직교정규 행렬 사이의 부분공간 유사도를 측정하기 위해및, 의 왼쪽 특이 행렬의 열을 취함으로써 얻어진및. 우리는 이 유사도가 부분공간 사이의 거리를 측정하는 표준 Projection Metric의 단순한 역이라는 점을 지적한다Ham&Lee (2008).
구체적으로, 의 특이값을 다음이라고 하자이라고 하자여기서. 우리는 Projection Metric이 다음과 같음을 알고 있다Ham&Lee (2008)다음과 같이 정의된다:
여기서 우리의 유사도는 다음과 같이 정의된다:
이 유사도는 만약및가 동일한 열 span을 공유하면, 다음을 만족한다. 만약 그것들이 완전히 직교한다면, 그러면. 그렇지 않으면,.
Appendix H저랭크 행렬에 대한 추가 실험
우리는 저랭크 업데이트 행렬에 대한 우리의 조사에서 얻은 추가 결과를 제시한다.
H.1 LoRA 모듈 사이의 상관관계
H.2 의 효과GPT-2에서
우리는 의 효과에 대한 우리의 실험을 반복한다 (Section 7.2) GPT-2에서. E2E NLG Challenge 데이터셋을 예로 사용하여, 우리는 의 서로 다른 선택에 의해 달성된 검증 손실과 테스트 metric을 보고한다26,000 steps 동안 훈련한 후. 우리는 우리의 결과를 다음에 제시한다Table 18. GPT-2 Medium의 최적 rank는 사용된 metric에 따라 4와 16 사이이며, 이는 GPT-3 175B의 경우와 유사하다. 모델 크기와 적응을 위한 최적 rank 사이의 관계는 여전히 열린 질문임에 유의하라.
| Rank | val_loss | BLEU | NIST | METEOR | ROUGE_L | CIDEr |
| 1 | 1.23 | 68.72 | 8.7215 | 0.4565 | 0.7052 | 2.4329 |
| 2 | 1.21 | 69.17 | 8.7413 | 0.4590 | 0.7052 | 2.4639 |
| 4 | 1.18 | 70.38 | 8.8439 | 0.4689 | 0.7186 | 2.5349 |
| 8 | 1.17 | 69.57 | 8.7457 | 0.4636 | 0.7196 | 2.5196 |
| 16 | 1.16 | 69.61 | 8.7483 | 0.4629 | 0.7177 | 2.4985 |
| 32 | 1.16 | 69.33 | 8.7736 | 0.4642 | 0.7105 | 2.5255 |
| 64 | 1.16 | 69.24 | 8.7174 | 0.4651 | 0.7180 | 2.5070 |
| 128 | 1.16 | 68.73 | 8.6718 | 0.4628 | 0.7127 | 2.5030 |
| 256 | 1.16 | 68.92 | 8.6982 | 0.4629 | 0.7128 | 2.5012 |
| 512 | 1.16 | 68.78 | 8.6857 | 0.4637 | 0.7128 | 2.5025 |
| 1024 | 1.17 | 69.37 | 8.7495 | 0.4659 | 0.7149 | 2.5090 |
H.3 사이의 상관관계및
참조하라Figure 8사이의 정규화된 부분공간 유사도에 대해및변화하는 에 따라.
다시 유의하라는 의 최상위 특이 방향들을 포함하지 않는다, 왜냐하면 에서의 최상위 4개 방향 사이의 유사도는그리고 에서 그것들의 상위 10%는겨우 0.2를 초과한다. 이는 다음이라는 증거를 제공한다는 그렇지 않으면 다음에서강조되지 않는그러한 “task-specific” 방향들을 포함한다.
답해야 할 흥미로운 다음 질문은, 모델 적응이 잘 작동하도록 하기 위해 그러한 task-specific 방향들을 얼마나 “강하게” 증폭해야 하는가이다.
H.4 증폭 계수
자연스럽게특징 증폭 계수를비율 로 간주할 수 있는데, 여기서그리고는 의 SVD 분해의 left- 및 right-singular 행렬이다. (상기하라는 의 “projection”을 제공한다가 span하는 부분공간 위로.)
직관적으로, when가 대부분 task-specific 방향들을 포함할 때, 이 양은 그것들이 에 의해 얼마나 증폭되는지를 측정한다. 에서 보인 것처럼Section 7.3, 에 대해, 이 증폭 계수는 20만큼 크다. 다시 말해, (일반적으로 말해서) 각 layer에는 네 개의 특징 방향이 있으며 (pre-trained model의 전체 feature space 중에서), downstream specific task에 대해 우리가 보고한 accuracy를 달성하기 위해 그것들은 매우 큰 계수 20으로 증폭될 필요가 있다. 그리고, 각기 다른 downstream task마다 증폭되어야 할 매우 다른 특징 방향들의 집합을 예상해야 한다.
그러나, 에 대해 알아차릴 수 있듯이, 이 증폭 계수는 약 2에 불과하며, 이는대부분의에서 학습된 방향들이와 함께있다는 것을 의미한다않다많이 증폭되고 있지. 이는 놀라운 일이 아니며, 사실 “task-specific directions”를 표현하는 데 (따라서 model adaptation을 위해) 필요한 intrinsic rank가 낮다는 증거를 (다시 한 번) 제공한다. 대조적으로, 의 rank-4 버전에서의 그 방향들은필요한“task-specific directions”를 표현하기 위해 (따라서 model adaptation을 위해) 낮다. 대조적으로, 의 rank-4 버전에서의 그 방향들은(에 해당하는) 훨씬 더 큰 계수 20으로 증폭된다.