投稿

JapanRailwayLLM開発記録 Google Colabからkaggleへ移行し、10,000step学習を突破/JapanRailwayLLM Development Log Migrating from Google Colab to Kaggle and Surpassing 10,000 Training Steps

JapanRailwayLLM開発記録 Google Colabからkaggleへ移行し、10,000step学習を突破 日本の鉄道知識に特化したLLM「JapanRailwayLLM」の継続学習環境を構築し、最終的に10,000stepを超える長期学習に成功した。 今回は学習性能だけでなく、以下の運用環境整備が大きな成果となった。 Google ColabからKaggleへの移行 自動チェックポイント運用 Hugging Face連携 長期学習の安定化 プロジェクト概要 ベースモデルは Gemma 2 9B Instruct を採用し、LoRAによる追加学習を実施した。 目的は、日本の鉄道技術・保安装置・運転保安・電化方式・信号システム・車両システムなどの知識を重点的に習得した日本語鉄道特化モデルの構築である。 データセット 学習データは複数のJSONLファイルから構成される。 データセット数: 7ファイル 総サンプル数: 41,879サンプル 学習環境 初期環境:Google Colab 長時間学習では以下の問題が発生した。 GPU利用制限 セッション切断 ランタイム消失 改善後:Kaggleへ移行 学習途中で checkpoint-4000 を保存し、Kaggleへ移行。その後は以下のように継続学習を行った。 checkpoint-4000 checkpoint-5000 checkpoint-6000 checkpoint-7000 checkpoint-8000 checkpoint-9000 checkpoint-10000 チェックポイント運用 500stepごとに自動保存する仕組みを導入。 生成例: checkpoint-4500 checkpoint-5000 checkpoint-5500 checkpoint-6000 checkpoint-6500 checkpoint-7000 checkpoint-7500 checkpoint-8000 checkpoint-8500 checkp...

JapanRailwayLLM LoRA ― 60ステップで完成したはずが、再び学習し直すことになった話/JapanRailwayLLM LoRA — A Model That “Finished” in 60 Steps, Yet Needed to Be Retrained from Scratch

JapanRailwayLLM LoRA ― 60 ステップで完成したはずが、再び学習し直すことになった話 Gemma 2 9B IT をベースにした JapanRailwayLLM LoRA の開発を始めた当初、私は「まずは最小限のステップでモデルを形にする」ことを目標にしていました。 Google Colab と Unsloth を使い、学習ステップはわずか 60 step 。処理も軽く、 LoRA の保存も問題なく、 Hugging Face へのアップロードまでスムーズに進みました。 「これでひとまず完成だろう」 そう思っていたのですが、推論テストで予想外の問題が発生します。 ■ 60 ステップ版 LoRA で発生した違和感 LM Studio でアップロード済みモデルを試すと、鉄道用語は多少出るものの、 回答が極端に短い あるいは 空のまま終了する という現象が多発しました。 特に深刻だったのが、以下のような出力です。 <start_of_turn>model <end_of_turn> これは典型的な 「回答の枠組みだけ学習し、本文が学習されていない」 状態です。 この時点で私は、 「 LoRA 自体は壊れていない。学習データかコードに問題がある」 と判断しました。 ■ 原因調査:学習データとコードの両方に不備があった 調査を進めると、学習に使った JSONL の中に複数の問題が見つかりました。 output が空の行が混入 instruction/output 形式と text 形式が混在 chat template の BOS が二重に入る データ件数が少ないのに 9B モデルへ学習させていた 特に致命的だったのは 回答が空のデータ です。 コード {"instruction": "ATC とは? ", "output": ""} このようなデータが混ざると、モデルは 「回答しない癖」 を学習してしまいます。 さらに、学習コード側でもテンプレート構造が統一されておらず、 「 60 ステップで完成した」というより 60...

半トンネルの中の起動【Eco Power Locomotive列車集】#210 YouTubeサムネイル集/Departure in the Half‑Tunnel Eco Power Locomotive Train Collection #210

イメージ
半トンネルの中の起動【Eco Power Locomotive 列車集】#210 9 月は撮影に出られる日が少なく、気分転換でふらっと新秋津へ向かったところ、 偶然にも台湾鉄道(台鉄) E500 型の甲種輸送に遭遇する という嬉しい出来事がありました。 新秋津の高架橋下は半分だけ覆われた独特の構造で、 まるで “ 半トンネル ” のような雰囲気があり、 その中を力強く起動していく機関車の姿が印象的だったため、 今回のタイトルを 「半トンネルの中の起動」 と名付けました。 久しぶりの撮影でしたが、 貨物列車の鼓動と、思いがけない甲種との出会いが、 とても良いリズムを取り戻してくれた一日でした。 ※この動画には台湾甲種の動画はありません 撮影日 列車番号 形式・編成 撮影場所 2026 年 10 月 1 日 72 レ EF210-361 +コキ 新秋津 2026 年 10 月 1 日 75 レ EF210-376 +コキ 新秋津 2026 年 10 月 1 日 5582 レ EF210-122 +タキ 東所沢 2026 年 10 月 1 日 甲 9795 レ DD200-19 + 台鉄 E500 型( E572 + E571 ) 新秋津 2026 年 10 月 1 日 2080 レ EH500-22 +コキ 新秋津 2026 年 10 月 1 日 2088 レ EH200-20 +コキ 200 +コキ 東所沢 2026 年 10 月 6 日 1094 レ EF210-376 +コキ 200 +コキ ...