論文 · arXiv 2302.13971
LLaMA: オープンかつ効率的な基盤言語モデル
LLaMA: Open and Efficient Foundation Language Models
3行まとめ
- 🎯 主要なLLMの多くは膨大なパラメータ数や非公開データに依存しており、推論コストの増大や研究アクセスの障壁となっていた。
- 🔧 公開データのみを用い、1.0T〜1.4TトークンでコンパクトなTransformerモデル(7B〜65B)をRMSNorm、SwiGLU、RoPEを用いて訓練。
- 📈 LLaMA-13Bは大半のベンチマークでGPT-3 (175B)を凌駕し、LLaMA-65Bはシンプルな指示調整(instruction tuning)後にMMLUで68.9%を達成。
概要
本論文では、7Bから65Bパラメータに及ぶ基盤言語モデルのコレクションであるLLaMAを紹介します。私たちは数兆規模のトークンを用いてモデルを訓練し、プロプライエタリで非公開なデータセットに頼ることなく、一般に公開されているデータセットのみを用いて最先端モデルを訓練可能であることを示します。特に、LLaMA-13Bは大半のベンチマークでGPT-3 (175B)を上回り、LLaMA-65Bは最高峰のモデルであるChinchilla-70BやPaLM-540Bに匹敵する競争力を発揮します。私たちはすべてのモデルを研究コミュニティに向けて公開します。
英語の原文概要
We introduce LLaMA, a collection of foundation language models ranging from 7B to 65B parameters. We train our models on trillions of tokens, and show that it is possible to train state-of-the-art models using publicly available datasets exclusively, without resorting to proprietary and inaccessible datasets. In particular, LLaMA-13B outperforms GPT-3 (175B) on most benchmarks, and LLaMA-65B is competitive with the best models, Chinchilla-70B and PaLM-540B. We release all our models to the research community.
論文解説
課題と動機
従来のスケーリング則(Chinchillaなど)は、一定の訓練計算予算に対してパラメータ数とデータセットサイズの最適なトレードオフを算出します。しかし、この定式化では言語モデルのライフタイム運用コストの大半を占める*推論予算(inference budget)*が見落とされています。運用の効率性を考慮すると、計算最適とされるガイドラインよりも大幅に多くのデータで訓練された小型モデルのほうが、ホスティングや実行コストを大幅に抑えられるため好ましいといえます。
さらに、トップレベルの最先端モデル(GPT-3、Chinchilla、PaLMなど)は、非公開で再現不可能なデータセットや極めて大規模なアーキテクチャに依存しています。LLaMAは、一般に公開されているデータのみを用いて競争力のある基盤モデルを訓練可能であることを実証し、研究者に向けたオープンな公開を実現しました。
主要なアイデア
- 推論重視の訓練: 計算最適なデータセットサイズ(例: 10Bモデルなら約200Bトークン)で訓練を停止するのではなく、LLaMAでは7Bおよび13Bモデルを1.0Tトークンで、33Bおよび65Bモデルを1.4Tトークンで訓練します。
- 公開データセットのみの活用: すべての事前学習データは公開ソースから取得されています: CommonCrawl (67%)、C4 (15%)、GitHub (4.5%)、Wikipedia (4.5%)、Books (4.5%)、ArXiv (2.5%)、Stack Exchange (2%)。
- 近代化されたTransformerアーキテクチャ: 安定性のためのRMSNormによるPre-normalization、SwiGLU活性化関数、および絶対位置埋め込みに代わるRotary Positional Embeddings (RoPE)を導入しています。
- エンジニアリングの効率化:
xformersによるメモリ効率の高いアテンション、カスタムのアクティベーション・チェックポインティング、シーケンス並列およびモデル並列を採用しています。
手法
LLaMAは、以下のような変更を加えた自己回帰型Transformerデコーダを採用しています:
- Pre-normalization: 各サブレイヤーの前にRMSNormを用いた入力の正規化を行います:
- SwiGLU活性化関数: 標準的なReLU/GELU活性化関数をSwiGLUに置き換え、中間層の次元をではなくに設定します。
- Rotary Embeddings (RoPE): 絶対位置埋め込みを使用せず、相対位置をエンコードするために各レイヤーで適用されます。
- 最適化: 、weight decay 、勾配クリッピング 、ウォームアップステップ、最大学習率の10%まで減衰するコサイン学習率スケジュールを備えたAdamW。バッチサイズはすべてのモデルスケールで4Mトークンです。
訓練全体のエネルギー消費量および二酸化炭素排出量の推定は以下に基づきます:
実験結果
- 常識推論(Common Sense Reasoning): LLaMA-13Bは複数のベンチマーク(BoolQで78.1% vs 60.5%、WinoGrandeで73.0% vs 70.2%など)でGPT-3 (175B)を上回ります。LLaMA-65BはPIQA (82.8% vs 82.3%)やHellaSwag (84.2% vs 83.4%)でPaLM-540Bに匹敵または凌駕します。
- クローズドブックQA(Closed-book QA): TriviaQA (0-shot)において、LLaMA-65Bは68.2%、LLaMA-13Bは56.6%に達します(単一のV100 GPU上で動作しながらGPT-3と同等の性能を超越)。
- コード生成: HumanEval (pass@1)でLLaMA-65Bは23.7%を達成し、PaLM-62B (15.9%)を上回り、PaLM-cont 62B (23.7%)と肩を並べます。
- MMLUと指示調整(Instruction Finetuning): ベースのLLaMA-65BはMMLUの5-shot精度で63.4%を記録(書籍コーパスの事前学習量が少なかったためと推測され、PaLM-540Bの69.3%には及ばず)。しかし、基本的なプロンプトによる指示調整(LLaMA-I 65B)を施すことで性能は68.9%へと向上します。
限界と今後の課題
- ハルシネーションと真実性(Truthfulness): TruthfulQAでのスコアは依然として控えめであり(LLaMA-65BはTruthfulで0.57、Truthful*Informativeで0.53)、ハルシネーションを起こす傾向が残っています。
- 有害性(Toxicity)のスケーリング: RealToxicityPromptsでは、モデルサイズの拡大に伴って有害性が増大し、特に敬意を払ったプロンプトにおいてその傾向が顕著です(7Bの0.081に対し65Bは0.141)。
- 学術知識のギャップ: MMLUでの性能はChinchilla-70BやPaLM-540Bに後れを取りました。著者らは、プロプライエタリなデータセットの約2TBに対し、事前学習で約177GBの書籍や学術論文しか使用していないことが原因であると推測しています。
重要用語
- LLaMA
- 公開データセットのみを用い、最大1.4兆トークンで訓練された7Bから65Bパラメータの基盤言語モデルコレクション。
- Inference Budget (推論予算)
- 訓練済みモデルの提供時に発生する計算コストとレイテンシ。より多くのトークンで小型モデルを訓練することで最適化される。
- RMSNorm
- 訓練の安定化を目的としてTransformerサブレイヤーへの入力を正規化するために用いられるRoot Mean Square Layer Normalization。
- SwiGLU
- Swish活性化関数を用いたゲーテッド線形ユニットの変種で、隠れ層の次元を2/3 * 4dに設定する。
- Rotary Positional Embeddings (RoPE)
- クエリとキーの表現を回転させることで、Transformerのアテンション層に相対位置情報を注入する手法。
- xformers
- 巨大なアテンション重み行列の保持を回避する、効率的な因果的マルチヘッドアテンション実装を提供するオープンソースライブラリ。
- LLaMA-I
- 指示追従能力とMMLUの性能を高めるため、Flanプロトコルに従って訓練されたLLaMA-65Bの指示調整(instruction-finetuned)版。
- TruthfulQA
- 敵対的な事実に関する質問を通じて、LLMが人間の誤信やハルシネーションを模倣する傾向を測定するベンチマーク。
よくある質問
LLaMAの事前学習にはどのようなデータセットが使用されましたか?
事前学習には公開データのみが使用されました: 英語のCommonCrawl (67%)、C4 (15%)、GitHub (4.5%)、20言語のWikipedia (4.5%)、GutenbergおよびBooks3 (4.5%)、ArXiv (2.5%)、Stack Exchange (2%)。
LLaMA-13BはGPT-3 (175B)と比べてどうですか?
LLaMA-13Bは10倍以上小さいサイズであり、単一のコンシューマ向け/データセンター向けGPUで推論可能であるにもかかわらず、BoolQ、PIQA、WinoGrandeを含む大半の標準ベンチマークでGPT-3を上回ります。
LLaMA-65Bの訓練にはどのくらいの時間がかかりましたか?
LLaMA-65Bの1.4兆トークンによる訓練は、2,048基の80GB A100 GPUを用いて約380 tokens/sec/GPUの速度で処理され、約21日間で完了しました。
LLaMAはオリジナルのTransformerに対してどのようなアーキテクチャ上の変更を加えていますか?
LLaMAはサブレイヤー入力にRMSNormによるPre-normalizationを適用し、ReLUをSwiGLU活性化関数(次元数 2/3 * 4d)に置き換え、絶対位置埋め込みをRotary Positional Embeddings (RoPE)に変更しています。
このページの解説は AI が論文から作成したもので、誤りを含む場合があります。詳細は原文をご確認ください。