>기술 주변기기 >일체 포함 >ICML 2024 높은 점수를 받은 논문 | 0차 최적화 프로그램으로 대형 모델을 미세 조정하고 메모리를 대폭 줄였습니다.

ICML 2024 높은 점수를 받은 논문 | 0차 최적화 프로그램으로 대형 모델을 미세 조정하고 메모리를 대폭 줄였습니다.

王林
王林원래의
2024-07-16 03:17:30992검색
ICML 2024高分论文 | 零阶优化器微调大模型,大幅降低内存
AIxiv 칼럼은 본 사이트에서 학술 및 기술 콘텐츠를 게재하는 칼럼입니다. 지난 몇 년 동안 이 사이트의 AIxiv 칼럼에는 전 세계 주요 대학 및 기업의 최고 연구실을 대상으로 한 2,000개 이상의 보고서가 접수되어 학술 교류 및 보급을 효과적으로 촉진하고 있습니다. 공유하고 싶은 훌륭한 작품이 있다면 자유롭게 기여하거나 보고를 위해 연락주시기 바랍니다. 제출 이메일: liyazhou@jiqizhixin.com; zhaoyunfeng@jiqizhixin.com

이 기사의 공동 제1저자 소개: Zhang Yihua: 미시간 주립 대학교 컴퓨터 과학과 3년차 박사 과정 학생 Sijia Liu 교수 밑에서 그녀의 주요 연구 방향은 대형 모델 보안, 개인 정보 보호 및 효율성 문제입니다. Li Pingzhi: 그는 중국 과학 기술 대학에서 학사 학위를 받았습니다. 그는 2024년 가을에 Chapel Hill에 있는 University of North Carolina에 박사 과정으로 입학하여 Chen Tianlong 교수 밑에서 공부할 예정입니다. 효율적인 머신러닝과 AI4Science 분야에 집중하세요. 홍준위안(Hong Junyuan): 오스틴에 있는 텍사스대학교 박사후 연구원, 왕장양(Zhangyang Wang) 교수의 멘토링. 미시간 주립대학교에서 Jiayu Zhou 교수의 지도 하에 박사 학위를 취득했습니다. 현재 주요 연구 방향은 신뢰할 수 있는 대규모 언어 모델과 인공 지능의 의료 응용입니다. Li Jiaxiang: 미네소타 대학교 박사후 연구원. 현재 Hong Mingyi 교수와 Zhang Shuzhong 교수의 지도 하에 수치 최적화 이론, 기계 학습 이론 및 대규모 기계 학습 최적화 문제에 대한 연구를 진행하고 있습니다.

오픈소스 LLM(대형 언어 모델)이 한창입니다. 이를 다양한 다운스트림 작업에 적용하기 위해 가장 널리 사용되는 기본 방법은 미세 조정입니다. 모델 미세 조정에서는 자동 미분 기술(SGD, Adam 등)을 기반으로 한 1차 최적화 장치(SGD, Adam 등)가 주류를 이루고 있지만, 오늘날 모델이 점점 대형화되면서 비디오 메모리에 대한 부담도 커지고 있습니다. . 따라서 단일 카드가 미세 조정 요구 사항을 충족할 수 있도록 미세 조정 중에 그래픽 메모리를 효율적으로 줄이는 방법이 뜨거운 연구 문제가 되었습니다. 역전파는 이러한 1차 최적화 프로그램의 초석이자 신경망의 각 가중치에 대한 기울기를 계산하는 데 사용되지만, 거대한 계산 그래프를 저장하는 데 따른 오버헤드도 크다는 점은 주목할 가치가 있습니다. 특히 모델 시대가 부각된다. 동시에 0차 최적화는 계산 그래프를 전혀 저장할 필요가 없으며 대신 유한 차분을 사용하여 네트워크 기울기를 근사화함으로써 역전파(BP)를 완전히 방지하여 신경망을 크게 줄입니다. 네트워크 업데이트의 오버헤드.

