기술 주변기기 일체 포함 대형 모델이 전체적인 미세 조정을 감당할 수 없다는 것이 아니라 LoRA가 더 비용 효율적이고 튜토리얼이 준비되어 있다는 것입니다.

대형 모델이 전체적인 미세 조정을 감당할 수 없다는 것이 아니라 LoRA가 더 비용 효율적이고 튜토리얼이 준비되어 있다는 것입니다.

Dec 04, 2023 pm 06:41 PM
이론 lora

이것은 저자 Sebastian Raschka가 수백 번의 실험을 거쳐 얻은 경험입니다.


데이터 양과 모델 매개변수의 양을 늘리는 것이 신경망 성능을 향상시키는 가장 직접적인 방법으로 인식되고 있습니다. 현재 주류 대형 모델의 매개변수 수는 수천억 개로 확대되었으며 '대형 모델'의 대형화 추세는 점점 더 심해질 것입니다.

이러한 추세로 인해 많은 컴퓨팅 성능 문제가 발생했습니다. 수천억 개의 매개변수가 있는 대규모 언어 모델을 미세 조정하려면 훈련하는 데 오랜 시간이 걸릴 뿐만 아니라 고성능 메모리 리소스도 많이 필요합니다.

대형 모델을 미세 조정하는 데 드는 비용을 "절감"하기 위해 Microsoft 연구원들은 LoRA(낮은 순위 적응형) 기술을 개발했습니다. LoRA의 미묘함은 원래 대형 모델에 분리 가능한 플러그인을 추가하는 것과 동일하며 모델의 본체는 변경되지 않은 상태로 유지된다는 것입니다. LoRA는 플러그 앤 플레이 방식으로 가볍고 편리합니다.

대규모 언어 모델의 맞춤형 버전을 효율적으로 미세 조정하기 위해 LoRA는 가장 널리 사용되는 방법 중 하나이자 가장 효과적인 방법 중 하나입니다.

오픈소스 LLM에 관심이 있다면 LoRA는 배울 가치가 있고 놓칠 수 없는 기본 기술입니다.

위스콘신대학교 매디슨 캠퍼스의 데이터 과학 교수인 Sebastian Raschka도 LoRA에 대한 포괄적인 탐구를 수행했습니다. 수년 동안 기계 학습 분야를 탐구한 그는 복잡한 기술 개념을 분해하는 데 매우 열정적입니다. 수백 번의 실험 끝에 Sebastian Raschka는 LoRA를 사용하여 대형 모델을 미세 조정한 경험을 요약하고 이를 Ahead of AI 잡지에 게재했습니다.

대형 모델이 전체적인 미세 조정을 감당할 수 없다는 것이 아니라 LoRA가 더 비용 효율적이고 튜토리얼이 준비되어 있다는 것입니다.

본 사이트는 작성자의 초심을 유지하는 차원에서 다음과 같은 글을 편집했습니다.

지난달에 LoRA 실험에 관한 글을 공유했는데, 이는 저와 동료들이 유지한 글을 중심으로 작성되었습니다. Lightning AI 오픈 소스 Lit-GPT 라이브러리에서 내 실험을 통해 얻은 주요 경험과 교훈을 논의합니다. 또한 LoRA 기술과 관련하여 자주 묻는 몇 가지 질문에 답변해 드리겠습니다. 사용자 정의 대형 언어 모델을 미세 조정하는 데 관심이 있다면 이러한 통찰력이 빠르게 시작하는 데 도움이 되기를 바랍니다.

간단히 말해서 이 기사에서 논의할 주요 사항은 다음과 같습니다.

  1. LLM 훈련(또는 GPU에서 훈련된 모든 모델)은 불가피한 무작위성을 갖지만 다중 LUN 훈련의 결과는 여전히 매우 일관성이 있습니다.
  2. GPU 메모리가 제한되어 있는 경우 QLoRA는 비용 효율적인 절충안을 제공합니다. 런타임이 39% 증가하는 대신 메모리가 33% 절약됩니다.
  3. LLM을 미세 조정할 때 옵티마이저의 선택은 결과에 영향을 미치는 주요 요인이 아닙니다. AdamW, 스케줄러가 있는 SGD, 스케줄러가 있는 AdamW 등 결과에 미치는 영향은 최소화됩니다.
  4. Adam은 각 모델 매개변수에 대해 두 개의 새로운 매개변수를 도입하기 때문에 종종 메모리 집약적인 최적화 프로그램으로 간주되지만 이는 LLM의 최대 메모리 요구 사항에 큰 영향을 미치지 않습니다. 이는 추가 매개변수를 보유하는 대신 대부분의 메모리가 큰 행렬의 곱셈을 위해 할당되기 때문입니다.
  5. 정적 데이터 세트의 경우 여러 라운드의 학습과 같은 여러 반복이 제대로 작동하지 않을 수 있습니다. 이는 종종 과적합으로 이어져 훈련 결과를 악화시킵니다.
  6. LoRA를 결합하려면 Key 및 Value 행렬뿐만 아니라 모든 레이어에 적용하여 모델의 성능을 극대화해야 합니다.
  7. LoRA 순위를 조정하고 적절한 α 값을 선택하는 것이 중요합니다. 팁으로 α 값을 순위 값의 두 배로 설정해 보세요.
  8. 14GB RAM을 갖춘 단일 GPU는 70억 개의 매개변수가 있는 대형 모델을 몇 시간 내에 효율적으로 미세 조정할 수 있습니다. 정적 데이터 세트의 경우 LLM을 "만능 플레이어"로 강화하고 모든 기본 작업을 잘 수행하는 것은 불가능합니다. 이 문제를 해결하려면 데이터 소스를 다양화하거나 LoRA 이외의 기술을 사용해야 합니다.

