ChiTako/unofficial-photon-repro-ja-250m-v4-2b
unofficial-photon-repro-ja-250m-v4-2b
非公式の個人プロジェクトです。 論文 arXiv:2512.20687 の PHOTON アーキテクチャを独自にゼロから実装・学習したもので、論文著者や特定の組織とは 一切無関係です。公式リリースの重み・データ・コードは使用していません。 研究用の実験成果物であり、製品ではありません。
日本語向けの PHOTON 階層型自己回帰言語モデル。総パラメータ 252M / トークンあたり 活性 100M。全 Transformer スタックが細粒度 MoE(補助損失フリー負荷分散)です。
このモデルの存在理由は1つの測定です。 同じ設計で 8B(総パラメータ32倍)を 344M トークン学習させたところ、250M を 200M トークン学習させたものに負けました。律速は アーキテクチャではなくトークン予算だ、という仮説の検証として、アーキテクチャを固定 したまま学習トークンを 10 倍(200M → 2.0B)にしたのがこのモデルです。
結果
4 モデルすべてを同一の held-out スライスで測り直した bits per character(低いほど良い)。 perplexity はトークナイザを跨げないので BPC で比較しています。
青空文庫は 8B の学習混合にのみ含まれるため、その行は比較対象外です。
- 日本語 Wikipedia で従来最良比 6.2% 改善。 どちらも学習していない青空文庫でも 3.3% 改善
- 8B(344M トークン)に日本語で 11% 勝ちます — パラメータ 1/32、学習計算量 約 1/5 で
- BPC はトークン数に対して最後まで対数線形で、頭打ちになっていません
学習
llm-jp corpus v3 から 2.0B トークン(日本語 60% / 英語 25% / コード 15%)。 Muon + AdamW ハイブリッド、WSD スケジュール(1-sqrt cooldown)、MTP depth 1、 scheduled sampling 0.25、最後の 15% は日本語高品質ソース中心の中間学習。 AMD Instinct MI210 1枚で 17 時間(東工大 ACRi ルーム as006、ROCm 6.4)。
held-out はファイル単位で分離しています。学習は日本語 Wikipedia dump の 先頭 2 ファイルを開かず、評価は公開済みモデルと同一のスライスで行っています。
制限
- 英語は 250m-v4 に負けます(1.5428 対 1.5078)。学習環境にあった英語コーパスが C4 のみで、数学コーパスは存在しませんでした。混合の制約であって実行の問題ではありません
- instruct モデルではありません。 事前学習のみで、対話・指示追従の調整をしていません
- 日本語として文法・表記は正しく局所的な意味も通りますが、長い文脈では破綻します
transformersのアーキテクチャではないため、AutoModelでは読めません
使い方
git clone https://github.com/<your-repo>/PhotonJP && cd PhotonJP
pip install -r requirements.txt
python scripts/generate.py --ckpt <このリポジトリ> --tokenizer <このリポジトリ> \
--prompt "日本の首都は"生成は HierGen(全レベルのエンコーダ状態を保持)を使ってください。学習時の 教師強制分布と厳密に一致します(fp32 で一致率 100.0% / KL 0.000 を確認済み)。 より安価な RecGen / ChunkGen はこのモデルでは成立しません(6.5〜10.5%)。
引用
@article{ichikawa2025photon,
title = {PHOTON: Hierarchical Autoregressive Modeling for Lightspeed and
Memory-Efficient Language Generation},
author = {Ichikawa, Yuma and Takagi, Naoya and Nakagawa, Takumi and
Kanazawa, Yuzi and Sakai, Akira},
journal= {arXiv preprint arXiv:2512.20687},
year = {2025}
}