1차 최적화 프로그램의 확률적 경사하강법의 다양한 변형과 ​​유사하게, 0차 최적화 프로그램도 이전에 탐색되지 않았던 다양하고 향상된 알고리즘을 가지고 있습니다. 최근 미시간 주립대학교, 채플힐 노스캐롤라이나 대학교, 오스틴 텍사스 대학교, 미네소타 트윈 시티 대학교, IBM 연구 센터, 프린스턴 대학교, 알리바바 다모 아카데미의 많은 연구자들이 공동으로 종합 평가(벤치마크) 기사를 발표했습니다. 메모리 효율적인 LLM 미세 조정을 위한 0차 최적화 재검토: 벤치마크. 이 기사에서는 역전파가 필요하지 않은 6가지 유형의 옵티마이저(BP-free), 5가지 유형의 대형 모델, 3가지 복잡성 수준의 작업, 4가지 유형의 미세 조정 방식 및 0차 옵티마이저를 향상시키는 3가지 새로운 알고리즘을 다룹니다. 현재 관련 논문은 ICML 2024에서 높은 점수로 접수되었으며, 코드는 오픈 소스로 공개되었습니다.

ICML 2024高分论文 | 零阶优化器微调大模型,大幅降低内存

ICML 2024高分论文 | 零阶优化器微调大模型,大幅降低内存

  • 문서 주소: https://arxiv.org/abs/2402.11592
  • 코드 주소: https://github.com/ZO-Bench/ZO-LLM
  • 영차 최적화 강의 노트 주소(AAAI 2024 튜토리얼): https://sites.google.com/view/zo-tutorial-aaai-2024/

영차 최적화 프로그램이란 무엇인가요? 왜 그렇게 중요합니까?

Zeroth-Order Optimization은 기울기 추정을 위해 신경망의 출력에만 의존하며 역전파를 전혀 계산할 필요가 없고 내부 훈련 소비가 거의 필요하지 않은 것으로 유명합니다. 0차 최적화 분야에는 다양한 기울기 추정 방법이 있지만 이 기사에서는 특히 RGE(Random Gradient Estimator)를 기반으로 하는 일련의 알고리즘을 참조합니다. 간단히 말하면, 유한 차이는 가우스 분포에서 추출된 무작위 섭동으로 계산되며 기울기의 대략적인 추정치로 사용됩니다. RGE 수학 공식은 다음과 같습니다.

ICML 2024高分论文 | 零阶优化器微调大模型,大幅降低内存

이전에 영차 최적화는 적대적 샘플 생성 및 방어, 블랙박스 모델 해석, 강화 학습 및 자동 기계 학습과 같은 기계 학습 문제에 널리 사용되어 자세한 알고리즘 및 응용 소개를 참조하세요. . 대형 모델 분야에서 MeZO[2]는 대형 모델의 미세 조정으로 ZO-SGD(0차 확률적 경사하강법) 사용을 처음 제안하고 0차 최적화 도구의 무한한 잠재력을 보여주었습니다. 동시에 ZO-SGD는 가장 간단하고 기본적인 BP 없는 최적화 프로그램입니다. 더 많은 고급 변형이 [3] 대규모 모델 미세 조정 분야에서 더 많은 놀라움을 가져올 수 있는지 여부는 긴급 연구가 필요한 주제입니다. 이 기사에서는 대규모 모델 미세 조정 작업에서 역전파(BP 없음)가 없는 다음 최적화 알고리즘의 성능, 효율성 및 호환성을 체계적으로 평가합니다. 목적은 커뮤니티에 다양한 0차 최적화 도구의 폭을 보여주는 것입니다. 대규모 모델 작업:

  • ZO-SGD: 0차 확률적 경사하강법 [4]
  • ZO-SGD-Sign: 부호 기반 0차 확률적 경사하강법 [5]
  • ZO-SGD-MMT: 운동량을 사용한 0차 확률적 경사하강법 [6]
  • ZO-SGD-Cons: 보수적 경사 업데이트를 사용한 0차 확률적 경사하강법 [7]
  • ZO-Adam: Zero-order Adam 옵티마이저 [8]

이 연구에는 무작위 방향 벡터를 따라 방향 도함수를 기반으로 기울기를 편견 없이 추정하는 Forward-Grad [9] 방법도 포함됩니다. Forward-Grad는 기울기 역전파를 직접 사용하지 않지만 여전히 자동 미분 알고리즘을 사용하므로 1차 BP가 없는 알고리즘이라는 점은 주목할 가치가 있습니다.

