2023-11-22 ML勉強会
LLaMA: Open and Efficient Foundation Language Models
- Meta社のLLaMA(1の方)の論文
Abstract
- 従来の巨大なLLMモデルに比べて軽量なLLMモデル(7B〜65Bを用意)を作成
- 数兆個のトークンでモデルを訓練し、一般公開されているデータセットだけを用いて最先端のLLMモデルに匹敵する性能を出しました
- LLaMA-13Bは、ほとんどのベンチマークでGPT-3(175B)を上回った
- LLaMA-65Bは最高のモデルであるChinchilla-70BとPaLM-540Bに匹敵
- すべてのモデルを研究コミュニティに公開
1. Introduction
LLMは大量のテキストコーパスを使ってスケーリングし続けた結果、zero-shotやfew-shotで様々なタスクを遂行する能力を示しており、さらなるスケーリングに注力している。これらの試みは、パラメーターが多ければ多いほど性能が良くなるという前提に基づいている。
しかし、限られたコンピューティング予算で最も良いパフォーマンスを発揮するのは、大型のモデルではなく、より小型のモデルです。なぜなら、推論時のコストが低く抑えられるからです。
この研究の焦点は以下のとおりです
- 公開されているデータを用いて、より多くのトークンでトレーニングしました
- 限られた推論予算でも良いパフォーマンスを発揮できる言語モデルをトレーニングしました
- 7Bから65Bまでのモデルを用意
- LLaMA-13BはGPT-3に比べて10倍小さいですが、GPT-3よりも大部分のベンチマークで優れた性能を発揮しています
- LLaMA-65BはChinchillaやPaLM-540Bのような最高の大規模言語モデルと競争力があります
- シングルGPU上で実行できるため、LLMsのアクセスと研究の民主化に役立ちます
Chinchilla、PaLM、GPT-3とは異なり、LLaMAは公開データのみを使用しており、オープンソース化に対応しています。
ほとんどの既存モデルは利用データについて非公開です(たとえば「Books-2TB」や「Social Media Conversations」など)。また、公開データを利用した他のモデルは、いくつかの例外を除きPaLM-62BやChinchillaと競争力のあるモデルは存在しません。
本論文の残りの部分では、トランスフォーマーアーキテクチャに行った変更の概要、トレーニング方法について説明します。次に、標準ベンチマークのセットで我々のモデルの性能を報告し、他のLLMと比較します。最後に、責任あるAIコミュニティの最新のベンチマークのいくつかを使用して、モデルにエンコードされたバイアスと有害性の一部を明らかにします。
2 Approach
LLaMAのトレーニングアプローチは、GPT-3やPaLMに類似しており、Chinchillaにインスピレーションを受けています。LLaMAは、標準のオプティマイザを使用して大量のテキストデータに対して大規模なトランスフォーマーモデルをトレーニングします。
2.1 Pre-training Data
- 前処理済みの、様々なドメインをカバーする複数のソースからなるトレーニングデータセットを使用しています。
- 主に、他のLLMのトレーニングに利用されたデータソースを再利用しています
- 公開可能でオープンソースと互換性のあるデータのみを使用します。
トレーニングセット内での割合
- 英語のCommonCrawl [67%]
- 一般公開されているWebのクロールデータ
- 2017年から2020年までの5つのCommonCrawlダンプをCCNetパイプラインを使用して前処理しました。
- CCNet: Common Crawlへの前処理
- https://arxiv.org/abs/1911.00359
- ‣
- 概要
- テキストの正規化(unicodedata.normalize, 数値の0置換など)
- 文章(paragraph)単位で重複除去(70%くらいは重複している)
- fastTextで言語判定
- 言語別のKenLMで低品質な文章をフィルタ(例えば「今日はいい天」など欠損した文章だととPerplexityが低くなる)
- このプロセスにより、データの重複が削除され、非英語ページが取り除かれます。
- 低品質のコンテンツはN-gram言語モデル(KenLMのこと)によってフィルタリングされます。
- さらに、Wikipediaで参照されるページとランダムにサンプリングされたページを区別するための線形モデルをトレーニングして、参照として分類されないページを削除しています。
- (詳細は記載されていなかったが、Wikipediaっぽくないものは削除するっていうフィルタリングのよう)
- C4 [15%]
- 探索的実験の結果、多様な前処理済みのCommonCrawlデータセットを使用することで、パフォーマンスが向上することが観察されたため、公開されているC4データセットをデータに含めました
- https://huggingface.co/datasets/c4
- GoogleがT5に使ったデータセット
- C4の前処理には、重複削除や言語別の処理が行われています
- CCNetとの主な違いは品質フィルタリングであり、句読点の有無やウェブページに含まれる単語や文の数などのヒューリスティックに基づいて処理しています。
- Github [4.5%]
- Google BigQueryで入手可能な公開のGitHubデータセットを使用しています
- Apache、BSD、MITライセンスで配布されているプロジェクトのみを残しました
- さらに、行の長さや英数字の割合に基づくヒューリスティックで低品質のファイルをフィルタリングし、正規表現でヘッダーなどの定型文を削除しました
- 最後に、正確な一致でデータセットをファイルレベルで重複排除しています
- Wikipedia [4.5%]
- 2022年6月から8月にかけてのWikipediaダンプを追加しました。
- ※CommonCrawlは2017年から2020年までなので期間は被っていない
- 使用される言語は、ラテン文字またはキリル文字を使用するbg、ca、cs、da、de、en、es、fr、hr、hu、it、nl、pl、pt、ro、ru、sl、sr、sv、ukの20言語です。
- データは、ハイパーリンク、コメント、その他のフォーマッティングブールプレートを削除するように前処理されています。
- GutenbergとBooks3 [4.5%]
- 2つの書籍コーパスをトレーニングデータセットに含めました。
- Gutenberg Projectのデータセット(パブリックドメインの書籍が含まれている)
- ThePileのBooks3セクション(Training large language modelsのための公開データセット)
- 書籍レベルで重複排除を実行し、90%以上のコンテンツ重複がある書籍を削除しました。
- ArXiv[2.5%]
- arXivのLaTeXファイルを処理して、科学データをデータセットに追加しました。
- Lewkowyczら(2022)に従って、最初のセクション以前のすべてと参考文献を削除しました。
- また、.texファイルからコメントを削除し、ユーザーによって記述されたインラインの定義とマクロを展開して一貫性を増やしました。
- Stack Exchange [2%]
- さまざまなドメインをカバーする高品質な質問と回答のウェブサイトであるStack Exchangeのダンプを追加しました。
- 28の最大のウェブサイトからデータを取得し、テキストからHTMLタグを削除し、回答をスコアによって並べ替えました。
Tokenizer
byte-pair encoding(BPE)アルゴリズムを使用して、SentencePieceの実装を使用してデータをトークン化しています。
- BPEは、テキスト内の頻出する文字の組み合わせ(バイグラムやトライグラムなど)を特定し、それらを新たな「サブワード」として置き換えます。これにより、単語レベルよりも細かい単位でテキストを分割し、効率的かつ柔軟なトークン化を実現します。
- すべての数字を個別の数字に分割し、不明なUTF-8文字をバイトにフォールバックするようにもしています。
2.2 アーキテクチャ
大規模言語モデルに関する最近の研究に基づき、LLaMAはトランスフォーマーアーキテクチャに基づいています。
以下は、元のアーキテクチャとの主な違い、およびこの変更に対するインスピレーションの場所です(かっこ内に示します):
- Pre-normalization [GPT3]
- トランスフォーマーモデルにおいては残差接続(residual addition)後に正規化(Layer Normalizationなど)を行う(Post-LN)ことが一般的だった
- Pre-LNは層の入力側だけに正規化を行い、残差接続で層をスキップした方には正規化を行っていない
- メリット
- 残差接続を通じて情報がより効果的に伝播する
- 通常の正規化では、情報が残差接続を通じて流れる前に正規化されるため、情報の一部が失われる可能性があった。Pre-normalizationにより、情報が正規化前の状態で残差接続を通じて伝播することで、より良い学習や情報の流れが実現されるといわれている
- 正規化関数はトレーニングの安定性を改善するためにRMSNorm正規化関数を使用
- RMS (Root Mean Square: 二乗平均平方根) の値を使用して正規化
- 通常の正規化では平均値や分散を使用するが、RMSNormでは各次元のRMSを計算し、それを使用して正規化を行う
- RMSNormでは、正規化の際にパラメータのスケールを考慮しています。通常の正規化では各次元の平均や分散はバッチ全体で計算されますが、RMSNormでは各次元のスケールを考慮するため、各次元ごとに異なる正規化が行われます。
- RMSNormは、各次元ごとに独立して正規化を行うため、層内の情報が最小化されることなく保持されるとされています。
- SwiGLU活性化関数 [PaLM]
- 性能を向上させるためにReLU非線形性の代わりにSwiGLU活性化関数を導入
- SwiGLU(x) = Swish(xW) * xV
- MLP(Multi-Layer Perceptron)の中間アクティベーションに使用
- 通常のReLUよりも計算コストが高くなるが、次元数が比例的大きい場合に性能が向上することが示されている Shazeer (2020)
- Searching for Activation Functionsより Swish関数の図
- PaLMでは次元数4dとして使用されていましたが、LLaMAは (2/3)4dの次元を使用しています。(と記載があったがよく意味がわからなかった)
- Rotary Embeddings[GPTNeo]
- 通常、トランスフォーマーモデルでは、相対的な位置情報を埋め込むために、位置エンコーディングが使用されますが、代わりに回転位置埋め込み(RoPE)を各レイヤーで追加します。
- RoPEは、位置情報を表現するためにユニタリ行列の回転を使用します。具体的には、各トークンの特徴量をユニタリ行列で回転させることで、相対的な位置情報を表現します。この回転操作により、トークン間の相対的な位置関係をより正確に捉えることができます。
また、RoPEは計算効率も改善します
- モデル別のハイパーパラメータ
トレーニングデータセットは1〜1.4Tのトークンが含まれます。トレーニングデータのトークンのほとんどは1回だけ使用され、WikipediaとBooksのドメインでは約2エポックが実行されます。
2.3 Optimizer
- AdamW (β1 = 0.9, β2 = 0.95)
- コサイン学習率スケジューラ(最終的に最大学習率の10%になる)
- 重み減衰は0.1, 勾配クリッピングは1.0
- 学習率とバッチサイズはモデルのサイズよって異なる(表2を参照)
- 2,000のウォームアップステップを使用
- 図1: モデル別のトレーニング loss
2.4 学習速度の改善施策
学習速度を改善するために、いくつかの最適化を行っています。
- causal multi-head attention(因果的マルチヘッドアテンション)
- 通常のMulti-Head Attentionでは、クエリ(query)とキー(key)の関連性を計算し、それに基づいてバリュー(value)から情報を抽出します。その際には、全ての時刻におけるクエリとキーの情報を使用していました。
- 一方Causal Multi-Head Attentionは、未来の情報による情報漏洩を防ぐために、クエリとキーの関連性を計算する際に、過去の時刻の情報のみを考慮するよう制約を加えます。これにより、モデルが未来の情報を使用せずにシーケンスを予測することができます。
- これはランタイムのメモリ使用量を削減する効果もあります
- この実装はxformersライブラリで利用可能です
- チェックポイントの活用
- 学習効率をさらに改善するために、チェックポイントを使用して、後方パスで再計算されるアクティベーションの量を減らしました。具体的には、線形層の出力など、計算にコストがかかるアクティベーションを保存します。
- これは、PyTorch autogradに頼らずに、transformerレイヤーの後方関数を手動で実装することによって実現しました
- これによる学習時間
- 65Bモデルの場合
- 2048個のA100 GPU(RAM 80GB)
- 1秒あたり約380トークン/GPUが処理
- 1.4Tトークンのデータセットのトレーニングは約21日かかる
3. Main results
GPT-3の研究に倣い、Zero-shotタスクとFew-shotタスクを考慮し、計20のベンチマークについて報告します。
- Zero-shot
- プロンプトにタスク説明文とテスト例が含まれています
- 回答を生成または指示通りにランク付けします
- Few-shot
- プロンプトには追加で1から64までの回答例が含まれています
- 回答を生成または指示通りにランク付けします
- 比較したモデル
- 非公開モデル
- GPT-3
- Gopher
- Chinchilla
- PaLM
- オープンソースモデル
- OPTモデル
- GPT-J
- GPT-Neo
- 特定タスクのFine Tuningモデル
- OPT-IML
- Flan-PaLM
- タスク
- 生成タスク
- 多肢選択タスク
- 与えられた文脈に基づいて、与えられたオプションの中で最も適切な補完を選択することが目的です。文脈に基づいた完了の最高尤度を選択します。
- 補完の文字数で正規化された尤度を使用
- 特定のデータセット(OpenBookQA、BoolQ)の場合は、「回答:」を文脈として与えられたコンテキストに対する完了の尤度に基づいて完了を選択します:P(完了|文脈)=P(完了| "\回答:")。
3.1 Common Sense Reasoning: 常識推論
8つの標準的な常識推論ベンチマーク
- BoolQ
- 与えられた文章と質問の組み合わせに対して、正誤を回答する二値分類タスク
- 例えば、文章が「地球は平らである」と質問が「地球は平らですか?」の場合、正しいか誤ったかを回答する必要がある
- PIQA
- 与えられた文章と質問の組み合わせに対して、回答候補から適切な回答を選ぶタスク
- SIQA
- 与えられた文章と質問の組み合わせに対して、単語の意味を相互に交換するタスク
- 例えば、文章が「犬は猫を追いかける」の場合、質問が「猫は犬を追いかけますか?」となります。文章中の単語の意味を理解し、適切に交換する必要がある
- HellaSwag
- 与えられた文章と質問の組み合わせに対して、不自然な情報を識別するタスク。文章中に含まれるスワギーテキスト(不正確な情報や誇張された表現)を特定する必要がある
- WinoGrande
- 長い文章と質問の組み合わせに対して、回答を推論するタスク。質問と文章の関連性を理解し、回答を推定する能力が求められる。
- ARC Easy and Challenge
- 知識の推論をテストするためのタスクで、与えられた文章と質問の組み合わせに対して、回答候補の中から最も適切な回答を選ぶ必要がある。難易度によってEasyとChallengeがあり、Challengeはより複雑な推論が求められる。
- OpenBookQA
- 生活常識に基づいた質問応答タスクで、与えられた文章と質問の組み合わせに対して、回答候補の中から最も適切な回答を選ぶ必要があります。
言語モデリングコミュニティにおいて行われたゼロショット設定で評価
- LLaMA-65Bの結果
- Chinchilla-70Bに対しては、 BoolQ以外のタスクで性能が上回った
- PaLM-540Bに対しては、BoolQとWinoGrande以外のタスクで性能が上回った
- LLaMA-13Bの結果
- GPT-3よりも重みが1/10ほどの小さいモデルでありながら、ほとんどのベンチマークで優れた成績を収めており、モデルサイズに対して性能が高いと言える
3.2 Closed-book Question Answering
- モデルが質問に答えるための根拠となる文書にアクセスできない質疑応答タスク
- Natural Questions
- TriviaQA
表4 NaturalQuestionsでのパフォーマンス
表5 TriviaQAでのパフォーマンス
- LLaMA-65Bの結果
- Zero-shot および Few-shotで、どちらも最先端のパフォーマンスを達成
- LLaMA-13Bの結果
- 重みが5~10倍も小さいにもかかわらず、GPT-3やChinchillaと競合する結果を出している
3.3 Reading Comprehension: 読解力
- RACE読解力ベンチマーク
- 中高生向けに設計された英語の読解力試験
- LLaMA-65Bの結果
- PaLM-540Bと競合する結果となった
- LLaMA-13Bの結果
- GPT-3を数パーセント上回った
3.4 Mathematical reasoning: 数学的推論
- 数学的推論タスク
- MATH
- LaTeXで書かれた1万2千の中学校と高校の数学問題のデータセット
- GSM8k
- 詳細な数学的知識・専門知識を必要としない数学問題集
- 評価
- +maj1@k: 問題に対して一回k個の回答候補を生成し、多数決で最終的な回答を決めるやりかた。モデルの予測の一貫性や信頼性を向上させるための手法。
- 比較するモデル
- PaLM(ファインチューニングなし)
- Minerva
- ArXivと数学のWebページから抽出された3850億のトークンでファインチューニングされたPaLMモデルのシリーズ
- LLaMA-65Bの結果
- 数学のデータでファインチューニングされていないにもかかわらず、GSM8k+maj1@kに関してはMinerva-62Bよりも性能が優れている
3.5 コード生成
- コードを生成タスク(Python)
- HumanEval
- 関数シグネチャーも受け取り、プロンプトはdoc stringでフォーマット
- MBPP
- 両タスクとも、モデルは数行の説明文といくつかの入出力例を受け取る
- 比較したモデル
- LaMDA
- Googleが開発した対話アプリケーション向け言語モデル
- PaLM
- ※コード特化型トークンでのファインチューニングモデルは本論文の範囲外とした
- 評価
- pass@1の結果: temperature 0.1
- pass@100, pass@80: temperature 0.8
- LLaMA-65Bの結果
- PaLM 62Bを上回った
- LLaMA-13Bの結果
- HumanEvalおよびMBPPの両方でLaMDA 137Bを上回った
3.6 大規模なマルチタスク言語理解
- 大規模マルチタスク言語理解ベンチマーク
- MMLU
- 人文科学(Humanities)、STEM、社会科学(Social Science)など、さまざまな領域の知識に関する多肢選択問題
- LLaMA-65Bの結果
- 平均でChinchilla-70BおよびPaLM-540Bに数%劣った
- MMLUに関連する事前学習データとしてはGutenberg・Books3の計177GBしか使用していないが、Gopher、Chinchilla、およびPaLMのデータは2TBに及ぶ。この差がマルチタスク言語理解の能力の差になったと考察
3.7 訓練中の性能の進化
訓練中のQAタスクの性能変化について
- ほとんどのベンチマークにおいて、性能は着実に改善した
- 例外的に、SIQAとWinoGrandeは1000tokens以降にAccuracyが減る様子が見られた
- SIQAでは、性能にばらつきが生じている。このベンチマークが信頼できない可能性を示唆
- WinoGrandeでは、性能が訓練の進みとあまり相関しないことがあった
4. ファインチューニング
ファインチューニングを行うことで、MMLUの改善が迅速に実現できることを示します。
LLaMA-65Bの非ファインチューニングバージョンでも基本的な指示に従うことができますが、非常に少量のファインチューニングがMMLUの性能を向上させ、モデルが指示に従う能力をさらに高めることが観察されました。
これは本論文の焦点ではないため1つの実験のみを実施し、ファインチューニングモデル「LLaMA-I」をトレーニングしました。
- 比較したモデル
- 既存の中程度のサイズのファインチューニングモデル
- OPT-IML
- Flan-PaLMシリーズ
- LLaMA-I(65B)の結果
- MMLUで68.9%到達
- 中程度のサイズのファインチューニングモデルを凌駕
- 現在の最先端のGPT code-davinci-002はMMLUで77.4であり、これには及ばなかった
- (表に記載しないのはちょっとずるい)
5. バイアス、有害性、誤情報
大規模言語モデルは、トレーニングデータ内に存在するバイアスを再現し増幅させることが示されています。また、有害または攻撃的なコンテンツを生成することが示されています。
トレーニングデータセットには、Webからの大量のデータが含まれているため、このようなコンテンツを生成する可能性があるモデルの潜在的な危険性を特定することが重要だと考えています。LLaMA-65Bの潜在的な危険性を理解するために、有害なコンテンツの生成やステレオタイプの検出を測定するさまざまなベンチマークで評価を行っています。言語モデルコミュニティで使用されるいくつかのスタンダードベンチマークを選択しましたが、これらの評価だけでは、これらのモデルに関連するリスクを完全に理解するには不十分です。
5.1 RealToxicityPrompts
言語モデルは、侮辱、憎悪表現、脅迫などの有害言語を生成することができます。モデルが生成できる有害コンテンツの範囲は非常に広く、徹底的な評価が課題となっています。最近の研究において、RealToxicityPromptsベンチマークを、モデルがどの程度有害かを示す指標として考慮しています。
RealToxicityPromptsは、モデルが完了する必要がある約10万のプロンプトから構成されており、PerspectiveAPI3へのリクエストによって自動的に有害スコアが評価されます。サードパーティーのPerspectiveAPIが使用するパイプラインを制御することはできないため、以前のモデルと比較することが困難です。
100kのプロンプトごとに、その有毒性スコアを測定しました。スコアは、プロンプトごとに0(非有害)から1(有害)の範囲があります。
表11には、RealToxicityPromptsの礼儀正しいプロンプトカテゴリーの平均スコアを報告しています。
これらのスコアは、文献で観察される内容(Chinchillaの場合は0.087など)と「比較可能」ですが、サンプリング戦略、プロンプト数、およびAPIの時間に関して、これらの作業と私たちの間には方法論上の違いがあるため、比較は注意が必要です。
Respectfulプロンプトでは、特にモデルのサイズとともに有毒性が増加することが観察されます。
5.2 CrowS-Pairs
私たちは、CrowS-Pairsを用いて、当社のモデルのバイアスを評価しました。このデータセットでは、性別、宗教、人種/肌の色、性的指向、年齢、国籍、障害、外観、社会経済的地位の9つのカテゴリでバイアスを測定することができます。各例はステレオタイプとアンチステレオタイプから構成されており、ゼロショット設定で両方の文章のパープレキシティ(次単語予測の自信度)を使用して、モデルがステレオタイプの文章を好むかどうかを測定します。より高いスコアはより高いバイアスを示します。
表12でGPT-3とOPT-175Bと比較しました。LLaMAは平均的に両方のモデルよりわずかに有利です。当社のモデルは、宗教カテゴリ(OPT-175Bに比べて+10%)で特にバイアスがあり、次に年齢と性別が続きます。これらのバイアスは、複数のフィルタリングステップにもかかわらず、CommonCrawlから来ると予想されます。
5.3 WinoGender
ジェンダーカテゴリーに対するモデルのバイアスを調査するために、共参照解析のデータセットであるWinoGenderベンチマークを調べました。
WinoGenderは、Wino-gradスキーマで構成され、モデルの共参照解析のパフォーマンスが代名詞のジェンダーによって影響を受けるかどうかを評価します。より具体的には、各文には「職業」、「参加者」、および「代名詞」があり、代名詞は職業または参加者に共参照しています。モデルに共参照関係を決定するように指示し、文脈に応じて正しく行っているかどうかを測定します。
このデータセットは、職業に関連した社会的バイアスがモデルに捉えられたかどうかを明らかにするために使用されます。たとえば、WinoGenderデータセット内の文は、「看護師は患者に、彼のシフトが1時間で終わることを通知しました。」であり、この後には‘His’が続きます。
ここで「彼」は誰を参照しているでしょうか?ナースと患者のどちらでしょうか?その後、モデルを使用して、ナースと患者の継続性のperplexityを比較して、共参照解析を行った場合に正しく行われているかどうかを評価します。
私たちは、3つの代名詞「her/her/she」、「his/him/he」と「their/them/someone」を使用してパフォーマンスを評価します(異なる選択肢は代名詞の文法的機能に対応します)。
表13では、データセットに含まれる3つの異なる代名詞の共参照スコアを報告しています。私たちは、モデルが「their/them/someone」という代名詞に対して、それぞれ「her/her/she」と「his/him/he」の代名詞に対して、より優れた共参照解析を実行できることが明らかになりました。このような傾向は、ジェンダーバイアスの反映である可能性があります。実際、「her/her/she」と「his/him/he」の代名詞の場合、モデルはおそらく職業の大多数の性別を使用して共参照解析を行っているため、文の証拠を使用していないのです。この仮説をさらに調査するために、WinoGenderデータセット内の「gotcha」ケースのセットを調べます。「gotcha」ケースとは、代名詞が職業の大多数の性別と一致しない文であり、職業が正しい回答であるものです。
表13で、私たちはモデルのLLaMA-65Bがgotchaの例ではより多くのエラーを起こしていることを観察し、ジェンダーや職業に関連する社会的バイアスが捕捉されていることが明らかになりました。性別に関係なくバイアスが存在することが示唆されており、「her/her/she」と「his/him/he」の代名詞の場合にはパフォーマンスの低下が見られます。
5.4 TruthfulQA(真実性QA)
TruthfulQAは、主張が真実であるかどうかを判断する、つまりモデルの真実性を測定することを目的としています。ここで「真実」という定義を、信念や伝統の文脈でのみ真実である主張ではなく、「現実世界に関するリテラルな真実」という意味で考慮しています。このベンチマークは、モデルが偽情報や誤った主張を生成するリスクを評価することができます。質問は多様なスタイルで書かれ、38のカテゴリをカバーし、Adversarialに設計(モデルの教師データに含まれていないようなデータセットを作成)されています。
表14では、真実性のモデルを測定する質問と真実性と情報性の両方の交差点のパフォーマンスを報告しています。GPT-3と比較して、私たちのモデルはどちらのカテゴリでも高いスコアを取得していますが、正しい回答の割合は低いままであり、私たちのモデルが誤った回答を生む可能性があることを示しています。
6 Carbon footprint
弊社のモデルの学習には膨大なエネルギーが必要であり、二酸化炭素の排出原因となっています。我々は最近の研究に従い、表15において総エネルギー消費量および結果としての炭素フットプリントを分析します。
モデルの学習に必要なワット時および二酸化炭素排出量(tCO2eq )を推定するために、Wuら(2022年)の式を使用します。ワット時については、以下の式を使用します
PUEは1.1に設定しました。
結果としての炭素排出量は、ネットワークの学習に使用されたデータセンターの場所に依存します。例えば、BLOOMは0.057 kg CO2eq/KWhを発生するグリッドを使用しており、27 tCO2eq、OPTは0.231 kg CO2eq/KWhを発生するグリッドを使っており、82 tCO2eqになります。
本研究では、これらのモデルの学習における炭素排出のコストを、同じデータセンターで学習した場合で比較します。よって、データセンターの場所を考慮せずに、米国の平均炭素密度係数0.385 kg CO2eq/KWhを使用します。これにより、以下の式が得られます
公平な比較のために、OPTとBLOOMにも同じ式を適用します。OPTでは、彼らのログ(https://github.com/facebookresearch/metaseq/tree/main/projects/OPT/chronicles)より、992個のA100-80Bで34日間のトレーニングが必要であったと仮定します。
最後に、当社のモデルの開発には約5ヶ月間にわたり2048個のA100-80GBが必要だったと推定され、これにより、当社の仮定下でこれらのモデルを開発するために2638 MWhが必要であり、合計で1015 tCO2eqの排出量が生じることが予想されます。これらのモデルをリリースすることで、トレーニングがすでに完了しているため、将来の炭素排出を減らすことができると期待しています。また、モデルの一部は比較的小さく、単一のGPUで実行することができるため、炭素排出を抑えることができます。
8. 結論
- 本論文では、公開された一連の言語モデルを紹介し、最新の基礎モデルと競合する性能を示しました
- LLaMA-13Bは、GPT-3に比べて10倍以上も小さいのに性能が上回った
- LLaMA-65Bは、Chinchilla-70BとPaLM-540Bと競合する性能を出した
- 従来の研究とは異なり、非公開データセットに頼らずに公開されたデータだけで最先端の性能を達成できることを示した。
- これらのモデルを研究コミュニティに公開することで、大きな言語モデルの開発を加速し、有害性やバイアスなどの問題を解決する取り組みを助けることを期待します
- これらのモデルを特定タスクに対してファインチューニングすることにより、有望な結果が得られることを発見した。今後、この点をさらに調査する予定
- 最後に、スケーリングを進めるにつれて性能が向上することを観察したので、将来的にはより大きなプレトレーニングコーパスで訓練された大きなモデルを公開する計画があります