大規模言語モデル(LLM)とは何か
LLMの仕組み、トークンからトランスフォーマーまで — なぜLLMはそのように振る舞うのかを解説します。
大規模言語モデルとは
大規模言語モデル(LLM: Large Language Model)は、テキストを予測・生成するよう訓練されたAIシステムです。単語の列を受け取り、次に来るものを予測することを学習します。膨大な量のテキストに対してこの処理を何十億回も繰り返すことで、言語・事実・推論パターンに関する豊かな内部表現を獲得します。
「大規模(Large)」とは、モデルの挙動を決定する内部の数値ウェイトであるパラメータの数を指します。現代のモデルは数十億から数千億のパラメータを持ちます。
単語ではなくトークン
LLMは単語を直接処理しません。トークンと呼ばれるテキストの断片を処理します。トークンは単語全体かもしれませんし、単語の一部や句読点かもしれません。このトークン化ステップが、生テキストをモデルが処理できる数値に変換する方法です。
実用上、トークン制限は重要です。すべてのモデルにはコンテキストウィンドウ — 一度に考慮できる最大トークン数 — があります。ウィンドウ外のテキストはモデルには見えません。
トランスフォーマーアーキテクチャ
現代のLLMのほぼすべては、2017年に発表されたトランスフォーマーアーキテクチャをベースにしています。トランスフォーマーはすべてのトークンを逐次処理ではなく並列処理するため、大規模データセットでの訓練が現実的になりました。
核心的なメカニズムはアテンションです。すべてのトークンに対して、モデルはシーケンス内のどの他のトークンが関連するかを学習します。これにより、多くの文をまたいで代名詞を名詞に結びつけたり、文脈によって単語の意味が変わることを理解したりできます。
訓練:事前学習とファインチューニング
LLMは段階的に開発されます。
事前学習はコストのかかるフェーズです。モデルは書籍・ウェブページ・コード・記事など何兆ものトークンを処理し、次トークン予測を改善するようウェイトを調整します。ここで一般的な言語理解が構築されます。
ファインチューニングは挙動を整えます。事前学習済みモデルをキュレートされた例でさらに訓練し、より役立つ応答をしたり、指示に従ったり、特定のドメインに特化させたりします。RLHF(人間のフィードバックによる強化学習)などの技術が、モデルの出力を人間の好みに合わせるために使われます。
なぜLLMは幻覚を起こすのか
LLMは確率分布からサンプリングしてテキストを生成します。文脈を前提として統計的にありえるものを生成するのであり、事実確認したものを出力するわけではありません。訓練データにない内容や、パターンが曖昧なトピックについて質問されると、確信に満ちた口調で誤ったテキストを生成することがあります。
これを**ハルシネーション(幻覚)**と呼びます。単純な修正で解決できるバグではなく、アーキテクチャの根本的な性質です。緩和策としては、RAG(検索拡張生成)、引用元に基づいた出力のグラウンディング、構造化された出力制約などがあります。
コンテキストとメモリ
LLMはデフォルトで会話間に永続的なメモリを持ちません。各インタラクションはゼロから始まります。単一のコンテキストウィンドウ内では、会話の中で前に述べたことを参照できますが、ウィンドウが終わるとその情報は消えます。
会話を「記憶している」ように見えるシステムは、過去のコンテキストや要約を明示的にプロンプトに挿入することで実現しています。
温度とサンプリング
テキストを生成する際、モデルは常に最も確率の高い次のトークンを選ぶわけではありません。**温度(Temperature)**はランダム性を制御するパラメータです。
- 低温度(例: 0.1):出力がより決定論的で予測可能になる
- 高温度(例: 1.0以上):出力がより多様でクリエイティブになるが、一貫性が下がることがある
top-p や top-k などの他のサンプリングパラメータも、各ステップでモデルが考慮するトークンを絞り込みます。
能力と限界
LLMは大量のテキストにわたるパターン認識の恩恵を受けるタスク — 要約、翻訳、コード生成、質問応答、提供されたコンテキストに基づく推論 — において驚くほどの能力を発揮します。
信頼性が低い領域:精密な計算、リアルタイム情報(検索ツールなしの場合)、永続的な状態を必要とするタスク、保証された事実的正確さが必要な場面。
LLMを使って信頼性の高いシステムを構築するには、これらの境界を理解することが不可欠です。