그리고 LoRA에 관해 자주 묻는 10가지 질문에 답변해드리겠습니다.

독자들이 관심을 가지신다면 LoRA를 처음부터 구현하기 위한 자세한 코드를 포함하여 LoRA에 대한 좀 더 포괄적인 소개를 또 작성하겠습니다. 오늘 기사에서는 주로 LoRA 사용에 관한 주요 문제를 공유합니다. 정식으로 시작하기 전에 몇 가지 기본 지식을 추가해 보겠습니다.

LoRA 소개

GPU 메모리 제한으로 인해 학습 중에 모델 가중치를 업데이트하는 데 비용이 많이 듭니다.
예를 들어 가중치 행렬 W로 표현되는 7B 매개변수 언어 모델이 있다고 가정합니다. 역전파 동안 모델은 손실 함수 값을 최소화하기 위해 원래 가중치를 업데이트하는 것을 목표로 ΔW 행렬을 학습해야 합니다.

가중치는 다음과 같이 업데이트됩니다: W_updated = W + ΔW.

가중치 행렬 W에 7B개의 매개변수가 포함되어 있으면 가중치 업데이트 행렬 ΔW에도 7B개의 매개변수가 포함됩니다. 행렬 ΔW를 계산하는 것은 계산적으로나 메모리를 많이 소모합니다.

Edward Hu 등이 제안한 LoRA는 체중 변화 부분 ΔW를 하위 표현으로 분해합니다. 특히 ΔW에 대한 명시적인 계산이 필요하지 않습니다. 대신 LoRA는 아래 그림과 같이 학습 중에 ΔW의 분해된 표현을 학습합니다. 이것이 LoRA가 계산 리소스를 절약하는 비결입니다.

대형 모델이 전체적인 미세 조정을 감당할 수 없다는 것이 아니라 LoRA가 더 비용 효율적이고 튜토리얼이 준비되어 있다는 것입니다.

위에서 볼 수 있듯이 ΔW의 분해는 더 큰 행렬 ΔW를 나타내기 위해 두 개의 작은 LoRA 행렬 A와 B를 사용해야 함을 의미합니다. A가 ΔW와 동일한 수의 행을 갖고 B가 ΔW와 동일한 수의 열을 갖는 경우 위의 분해를 ΔW = AB로 쓸 수 있습니다. (AB는 행렬 A와 B 간의 행렬 곱셈의 결과입니다.)

이 방법을 사용하면 메모리가 얼마나 절약되나요? 또한 하이퍼파라미터인 랭크 r에 따라 달라집니다. 예를 들어 ΔW에 10,000개의 행과 20,000개의 열이 있는 경우 200,000,000개의 매개변수를 저장해야 합니다. r=8인 A와 B를 선택하면 A에는 10,000개의 행과 8개의 열이 있고 B에는 8개의 행과 20,000개의 열이 있습니다. 이는 10,000×8 + 8×20,000 = 240,000개의 매개변수로, 이는 200,000,000보다 약 830배 적은 수치입니다. 매개변수.

물론 A와 B가 ΔW가 다루는 모든 정보를 담을 수는 없지만 이는 LoRA의 설계에 따라 결정됩니다. LoRA를 사용할 때 모델 W는 사전 훈련 데이터 세트의 모든 지식을 수집하기 위한 전체 순위를 갖는 대규모 행렬이라고 가정합니다. LLM을 미세 조정할 때 모든 가중치를 업데이트할 필요는 없지만 핵심 정보를 캡처하기 위해 ΔW보다 적은 가중치만 업데이트하면 됩니다. 이것이 AB 매트릭스를 통해 하위 순위 업데이트가 구현되는 방식입니다.

LoRA의 일관성

LLM의 무작위성, 즉 GPU에서 훈련된 모델은 불가피하지만, LoRA를 사용하여 여러 실험을 진행하였고, LLM의 최종 벤치마크 결과는 다양한 테스트에서 집중력은 놀라운 일관성을 보여주었습니다. 이는 다른 비교 연구를 수행하는 데 좋은 기초가 됩니다.

대형 모델이 전체적인 미세 조정을 감당할 수 없다는 것이 아니라 LoRA가 더 비용 효율적이고 튜토리얼이 준비되어 있다는 것입니다.

이 결과는 r=8이라는 작은 값을 사용하여 기본 설정에서 얻은 결과입니다. 실험 세부 사항은 내 다른 기사에서 찾을 수 있습니다.

기사 링크: https://lightning.ai/pages/community/lora-insights/

QLoRA 계산 - 메모리 트레이드오프

QLoRA는 Tim Dettmers 외 연구진이 제안했습니다. 정량적 LoRA의 약어. QLoRA는 미세 조정 중에 메모리 공간을 더욱 줄이는 기술입니다. 역전파 동안 QLoRA는 사전 훈련된 가중치를 4비트로 양자화하고 페이징 최적화 프로그램을 사용하여 메모리 피크를 처리합니다.

LoRA를 사용하면 GPU 메모리를 33% 절약할 수 있다는 것을 발견했습니다. 그러나 QLoRA에서는 사전 훈련된 모델 가중치의 추가적인 양자화 및 역양자화로 인해 훈련 ​​시간이 39% 증가합니다.

기본 LoRA의 정밀도는 16비트입니다.

  • 훈련 시간: 1.85시간
  • 메모리 사용량: 21.33GB

