画像と文章をつなげるモデル OpenAI CLIPを用いた「CLIPアート」
👨‍👩‍👦

画像と文章をつなげるモデル OpenAI CLIPを用いた「CLIPアート」

Entry
画像と文章をつなげるモデル OpenAI CLIPを用いた「CLIPアート」
Simple Title
OpenAI CLIP + Image Generation Models = CLIP art
Description
画像とテキストの関連性の高さを判定するモデルCLIPを用いて、生成される画像を最適化 → テキストの入力にあった画像が生成
Type
Project
Posted at
Jul 17, 2021
Tags
artimagecross-modal
Year
2021
Arxiv
"Walking through the street of Tokyo" というテキストをもとに生成した画像
"Walking through the street of Tokyo" というテキストをもとに生成した画像
'cover of new Aphex Twin album painted by Picasso, hyperrealistic'
'cover of new Aphex Twin album painted by Picasso, hyperrealistic'

Overview

  • 画像とテキストがどのくらいマッチしているかを判定するモデルOpenAI CLIPと既存の画像生成モデルを組み合わせて画像を生成する仕組みに注目が集まっている。
  • "GAN Art"に続いて、多くの"AI Artist"が実験を進めている最新の手法!
システムの概念図
システムの概念図

Technology/System

  • 画像とテキストをつなげる (どのくらいマッチしているかを判定する)モデル、OpenAI CLIPと、既存の画像生成モデル(BigGAN, StyleGANなど) をつなげることで、テキストからそれにあった画像を生成する。
  • CLIPが算出する生成画像と入力テキストとの距離を最小化するように、生成モデルへの入力のベクトル(latent vector)をBackpropagationで最適化していく。
システム図

  • CLIP自体がもともとインターネット上で集めた画像とそれに付随するテキストで学習していることもあり、この仕組みで生成された画像は、(インターネット上にある)集合知、私たちの集合的な知識やイメージを圧縮したようなものになりがち。
DALLE-EとCLIP+画像生成モデルで作った画像の比較
  • OpenAIはCLIPと同時にテキストから画像を生成するモデル DALL-E を発表しているが、学習済みのDALL-Eモデルは公開されていない。上の画像で見るように、DALL-Eを使うよりもCLIPと画像生成モデルを組み合わせた方が(精度という意味では劣るが)意外性のある面白い結果になる。
  • "unreal engine" "hyper real"と言ったキーワードを足すことで、生成される画像がより「きれい」になることがわかっている。
  • "ghibli style"(ジブリ風)というキーワードを足すと、アニメっぽくなることもわかっている。

Results

  • 固有名詞をきちんと認識している

"Perfume at Tokyo Dome, hyperrealistic"

"Perfume at Tokyo Dome, hyperrealistic" きちんとPerfumeが三人組であることが理解できている。
"Perfume at Tokyo Dome, hyperrealistic" きちんとPerfumeが三人組であることが理解できている。

"Perfume at Tokyo Dome"

"Perfume at Tokyo Dome"
"Perfume at Tokyo Dome"

同じインプットでも、hyper realistic, unreal engineなどの単語を取り除くと、急に荒っぽい結果になる。

「東京の街を歩く」と「新宿の街を歩く」の違い。新宿は夜の街! (看板のように見えるのは unreal engineのロゴ?)

"Walking through the street of Tokyo, unreal engine"
"Walking through the street of Tokyo, unreal engine"

ちなみにパリだと...

"Walking through the street of Paris"
"Walking through the street of Paris"
"Walking through the street of Shinjuku, unreal engine"
"Walking through the street of Shinjuku, unreal engine"

  • その他
"Tokyo 2020 Olympics, unreal engine"
"Tokyo 2020 Olympics, unreal engine"
"Pole vault in Shibuya, unreal engine"
"Pole vault in Shibuya, unreal engine" 渋谷での棒高跳び
"AI DJ project, unreal engine"
"AI DJ project, unreal engine"
"Totoro vs Godzilla, unreal engine"
"Totoro vs Godzilla, unreal engine" トトロ対ゴジラ

  • Twitter上でも多くの「AIアーティスト」たちが実験結果を発表している。

↑ "ghibli" ジブリをキーワードに追加した結果

Further Thoughts

  • 創作活動の中で、アーティストは常に作り手の立場と批評家の立場を行き来することが必要、とよく言われるが、まさにそれを体現しているのがこのシステム。
  • ネット上の集合意識が圧縮して表出するかのよう。
  • "unreal engine" "ghibli style" といった言葉を追加することで生成される画像が大きく変わるのも面白い。どういうキーワードを使うか、使う側の想像力が試される。
  • 今後の実験でまた新しいキーワードが見つかるかも。

Links

OpenAI CLIP

参考記事

テストに使ったGoogle Colab Notebook