大規模言語モデル(だいきぼげんごモデル、、LLM)は、多数(億や兆)のパラメータを持つ言語モデル。2026年現在、ニューラルネットワークのTransformerを使用し、膨大なラベルなしテキストを使用して自己教師あり学習または半教師あり学習によって訓練する手法が主流である。
LLMは2018年頃に登場し、さまざまなタスク(仕事)で優れた性能を発揮している。これにより、自然言語処理の研究の焦点は、特定のタスクに特化した教師ありモデルを訓練するという以前のパラダイムから転換した。大規模言語モデルの応用は目覚ましい成果を上げているが、大規模言語モデルの開発はまだ始まったばかりであり、多くの研究者が大規模言語モデルの改良に貢献している。
大規模言語モデルという用語の正式な定義はないが、大規模コーパスで訓練された、億以上のパラメータ数を持つディープラーニングモデルを指すことが多い。LLMは、特定のタスク(感情分析、固有表現抽出、数学的推論など)のために訓練されたものとは異なり、幅広いタスクに優れた汎用モデルである。LLMがタスクを実行する能力や対応可能な範囲は、ある意味では設計における画期的な進歩には依存せず、LLMに費やされた資源(データ、パラメータサイズ、計算力)の量の関数であるように見える。多数のパラメータを持ったニューラル言語モデルは、文の次の単語を予測するという単純なタスクで十分に訓練することで、人間の言葉の構文や意味の多くを捉えられることがわかった。さらに、大規模な言語モデルは、世の中に関するかなりの一般知識を示し、訓練中に大量の事実を「記憶」することができる。
質の高い証拠とされる2023年のメタ分析によれば、大規模言語モデルの創造性に目を輝かせる研究者はもちろん世界中に存在し、小規模言語モデルにはできないタスクで大規模言語モデルが創造的であると主張する学者もいるが、これは測定基準の選択によるものであり、創造性によるものではないことが示唆されている。異なる測定基準を選択した場合、大規模言語モデルの創造性の優位性は見られない可能性が示唆されている。
以下、Mはmillion(100万)、Bはbillion(10億)、Tはtrillion(1兆)の略である。k(キロ)、M(メガ)、G(ギガ)、T(テラ)の場合もある。
特性 事前学習データセット
大規模言語モデル(LLM)は通常、さまざまな分野や言語にわたる大量のテキストデータで事前学習が行われる。著名な事前学習データとしては、Common Crawl、、MassiveText、Wikipedia、GitHubなどが知られている。大半のオープンソースのLLMは一般公開されているデータを利用しているが、非公開のデータで事前学習が行われることもある。スキャンした書籍も使われていて、例えばAnthropicのClaudeは2025年までに数百万冊の書籍をスキャンして訓練データとして使用している。アメリカでは古本を購入してスキャンして訓練データとして使用することは合法であるが、Anthropicは2024年に700万点のインターネットに違法アップロードされている海賊版の書籍も訓練データとして使用していたが、これに対してはAnthropicは損害賠償の支払いを行った。
事前学習データは、重複排除、毒性が高いシーケンスの除外、低品質データの破棄など、生テキストをさまざまな手順で前処理して作成される。
LLMでは事前学習データを広範に使用するため、事前学習データに評価データが混入すると、ベンチマーク評価時(交差検証)のモデル性能に影響を与えるデータ汚染が起こる。例えば、国際数学オリンピックのアメリカ予選のAIMEの過去問はベンチマークとして使用されているが、AnthropicのClaude Opus 4.8はその答えを知ったうえで問題を解いていて、ベンチマークとして機能していない。
テキストデータの蓄積は年率7%で増加しており、2024年6月現在、Epoch AIは事前学習に使える低品質なデータを除いた後のデータサイズを以下のように推定している。英語の場合は約0.8語/トークンである。2028年頃にGPUの性能の方が良くなり全てのテキストデータを使い切れてしまう状態になると推定している。以下Tは兆(trillion)のこと。 Common Crawl - 130Tトークン Google 検索がインデックスしているウェブページ - 510Tトークン ウェブ全体 - 3100Tトークン 画像 - 300Tトークン 動画 - 1350Tトークン
事後学習データセット
次に来るべき単語を事前学習した後、通常、大規模言語モデルは事後学習が行われる。事後学習の1つの教師ありファインチューニング(supervised fine-tuning)では、質問文と模範解答のペアを与え、そのような回答をするように訓練される。この事後学習でも大規模言語モデル用の大量で多様なデータを使用して訓練が行われる。
スケーリング則
一般にLLMは、モデルの大きさ、訓練データセットの大きさ、訓練費用、訓練後の性能という4つのパラメータにより特徴づけられる。これらの4つの変数はそれぞれ実数で正確に定義することができ、経験から「スケーリング則(scaling laws)」と呼ばれている単純なによって関係していることがわかっている。
Google DeepMindの2022年の研究では、両対数のスケジュールで1エポックで自己回帰的な訓練を行ったTransformerの大規模言語モデルの場合のスケーリング則(スケーリング則)を次のように表している。
ここで、変数は次のとおりである。 :モデルの訓練に掛かる費用(FLOPs単位) :モデルのパラメータ数 :訓練データセットのトークン数 :テストデータセットで訓練されたLLMにより達成される、トークン当たりの平均の負対数尤度損失(ナット/トークン)
各パラメータは以下の通り。 、すなわち、1つのトークンで訓練するにはパラメータごとに6 FLOPsの費用がかかる。自動微分において、フォワードが積和演算なので2 FLOPs、リバースが4 FLOPsのため、合計6 FLOPsである。ここで、訓練費用は推論費用よりもはるかに高いことに注意を要する。推論費用は、KVキャッシュをはじめとした細かい話を無視すると、おおよそ (モデルのパラメータ数 N)×(入出力のトークン数の合計)× 2 FLOPsであり、入出力のトークン数の合計は訓練データのトークン数よりもはるかに少ないので推論費用の方が安くなる。ただし、広く使われているモデルの場合、全ユーザーの累計入出力のトークン数は訓練データよりも多くなり、推論費用は訓練費用よりも高くなる。もし、それが成立しない場合は、一般的なトークン単位の課金方式のビジネスの場合、その事業は投資を回収できていない。
それ以外のパラメータは曲線あてはめにより以下が得られた。
最善解は以下になる(論文の表3)。 N = 1B の場合、D = 20.2B トークン、C = 1.21e+20 FLOPs N = 1T の場合、D = 21.2T トークン、C = 1.27e+26 FLOPs N = 10T の場合、D = 216.2T トークン、C = 1.30e+28 FLOPs D / N は21トークン/パラメータ前後になる。Google DeepMindの論文より前のモデルは D / N が1~2トークン/パラメータあたりのものが多かったが(論文の表1)、それは訓練データが少なすぎると指摘している。Common CrawlのD = 130Tトークンに対応するNは6Tであり、2026年7月現在、オープンウェイトモデルで最もパラメータ数が多いのはKimi K3の2.8Tであり、あともう少しGPUの性能が上がると6Tに到達する。なお、これは C を固定したうえで D と N を最適化しているのであって、予算(C)が十分あって意図的にパラメータ数 N の少ないモデルを作るのならば、訓練データ D を増やした方が改善する。例えば2024年のGoogleのGemma 2の場合、N = 2B, 9B, 27BのモデルのD/Nは1000, 900, 500トークン/パラメータである。
2026年8月8日現在、Lambda Labs では NVIDIA B200 が $6.69/h で借りられる。NVIDIA B200 は bfloat16 の密行列の場合2.25PFLOPSなので、実効効率を40%とした場合、6.69 / (2.25e15 * 3600 * 0.4) = $2.06e-18/FLOPs となる。C = 1.27e+26 FLOPs は $262,000,000 つまり400億円になる。
創発的能力
一般に、さまざまなタスクに対する大規模モデルの性能は、同様の小規模モデルの性能に基づいて推定することができるが、ときには、下流におけるスケーリング則が「破綻」しCaballero, Ethan; Gupta, Kshitij; Rish, Irina; Krueger, David (2022). Broken Neural Scaling Laws. International Conference on Learning Representations (ICLR), 2023.、大規模モデルが、小規模モデルとは異なる速度で突然に能力を獲得することがある。これは「創発的能力」()として知られているもので、これまでも多くの研究の対象であった。研究者は、こうした能力は「小規模モデルの性能を外挿することでは予測できない」ことが多いと指摘している。このような能力は、プログラムされたり設計されたりするものではなく、むしろ「発見される」ものであり、場合によっては、LLMが一般公開されて初めて発見されることすらある。これまでに数百もの創発的能力が報告されている。たとえば、多段階の算術、大学レベルの試験、単語の意図する意味の特定、思考の連鎖、国際音声記号の解読、マス埋めパズル、ヒングリッシュ(ヒンディー語と英語の混成語)の段落内の不快な内容の特定、およびスワヒリ語のことわざに相当する英語の生成などがある。
Schaefferらは、創発的な能力は予測不可能な形で獲得されるのではなく、滑らかなスケーリング則に従って予測通りに獲得されると主張している。著者らは、LLMが多肢選択問題を解く統計的トイモデルを検討し、他の種類のタスクを考慮して修正されたこの統計モデルが、これらのタスクにも適用できることを示した。
ここで、 をパラメータ数、 をモデルの性能とする。
のとき、 は指数曲線(1でプラトーに達する前)となり、創発のように見える。 のとき、 のプロットは直線(0でプラトーに達する前)となり、創発には見えない。 のとき、 はステップ関数となり、創発のように見える。
歴史 先駆者 大規模言語モデルの基本的な考え方は、単純で反復的なアーキテクチャを持つランダムな重みを持つニューラルネットワークを出発点とし、大規模な言語コーパスで訓練することである。
この最も初期の例のひとつがエルマンネットワークで、「犬が男を追いかける」のような単純な文でリカレントネットワークを訓練した。訓練したネットワークは、各単語をベクトル(内部表現)に変換した。次にこれらのベクトルを接近度によって木構造にクラスタリングした。その結果、ツリーはある構造を示すことがわかった。動詞と名詞はそれぞれ別の大きなクラスターに属していた。名詞のクラスター内には、無生物(inanimates)と生物(animates)の2つの小さなクラスターがある、などである。
別の方法として、自然言語理解を記号プログラムによってコンピュータにプログラムするがあった。この方法は1990年代まで主流であった。単純な機構と大規模なコーパスによって自然言語を学習するという着想は1950年代に始まったが、商業的に最初に成功したのは、のための(1990年代)であった。
Transformerフレームワークへの進化 初期の「大規模」言語モデルは、長期・短期記憶(LSTM、1997年)などのリカレントアーキテクチャを使用して構築された。AlexNet(2012年)が画像認識における大規模ニューラルネットワークの有効性を実証した後、研究者は大規模ニューラルネットワークを他のタスクに適用した。2014年には、2つの主要な手法が提案された。 seq2seqモデル(380Mパラメータ)は、2つのLSTMを使用して機械翻訳を行い、単純化されたアーキテクチャ(ゲート付き回帰型ユニット、GRU)で同じ手法が使われた(130Mパラメータ)。 アテンション(注意機構とも呼ばれる)は、seq2seqモデルを改良し、2つのLSTMの中間に「アテンション機構」(入力要素間の関連を重みづけし重要部分を強調する仕組み)を追加するものとして提案された。これはTransformerのアテンション機構とは異なるが、同様のタスクを実行する。
2016年、Google翻訳はその機構をからへと変更した。これは、LSTMとアテンションによるseq2seqである。10年かけて構築された以前のシステムよりも高いレベルの性能に到達するのに9カ月を要したという。
2017年の論文「Attention is all you need」では、アテンション機構を抽象化して、アテンション機構を中心としたTransformerアーキテクチャを構築した。seq2seqモデルは、他のリカレントネットワークと同様、入力シーケンスを一度に1つずつ処理しなければならないのに対し、Transformerアーキテクチャはシーケンス上で並列に実行することができる。これによって、より大規模なモデルを訓練できるようになった。
BERTとGPT BERT(2018年)は双方向Transformerであり、GPT(2018年)は単方向(自己回帰)Transformerである。これらは2023年時点の主要なアーキテクチャである。
アーキテクチャ モデル 大規模言語モデルでは、2018年以降、逐次データに対する標準的なディープラーニング手法となったTransformer(トランスフォーマー)アーキテクチャが最もよく使用されている。
1991年に考案されたアンサンブル学習の一種である(Mixture-of-Experts、MoE)は、2017年に扱えるパラメータ数を増やすためにGoogleがディープラーニング(LSTM, Sparsely-Gated Mixture-of-Experts Layer)に適用し、その後、GShard(2020年)、GLaM(2021年)などTransformerに適用され、多くのTransformerのモデルに採用された。
トークン化 LLMは数学的な関数であり、その入力と出力は数字のリストである。したがって、単語は数値に変換しなければならない。
一般に、LLMはこれを行うために固有のトークナイザを使用し、テキストと整数のリストを対応させている。通常、LLMを訓練する前にトークナイザを訓練データセットの全体に適用し、その後は凍結する。トークナイザにはバイト対符号化が選択されるのが一般的である。
トークナイザのもう一つの機能は、計算量を削減するためのテキスト圧縮である。たとえば「where is(どこにありますか)」などの一般的な単語やフレーズは、7文字ではなく1つのトークンでエンコードすることができる。OpenAI GPTシリーズでは、1つのトークンが一般的な英語テキストの約4文字、つまり約0.75語に相当するトークナイザを使用している。珍しい英語のテキストは予測しにくく、そのため圧縮が困難となり、より多くのトークンを必要とする。
トークナイザは、任意の整数を出力することはできない。一般的には の範囲の整数に限って出力される。ここで、 は語彙(ごい)サイズと言う。
トークナイザには、任意のテキストを扱えるものと(一般にUnicodeで直接操作する)、そうでないものがある。トークナイザは、エンコード不可能なテキストに遭遇した場合、「未知テキスト(unknown text)」を意味する特別なトークン(多くは0)を出力する。BERT論文にならって、 と表記されることが多い。
もう一つの特別なトークンは、「パディング」を表す (多くは1)である。これは、一度に大量のテキストがLLMに入力されたときに、エンコードされたテキストが同じ長さになるよう調節するのに使用される。LLMでは一般に、入力の長さが一定のシーケンス(ジャグ配列という)であることを要求するため、エンコードした短いテキストを長いテキストにそろえるのにパディングを行う。
出力 LLMの出力は、その語彙の確率分布である。これは通常、次のように実装される。
テキストを受信すると、大半のLLMはベクトル を出力する。ここで、 は語彙サイズ(上述)である。 ベクトル はソフトマックス関数によって となる。
このプロセスでは通常、ベクトル は非正規化ロジットベクトルといい、ベクトル は確率ベクトルと呼ばれる。ベクトル は 個のエントリを持ち、すべて非負であり、その合計は1となるので、 に対する確率分布、つまりLLMの語彙に対する確率分布であると解釈することができる。
ソフトマックス関数は数学的に定義されており、変化するパラメータを持たないことに注意を要する。したがっては訓練は行われない。
コンテキストウィンドウ LLMのコンテキストウィンドウは、LLMがトークンを生成するために使用できる最長のトークンシーケンスの長さである。もしLLMがコンテキストウィンドウより長いシーケンスに対してトークンを生成するときは、トークンシーケンスをコンテキストウィンドウまで切り詰めるか、アルゴリズムに一定の変更を加える必要がある。
LLMのコンテキストウィンドウ長は2026年8月現在は各社のフラグシップモデルの場合は1Mトークンの物が多い。OpenAIのGPT-3.5は、2022年11月当時、4kトークンのコンテキストウィンドウだった。
エンコーダーとデコーダーの用語 Transformerに基づくLLMでは、Transformerの原著論文で使われている用語とは多少異なる。
エンコーダのみ: フルエンコーダ、フルデコーダ エンコーダー - デコーダー: フルエンコーダー、自己回帰デコーダー デコーダのみ: 自己回帰エンコーダ、自己回帰デコーダ
ここでの「自己回帰」とは、「マスク化アテンション」節で説明したように、あるトークンからそれに続くすべてのトークンへのアテンションをゼロにするために、アテンションヘッドにマスクが挿入されることを意味する。
事前学習 ほとんどのLLMは事前学習されており、テキストトークンの訓練データセットが与えられると、モデルはデータセット内のトークンを予測する。このような事前学習には一般に2つの形式がある。
自己回帰モデル(GPT型、次単語予測)「私が食べるのが好きなのは」のようなテキスト部分が与えられると、モデルは「アイスクリーム」のような「次のトークン」を予測する。 マスク済みモデル(BERT型、)「私は [MASK] クリームを [MASK] したい」 のようなテキスト部分が与えられると、モデルは「アイスを食べる」のような隠されたトークンを予測する。
LLMは、次文予測(Next Sentence Prediction、NSP)のように、データ分布の理解をテストする補助タスクを使用して訓練することもある。この場合は、文の組が提示され、モデルはそれらが訓練コーパス内で連続して出現するかどうかを予測しなければならない。
通常、LLMは特定の損失関数、つまりトークンごとの平均負対数尤度(交差エントロピー損失とも呼ばれる)を最小化するように訓練する。たとえば、自己回帰モデルで「食べるのが好き」が与えられ、確率分布 を予測する場合、このトークンに対する負対数尤度損失は となる。
訓練のとき、訓練を安定させるために正則化損失も使用される。ただし、正則化損失は通常、テストや評価の際には使用されない。また、負対数尤度だけでなく、他にも多くの評価項目がある。詳細については以下の節を参照のこと。
事前学習用データセットの大きさ 最初期のLLMは、数十億(数B)語の規模のコーパスで訓練が行われていた。
OpenAIのGPT(generative pre-trained transformer)シリーズの最初のモデルであるGPT-1は、2018年に、985M語で構成されるBookCorpusで訓練された。同年、BERTはBookCorpusと英語版Wikipediaの組み合わせで訓練され、合計で3.3B語になった。それ以来、LLMの訓練用コーパスは桁違いに増加し続けており、トークン数は1T以上に達した。
訓練費用 LLMの訓練には計算費用がかかる。2020年の調査では、1.5Bパラメータのモデル(当時の最先端技術より2桁小さい)の訓練にかかる費用は8万ドルから160万ドルと見積もられたSharir, Or, Barak Peleg, and Yoav Shoham. "The cost of training nlp models: A concise overview." arXiv preprint arXiv:2004.08900 (2020).。その後、ソフトウェアとハードウェアの進歩により費用は大幅に下がり、2023年の論文では、12Bパラメータのモデルを訓練するための費用は72,300 A100-GPU 時間であると報告されている。
2020年代の企業は、ますます大規模になるLLMに巨額の投資を行った。GPT-2(1.5Bパラメータ、2019年)の訓練費用に5万ドル、またGoogle PaLM(5.4Bパラメータ、2022年)は800万ドルを要した。2024年ごろからパラメータ数は1T前後になった。2025年のOpenAIは190億ドル(3兆円)を研究開発費(訓練費用は研究開発費に含まれている)として使用した。
スケーリング則により、(正確には違うが)おおよそモデルのパラメータ数の2乗に訓練費用は比例する。パラメータ数を増やすと世界中のテキストデータを取り込めるため、GPUの扱える限界までパラメータ数が増やされて高額になった。
事後学習
2018年から2020年にかけて、特定の自然言語処理(NLP)タスクでLLMを使用するための標準的な方法は、「タスクに特化」した追加訓練によってモデルをファインチューニングすることであった。その後、GPT-3のような「より強力」なLLMでは、解決すべき問題をテキストプロンプトとしてモデルに提示したり、場合によっては、類似の問題とその解決策のいくつかのテキスト例とともに提示する「プロンプティング技術」を使用して、追加の訓練なしでタスクを解決できることがわかった。
ファインチューニング ファインチューニング(、微調整)とは、事前学習された既存の言語モデルを、特定のタスク(例: 感情分析、固有表現識別、)で(教師ありの)訓練を行うことによって修正する手法である。これは転移学習の一種である。一般的には、言語モデルの最終層と下流タスク()の出力とを接続する新しい重みのセットを導入することになる。言語モデルの元の重みは「凍結」したまま、それらを出力に接続する新しい重み層のみが訓練中に調節されるように構成する。また、元の重みをわずかずつ更新させたり、あるいは以前の凍結された層と一緒に更新されることもある。
プロンプト GPT-3によって普及したプロンプトパラダイムでは、解決すべき問題はテキストプロンプト(回答を促す指示)で定式化され、モデルは(推論して)補完を生成することによってそれを解決しなければならない。「少数ショットプロンプト」()の場合、プロンプトには類似した組(問題、解決)の少数の例が含まれる。たとえば、映画レビューに対する感情をラベル付けする感情分析タスクは、次のような例で回答が促される。レビュー: この映画は気が沈む。 感情: ネガティブ
レビュー: この映画は素晴らしい! 感情: もしモデルが「ポジティブ」と出力すれば、正しくタスクが解決されたことになる。一方、「ゼロショットプロンプト」()の場合、解決例を提供しない。同じ感情分析タスクに対するゼロショットプロンプトの例は、『映画レビューに関連するセンチメントは「この映画は素晴らしい!」』である。
LLMにおける少数ショットの性能は、NLPタスクで競争力のある結果を達成することが示されており、ときには先行する最先端のファインチューニング手法を凌ぐことさえある。このようなNLPタスクの例としては、翻訳、質問応答、、マス埋めパズル、文中の新語検出などがある。優れたプロンプトを作成し、最適化することをプロンプトエンジニアリングと呼ぶ。
インストラクション・チューニング インストラクション・チューニング(、命令チューニング)は、より自然で正確なゼロショットプロンプトによる対話を促進するために考案されたファインチューニングの一形態である。テキストが入力されると、事前学習された言語モデルは、訓練に使用したテキストコーパスの分布に一致するような補完を生成する。たとえば、「ハムレットの主要テーマについてエッセイを書いてください」というプロンプトが与えられたとき、単純な言語モデルは「3月17日以降に受け取った提出物には、1日あたり10%の遅延損害金が適用されます」といった(意図しない)補完を出力するかもしれない。インストラクション・チューニングでは、自然言語による命令として定式化された多くのタスクの例と、適切な応答を用いて言語モデルを訓練する。
インストラクション・チューニングでは、さまざまな手法が実践されている。その一例である「自己学習()」は、LLMによって生成された事例(人間が作成した少数の初期事例からブートストラップしたもの)の訓練セットで言語モデルをファインチューニングする。
強化学習によるファインチューニング OpenAIのInstructGPTプロトコルでは、人間が作成したプロンプトと応答の組からなるデータセットによる教師ありファインチューニングと、それに続く、人間のフィードバックによる強化学習(RLHF)を伴っている。この場合、人間の好みを反映したデータセットを用いて報酬関数を教師あり学習し、その後、この報酬モデルを使用したによってLLM自体を訓練する。
ツールを使用するエージェント ツールの使用 LLMだけでは解決が難しい、あるいは不可能な問題もある。たとえば、「354 * 139 = 」のような計算式の場合、次のトークンを予測することは困難であり、「What is the time now? It is」(今は何時ですか? 今は)についてはまったく予測できない。しかし、人が計算機を使って計算し、時計を使って時刻を知るように、LLMも他のプログラムを呼び出して次のトークンを予測することができる。LLMは、「What is the time now? It is {system.time()}」(今何時ですか? 今は{system.time()})や、「354 * 139 = {354 * 139}」のようにプログラムコードを生成し、次に別のプログラムインタプリタが生成されたコードを実行してその出力を埋める。この基本的な戦略は、生成されたプログラムを複数回試行したり、別のサンプリング戦略を使用して改良することもできる。
一般的に、LLMにツール(道具)を使わせるためには、ツールを使えるようにファインチューニングする必要がある。ツールの数が有限であれば、ファインチューニングは一度で済むかもしれない。オンラインのAPIサービスのようにツールの数が任意に増えるのであれば、APIの仕様書を読み取ってAPIを正しく呼び出せるようにLLMをファインチューニングすることができる。