요약하자면, 이 기사의 평가에는 위의 5가지 0차 최적화 도구와 Forward-Grad 방법이 포함되어 있으며, 가장 일반적으로 사용되는 1차 최적화 도구인 FO-SGD와 FO-Adam을 비교합니다. 특정 미세 조정 형태 측면에서 평가는 5개의 LLM 아키텍처(RoBERTa, OPT, LLaMA, Vicuna, Mistral), 복잡도가 다른 3개의 작업(SST2, COPA, WinoGrande) 및 4개의 미세 조정 솔루션(full-tuning)을 포괄적으로 포괄합니다. 튜닝, LoRA, 프롬프트 튜닝, 프리픽스 튜닝).

대형 모델 미세 조정 정확도 평가

저자는 다운스트림 작업에서 대형 모델을 미세 조정하기 위해 0차 최적화 프로그램을 효과적으로 사용하려면 입력 템플릿을 사용해야 한다고 지적했습니다. 합리적으로 다운스트림 작업을 사전 훈련된 작업에 맞출 수 있습니다. 예를 들어, SST2의 경우 "SENTENCE. It was [terrible|great]." 템플릿을 사용하면 ZO-SGD에서 10% 성능 향상을 가져올 수 있습니다. 그러나 FO-SGD와 같은 1차 최적화 프로그램의 경우 템플릿 사용 여부에 관계없이 성능 차이가 크지 않아 0차 최적화 프로그램의 고유성이 강조됩니다.

SST2 보다 기본적인 작업으로서 실험 결과는 다음과 같은 결론을 뒷받침할 수 있습니다.

  • ZO-Adam은 가장 효과적인 0차 최적화 프로그램인 것 같습니다. 8개 중 4개의 미세 조정 설정 에서 최고의 성능을 발휘합니다.
  • Forward-grad는 경쟁력이 있지만 특히 전체 미세 조정에서 이전에는 간과되었던 방법입니다.
  • ZO-SGD-Cons 및 ZO-SGD-MMT도 강력한 성능을 보여주는 반면, 가장 간단한 0차 최적화 도구인 ZO-SGD-Sign은 종종 가장 약한 방법입니다.

ICML 2024高分论文 | 零阶优化器微调大模型,大幅降低内存

또한 연구에서는 더 큰 모델 OPT-13B를 사용하여 더 복잡하고 어려운 작업(COPA 및 WinoGrande)에 대한 실험을 수행하고 다음과 같은 결론에 도달했습니다.

  • 더 복잡한 작업에서는 다양한 옵티마이저 간의 성능 차이가 더욱 증폭됩니다.
  • ZO-Adam과 ZO-SGD-MMT는 다양한 실험에서 매우 우수한 안정성을 보였는데, 이는 분산 감소 설계에 기인할 수 있습니다.
  • LoRA 미세 조정은 항상 0차 알고리즘에 대해 강력한 견고성을 보여 왔으며 다양한 실험 환경에서 안정적이고 신뢰할 수 있습니다.

ICML 2024高分论文 | 零阶优化器微调大模型,大幅降低内存

대형 모델 미세 조정 메모리 오버헤드에 대한 평가 및 자세한 설명

저자는 MultiRC 데이터 세트에서 OPT-13B 모델의 미세 조정을 예로 들어 메모리와 시간을 추가로 비교 분석했습니다. 다양한 0차 및 1차 최적화 프로그램의 비용. 다음 표에서 볼 수 있듯이, 첫째, 메모리 효율성 측면에서 ZO-SGD, ZO-SGD-Cons 및 ZO-SGD-Sign은 유사한 높은 메모리 효율성을 나타내며 대규모 언어 모델의 미세 조정에 A100 GPU 하나만 있으면 됩니다. . 이러한 0차 최적화 프로그램은 주로 0차 기울기 추정기 RGE의 활용에 의존하여 상대적으로 간단한 최적화 단계를 사용하므로 이는 놀라운 일이 아닙니다. 둘째, Forward-Grad는 메모리 효율성 측면에서 0차 최적화 방법이 1차 방법을 능가하는 전환점인 것으로 보입니다(예: ZO-Adam과 비교). 마지막으로 1차 방법과 비교하여 0차 최적화의 각 반복에 대한 실행 시간 비용은 약 41.9% 감소합니다(ZO-SGD 대 FO-SGD를 예로 사용).

ICML 2024高分论文 | 零阶优化器微调大模型,大幅降低内存

