Q: いいねと思ったものに紐づいてるプロンプトをより多く試すってこと?
素朴な解決策: N個の過去に使われたプロンプトの中から良い絵が出そうなものを再利用する
というわけでプロンプト全体をスロットとみなしてトンプソンサンプリングをするのが説明する上では素直な次のステップなのだけど実際の僕はそのステップを飛ばして先に進んだ。
プロンプトを全体で単一のスロットだと考えるのではなく、部分部分の決定をした後で組み合わされたものだとみなす。
img2promptが生成したキーワードもプロンプト生成に使われるので、僕の知らない単語がプロンプトに使われてたりする。 例えば「この画像のプロンプトに書いてあるwhimsicalってどういう意味だ?」みたいになったりする(昨日わからなかったので辞書で調べた単語w)
歴史的には、まず先に「良さそうな部品をランダムに選んで、組み合わせてプロンプトを作るコード」を作って運用していた。 この時は、この「良さそうなキーワード」は「過去にいいねしたプロンプト」から統計的に分析して、出現頻度の高いキーワード一覧を作って、人間がそれを見て上位のものをチョイスした。 その後で、この「分析して上位からn個を選び、それを確率1/nで使う」の部分がトンプソンサンプリングに置き換えられた。
9/9に画家の発見の件で「img2promptを生成画像に使うのも予期せぬ発見があって面白いぞ」ってなった 9/10にgood判定した生成画像をまとめて変換するようにした 9/12にコンピュータがランダム組み合わせでプロンプトを生成するようにした 9/18にトンプソンサンプリングの形になった