はじめに※1/10追記:コメントでご指摘いただきましたが、キャプションが有効(CrossAttentionが存在する)なのはblock 1, 2, 4, 5, 7, 8, 12, 16 ~ 24です。他のblockのキャプションは無視されます。確認が足らず失礼いたしました。 ご指摘いただいたgcem156氏に感謝します。 U-Netの構造については以前の記事に書きました。 U-NetはText Encoderからの出力を受け取り、それに沿うように(プロンプトを再現するように)画像生成を行いますが、Text Encoderの出力はU-Netのブロックそれぞれに渡されます。つまり25個のブロックそれぞれで受け取っていることになります。 通常はそれぞれが同じプロンプトの情報(conditioning)を受け取りますが、別々にすることも可能ではないか、ということで試してみたのがこの記事になります。