저자는 다양한 시퀀스 길이에서 ZO-SGD와 FO-SGD의 메모리 효율성을 추가로 비교했습니다. ZO-SGD의 최대 메모리 소비는 모델 매개변수 크기에 의해서만 결정되기 때문에 일관되게 유지되는 것을 볼 수 있습니다. 반면, 시퀀스 길이가 증가함에 따라 FO-SGD의 최대 메모리 소비는 먼저 변경되지 않고 그 다음에는 변경되지 않습니다. 증가하기 시작합니다. 따라서 긴 컨텍스트 길이 설정에서 ZO-SGD는 더 나은 메모리 효율성 이점을 나타냅니다. 구체적인 메모리 이론값과 실험값은 원문을 참고하시기 바랍니다.

ICML 2024高分论文 | 零阶优化器微调大模型,大幅降低内存

0차 최적화 기능을 향상하기 위한 세 가지 개선된 알고리즘

0차 최적화 기능은 LLM에 적용할 때 수렴 효율성이 제한되는데, 그 이유는 주로 기울기 추정의 큰 차이 때문입니다. 0차 최적화 기능을 더욱 향상시키기 위해 저자는 기울기 추정의 분산을 줄이는 관점에서 블록별 ZO 미세 조정, 0차 및 1차 하이브리드 미세 조정을 포함하는 세 가지 고급 알고리즘을 제안했습니다. 하이브리드 ZO 및 FO 미세 조정), 희소성을 도입하는 0차 기울기 추정(희소성 유도 ZO 기울기 추정).

Block-wise ZO 미세 조정 이 방법의 주요 시작점은 영차 최적화 프로그램이 기울기 추정 시 LLM의 매개변수 블록을 별도로 교란하는 경우 문제 크기를 줄여서 사용하는 것입니다. 각 기울기 추정의 분산을 고려하여 최적화 성능을 향상시킵니다. 이 방법의 장점은 모델 기울기를 더 정확하게 추정할 수 있다는 점이지만, 기울기 추정을 완료하는 데 필요한 순방향 전파 횟수가 증가합니다. 예를 들어 OPT-1.3B는 26개의 매개변수 블록(24개의 Transformers 레이어, 임베딩 레이어 및 LM 분류 헤드)으로 나눌 수 있으므로 0차 최적화 프로그램은 모델 기울기를 계산할 때마다 26개의 순방향 전달을 계산합니다. ZO-SGD와 ZO-SGD-Block을 공정하게 비교하기 위해 저자는 매번 전체 모델에 대해 매개변수 섭동을 수행하고 여러 섭동 후 기울기를 추정하는 또 다른 ZO-SGD 변형의 성능도 비교했습니다. 예를 들어 OPT-1.3B의 경우 26회) 비교 중 순방향 전파 수가 동일하도록 보장합니다. OPT-1.3B의 실험 결과는 ZO-SGD-Block이 두 개의 ZO-SGD를 크게 능가한다는 것을 보여줍니다.

ICML 2024高分论文 | 零阶优化器微调大模型,大幅降低内存

하이브리드 ZO 및 FO 미세 조정역전파(BP)는 깊은 신경망에서 얕은 신경망까지 순서대로 가중치 기울기를 계산합니다. 0차 최적화 프로그램은 기존 1차 최적화 프로그램보다 메모리 사용량 측면에서 훨씬 더 큰 이점을 가지므로 1차 최적화 프로그램의 성능이 더 좋은 경우가 많습니다. 따라서 0차 최적화 프로그램과 1차 최적화 프로그램의 조합을 사용하면 메모리 사용량과 성능 간의 균형을 이룰 수 있습니다. 특히, 더 깊은 네트워크의 경우 1차 최적화 프로그램을 사용하여 역전파를 통해 기울기를 정확하게 계산할 수 있으며, 얕은 네트워크의 경우 0차 최적화 프로그램을 사용하여 기울기 추정을 수행할 수 있습니다. 실험 결과 얕은 부분(예: OPT-1.3B의 첫 번째 8/24 레이어)에 0차 최적화 프로그램을 사용하고 나머지 깊은 부분에 1차 최적화 프로그램을 사용하면 비디오의 약 1/3을 절약할 수 있는 것으로 나타났습니다. 동시에 1차 최적화 프로그램을 완전히 사용하는 것과 동일한 성능 수준이 달성됩니다.

ICML 2024高分论文 | 零阶优化器微调大模型,大幅降低内存

