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에서 높은 점수로 접수되었으며, 코드는 오픈 소스로 공개되었습니다.
- 문서 주소: 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 수학 공식은 다음과 같습니다.
이전에 영차 최적화는 적대적 샘플 생성 및 방어, 블랙박스 모델 해석, 강화 학습 및 자동 기계 학습과 같은 기계 학습 문제에 널리 사용되어 자세한 알고리즘 및 응용 소개를 참조하세요. . 대형 모델 분야에서 MeZO[2]는 대형 모델의 미세 조정으로 ZO-SGD(0차 확률적 경사하강법) 사용을 처음 제안하고 0차 최적화 도구의 무한한 잠재력을 보여주었습니다. 동시에 ZO-SGD는 가장 간단하고 기본적인 BP 없는 최적화 프로그램입니다. 더 많은 고급 변형이 [3] 대규모 모델 미세 조정 분야에서 더 많은 놀라움을 가져올 수 있는지 여부는 긴급 연구가 필요한 주제입니다. 이 기사에서는 대규모 모델 미세 조정 작업에서 역전파(BP 없음)가 없는 다음 최적화 알고리즘의 성능, 효율성 및 호환성을 체계적으로 평가합니다. 목적은 커뮤니티에 다양한 0차 최적화 도구의 폭을 보여주는 것입니다. 대규모 모델 작업:
- 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은 종종 가장 약한 방법입니다.
또한 연구에서는 더 큰 모델 OPT-13B를 사용하여 더 복잡하고 어려운 작업(COPA 및 WinoGrande)에 대한 실험을 수행하고 다음과 같은 결론에 도달했습니다.
- 더 복잡한 작업에서는 다양한 옵티마이저 간의 성능 차이가 더욱 증폭됩니다.
- ZO-Adam과 ZO-SGD-MMT는 다양한 실험에서 매우 우수한 안정성을 보였는데, 이는 분산 감소 설계에 기인할 수 있습니다.
- LoRA 미세 조정은 항상 0차 알고리즘에 대해 강력한 견고성을 보여 왔으며 다양한 실험 환경에서 안정적이고 신뢰할 수 있습니다.
대형 모델 미세 조정 메모리 오버헤드에 대한 평가 및 자세한 설명 저자는 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를 예로 사용).
저자는 다양한 시퀀스 길이에서 ZO-SGD와 FO-SGD의 메모리 효율성을 추가로 비교했습니다. ZO-SGD의 최대 메모리 소비는 모델 매개변수 크기에 의해서만 결정되기 때문에 일관되게 유지되는 것을 볼 수 있습니다. 반면, 시퀀스 길이가 증가함에 따라 FO-SGD의 최대 메모리 소비는 먼저 변경되지 않고 그 다음에는 변경되지 않습니다. 증가하기 시작합니다. 따라서 긴 컨텍스트 길이 설정에서 ZO-SGD는 더 나은 메모리 효율성 이점을 나타냅니다. 구체적인 메모리 이론값과 실험값은 원문을 참고하시기 바랍니다.
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를 크게 능가한다는 것을 보여줍니다.
하이브리드 ZO 및 FO 미세 조정역전파(BP)는 깊은 신경망에서 얕은 신경망까지 순서대로 가중치 기울기를 계산합니다. 0차 최적화 프로그램은 기존 1차 최적화 프로그램보다 메모리 사용량 측면에서 훨씬 더 큰 이점을 가지므로 1차 최적화 프로그램의 성능이 더 좋은 경우가 많습니다. 따라서 0차 최적화 프로그램과 1차 최적화 프로그램의 조합을 사용하면 메모리 사용량과 성능 간의 균형을 이룰 수 있습니다. 특히, 더 깊은 네트워크의 경우 1차 최적화 프로그램을 사용하여 역전파를 통해 기울기를 정확하게 계산할 수 있으며, 얕은 네트워크의 경우 0차 최적화 프로그램을 사용하여 기울기 추정을 수행할 수 있습니다. 실험 결과 얕은 부분(예: OPT-1.3B의 첫 번째 8/24 레이어)에 0차 최적화 프로그램을 사용하고 나머지 깊은 부분에 1차 최적화 프로그램을 사용하면 비디오의 약 1/3을 절약할 수 있는 것으로 나타났습니다. 동시에 1차 최적화 프로그램을 완전히 사용하는 것과 동일한 성능 수준이 달성됩니다.
スパース勾配を使用したゼロ次オプティマイザー (勾配枝刈りを使用した ZO) 一次オプティマイザーでは、通常、勾配枝刈りはトレーニング プロセスを高速化するために使用されますが、ゼロ次オプティマイザーでは、勾配枝刈りによって導入された疎勾配を使用できます。さらに、勾配推定値の分散が減少するため、パフォーマンスが向上します。この論文では、各層のスパース率を取得するためのゼロ次オプティマイザーでの振幅ベースの枝刈り戦略の適用を検討し、次にこれらのスパース率に基づいてランダムなスパース勾配マスク (マスク) を生成し、確率的勾配推定に適用します。妨害中。実験結果は、中程度の勾配スパース性 (約 20%) により、ゼロ次オプティマイザにある程度のパフォーマンス向上をもたらすことができることを示しています。
この論文では、大規模な言語モデルの微調整におけるゼロ次オプティマイザーの効果的な適用を実証しました。損失の差を使用して勾配を近似することにより、ゼロ次最適化手法はバックプロパゲーションとアクティベーション ストレージの必要性を回避し、メモリ リソースを大幅に節約します。既存の研究範囲を拡張することにより、さまざまな 0 次最適化手法、タスクの種類、評価指標をこの評価に組み込み、0 次最適化技術の初の体系的なベンチマーク研究を実施しました。私たちの研究は、これらの手法が精度と効率の点でどのように機能するかを明らかにするだけでなく、タスクの調整と順方向勾配の重要な役割についての洞察も提供します。これらの実験的解析を使用して、ブロック最適化、0 次および 1 次ハイブリッド トレーニング、0 次最適化に基づいた大規模モデルの微調整をさらに強化する勾配スパース化などの手法を提案します。これらの改善は、メモリ効率を維持しながら微調整の精度を向上させるように設計されています。 これらの発見と技術を応用することで、大規模モデルの研究に必要なハードウェア リソースが大幅に削減され、ローエンド GPU で大規模モデルの微調整が可能になり、それによって学術研究がさらに促進され、実用的な研究成果が得られると私たちは確信しています。業界に貴重な影響を与える実践的な成果。研究者や技術開発者には、私たちの研究結果に注目し、ZO 最適化を使用したさらなる可能性を探求することをお勧めします。今後の研究では、LLM の微調整におけるさらなる可能性を引き出すために、この分野の深い問題を引き続き調査していきます。 詳細については、論文および詳しい情報とリソースについては GitHub リポジトリを参照してください。 [1] Liu ら、「信号処理と機械学習におけるゼロ次最適化の入門書」、IEEE Signal Processing Magazine 37、no. 2020): 43-54.[2] Malladi 他、「NeurIPS 2023 による言語モデルの微調整」[3] Liu 他al. al.、「信号処理と機械学習におけるゼロ次最適化の入門」[4] Ghadimi 他、「確率的一次およびゼロ次手法」非凸確率的プログラミングの場合。" [5] Liu, et al., "signSGD via Zeroth-Order Oracle." ICLR' 2019.[6] Huang, et al., " Mini から Minimax 最適化までのゼロ次および一次運動量手法の高速化。」ら、「ZO-AdaMM: ブラックボックス最適化のためのゼロ次適応運動量法」[9] Baydin ら、「逆伝播を伴わない勾配。」 以上がICML 2024 の高得点論文 | ゼロ次オプティマイザーが大規模モデルを微調整し、メモリを大幅に削減の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。