画像生成AI「NovelAI」が512×512以外の解像度でトレーニングする「Aspect Ratio Bucketing」をMITライセンスで公開
文章や画像を自動生成するAI「NovelAI」に用いられている、出力する画像の質を大きく向上させる「Aspect Ratio Bucketing」がオープンソースソフトウェアライセンス・MITライセンスで公開されました。この技術は、画像生成AIの問題として認識されていた不自然に切り取られた画像が生成される問題を解決するためのものです。
GitHub - NovelAI/novelai-aspect-ratio-bucketing: Implementation of aspect ratio bucketing for training generative image models as described in: https://blog.novelai.net/novelai-improvements-on-stable-diffusion-e10d38db82ac
https://github.com/NovelAI/novelai-aspect-ratio-bucketing
NovelAI Improvements on Stable Diffusion | by NovelAI | Oct, 2022 | Medium
https://blog.novelai.net/novelai-improvements-on-stable-diffusion-e10d38db82ac
「不自然に切り取られた画像が生成される」というのは既存の画像生成モデルが抱える問題の1つ。その原因は、正方形の画像を生成・出力するようトレーニングされているのに、学習元となる写真やアートワーク、美術作品は正方形ではないものが多いことにあります。
画像生成モデルのトレーニング時はGPU効率最適化のため、一度に複数のトレーニングサンプルを操作するのが一般的です。このため妥協案として、正方形ではない画像は中央を正方形に切り取ってトレーニングに利用されてきました。
具体例は以下。王冠をかぶった騎士の画像ですが、縦長なのでトレーニングでは中央部が切り取られてしまいます。ここも問題点の1つで、元画像のタグとして「王冠」が入っていても、トレーニングで用いるにあたって「王冠」は消失してしまっています。これは中央部切り取りをやめてランダム切り取りにしてもわずかな改善しかみられなかったとのこと。
解決法として考えられるものの1つは、固定サイズのキャンバスに画像が収まるように貼り付けて、不要部分はマスクをかけるというものですが、トレーニング時に不要な計算が発生することになります。
そのために編み出されたのが「Aspect Ratio Bucketing」です。この方法は、データセットの画像をもとにして「256×1024(アスペクト比0.25)」「320×1024(アスペクト比0.3125)」「384×1024(アスペクト比0.375)」「384×960(アスペクト比0.4)]「512×512(アスペクト比1)」のように複数のバケットを用意し、画像を最も近いバケットに割り当てて、各バケットを偏りなくトレーニングするというもの。
Waifu diffusion v1.4でAspect Ratio Bucketingを実践したgcem156氏によると、余白や見切れに関して改善効果が多少見られたとのことです。
Waifu diffusionの新しい追加学習方法を試してみた。(Aspect ratio bucketing)|gcem156|note
https://note.com/gcem156/n/n2fd6d96fb36a
・関連記事
イラスト特化画像生成AI「NovelAI」に入力するプロンプト・呪文を日本語の選択肢から簡単に作成できるウェブアプリ「Magic Generator」の使い方まとめ - GIGAZINE
イラスト画像から逆向きに画像生成AIのプロンプト用にDanbooruタグを見つける「Deep Danbooru」を「AUTOMATIC1111版Stable Diffusion web UI」で使う方法まとめ - GIGAZINE
超高精度なイラストを生成できると話題の「NovelAI」は本家Stable Diffusionにどんな改善を加えたのか? - GIGAZINE
・関連コンテンツ