QLoRA(4자리 일반 부동 소수점 포함) 숫자

  • 훈련 시간은 2.79h
  • 메모리 사용량은 14.18GB

또한 모델의 성능에는 거의 영향을 미치지 않는 것으로 나타났습니다. QLoRA는 일반적인 GPU 메모리 병목 현상을 해결하기 위해 한 단계 더 발전하는 LoRA 대안 솔루션으로 훈련될 수 있습니다.

대형 모델이 전체적인 미세 조정을 감당할 수 없다는 것이 아니라 LoRA가 더 비용 효율적이고 튜토리얼이 준비되어 있다는 것입니다.

학습률 스케줄러

학습률 스케줄러는 학습 과정 전반에 걸쳐 학습률을 줄여 모델의 수렴을 최적화하고 과도한 손실 값을 방지합니다.

코사인 어닐링은 코사인 곡선을 따라 학습률을 조정하는 스케줄러입니다. 높은 학습률로 시작하여 부드럽게 감소하여 코사인과 같은 패턴으로 점차 0에 가까워집니다. 코사인 어닐링의 일반적인 변형은 아래 그림과 같이 훈련 중에 코사인 주기의 절반만 완료되는 반주기 변형입니다.

대형 모델이 전체적인 미세 조정을 감당할 수 없다는 것이 아니라 LoRA가 더 비용 효율적이고 튜토리얼이 준비되어 있다는 것입니다.

실험에서 LoRA 미세 조정 스크립트에 코사인 어닐링 스케줄러를 추가하여 SGD의 성능을 크게 향상시켰습니다. 그러나 Adam 및 AdamW 최적화 프로그램에 대한 이점은 작으며 추가한 후에도 거의 변화가 없습니다.

대형 모델이 전체적인 미세 조정을 감당할 수 없다는 것이 아니라 LoRA가 더 비용 효율적이고 튜토리얼이 준비되어 있다는 것입니다.

다음 섹션에서는 Adam에 비해 SGD의 잠재적 이점에 대해 논의합니다.

Adam vs SGD
Adam 및 AdamW 최적화 프로그램은 딥 러닝에서 널리 사용됩니다. 7B 매개변수 모델을 훈련하는 경우 Adam을 사용하면 훈련 과정 중에 추가로 14B 매개변수를 추적할 수 있습니다. 이는 다른 조건이 변경되지 않은 상태에서 모델의 매개변수 수를 두 배로 늘리는 것과 같습니다.

SGD는 훈련 중에 추가 매개변수를 추적할 수 없는데, Adam에 비해 최대 메모리 측면에서 SGD의 장점은 무엇인가요?

내 실험에서 AdamW 및 LoRA(기본 설정 r=8)를 사용하여 7B 매개변수 Llama 2 모델을 훈련하려면 14.18GB의 GPU 메모리가 필요했습니다. SGD로 동일한 모델을 훈련하려면 14.15GB의 GPU 메모리가 필요합니다. AdamW와 비교하여 SGD는 0.03GB의 메모리만 절약하며 이는 무시할만한 효과가 있습니다.

왜 그렇게 많은 메모리만 절약하나요? 이는 LoRA를 사용할 때 모델의 매개변수 수를 크게 줄였기 때문이다. 예를 들어, r=8인 경우 7B의 Llama 2 모델의 전체 6,738,415,616개 매개변수 중 훈련 가능한 LoRA 매개변수는 4,194,304개뿐입니다.

숫자로만 보면 4,194,304개의 매개변수가 여전히 많을 수 있지만 실제로 이 많은 매개변수는 4,194,304 × 2 × 16비트 = 134.22메가비트 = 16.78메가바이트에 불과합니다. (최적화 상태를 저장하고 복사하는 데 추가 오버헤드로 인해 0.03Gb = 30Mb의 차이가 관찰되었습니다.) 2는 Adam이 저장한 추가 매개변수의 수를 나타내고, 16비트는 모델 가중치의 기본 정밀도를 나타냅니다.

대형 모델이 전체적인 미세 조정을 감당할 수 없다는 것이 아니라 LoRA가 더 비용 효율적이고 튜토리얼이 준비되어 있다는 것입니다.

LoRA 매트릭스의 r을 8에서 256으로 확장하면 AdamW에 비해 SGD의 장점이 나타납니다.

  • AdamW를 사용하면 17.86GB의 메모리를 차지합니다
  • SGD 사용 14.46GB를 차지하게 됩니다

따라서 매트릭스 크기가 커지면 SGD가 절약하는 메모리가 중요한 역할을 하게 됩니다. SGD는 추가적인 옵티마이저 매개변수를 저장할 필요가 없기 때문에 대규모 모델을 처리할 때 Adam과 같은 다른 옵티마이저보다 더 많은 메모리를 절약할 수 있습니다. 이는 메모리가 제한된 훈련 작업에 매우 중요한 이점입니다.

반복 훈련

기존 딥 러닝에서는 훈련 세트를 여러 번 반복하는 경우가 많으며 각 반복을 에포크라고 합니다. 예를 들어, 컨벌루션 신경망을 훈련할 때 일반적으로 수백 에포크 동안 실행합니다. 그렇다면 여러 차례의 반복 훈련도 교육 미세 조정에 영향을 미칠까요?

답은 '아니요'입니다. 50,000개의 데이터로 Alpaca 예제 명령 미세 조정 데이터 세트에서 반복 횟수를 두 배로 늘렸을 때 모델 성능이 떨어졌습니다.

대형 모델이 전체적인 미세 조정을 감당할 수 없다는 것이 아니라 LoRA가 더 비용 효율적이고 튜토리얼이 준비되어 있다는 것입니다.

