Tsinghua는 LoRA 매개변수의 70%만 갖고 더 나은 성능을 발휘하는 SoRA를 제안했습니다!

이제 대규모 언어 모델(LLM)에 대한 많은 연구가 진행되고 있으며, 모두효율적으로 미세 조정하는 방법에 중점을 두고 있습니다. Fine-tuning은 대규모 일반 데이터에 대해 모델이 학습한 지식을 사용하여 대상 소규모 다운스트림 작업 데이터를 통해 모델을 특정 작업에 더 잘 적응시키는 훈련 방법입니다.

이전 작업에서는 Full Fine-tuning의 훈련 비용이 비싸고 Adapter Tuning의 훈련 및 추론이 지연되며 Prefix Tuning은 원본 훈련 데이터의 유효 텍스트 길이를 줄이므로 일부 사람들은 다음을 제안했습니다. 원래 사전 훈련 행렬의 우회 경로에서 낮은 순위 미세 조정 LoRA 사용은 낮은 순위 행렬 A와 B를 사용하여 증분 업데이트를 대략적으로 대체합니다..

최근에는 대규모 언어 모델이 작업에 보다 효율적으로 적응할 수 있도록 돕는 새로운 방법이 개발되었습니다! LoRA를 기반으로 칭화대학교 연구팀은 고유 순위를 동적으로 조정하여 사전 학습을 달성하는 SoRA(Sparse Low-Rank Adaptation)라는 혁신적인 미세 조정 방법을 제안했습니다. 나는 = 2>입니다. SoRA는 여러 작업에서 인상적인 성능을 달성할 뿐만 아니라 희소 방식으로 매개변수 수를 크게 줄여 훈련 프로세스를 가속화합니다.

论文题目:
사전 훈련된 언어 모델의 희소 하위 순위 적응

论文链接:
https://arxiv.org/abs/2311.11696

GitHub 지지:
https://github.com/TsinghuaC3I/SoRA


미세 조정 전략

전체 미세 조정

전체 매개변수 미세 조정이란 사전 학습된 모델을 미세 조정할 때 전체 모델의 모든 매개 변수를 조정하는 것을 의미합니다.

  1. 사전 학습 단계에서는 모델이 대규모 데이터 세트를 사용하여 학습되고 범용 언어 표현을 학습합니다.

  2. 미세 조정 단계에서는 모델이 특정 작업이나 도메인에 대한 소규모 데이터 세트에 대해 추가로 학습되어 적응하게 됩니다. 특정 작업의 요구 사항에 맞게.

전체 미세 조정 프로세스에는 미세 조정 단계의 작업에 더 적합하도록 모델의 모든 가중치와 매개변수를 조정하는 작업이 포함됩니다.

  • 장점: 모델은 사전 훈련 단계에서 학습한 일반 지식을 최대한 활용할 수 있습니다.

  • 단점: 대규모 컴퓨팅 리소스와 시간이 필요하며 일부 소규모 작업에 과적합되는 경향이 있습니다.

매개변수 효율성 미세 조정

매개변수 효율성 미세 조정은 사전 학습된 모델을 미세 조정하기 위한 전략의 한 유형으로, 전체 매개변수 세트 대신 모델의 일부 매개변수를 조정하는 것을 목표로 합니다. a>. 계산 비용을 줄이고 미세 조정 효율성을 향상하며 소규모 작업에서 좋은 성능을 달성합니다. 이러한 방법의 핵심 아이디어는 대규모 사전 학습 작업에서 모델이 학습한 일반 지식을 유지하면서 모델의 일부 매개변수를 선택적으로 미세 조정하고, 계산 오버헤드를 줄이고 미세 조정 효율성을 향상시키는 것입니다. 특정 작업에 더 적합합니다. 이러한 방법은 리소스가 제한되거나 데이터가 제한된 상황에서 특히 효과적입니다.

  1. 어댑터: 사전 학습된 모델의 레이어 사이에 작은 신경망(어댑터)을 추가로 삽입하는 경량 모델 확장 방법입니다. 모델을 미세 조정합니다. 이러한 어댑터에는 상대적으로 적은 수의 매개변수만 포함되므로 미세 조정에 드는 계산 비용이 상대적으로 낮습니다.

  2. 낮은 순위 적응(LoRA): 낮은 순위 행렬을 사용하여 가중치 변화를 근사화함으로써 미세 조정이 필요한 매개변수 수를 줄입니다. 사전 훈련된 가중치 대부분을 동결하고 하위 행렬의 매개변수만 미세 조정함으로써 성능을 유지하면서 계산 오버헤드를 크게 줄일 수 있습니다.

근위 정규화란 무엇입니까?

