日本語事前学習用20Bコーパス: japanese-pretrain-20b

日本語85%・コード15%で構成された20Bトークンの事前学習向けコーパスを構築。2段階クリーニングとSentencePiece BPEによるトークナイズ、Base ModelによるPPL 7.69の実測検証記録。

Intro

LLMでは学習データセットの質と量が完成モデルの品質を大きく左右します。また、事前学習を始める前の準備段階において、コーパス収集・クリーニング・トークナイザーの作成・バイナリ化などのデータエンジニアリングには多くの手間がかかり、実際の事前学習開始までに1ヶ月以上を要することも珍しくありません。

こうした準備コストを最小化し、すぐに事前学習へ投入できるよう、日本語とコードのデータセットを指定比率で混合し、20のファイルにシャーディングしたコーパスデータセット japanese-pretrain-20b を構築し、Hugging Face上で公開しました。

本データセットはトークナイズ済みのバイナリ形式で提供されており、対応するトークナイザーも同梱しています。

ライセンスの都合上、Hugging Face上では承認制アクセスとしています。研究・実験での利用を希望される場合は、アクセスリクエストをお送りください。

データセット概要

項目内容
総トークン数20,000,000,000 (20B)
形式Raw binary (uint16, little-endian)
シャード構成part_01.bin ~ part_20.bin(各 1B トークン ≈ 1.86 GB)
Validation Splitval.bin(5M トークン、Train と非重複)
言語比率日本語 (85%) + Python コード (15%)

ソース構成

ソース比率ライセンス
FineWeb-Edu Japanese (hotchpotch/fineweb-2-edu-japanese)55%ODC-By 1.0 / Common Crawl ToU
日本語 Wikipedia25%CC BY-SA 4.0 / GFDL
CodeParrot (codeparrot/codeparrot-clean, permissive only)15%MIT / Apache-2.0 / BSD / CC0 / Unlicense
青空文庫5%パブリックドメイン

トークナイザー

カスタム SentencePiece BPE トークナイザーを採用しています。リポジトリに tokenizer.model を同梱しています。

設定値
ライブラリSentencePiece
モデルタイプBPE (byte_fallback=true)
語彙サイズ28,000
pad_id0
unk_id1
bos_id2
eos_id3
character_coverage1.0

ビルド & クリーニング

2段階クリーナーによる SEO・スパム・広告・ナビゲーションテンプレートの除去と、doc-level / paragraph-level の重複排除を適用済みです。

使用したクリーナーは非常に強力なため、ノイズ除去を徹底した反面、スラングや崩れた口語文など「Web上の雑多な表現の自由度」を持たせたいモデルの学習には向きません。高品質な知識・推論ベースの事前学習を主眼としています。

品質検証

事前学習済みモデル rsu/x10-500M-v1 を使用し、本コーパスに対する言語モデリング性能(Perplexity)を実測・検証済みです。

評価項目設定 / 測定値
検証モデルrsu/x10-500M-v1 (500M params, Base Model)
コンテキスト長1,024 tokens
評価トークン数51,200 tokens (Shard 01)
Average Loss2.0398
Perplexity (PPL)7.69

語彙サイズ 28,000 に対し、PPL 7.69 と極めて低い値を記録しており、トークナイザー定義の完全な一致と高いテキスト整合性を確認しています。

利用上の注意

  • 本データセットは機械学習・事前学習目的での使用を意図しています。
  • 本データセットで学習したモデルの重みのライセンス上の取り扱いは、適用される法域・使用した素材・モデルアーキテクチャ・学習プロセスその他の事情によって異なる場合があります。学習済みモデルおよびその派生物に適用されるライセンス・法的要件の判断は、利用者自身の責任において行ってください。
  • 目標とするソース比率を実現するため、一部のソースデータセットからは繰り返しサンプリングを行っています。
  • 再配布・商用利用を行う場合は、各ソースのライセンス条件を各自でご確認ください。

Outro

日本語とコードのバランス、トークナイザーの語彙設計、そして徹底したクリーニングにより、個人でもダウンロード後すぐに事前学習を回せる実用的なコーパスが完成しました。