그래서 저는 여러 차례의 반복이 교육 미세 조정에 도움이 되지 않을 수 있다는 결론에 도달했습니다. 1k 샘플 LIMA 명령 미세 조정 세트에서 동일한 동작을 관찰했습니다. 모델 성능 저하는 과적합으로 인해 발생할 수 있으며 구체적인 이유는 아직 더 자세히 조사해야 합니다.

더 많은 레이어에서 LoRA 사용

아래 표는 LoRA가 선택된 행렬(즉, 각 Transformer의 키 및 값 행렬)에서만 작동하는 실험을 보여줍니다. 또한 쿼리 가중치 행렬, ​​프로젝션 레이어, 다중 헤드 주의 모듈 사이의 기타 선형 레이어 및 출력 레이어에서 LoRA를 활성화할 수 있습니다.

대형 모델이 전체적인 미세 조정을 감당할 수 없다는 것이 아니라 LoRA가 더 비용 효율적이고 튜토리얼이 준비되어 있다는 것입니다.

이러한 추가 레이어에 LoRA를 추가하면 7B의 Llama 2 모델에 대해 훈련 가능한 매개변수 수가 4,194,304에서 20,277,248로 5배 증가합니다. 더 많은 레이어에 LoRA를 적용하면 모델 성능이 크게 향상될 수 있지만 더 많은 메모리 공간이 필요합니다.

또한 다음 두 가지 설정만 살펴봤습니다. (1) 쿼리 및 가중치 행렬만 활성화된 LoRA, (2) 모든 레이어가 활성화된 LoRA, 더 많은 레이어와 조합하여 LoRA를 사용하면 어떤 효과가 나올까요? 추가 연구. 투영 계층에서 LoRA를 사용하는 것이 훈련 결과에 유익한지 알 수 있다면 모델을 더 잘 최적화하고 성능을 향상시킬 수 있습니다.

대형 모델이 전체적인 미세 조정을 감당할 수 없다는 것이 아니라 LoRA가 더 비용 효율적이고 튜토리얼이 준비되어 있다는 것입니다.

균형 LoRA 하이퍼파라미터: R 및 Alpha

LoRA를 제안한 논문에서 언급했듯이 LoRA는 추가적인 스케일링 인자를 도입합니다. 이 계수는 순방향 전파 동안 사전 훈련에 LoRA 가중치를 적용하는 데 사용됩니다. 확장에는 앞서 설명한 순위 매개변수 r과 다음과 같이 적용되는 또 다른 하이퍼 매개변수 α(알파)가 포함됩니다.

대형 모델이 전체적인 미세 조정을 감당할 수 없다는 것이 아니라 LoRA가 더 비용 효율적이고 튜토리얼이 준비되어 있다는 것입니다.

위 이미지의 공식에서 볼 수 있듯이 LoRA 가중치의 값이 클수록 영향이 더 큽니다.

이전 실험에서는 사용한 매개변수가 r=8, alpha=16이어서 2배 확장이 되었습니다. LoRA를 사용하여 대형 모델의 무게를 줄일 때 알파를 r의 두 배로 설정하는 것이 일반적인 경험 법칙입니다. 하지만 이 규칙이 더 큰 r 값에도 적용되는지 궁금합니다.

대형 모델이 전체적인 미세 조정을 감당할 수 없다는 것이 아니라 LoRA가 더 비용 효율적이고 튜토리얼이 준비되어 있다는 것입니다.

r=32, r=64, r=128 및 r=512도 시도했지만 명확성을 위해 이 프로세스를 생략했지만 r=256이 가장 잘 작동했습니다. 실제로 alpha=2r을 선택하면 최적의 결과가 제공됩니다.

단일 GPU에서 7B 매개변수 모델 학습

LoRA를 사용하면 단일 GPU에서 7B 매개변수 규모로 대규모 언어 모델을 미세 조정할 수 있습니다. 이 특별한 경우, AdamW 최적화 프로그램을 사용하여 17.86GB(50,000개 훈련 예제)의 데이터를 처리하는 데 QLoRA에 대한 최상의 설정(r=256, alpha=512)(여기서는 Alpaca 데이터 세트)을 사용하는 A100에서 약 3시간이 걸렸습니다.

대형 모델이 전체적인 미세 조정을 감당할 수 없다는 것이 아니라 LoRA가 더 비용 효율적이고 튜토리얼이 준비되어 있다는 것입니다.

이 글의 나머지 부분에서는 여러분이 가질 수 있는 다른 질문에 답변해 드리겠습니다.

10개의 질문

Q1: 데이터 세트는 얼마나 중요합니까?

데이터세트는 매우 중요합니다. 저는 50,000개의 훈련 예제와 함께 Alpaca 데이터 세트를 사용하고 있습니다. 알파카가 워낙 인기가 많아서 선택했어요. 이 글은 이미 내용이 매우 길기 때문에 더 많은 데이터 세트에 대한 테스트 결과는 이 글에서 다루지 않겠습니다.

Alpaca는 오늘날의 기준으로는 다소 구식일 수 있는 합성 데이터 세트입니다. 데이터 품질이 중요합니다. 예를 들어, 지난 6월에 저는 단지 천 개의 사례로 구성된 선별된 데이터세트인 LIMA 데이터세트에 대해 논의하는 게시물을 썼습니다.

기사 링크: https://magazine.sebastianraschka.com/p/ahead-of-ai-9-llm-tuning-and-dataset