근위 그래디언트 방법은 정규화 용어의 최적화 문제를 처리하는 데 일반적으로 사용되는 최적화 알고리즘 클래스입니다. 이 방법 클래스는 경사하강법과 근위 연산을 결합하여 정규화 페널티를 고려하면서 모델 매개변수를 효율적으로 업데이트합니다.

기계 학습에서는 정규화를 사용하여 모델의 복잡성을 제어하여 훈련 데이터에 대한 과적합을 방지합니다. 근위 경사법은 각 반복의 경사하강법 단계에 "근위 연산"을 적용하여 정규화를 달성합니다. 이는 일반적으로 경사하강법의 각 단계를 분리하기 위해 소프트 임계값 또는 하드 임계값과 같은 함수를 적용하는 것을 의미합니다. 매개변수는 값으로 조정됩니다. 0에 가깝습니다 모델 매개변수를 희소하게 하거나 낮은 순위를 갖도록 만듭니다.

근위 경사법의 목표는 경사하강법을 기반으로 손실 함수를 최소화하고 근위 연산을 통해 매개변수가 정규화 요구 사항을 충족하는지 확인하는 것입니다. 경사하강법과 정규화 간의 균형을 효과적으로 유지하므로 희소성 및 낮은 순위와 같은 정규화 문제를 처리할 때 유용합니다.

LoRA 검토

LoRA(Low-Rank Adaptation)는 사전 훈련된 언어 모델을 매개변수로 효과적으로 미세 조정하는 방법입니다. 구체적으로 그림 1에서 볼 수 있듯이 사전 훈련된 가중치는 고정되어 있는 반면 훈련 가능한 LoRA 모듈은 하위 행렬을 사용하여 각 가중치 행렬의 변화를 근사화합니다. 이 변화 행렬은 두 개의 낮은 순위 행렬의 곱으로 분해될 수 있습니다. 하나는 하향 투영용이고 다른 하나는 상향 투영용입니다. 이런 방식으로 LoRA는 기본 모델의 구조를 변경하지 않고도 미세 조정 과정에서 모델의 매개변수를 조정할 수 있습니다.

그림

▲그림 1 LoRA의 구조

핵심 아이디어는 하위 행렬을 사용하여 가중치 행렬의 변화를 표현함으로써 미세 조정 중에 모델의 매개변수 효율성을 유지하는 것입니다< 나는 = 2>입니다. 이런 방식으로 LoRA는 특정 작업에 적응할 때 사전 훈련된 모델에 대한 지식을 유지할 수 있으며, 전체 모델을 직접 미세 조정하는 것보다 더 적은 수의 매개변수를 갖고 계산적으로 더 효율적입니다.

SoRA 방식

SoRA(Sparse Low-Rank Adaptation)는 LoRA를 기반으로 개선되었으며, LoRA가 최고 순위를 선택하는 경직성을 해결하는 것을 목표로 합니다. LoRA에서 순위는 선택이 모델의 구조를 직접 변경하는 이산 값인 반면, SoRA는 적응형 순위 선택 메커니즘을 도입하여 모델의 순위를 보다 유연하게 조정하는 것을 목표로 합니다.

핵심 아이디어는적응형 순위 선택 메커니즘입니다. 그림 2에서 볼 수 있듯이 SoRA는 다음과 같이 최적화 가능한 게이트 제어 장치(gate )를 도입합니다. 근위 그래디언트 방법을 사용하여 이 게이팅 단위를 조정함으로써 모델 순위를 동적으로 조정합니다. 이를 통해훈련 과정 중에 가장 좋은 순위를 적응적으로 선택할 수 있으며 더 이상 개별 순위 선택에 의해 제한되지 않습니다. SoRA 방법은 LoRA보다 더 유연하며 다양한 백본 모델 및 다운스트림 작업에 더 잘 적응할 수 있습니다.

그림

▲그림 2 SoRA(Sparse Low-Rank Adaptation)의 개략도

빌딩 블록

먼저 허용 가능한 최대 순위를 결정하며, 각 SoRA 모듈은 하위 투영 행렬과 상위 투영 행렬을 포함하여 LoRA를 상속합니다. 희소한 방식으로 최대 순위를 효과적으로 제어하는 ​​방법은 무엇입니까? SVD(Singular Value Decomposition)에서 영감을 받아 투영 행렬 사이에 게이팅 유닛이 도입되었습니다. SoRA 모듈의 순방향 전파는 다음과 같이 표현됩니다.

그림

최적화

LoRA의 하향 및 상향 투영 행렬 최적화와 유사한 확률적 그라데이션 방법을 사용합니다. 각 게이트 단위는 서로 다른 방식으로 희소성을 향상시키며 다음 공식으로 업데이트됩니다.

