💡

DeepSeek-V3.2 徹底解説:DSA(DeepSeek Sparse Attention)と巨大RLを使った“次世代モデル構築法”を

に公開

はじめに

2024〜2025年に登場したDeepSeek-V3.2は、計算効率と推論能力、特にエージェントタスクや長い推論(Chain-of-Thought)に強みを持つ大規模言語モデル(LLM)です。

本記事ではV3.2がどのようにして高い性能と効率を両立したのか、特に次の3点にフォーカスして解説します。

  • DSA(DeepSeek Sparse Attention) による計算量の削減
  • 巨大規模の強化学習(RL) に基づく専門モデルの育成
  • スペシャリスト → ジェネラリストへの蒸留 という新しい訓練方法

大学生でも「なぜ必要で、どう動くのか」が理解できるよう順番に説明します。

1. DSA(DeepSeek Sparse Attention)とは何か?

1.1 そもそも長文処理はなぜ重いのか?

通常のAttention(Scaled Dot-Product Attention)は、

  • 新しいトークン(クエリ)
  • 過去のすべてのトークン(キー)

の組み合わせを全て計算します。

計算量は O(N²)
コンテキストが128K(=128,000トークン)にもなると、普通は絶対に計算しきれません。

1.2 DSA の基本アイデア

DSAは次のアイデアで計算量を大幅削減します。

「本当に必要な過去トークンだけを選んでAttentionを計算すればいい」

この「必要なトークンの絞り込み」を担当するのが Lightning Indexer です。

1.3 Lightning Indexer の仕組み

Lightning Indexer は、通常のAttentionとは別に以下を行います:

  1. 低次元のクエリ・キー

    • 通常: 2048次元
    • Indexer: 64次元
    • さらに FP8 (8bit) の低精度で計算
      → とても軽い!
  2. 各過去トークンとのスコアを高速に計算

  3. Top-k(例:2048トークン)だけを選ぶ

つまり:

(1) 全トークン 128,000
       ↓  Indexerで高速スクリーニング
(2) Top-k 2,048
       ↓  通常のAttention(高精度)
(3) 出力

こうして
性能はほぼ維持したまま、計算量を1桁以上削減できます。

2. DSA はどうやって学習されたのか?

通常、Sparse Attentionは「最初から疎」にすると学習が難しいという欠点があります。
(疎すぎて勾配が伝わらない)

DeepSeekは次の2段階学習でこれを突破しました。


2.1 第1段階:Lightning Indexer の“初期化”

  • Indexer以外のパラメータはすべて凍結(freeze)
  • 通常のAttentionを使って、各ヘッドのスコアを合計 → 正規化して確率分布にする
  • この確率分布を 教師 として、
  • KLダイバージェンス最小化でIndexorを初期化

量:10Bトークンほど

要するに:

「まずはDense Attentionを真似して動けるようにする」

2.2 第2段階:モデル全体を疎構造に適応させる訓練

次に行うのが「本番のSparse Attention学習」です。

  • Indexerの入力は detach()
    → Indexerは自分の損失(KL)だけで更新
  • モデル本体は通常のLM損失で学習
  • Indexerは main attention と整合するように微調整

量:1Tトークン

こうして、密→疎へスムーズに移行する仕組みが完成します。

2.3 効果:推論コストが激減

その結果:

  • prefill(最初の読み込み): 8〜10倍の高速化
  • decode(生成中): 数倍高速化

128Kコンテキストでも現実的に動くようになります。

3. Post-training:巨大規模の強化学習で「スペシャリスト」を育成

ここからがDeepSeek-V3.2の最大の特徴です。

3.1 スペシャリストをまず作る

同じ基礎モデルから、複数の専門モデル(スペシャリスト)を作ります。

  • 数学特化
  • エージェント特化
  • 推論(thinking)特化
  • 高速回答(non-thinking)特化
    など

それぞれのモデルを、**巨大規模の強化学習(RL)**で育てます。

これをGRPOベースのRLで実施。

3.2 thinking / non-thinking モードを分ける

各スペシャリストは次の2つのモードのデータを生成します:

  1. thinkingモード
     長いChain-of-Thought(CoT)を含む
  2. non-thinkingモード
     直接回答する高速動作モード

3.3 複数スペシャリスト → ジェネラリストへの蒸留

最終的には:

全てのスペシャリストが生成したデータを使って
 一つの最終モデルに蒸留する

これで「何でもできるけど高性能」なGeneralistが完成します。

4. 巨大RLを成功させるための3つの工夫

RLを数千ステップ回すと、多くの問題が起きます。

DeepSeekは以下の3つの防御策で乗り越えました。

4.1 発散防止のための「巻き戻し & 再開」

  • 定期的にモデルを評価
  • もし急に性能が落ちたら
     → 重みを巻き戻す
     → 学習率を下げて再開

4.2 方策更新の正則化(偏り防止)

前向き計算に正則化を加えて、
「特定の方策に偏りすぎる」ことを防ぐ。

4.3 報酬ハック対策として複数評価を切り替える

同じ評価基準ばかり使うと
モデルが“裏技”を覚えてしまう。

複数の評価セットをランダム切り替え
→ 報酬ハックが困難になる

これは人間の試験対策でも同じです。

5. reasoning を含むRLでエージェント性能を強化

ツール利用や複雑なタスクでは reasoning が必要です。

DeepSeekのRLは:

  • thinking(長い推論)
  • non-thinking(高速回答)
  • エージェントタスク
  • アライメント項目

1つのRL枠組みで同時学習します。

これにより「推論もできるしタスク実行も上手い」モデルになります。

6. Speciale:数学能力に特化したスーパースペシャリスト

Specialeは数学・証明能力に特化したスペシャリスト。

特徴:

  • reasoningデータのみで訓練
  • RL時の長さ罰則(length penalty)緩和
  • 他の能力と引き換えに数学力に全振り

結果として:

IMO/IOI 金メダル級性能
GPT-5 を超える数学性能

を示しました。

7. 性能まとめ

  • V3.2本体
    多くのベンチマークでフロンティアモデル級
  • Speciale
    数学領域でトップ性能(GPT-5超え)

8. コメント:DeepSeekの挑戦と意義

最後に、今回のアプローチの意義をまとめます。

8.1 “リスクの高い挑戦”を通して到達した成果

DSAもスペシャリスト→蒸留も、とても難しい手法。
設定ファイルを見ると、さまざまな試行錯誤の痕跡がある。

8.2 DSA の現実的な利点と今後の課題

  • 効率化は成功
  • ただし、key/valueは保持が必要
  • prefillは大きく速くなるが decode は数倍
    → 今後も「長文処理の圧縮」は課題

8.3 学習専用モデルと推論専用モデルという構想

  • 学習は dense attention でやる
  • 推論は sparse attention でやる
    という分業スタイルは今後さらに重要になる。

まとめ

DeepSeek-V3.2の凄さは以下に集約されます:

  • DSAで長文処理の計算量を劇的に削減
  • 巨大RLで専門モデルを育ててから蒸留する新手法
  • thinking/non-thinking を同時に扱える高いエージェント性能
  • 数学特化モデル(Speciale)は人類最高レベルに到達

これらは従来の延長ではなく、
「思い切った飛躍」
によって実現されたものです。

今後は
「学習はdense」「推論はsparse」
という役割分担がさらに進む可能性が高く、
長文効率化と高性能化の両立がますます追求されるでしょう。

Discussion