LIMA를 제안하는 논문 제목은 다음과 같습니다. 정렬의 경우 LIMA가 Alpaca보다 데이터가 적지만 LIMA를 기반으로 미세 조정된 65B Llama 모델이 Alpaca의 결과보다 좋습니다. 동일한 구성(r=256, alpha=512)을 사용하여 LIMA에서 50배의 데이터가 있는 Alpaca와 비슷한 모델 성능을 얻었습니다.

Q2: LoRA가 도메인 적응에 적합한가요?

저는 아직 이 질문에 대한 명확한 답을 가지고 있지 않습니다. 경험상 지식은 일반적으로 사전 훈련 데이터 세트에서 추출됩니다. 일반적으로 언어 모델은 일반적으로 사전 훈련 데이터 세트에서 지식을 흡수하며 지침 미세 조정의 역할은 주로 LLM이 지침을 더 잘 따르도록 돕는 것입니다.

컴퓨팅 성능은 대규모 언어 모델의 학습을 제한하는 핵심 요소이므로 LoRA를 사용하여 특정 분야의 전용 데이터 세트에 대해 사전 학습된 기존 LLM을 추가로 사전 학습할 수도 있습니다.

또한 내 실험에 두 가지 산술 벤치마크가 포함되었다는 점도 주목할 만합니다. 두 벤치마크 모두에서 LoRA로 미세 조정된 모델은 사전 훈련된 기본 모델보다 성능이 훨씬 나빴습니다. 나는 이것이 알파카 데이터 세트에 해당 산술 예제가 부족하지 않아 모델이 산술 지식을 "잊게"하기 때문이라고 추측합니다. 모델이 산술 지식을 "잊었는지", 아니면 해당 명령에 대한 응답을 중단했는지 확인하려면 추가 연구가 필요합니다. 그러나 여기서 한 가지 결론을 내릴 수 있습니다. "LLM을 미세 조정할 때 우리가 관심을 갖는 각 작업에 대한 예제가 데이터 세트에 포함되어 있는 것이 좋습니다."

Q3: 최적의 r을 결정하는 방법 값?

이 문제에 대해서는 아직 더 나은 해결책이 없습니다. 최적의 r 값을 결정하려면 각 LLM 및 각 데이터 세트의 특정 상황을 기반으로 특정 문제에 대한 구체적인 분석이 필요합니다. r 값이 너무 크면 과적합이 발생하고, r 값이 너무 작으면 데이터 세트의 다양한 작업을 포착하지 못할 수 있다고 추측합니다. 데이터 세트에 작업 유형이 많을수록 필요한 r 값이 더 커질 것으로 생각됩니다. 예를 들어, 기본적인 두 자리 산술 연산을 수행하는 데만 모델이 필요한 경우 작은 r 값이면 충분할 수 있습니다. 그러나 이것은 단지 나의 가설일 뿐이며 검증하려면 추가 연구가 필요합니다.

Q4: 모든 레이어에 대해 LoRA를 활성화해야 하나요?

두 가지 설정만 탐색했습니다. (1) 쿼리 및 가중치 행렬만 활성화된 LoRA와 (2) 모든 레이어가 활성화된 LoRA입니다. 더 많은 레이어와 조합하여 LoRA를 사용하는 효과는 추가 연구할 가치가 있습니다. 투영 계층에서 LoRA를 사용하는 것이 훈련 결과에 유익한지 알 수 있다면 모델을 더 잘 최적화하고 성능을 향상시킬 수 있습니다.

다양한 설정(lora_query, lora_key, lora_value, lora_projection, lora_mlp, lora_head)을 고려하면 탐색할 조합이 64개 있습니다.

Q5: 과적합을 방지하는 방법은 무엇인가요?

일반적으로 r이 클수록 과적합으로 이어질 가능성이 더 높습니다. r이 훈련 가능한 매개변수의 수를 결정하기 때문입니다. 모델이 과적합된 경우 먼저 r 값을 낮추거나 데이터 세트 크기를 늘리는 것을 고려하십시오. 또한 AdamW 또는 SGD 최적화 프로그램의 가중치 감쇠율을 높이거나 LoRA 레이어의 드롭아웃 값을 늘려볼 수 있습니다.

실험에서 LoRA의 드롭아웃 매개변수를 탐색하지 않았습니다(고정된 드롭아웃 비율 0.05를 사용했습니다). LoRA의 드롭아웃 매개변수도 연구할 가치가 있는 질문입니다.

Q6: 선택할 수 있는 다른 최적화 프로그램이 있나요?

올해 5월에 출시된 Sophia는 언어 모델 사전 학습을 위한 확장 가능한 확률적 2차 최적화 프로그램입니다.다음 논문: "Sophia: A Scalable Stochastic Second-order Optimizer for Language Model Pre-training"에 따르면, Sophia는 Adam에 비해 두 배 더 빠르며 더 나은 성능을 달성할 수 있습니다. 간단히 말해서 Sophia는 Adam과 마찬가지로 그래디언트 분산이 아닌 그래디언트 곡률을 통해 정규화를 구현합니다.

페이퍼 링크: https://arxiv.org/abs/2305.14342

Q7: 메모리 사용량에 영향을 미치는 다른 요인이 있나요?

정밀도 및 양자화 설정, 모델 크기, 배치 크기 및 학습 가능한 LoRA 매개변수 수 외에도 데이터 세트는 메모리 사용량에도 영향을 미칩니다.

