はじめに
前回の続きです。touch-sp.hatenablog.com
より良い結果を求めて設定をいろいろいじってみました。
今回はデータセットを二つ用意しました。
一つ目は前回と同じもの(36枚)です。
二つ目は新たに写真撮った28枚です。
テキストエンコーダーの学習ありなし
「--train_text_encoder」でテキストエンコーダーも学習させることができるらしいです。その効果を検証してみました。データセット1
テキストエンコーダーの学習あり
テキストエンコーダーの学習なし
データセット2
テキストエンコーダーの学習あり
テキストエンコーダーの学習なし
今回の二つのデータセットでは、両方ともテキストエンコーダーの学習がない方が良い結果が得られています。
データセット1の方がデータセット2よりも結果がよさそうなのは単純に画像の枚数が多い(36枚と28枚)からでしょうか。
データセット1 + データセット2
だったら二つのデータセットを合わせて合計64枚にしてテキストエンコーダーの学習なしで学習すれば良いのでは?実際にやってみました。テキストエンコーダーの学習なし(learning_rate=1e-4)
あまりうまくいっていません。なぜでしょうか?
学習率を変更してみます。
テキストエンコーダーの学習なし(learning_rate=1e-3)
さすがに1e-3は大き過ぎたようです。全く学習されていません。
テキストエンコーダーの学習なし(learning_rate=1e-5)
これもダメですね。
prior_preservationあり、テキストエンコーダーの学習なし(learning_rate=1e-4)
「prior_preservationあり」も試しましたが全然ダメでした。--with_prior_preservation --prior_loss_weight=1.0 \ --class_data_dir="robot-class-images" \ --class_prompt="a photo of robot" \ --num_class_images=200