희소 기울기를 사용하는 0차 최적화(그라디언트 가지치기가 포함된 ZO)1차 최적화기에서 기울기 가지치기는 일반적으로 훈련 프로세스 속도를 높이는 데 사용되는 반면, 0차 최적화기에서는 기울기 가지치기를 통해 도입된 희소 기울기가 다음과 같이 사용될 수 있습니다. 추가로 기울기 추정의 분산을 줄여 성능을 향상시킵니다. 본 논문에서는 각 계층의 희소율을 얻기 위해 0차 최적화 프로그램에서 진폭 기반 가지치기 전략을 적용한 후 이러한 희소율을 기반으로 임의의 희소 기울기 마스크(마스크)를 생성하고 확률적 기울기 추정에 적용하는 방법을 연구합니다. 방해가 됩니다. 실험 결과는 적당한 경사 희소성(약 20%)이 0차 최적화 프로그램의 성능을 어느 정도 향상시킬 수 있음을 보여줍니다.

ICML 2024高分论文 | 零阶优化器微调大模型,大幅降低内存

결론

이 문서에서는 미세 조정 대형 언어 모델에서 0차 최적화 프로그램의 효과적인 적용을 시연했습니다. 0차 최적화 방법은 손실 차이를 사용하여 기울기를 근사화함으로써 역전파 및 활성화 저장이 필요하지 않으므로 메모리 리소스가 크게 절약됩니다. 기존 연구의 범위를 확장하여 다양한 0차 최적화 방법, 작업 유형 및 평가 지표를 이번 평가에 포함하고 0차 최적화 기술에 대한 최초의 체계적인 벤치마크 연구를 수행했습니다. 우리의 연구는 이러한 방법이 정확성과 효율성 측면에서 어떻게 수행되는지 보여줄 뿐만 아니라 작업 정렬 및 전진 경사의 중요한 역할에 대한 통찰력도 제공합니다. 이러한 실험적 분석을 사용하여 우리는 0차 최적화를 기반으로 대규모 모델의 미세 조정을 더욱 향상시키기 위한 블록 최적화, 0차 및 1차 하이브리드 훈련, 그래디언트 희소화와 같은 기술을 제안합니다. 이러한 개선 사항은 메모리 효율성을 유지하면서 미세 조정 정확도를 향상시키도록 설계되었습니다.

우리는 이러한 발견과 기술을 적용하면 대형 모델 연구에 필요한 하드웨어 리소스 요구 사항을 크게 줄여 저사양 GPU에서 대형 모델의 미세 조정을 가능하게 하여 학술 연구를 더욱 촉진하고 실용적이고 실용적인 제품을 생산할 수 있다고 굳게 믿습니다. 업계에 실질적인 결과를 가져옵니다. 우리는 연구원과 기술 개발자가 연구 결과에 주의를 기울이고 ZO 최적화를 사용하여 더 많은 가능성을 탐색하도록 권장합니다. 향후 연구에서는 LLM 미세 조정에서 더 많은 잠재력을 발휘하기 위해 이 분야의 심층적인 문제를 계속해서 탐구할 것입니다.

자세한 정보와 리소스는 논문과 GitHub 저장소를 참조하세요.

참고 자료:
[1] Liu 외, "신호 처리 및 기계 학습의 0차 최적화 입문서." IEEE 신호 처리 매거진 37, no. 2020): 43-54.
[2] Malladi, et al., "Just Forward Passes를 사용한 미세 조정 언어 모델." NeurIPS' 2023.
[3] Liu, et al. al., "신호 처리 및 기계 학습의 0차 최적화 입문서." IEEE 신호 처리 매거진.
[4] Ghadimi 외, "확률적 1차 및 0차 방법 비볼록 확률론적 프로그래밍을 위한 것입니다."
[5] Liu 외, "Zeroth-Order Oracle을 통한 SGD 서명." ICLR' 2019.
[6] Huang 외, " 가속된 Zeroth - Mini에서 Minimax 최적화까지의 순서 및 1차 모멘텀 방법.” JMLR' 2022.
[7] Kim 외, “곡률 인식 파생물 없는 최적화.” , et al., "ZO-AdaMM: 블랙박스 최적화를 위한 0차 적응 모멘텀 방법."
[9] Baydin, et al., "역전파 없는 기울기."

위 내용은 ICML 2024 높은 점수를 받은 논문 | 0차 최적화 프로그램으로 대형 모델을 미세 조정하고 메모리를 대폭 줄였습니다.의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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