Llama 2의 블록 크기는 4048개 토큰입니다. 즉, Llama는 한 번에 4048개의 토큰이 포함된 시퀀스를 처리할 수 있다는 의미입니다. 후속 토큰에 마스크를 추가하면 훈련 시퀀스가 ​​더 짧아져 많은 메모리를 절약할 수 있습니다. 예를 들어, Alpaca 데이터 세트는 상대적으로 작으며 가장 긴 시퀀스 길이는 1304 토큰입니다.

2048 토큰의 가장 긴 시퀀스 길이를 가진 다른 데이터세트를 사용하려고 하면 메모리 사용량이 17.86GB에서 26.96GB로 늘어납니다.

Q8: Full Fine-tuning과 RLHF에 비해 LoRA의 장점은 무엇인가요?

RLHF는 실험해보진 않았지만 풀트림을 시도해봤습니다. 전체 미세 조정에는 최소 2개의 GPU가 필요하고 각각 36.66GB를 차지하며 완료하는 데 3.5시간이 걸렸습니다. 그러나 잘못된 기본 테스트 결과는 과적합 또는 최적이 아닌 매개변수로 인해 발생할 수 있습니다.

Q9: LoRA의 가중치를 합칠 수 있나요?

답은 '예'입니다. 훈련 중에는 LoRA 가중치와 사전 훈련된 가중치를 분리하고 각 순방향 패스에서 결합합니다.

실제 세계에는 여러 LoRA 가중치 세트가 있는 애플리케이션이 있고 각 가중치 세트가 애플리케이션 사용자에 해당한다고 가정하면 디스크 공간을 절약하기 위해 이러한 가중치를 별도로 저장하는 것이 합리적입니다. 또한 사전 훈련된 가중치와 LoRA 가중치는 훈련 후에 병합되어 단일 모델을 만들 수 있습니다. 이렇게 하면 모든 순방향 패스에 LoRA 가중치를 적용할 필요가 없습니다.
weight += (lora_B @ lora_A) * scaling
로그인 후 복사

위에 표시된 방법을 사용하여 가중치를 업데이트하고 결합된 가중치를 저장할 수 있습니다.

마찬가지로 계속해서 많은 LoRA 가중치 세트를 추가할 수 있습니다.
weight += (lora_B_set1 @ lora_A_set1) * scaling_set1weight += (lora_B_set2 @ lora_A_set2) * scaling_set2weight += (lora_B_set3 @ lora_A_set3) * scaling_set3...
로그인 후 복사

이 방법을 평가하기 위해 실험을 한 것은 아니지만 Lit-GPT에서 제공하는 scripts/merge_lora.py 스크립트를 통해입니다. 이미 가능합니다.

스크립트 링크: https://github.com/Lightning-AI/lit-gpt/blob/main/scripts/merge_lora.py

Q10: 레이어별 성능은 어떻습니까? 레이어 최적 순위 적응?

간단함을 위해 심층 신경망에서는 일반적으로 각 레이어에 대해 동일한 학습 속도를 설정합니다. 학습률은 우리가 최적화해야 하는 하이퍼파라미터이며, 더 나아가 각 레이어에 대해 서로 다른 학습률을 선택할 수 있습니다(PyTorch에서는 이는 그리 복잡한 일이 아닙니다).

그러나 이 접근 방식은 추가 비용을 추가하고 심층 신경망에서 조정할 수 있는 다른 많은 매개 변수가 있기 때문에 실제로는 거의 수행되지 않습니다. 서로 다른 레이어에 대해 서로 다른 학습률을 선택하는 것과 유사하게, 서로 다른 레이어에 대해 서로 다른 LoRA r 값을 선택할 수도 있습니다. 아직 시도하지는 않았지만 이 방법을 자세히 설명하는 문서인 "LLM Optimization: Layer-wise Optimal Rank Adaptation (LORA)"가 있습니다. 이론적으로 이 접근 방식은 초매개변수 최적화를 위한 많은 범위를 제공하므로 유망해 보입니다.

논문 링크: https://medium.com/@tom_21755/llm-optimization-layer-wise-optimal-rank-adaptation-lora-1444dfbc8e6a

원본 링크: https:// magazine.sebastianraschka.com/p/practical-tips-for-finetuning-llms?continueFlag=0c2e38ff6893fba31f1492d815bf928b

위 내용은 대형 모델이 전체적인 미세 조정을 감당할 수 없다는 것이 아니라 LoRA가 더 비용 효율적이고 튜토리얼이 준비되어 있다는 것입니다.의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.

핫 AI 도구

Undresser.AI Undress

Undresser.AI Undress

사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover

AI Clothes Remover

사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool

Undress AI Tool

무료로 이미지를 벗다

Clothoff.io

Clothoff.io

AI 옷 제거제

AI Hentai Generator

AI Hentai Generator

AI Hentai를 무료로 생성하십시오.

인기 기사

R.E.P.O. 에너지 결정과 그들이하는 일 (노란색 크리스탈)
3 몇 주 전 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. 최고의 그래픽 설정
3 몇 주 전 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. 아무도들을 수없는 경우 오디오를 수정하는 방법
3 몇 주 전 By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25 : Myrise에서 모든 것을 잠금 해제하는 방법
3 몇 주 전 By 尊渡假赌尊渡假赌尊渡假赌

뜨거운 도구

메모장++7.3.1

메모장++7.3.1

사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전

SublimeText3 중국어 버전

중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기

스튜디오 13.0.1 보내기

강력한 PHP 통합 개발 환경

드림위버 CS6

드림위버 CS6

시각적 웹 개발 도구

SublimeText3 Mac 버전

SublimeText3 Mac 버전

신 수준의 코드 편집 소프트웨어(SublimeText3)

