データセットとは、sd-scriptsの教師画像群を管理するための、
テキストファイルのようなものです。
sd-scripts上の画像管理リスト
学習の上級者向け機能です。
使いこなせば、完全自作のモデルを作る速度が一気に向上します。
概要
- 公式解説:
https://github.com/kohya-ss/sd-scripts/blob/main/docs/config_README-ja.md - toml形式ファイルを、sd-scripts学習時に読み込ませて使用します。
- データセットによる学習は、metadeta(json形式)だけで運用する方法の、上位互換的な代替手段と言えます。
データセットの一例
# ここがグローバル設定になります。
[general]
shuffle_caption = true
# これは fine tuning やLoRAのfine tuning方式のデータセット
[[datasets]]
resolution = 1024
# [1024,1024]と同義。
[[datasets.subsets]]
image_dir = 'C:\piyo'
metadata_file = 'C:\piyo\piyo_md.json'
caption_suffix = "realitsic, Chara_1, drawn_by_piyopiyo"
keep_tokens = 0
num_repeats = 1
alpha_mask = true
[[datasets.subsets]]
image_dir = 'C:\hoge'
metadata_file = 'C:\hoge\hoge_md.json'
caption_suffix = "illust, Chara_2, hogehoge_artists"
keep_tokens = 1
num_repeats = 2
alpha_mask = false
使用する目的
- フォルダごとに指定内容を変えるのに重宝します。
- データセット例のように、追加タグの内容をフォルダ一式で変えたり、リピート数を容易に変更できます。
- これにより、調整ミスによる学習失敗からのリカバリー作業が、短時間でできるようになります。
作成方法
- 公式ドキュメントに必要最小限の情報が書いてあります。
まずはこれを読むと良いでしょう。
https://github.com/kohya-ss/sd-scripts/blob/main/docs/config_README-ja.md
学習用batでの指定方法
- 学習実行時に、作成したデータセットを指定するには、
--dataset_config="データセットフォルダの絶対パス"
を指定しましょう。 - train_data_dir、in_jsonオプションは不要です。
指定している人は削除してください。