그림

그 중 는 언어 모델의 원래 손실 함수를 나타내고, 조정 가능한 전체 매개변수(게이트 포함)를 나타내며, 반복의 단계 크기를 나타내며, λ는 희소성을 촉진하는 정규화 강도 하이퍼 매개변수 역할을 합니다. 또한 다음 소프트 임계값 연산 함수의 요소별 브로드캐스트를 나타냅니다.

그림

임계 값은 어디에 있습니까?

더 가지치기

계산 부담을 줄이기 위해 훈련이 완료되면 SoRA 가중치를 추가로 잘라내어 제로화된 순위를 제거하고 모듈을 LoRA 형식으로 복원합니다.

기억과 일반화를 탐구하기 위한 스케줄링

저자는 모델의 희소성을 조정하는 데 사용되는 임계값 매개변수를 다음과 같이 표현합니다. SoRA는 적응 프로세스 중에 동적으로 변경함으로써 모델 M과 데이터 D에서 메모리 및 일반화 측면에서 동작을 평가하는 효과적인 도구 역할을 할 수 있습니다.

알고리즘 1에서 볼 수 있듯이 모델의 희소성을 개선하기 위해 적응 과정에서 의 값이 점차 증가합니다. 이 절차를 통해 모델 M과 데이터 세트 D가 주어졌을 때 특정 수준의 성능을 달성하기 위해 모델에 필요한 추가 매개변수 수를 평가할 수 있습니다.

그림

▲알고리즘 1

SoRA와 AdaLoRA의 비교

SoRA와 AdaLoRA(2023년에 제안된 새로운 방법)는 모두 특이값 분해(SVD)에서 영감을 얻었지만 구현에 차이가 있습니다.

  1. 직교 정규화 적용: SoRA는 AdaLoRA에서 사용되는 직교 정규화 기술을 사용하지 않습니다. 대조적으로, SoRA는 순위 선택을 위해 희소화 게이트를 사용하여 직교 정규화 적용을 피합니다. 이러한 설계 선택은 계산 오버헤드를 줄이기 위해 이루어졌습니다. SVD의 원래 요구 사항을 준수하면 추가적인 계산 부담이 발생할 수 있기 때문입니다.

  2. 이동평균 중요도 점수와 순위 선택의 관계: 이동 평균 중요도 점수는 AdaLoRA에서 순위 선택의 "민감도" 척도로 사용됩니다. 근사 손실을 위한 경험적 매개변수 다양성. 그러나 SoRA는 소프트 임계값 연산(Eq. 10)을 기반으로 하는 명시적 순위 선택 방법을 채택합니다. 대조적으로, SoRA의 순위 선택 방법은 더 명확하고 그 타당성은 근위 경사 반복에 의해 이론적으로 정당화됩니다.

전반적으로 SoRA의 업데이트 규칙은 보간 복잡성과 정규화 손실 최소화 목표를 비교하여 공식화되어 있으며, 이는 특정 이점을 제공합니다. 매개변수 민감도와 계산 효율성을 다루는 데 있습니다.

실험

아래 표에서 볼 수 있듯이 AdaLoRA와 SoRA는 모두 초기 기준선인 LoRA보다 항상 우수합니다. 이는적응 순위가 모델 적응성을 향상한다는 것을 보여줍니다. . 그러나 더 적은 수의 매개변수를 사용함에도 불구하고 SoRA는 AdaLoRA보다 더 나은 성능을 발휘합니다. 이는 근위 경사 방법이 적응 순위를 달성하는 데 더 효과적이고 중요한 방법일 수 있음을 증명합니다 . 또한 SoRA는 LoRA의 70%인 0.91M 매개변수만 필요하며 평균 성능은 89.36%로 LoRA의 88.38%보다 훨씬 우수합니다. SoRA의 강력한 적응형 희소화 기능을 보여줍니다.

그림

▲표 1 GLUE 벤치마크에서 SoRA의 테스트 결과

적응 순위의 효율성에 대한 더 깊은 이해를 얻기 위해 아래 표의 실험 결과는 SoRA가 다양한 매개변수 예산 하에서 우수하다는 것을 확인시켜 줍니다 .

그림

▲표 2 초기화가 다른 SoRA와 동일한 순위의 LoRA를 사용한 GLUE 벤치마크의 성능 및 매개변수 수 비교 테스트

스파스 스케줄러

저자는 SoRA의 희소성 표시기를 점진적으로 증가시켜 적응 프로세스를 동적으로 미세 조정했습니다. 그림 3은 MRPC, RTE, STS-B, CoLA, QNLI 및 SST-2 데이터 세트에서 RoBERTa-large의 메모리 및 일반화 곡선을 보여줍니다. 여기서 메모리는 훈련 세트의 성능으로 측정되는 반면, 일반화 검증 세트의 성능으로 측정됩니다.