'Defect Spectrum'은 기존 결함 감지의 경계를 뛰어넘어 초고정밀 및 풍부한 의미론적 산업 결함 감지를 최초로 달성합니다. 'Defect Spectrum'은 기존 결함 감지의 경계를 뛰어넘어 초고정밀 및 풍부한 의미론적 산업 결함 감지를 최초로 달성합니다. Jul 26, 2024 pm 05:38 PM

현대 제조업에서 정확한 결함 검출은 제품 품질을 보장하는 열쇠일 뿐만 아니라 생산 효율성을 향상시키는 핵심이기도 합니다. 그러나 기존 결함 감지 데이터세트는 실제 적용에 필요한 정확성과 의미론적 풍부함이 부족한 경우가 많아 모델이 특정 결함 카테고리나 위치를 식별할 수 없게 됩니다. 이 문제를 해결하기 위해 광저우 과학기술대학교와 Simou Technology로 구성된 최고 연구팀은 산업 결함에 대한 상세하고 의미론적으로 풍부한 대규모 주석을 제공하는 "DefectSpectrum" 데이터 세트를 혁신적으로 개발했습니다. 표 1에서 볼 수 있듯이, 다른 산업 데이터 세트와 비교하여 "DefectSpectrum" 데이터 세트는 가장 많은 결함 주석(5438개의 결함 샘플)과 가장 상세한 결함 분류(125개의 결함 카테고리)를 제공합니다.

NVIDIA 대화 모델 ChatQA는 버전 2.0으로 발전했으며 컨텍스트 길이는 128K로 언급되었습니다. NVIDIA 대화 모델 ChatQA는 버전 2.0으로 발전했으며 컨텍스트 길이는 128K로 언급되었습니다. Jul 26, 2024 am 08:40 AM

오픈 LLM 커뮤니티는 백개의 꽃이 피어 경쟁하는 시대입니다. Llama-3-70B-Instruct, QWen2-72B-Instruct, Nemotron-4-340B-Instruct, Mixtral-8x22BInstruct-v0.1 등을 보실 수 있습니다. 훌륭한 연기자. 그러나 GPT-4-Turbo로 대표되는 독점 대형 모델과 비교하면 개방형 모델은 여전히 ​​많은 분야에서 상당한 격차를 보이고 있습니다. 일반 모델 외에도 프로그래밍 및 수학을 위한 DeepSeek-Coder-V2, 시각 언어 작업을 위한 InternVL과 같이 핵심 영역을 전문으로 하는 일부 개방형 모델이 개발되었습니다.

Google AI가 IMO 수학 올림피아드 은메달을 획득하고 수학적 추론 모델 AlphaProof가 출시되었으며 강화 학습이 다시 시작되었습니다. Google AI가 IMO 수학 올림피아드 은메달을 획득하고 수학적 추론 모델 AlphaProof가 출시되었으며 강화 학습이 다시 시작되었습니다. Jul 26, 2024 pm 02:40 PM

AI의 경우 수학 올림피아드는 더 이상 문제가 되지 않습니다. 목요일에 Google DeepMind의 인공 지능은 AI를 사용하여 올해 국제 수학 올림피아드 IMO의 실제 문제를 해결하는 위업을 달성했으며 금메달 획득에 한 걸음 더 다가섰습니다. 지난 주 막 끝난 IMO 대회에는 대수학, 조합론, 기하학, 수론 등 6개 문제가 출제됐다. 구글이 제안한 하이브리드 AI 시스템은 4문제를 맞혀 28점을 얻어 은메달 수준에 이르렀다. 이달 초 UCLA 종신 교수인 테렌스 타오(Terence Tao)가 상금 100만 달러의 AI 수학 올림피아드(AIMO Progress Award)를 추진했는데, 예상외로 7월 이전에 AI 문제 해결 수준이 이 수준으로 향상됐다. IMO에서 동시에 질문을 해보세요. 가장 정확하게 하기 어려운 것이 IMO인데, 역사도 가장 길고, 규모도 가장 크며, 가장 부정적이기도 합니다.

자연의 관점: 의학 분야의 인공지능 테스트는 혼란에 빠졌습니다. 어떻게 해야 할까요? 자연의 관점: 의학 분야의 인공지능 테스트는 혼란에 빠졌습니다. 어떻게 해야 할까요? Aug 22, 2024 pm 04:37 PM

Editor | ScienceAI 제한된 임상 데이터를 기반으로 수백 개의 의료 알고리즘이 승인되었습니다. 과학자들은 누가 도구를 테스트해야 하며 최선의 방법은 무엇인지에 대해 토론하고 있습니다. 데빈 싱(Devin Singh)은 응급실에서 오랜 시간 치료를 기다리던 중 심장마비를 겪는 소아환자를 목격했고, 이를 계기로 대기시간을 단축하기 위해 AI 적용을 모색하게 됐다. SickKids 응급실의 분류 데이터를 사용하여 Singh과 동료들은 잠재적인 진단을 제공하고 테스트를 권장하는 일련의 AI 모델을 구축했습니다. 한 연구에 따르면 이러한 모델은 의사 방문 속도를 22.3% 단축하여 의료 검사가 필요한 환자당 결과 처리 속도를 거의 3시간 단축할 수 있는 것으로 나타났습니다. 그러나 인공지능 알고리즘의 연구 성공은 이를 입증할 뿐이다.

수백만 개의 결정 데이터로 훈련하여 결정학적 위상 문제를 해결하는 딥러닝 방법인 PhAI가 Science에 게재되었습니다. 수백만 개의 결정 데이터로 훈련하여 결정학적 위상 문제를 해결하는 딥러닝 방법인 PhAI가 Science에 게재되었습니다. Aug 08, 2024 pm 09:22 PM

