GPT-2をファインチューニングせずに125MのLMをゼロから学習 — 重み+SFTフレームワークを公開し、他の人が拡張できるようにする

Reddit r/LocalLLaMA / 2026/4/14

📰 ニュースSignals & Early TrendsTools & Practical UsageModels & Research

要点

  • 著者は、独自の16k BPEトークナイザを用いて、12層・約125Mパラメータの因果言語モデルを完全にゼロから学習し、WikiText-103で約92kステップ後にバリデーションのパープレキシティ約6.19を報告している。
  • Hugging Face上で2つのチェックポイントを公開した:継続学習/ベースとなるLMと、DailyDialog上でLoRA(ランク8)を用いて、completion-onlyのマスク付き損失でファインチューニングしたインストラクション/会話バリアントである。
  • 公開内容は、「小規模なベースモデルスタック」として位置づけられており、大規模なマルチGPU基盤に頼らずに、トークナイズ、インストラクション・チューニング、ドメイン適応などを他者が変更して拡張できることを目指している。
  • 重みとともに、GitHub上でSFT(指示微調整)フレームワークも公開し、学習パイプラインを作り直さずに各自が自分用の派生モデルをファインチューニングできるようにしている。
  • 著者は同じアーキテクチャを約390Mへスケールする計画であり、約500Mパラメータ未満でも良好に機能するインストラクションデータセットについて助言を求めている。

125MのLMを最初から学習しました(カスタムトークナイザ)。さらに、インストラクト用のチェックポイントとSFTフレームワークも公開し、他の人が自分のバリアントを微調整できるようにしました

私は、小さな言語モデルを完全に最初から学習すること(GPT-2の初期化なし、借用したトークナイザなし)をいろいろ試していて、ここにいる他の人がその上に何か作れるように共有したいと思いました。

カスタムの16k BPEトークナイザを使って、WikiText-103 + TinyStories で12層・125Mパラメータの因果LMを学習しました。学習は約92kステップで行い、WikiText-103で検証時のパープレキシティは約6.19に到達しました。

その後、DailyDialog(約87kの例)でLoRA(rank 8)を使い、完了部分のみのマスク付き損失で会話向けバリアントも学習し、アダプタをスタンドアロンのチェックポイントにマージしました。

こちらで両方公開しています:

ベースモデル(継続LM):

https://huggingface.co/MaheshwariSujal/librarian-base-130m

インストラクト版(対話調整):

https://huggingface.co/MaheshwariSujal/Librarian-Instruct-130m

もちろん、これらは最新の1B+のインストラクトモデルと競合するものではありません。目的は、人が実際に改変できる、きれいな小規模のベースモデル一式を作ることでした。

また、同じものを使って微調整できるように、私が使ったSFTフレームワークも公開します。パイプラインを作り直すことなく、自分のバリアントを微調整できます:

https://github.com/sujal-maheshwari2004/Librarian-SFT

もし誰かが、命令チューニングの実験や、トークナイザの変更、ドメイン適応などをするために、マルチGPU環境を用意せずに、軽量(約125M)のベースモデルが欲しいのであれば、これは妥当な出発点になるはずです。

同じアーキテクチャを次は約390Mまでスケールする予定です。もし、~500Mパラメータ未満でもうまく動く強力なインストラクション用データセットについて提案があれば、ヒントをいただけると嬉しいです。

submitted by /u/Kill_Streak308
[link] [comments]