그림

▲그림 3 다양한 데이터 세트의 메모리 및 일반화 곡선

  • 거의 모든 데이터 세트에 대한 강력한 "압축 성능". SST-2에서 모델은 0이 아닌 매개변수가 40,000개 이상으로 제한되는 경우에도 99% 이상의 성능을 유지합니다.

  • 성능을 지원하는 몇 가지 주요 매개변수가 있습니다. 희소화 프로세스가 진행됨에 따라 모델은 다양한 데이터에서 다양한 "변곡점"을 만나게 되며 성능이 크게 저하됩니다.

  • 다양한 데이터 세트에 모델을 적용하는 데는 난이도가 다양합니다. 특정 데이터 세트는 성능 저하를 더 일찍, 더 심각하게 유발합니다.

  • 희소화 프로세스의 메모리 및 일반화 추세는 일관됩니다.

  • 중간 및 심층 매개변수는 조밀한 경향을 유지하는 반면, 얕은 매개변수는 더 높은 희소성 경향을 나타냅니다.

순위 분석

단일 모델이 다양한 다운스트림 데이터 세트에 맞게 조정되면 다양한 수준의 문제에 직면하게 됩니다. 동시에 모델의 모든 매개변수가 동일한 중요성을 갖는 것은 아니며 일부 매개변수는 성능에 더 중요합니다.

그림 4의 시각화는 다양한 수준의 과제가 있음을 반영합니다. 더욱이, 모델 성능과 매개변수의 최상의 균형을 결정하려면 특정 상황과 문제에 대한 구체적인 고려가 필요하며 확정될 수는 없습니다.

그림

▲그림 4 4가지 데이터 세트(예: QQP, MNLI, QNLI 및 MRPC)에 대해 SoRA를 사용한 훈련 후 최종 순위

효율성 분석

표 4에서 볼 수 있듯이 **SoRA의 훈련 시간은 AdaLoRA에 비해 약 30%** 단축되어 훈련 효율성 면에서 분명한 이점이 있습니다. 대조적으로, SoRA는 다른 데이터 세트에서 지속적으로 AdaLoRA를 앞서지만 그 이점은 그다지 크지 않습니다. 이러한 차이는 AdaLoRA와 SoRA가 서로 다른 작업에서 서로 다른 순위 분포를 갖기 때문에 발생할 수 있습니다. AdaLoRA의 정규화 계산에 대한 이 분포의 영향으로 인해 이러한 변경이 발생할 수 있습니다.

그림

▲표 4 동일한 배치 크기에서 각 에포크의 평균 훈련 시간

요약하다

이 논문에서 저자는 미리 훈련된 대규모 언어 모델에 대한 효율적인 매개변수 미세 조정 전략을 제공하기 위해 SoRA(Sparse Low-Rank Adaptation) 방법을 조사했습니다. 본질적인 희소성 가정을 완전히 활용하고, 최적화 가능한 게이팅 유닛을 도입하고, 희소성을 미세 조정하기 위해 근위 기울기 방법을 사용함으로써 SoRA는 탁월한 성능을 발휘하고 모델에 유연한 대체 순위를 제공하여 최적화 공간을 확장하고 매개변수 효율성을 향상시킵니다.

그러나 연구에 몇 가지 제한 사항이 있음을 인식하는 것도 중요합니다.

  • 실험은 주로 전통적인 자연어 처리 작업에 중점을 두었으며 다른 분야에 대한 적응성은 여전히 ​​추가 연구가 필요합니다. 예를 들어, 매개변수 효율적인 방법은 교차 모드 또는 안내된 미세 조정 시나리오에서 광범위하게 응용될 수 있습니다.

  • 희소 스케줄러는 언어 모델 적응 프로세스에 대한 통찰력을 제공하지만 프로세스를 깊이 설명하고 적응의 어려움을 보다 효과적으로 평가하는 것은 여전히 ​​어렵습니다.

마지막으로, 앞으로도 인공지능 분야의 발전을 지속적으로 촉진할 더 많은 연구를 기대해 봅니다. 컴퓨팅 리소스를 합리적으로 활용하고 소규모 매개변수 미세 조정을 사용하여 대형 모델의 부담을 "줄임"으로써 모델 성능을 지속적으로 개선하고 모델 적응성의 경계를 확장하며 다양한 작업 및 데이터 시나리오에 더 잘 대처할 수 있습니다.

おすすめ

転載: blog.csdn.net/xixiaoyaoww/article/details/134634039
おすすめ