llm-jp-4-math-lion

ファインチューニングコンペ LLM 2026 — 数学タスク(オープン枠)提出モデル

日本の中学・高校レベルの数学問題に対する推論精度を最大化するために、2段階のSFT(Supervised Fine-Tuning)と推論時のSelf-Consistencyを組み合わせたモデルです。

モデル概要

項目 詳細
ベースモデル LLM-JP 4 継続事前学習済みモデル(llm-jp/llm-jp-4-8b-base
学習手法 2段階 SFT(Stage 1: Full Fine-Tuning → Stage 2: LoRA)
学習データ 合成データ 約160万件(自作 + LLM蒸留)
推論手法 vLLM + \boxed{} 形式出力(Self-Consistency対応)
開発ベンチマーク精度 95%(運営配布100問)
コンペ ファインチューニングコンペ LLM 2026 数学タスク・オープン枠

ベースモデルの選定

運営から提供された3つのベースモデル候補を開発用ベンチマーク100問で評価し、以下の結果を得ました。

モデル 精度
事前学習のみ 7%
継続事前学習済み 48%
インストラクションチューニング済み 44%

継続事前学習とSFTを組み合わせる方針だったため、追加の継続事前学習が行いやすく精度も最も高かった「継続事前学習済みモデル」を選定しました。

学習データセット

2種類のデータセットを作成し、段階的にモデルへ学習させています。

データセット1: ベンチマーク指向型データ(約60万件)

評価ベンチマークの出題形式・分野を意識して作成したデータセットです。

  • 問題生成: LLMは不使用。日本語の設問テンプレートを手動で作成し、ランダムに組み合わせるロジックで生成。計算部分はSymPyを使用して式と回答の整合性を保証。
  • カバー範囲: 中学・高校数学の評価対象カテゴリを網羅。約3万件のユニークな問題・回答ペアを作成。
  • CoT付与: 各問題に対して Qwen/Qwen3-235B-A22B-Instruct-2507 で20個のCoTを生成(Temperature / Top-p制御で多様性を確保)。生成されたCoTと正解を突き合わせ、正確なもののみを採用。
  • 最終データ量: 約60万件(3万問 × 正確なCoT)

データセット2: LLM完全生成型データ(約100万件)

問題・CoTの両方をLLMで生成した蒸留データセットです。NVIDIAの数学タスク精度向上に関する研究を参考にしています。

  • 問題生成: Qwen/Qwen3-235B-A22B-Instruct-2507 を使用。日本の中学・高校の数学カリキュラムに準拠した問題を全カテゴリで約5万件生成。ベンチマークとは独立した出題で汎化性能を意識。
  • 回答・CoT生成: Qwen/Qwen3-235B-A22B-Instruct-2507 を使用。各問題に対して20回の試行を行い、マジョリティ・ボーティング(多数決)で80%以上の一致率が得られたもののみを採用。
  • 最終データ量: 約100万件(5万問 × 正確なCoT)

学習手法

Stage 1: Full Fine-Tuning

汎用的な数学推論能力の獲得を目的とし、LLM完全生成型データセット(約100万件:azuki-digital/ft-llm-2026-synthetic-ja-math-qwen-235b-v2)でフルパラメータのファインチューニングを実施。

パラメータ
手法 Full Fine-Tuning
学習率 2e-5
データ LLM完全生成型データ(~100万件)

Stage 2: LoRA Fine-Tuning

ベンチマークの出題形式への適応を目的とし、ベンチマーク指向型データセット(約60万件:azuki-digital/ft-llm-2026-synthetic-ja-math-qwen-235b-v1)でLoRAによる追加学習を実施。

パラメータ
手法 LoRA
ランク (r) 64
Alpha (α) 128
ドロップアウト 0.03
学習率 1e-4
データ ベンチマーク指向型データ(~60万件)

使い方

プロンプトテンプレート

本モデルは以下のプロンプトテンプレートで学習・推論を行っています。出力は必ず \boxed{} で最終回答を囲む形式になります。

次の数学の問題を解いてください。

【厳守】
- 数式はLaTeXで書く。
- 最後の答えは必ず \boxed{} で1回だけ囲む。

問題:
{problem}

解答:

推論コード(vLLM)

from vllm import LLM, SamplingParams

PROMPT_TEMPLATE = """\
次の数学の問題を解いてください。

【厳守】
- 数式はLaTeXで書く。
- 最後の答えは必ず \\boxed{{}} で1回だけ囲む。

問題:
{problem}

解答:
"""

model_path = "azuki-digital/llm-jp-4-math-lion"
llm = LLM(model=model_path, trust_remote_code=True)

sampling_params = SamplingParams(
    temperature=0.0,
    top_p=1.0,
    max_tokens=4096,
)

problem = "2次方程式 x^2 - 5x + 6 = 0 を解きなさい。"
prompt = PROMPT_TEMPLATE.format(problem=problem)

outputs = llm.generate([prompt], sampling_params=sampling_params)
print(outputs[0].outputs[0].text)

回答の抽出

モデルの出力から最終回答を取得するには、\boxed{} の中身を抽出してください。

import re

def extract_answer(text: str) -> str:
    """text から最後の \\boxed{...} の中身を抽出する"""
    key = r"\boxed{"
    start = text.rfind(key)
    if start == -1:
        return ""
    i = start + len(key)
    depth = 1
    out_chars = []
    while i < len(text):
        ch = text[i]
        if ch == "{":
            depth += 1
            out_chars.append(ch)
        elif ch == "}":
            depth -= 1
            if depth == 0:
                return "".join(out_chars).strip()
            out_chars.append(ch)
        else:
            out_chars.append(ch)
        i += 1
    return ""

推論時のTips

  • Self-Consistency(オプション): 精度をさらに向上させたい場合、同一問題に対して複数回(例: 20回)推論を行い、Math-Verifyで回答を比較した上でマジョリティ・ボーティングを行う手法が有効です。学習に使用しなかった外部ベンチマークでは、この手法により精度が顕著に向上する傾向が確認されました。
  • リトライ: \boxed{} が出力に含まれない場合は、同じ問題で再度推論を行うことで回答を得られる場合があります。

評価結果

ベンチマーク 精度 備考
開発用ベンチマーク(100問) 95% 運営配布の評価データ

参考として、Qwen/Qwen3-30B-A3B-Instruct-2507 の同ベンチマークに対する精度は84%であり、本モデルはこれを上回る精度を達成しています。

制限事項

  • 日本の中学・高校レベルの数学問題に特化して学習しているため、それ以外の領域での性能は保証されません。
  • 合成データ(Qwen3による蒸留データ)を中心に学習しているため、学習データの分布から外れるパターンの問題では精度が低下する可能性があります。
  • 継続事前学習は当初計画していたものの、リソース・スケジュールの制約により未実施です。

ライセンス

Apache License 2.0

引用

@misc{llm-jp-4-math-lion,
  title={llm-jp-4-math-lion: Two-Stage SFT with Self-Consistency for Japanese Math Reasoning},
  author={azuki-digital},
  year={2026},
  url={https://huggingface.co/azuki-digital/llm-jp-4-math-lion}
}
Downloads last month
205
Safetensors
Model size
9B params
Tensor type
BF16
·
Inference Providers NEW
This model isn't deployed by any Inference Provider. 🙋 Ask for provider support

Model tree for azuki-digital/llm-jp-4-math-lion

Adapter
(1)
this model

Datasets used to train azuki-digital/llm-jp-4-math-lion

Evaluation results