Editor |KX 오늘날까지 단순한 금속부터 큰 막 단백질에 이르기까지 결정학을 통해 결정되는 구조적 세부 사항과 정밀도는 다른 어떤 방법과도 비교할 수 없습니다. 그러나 가장 큰 과제인 소위 위상 문제는 실험적으로 결정된 진폭에서 위상 정보를 검색하는 것입니다. 덴마크 코펜하겐 대학의 연구원들은 결정 위상 문제를 해결하기 위해 PhAI라는 딥러닝 방법을 개발했습니다. 수백만 개의 인공 결정 구조와 그에 상응하는 합성 회절 데이터를 사용하여 훈련된 딥러닝 신경망은 정확한 전자 밀도 맵을 생성할 수 있습니다. 연구는 이 딥러닝 기반의 순순한 구조 솔루션 방법이 단 2옹스트롬의 해상도로 위상 문제를 해결할 수 있음을 보여줍니다. 이는 원자 해상도에서 사용할 수 있는 데이터의 10~20%에 해당하는 반면, 기존의 순순한 계산은

대형 모델에 대한 새로운 과학적이고 복잡한 질문 답변 벤치마크 및 평가 시스템을 제공하기 위해 UNSW, Argonne, University of Chicago 및 기타 기관이 공동으로 SciQAG 프레임워크를 출시했습니다. 대형 모델에 대한 새로운 과학적이고 복잡한 질문 답변 벤치마크 및 평가 시스템을 제공하기 위해 UNSW, Argonne, University of Chicago 및 기타 기관이 공동으로 SciQAG 프레임워크를 출시했습니다. Jul 25, 2024 am 06:42 AM

편집자 |ScienceAI 질문 응답(QA) 데이터 세트는 자연어 처리(NLP) 연구를 촉진하는 데 중요한 역할을 합니다. 고품질 QA 데이터 세트는 모델을 미세 조정하는 데 사용될 수 있을 뿐만 아니라 LLM(대형 언어 모델)의 기능, 특히 과학적 지식을 이해하고 추론하는 능력을 효과적으로 평가하는 데에도 사용할 수 있습니다. 현재 의학, 화학, 생물학 및 기타 분야를 포괄하는 과학적인 QA 데이터 세트가 많이 있지만 이러한 데이터 세트에는 여전히 몇 가지 단점이 있습니다. 첫째, 데이터 형식이 비교적 단순하고 대부분이 객관식 질문이므로 평가하기 쉽지만 모델의 답변 선택 범위가 제한되고 모델의 과학적 질문 답변 능력을 완전히 테스트할 수 없습니다. 이에 비해 개방형 Q&A는

최고의 분자를 자동으로 식별하고 합성 비용을 절감합니다. MIT는 분자 설계 의사결정 알고리즘 프레임워크를 개발합니다. 최고의 분자를 자동으로 식별하고 합성 비용을 절감합니다. MIT는 분자 설계 의사결정 알고리즘 프레임워크를 개발합니다. Jun 22, 2024 am 06:43 AM

편집자 | Ziluo AI의 신약 개발 간소화에 대한 활용이 폭발적으로 증가하고 있습니다. 신약 개발에 필요한 특성을 가질 수 있는 수십억 개의 후보 분자를 스크리닝합니다. 재료 가격부터 오류 위험까지 고려해야 할 변수가 너무 많아 과학자들이 AI를 사용하더라도 최고의 후보 분자를 합성하는 데 드는 비용을 평가하는 것은 쉬운 일이 아닙니다. 여기서 MIT 연구진은 최고의 분자 후보를 자동으로 식별하여 합성 비용을 최소화하는 동시에 후보가 원하는 특성을 가질 가능성을 최대화하기 위해 정량적 의사결정 알고리즘 프레임워크인 SPARROW를 개발했습니다. 알고리즘은 또한 이러한 분자를 합성하는 데 필요한 재료와 실험 단계를 결정했습니다. SPARROW는 여러 후보 분자를 사용할 수 있는 경우가 많기 때문에 한 번에 분자 배치를 합성하는 비용을 고려합니다.

SOTA 성능, 샤먼 다중 모드 단백질-리간드 친화성 예측 AI 방법, 최초로 분자 표면 정보 결합 SOTA 성능, 샤먼 다중 모드 단백질-리간드 친화성 예측 AI 방법, 최초로 분자 표면 정보 결합 Jul 17, 2024 pm 06:37 PM

Editor | KX 약물 연구 및 개발 분야에서 단백질과 리간드의 결합 친화도를 정확하고 효과적으로 예측하는 것은 약물 스크리닝 및 최적화에 매우 중요합니다. 그러나 현재 연구에서는 단백질-리간드 상호작용에서 분자 표면 정보의 중요한 역할을 고려하지 않습니다. 이를 기반으로 Xiamen University의 연구자들은 처음으로 단백질 표면, 3D 구조 및 서열에 대한 정보를 결합하고 교차 주의 메커니즘을 사용하여 다양한 양식 특징을 비교하는 새로운 다중 모드 특징 추출(MFE) 프레임워크를 제안했습니다. 조정. 실험 결과는 이 방법이 단백질-리간드 결합 친화도를 예측하는 데 있어 최첨단 성능을 달성한다는 것을 보여줍니다. 또한 절제 연구는 이 프레임워크 내에서 단백질 표면 정보와 다중 모드 기능 정렬의 효율성과 필요성을 보여줍니다. 관련 연구는 "S"로 시작된다

See all articles