どうもイトサル(@itosaru)です。
この記事では私がPaperspaceでKohya’s GUIを使うにあたって勘違いしていたこと、そして躓いたところなどについてお伝えします。
参考にした記事はこちら。

1. Pythonはローカルストレージを圧迫しなさそう
まずは勘違いしていたこちら。
Kohya’s GUIを使うにあたってPython本体を使うのですが、notebook配下に展開することになります。
notebook配下を使うのでローカルのストレージを使うと思っていたのですが、どうやら使わなさそう。

理屈はわかりませんがその分ストレージを使わないのはありがたい!
なのでPython本体がストレージを圧迫して料金が発生することはなさそうです。
2.accelerate configのコマンドの実行の仕方
sd-scriptsとKohya’s GUIのプログラムインストール後に実行する「accelerate config」コマンドですが、ipynbファイル上で実行すると思っていましたがエラーに…。
「accelerate config」はTerminalから実行する必要がありそうでした。
PaperspaceでTerminalを実行するための手順はこちら
1.左サイドメニューの「Terminals」をクリック

2.画面左上の[+]をクリック

3.画面下部にターミナル画面が表示される

3.必要なファイルが欠如していた
次は躓きの部分。
インストールしたsd-scriptsにはKohya’s GUIを実行するために必要な「ArgsList.py」というファイルがなぜか抜けており、File not foundのエラーが表示されました。
さすがにファイルがないとどうしようもないのでどうするか調べたところ、Git上にそのファイルが!
ファイルをダウンロード後にPaperspaceにアップロードすることで対応することができました。
その「ArgsList」は下のold-scriptsブランチにあります。(2023/6/17現在)
4. トレーニング用のフォルダ名に規則があった
さあいざ実行!と意気込んでコマンドを実行したら下のエラーが表示されました。
No data found. Please verify arguments (train_data_dir must be the parent of folders with images) / 画像がありません。引数指定を確認してください(train_data_dirには画像があるフォルダではなく、画像があるフォルダの親フォルダを指定する必要があります)
何度確認してもトレーニング用の画像はアップロードしてるしパスも合っている…なぜだ…。
と改めて使い方を確認したところ、トレーニング用の画像を格納するフォルダ名に命名規則があるそう。

「画像の枚数_sls フォルダ名」というようにしたところ無事画像フォルダを認識してくれるようになりました。
例)20枚の画像を使う場合:「20_sls img」
5. メモリを使いすぎ
これでいける!思いきや、実行中にこのようなエラーが
RuntimeError: CUDA out of memory. Tried to allocate 2.99 GiB (GPU 0; 15.90 GiB total capacity; 11.53 GiB already allocated; 2.85 GiB free; 12.19 GiB reserved in total by
PyTorch) If reserved memory is >> allocated memory try setting max_split_size_mb to avoid fragmentation. See documentation for Memory Management and PYTORCH_CUDA_ALLOC_CONF
どうやらメモリを確保しようとしたらメモリ不足したときに出るエラーのようです。
メモリ不足についてはいくつか要因があると思いますが、思いつくのはこんな感じ。
- 起動しているマシンのメモリが少ない(16GBないときつい)
- stable-diffusion WEB UIを起動している(待機でもメモリ使ってます)
- accelerate launchの「train_batch_size」オプションの数値が大きい(大きくとも2まで)
それらを突破して無事学習できました
私の場合はマシン起動した後に、accelerate launchのtrain_batch_sizeを1、もしくは2で実行したことで無事に学習させることができました!
PaperspaceでのKohya’s GUIの学習で躓いている方の一助になれば幸いです。
また、PaperspaceのProアカウント契約がまだ済んでいない方は、下のURLから登録していただくと、Paperspaceで使える$10分のクレジットがもらえます!

お得にPaperspaceを始められるのでぜひ使ってくださいね。
コメント