llm-jp-3-13b-finetune
llm-jp3-13b finetuned by the first dataset of the ichikara-instruction data (as of Dec 2024).
Model Details
Model Description
本モデルは松尾研究室が主宰した
Deep Learning 応用講座 2024 Summer の最終課題の一環として
Masahiro Kasahara が作成した日本語 LLM である。本モデルはベースモデルを
llm-jp-3-13b とし、supervised finetuning により作成した。
Uses
講義に関連しない方が利用したいような特筆すべき特徴はこの LLM には含まれていない。
License
llm-jp-3-13b は Apache 2.0 ライセンスであるが、finetuning に利用したデータが
CC-BY-NC-SA ライセンスであるため、安全のために本モデルのライセンスも CC-BY-NC-SA とする。
Training Details
Training Data
Finetuning 用のデータとして
ichikara-instruction を用いている。
Training Procedure
Preprocessing
ichikara-instruction の全データを用いた。但し、JSON として invalid な文字列が含まれていたため一部修正を行っている。
VBA のマクロを LLM に答えさせる数個のプロンプトにおいて \ や " のエスケープ処理が Python の json module で読み込めない流儀になっている。
おそらくデータ生成者が使っているツールとエスケープシークエンスの仕様が異なっているのだろう。
データを人力で修正したうえで、同様の(問題のある)パターンを Perl で一括置換するプログラムを作り元の zip ファイルから全自動で置換処理を行った。
Training Hyperparameters
訓練に用いたハイパーパラメーターは LoRA_template_20241127.ipynb を踏襲している。
ハイパーパラメーターチューニングを試みたが〆切までに結果の検証までには至らなかった。
- optimizer: paged_adamw_32bit
- number of epochs: 1
- per device training batch size: 1
- gradient accumulation steps: 2
- warmup steps: 10
- learning_rate: 5e-5 (default)
- group_by_length: True
Training
当初は ichikara-instruction の全データを用いて LoRA による finetuning を行ったが、同じ単語を繰り返すようになってしまうなど性能は大幅悪化した。
このため、最初の1データセットのみを学習に使うように切り戻している。
バッチサイズが小さいので学習率を下げるか、事前学習のデータを混ぜて忘却が起こりにくくする必要がありそうであるが、何れにせよハイパーパラメーターチューニング等で様々な検証が必要であることが分かった。
推論方法
Model_Inference_Template_20241127.ipynb において
model_id = "llm-jp/llm-jp-3-13b"
adapter_id = "mkasahara/llm-jp-3-13b-finetune"
の部分を変更するだけで推論可能。
多くの出力が途中で途切れていたので max_new_tokens を増やすことをトライした (学習時の padding size 500 を試した) が、1時間の推論制限時間を明らかに超えていると思われたためにデフォルトに切り戻している。