AIアートを簡単に試せるDeep Dazeをインストールする

AIアートを簡単に試せるDeep Dazeをインストールする データ分析

AIによる画像生成は、想像以上に簡単にできます。
自分の考えを表現したい人には、もってこいの技術かもしれません。

画力がなくても、プログラミングができればイメージで表現できます。
AIを育てて絵を描くというのは、新たなジャンルですよね。
今後、新たな趣味として、進化していくかもしれません。

Deep Dazeであれば、そんなAIによる画像生成を簡単に体験できます。

本記事の内容

  • Deep Dazeとは?
  • Deep Dazeのシステム要件
  • Deep Dazeのインストール
  • Deep Dazeの動作確認

それでは、上記に沿って解説しましょう。

Deep Dazeとは?

Deep Dazeとは、OpenAIのCLIPとSirenを組み合わせたモノです。
Pythonのライブラリとして、Deep Dazeをインストールすることができます。

Sirenは、Sinusoidal representation networksの略称です。
詳細は、下記の論文に記載されています。
https://arxiv.org/abs/2006.09661

Sirenを簡単に言うと、フーリエ変換の仕組みと言えます。
この考え方により、画像や音声などを効率良く生成できるとだけ覚えておきましょう。

CLIPに関しては、次の記事で解説しています。

そして、Deep Dazeの機能を説明しておきます。
Deep Dazeを利用すると、次のような画像を作成できます。

上の画像は、「a psychedelic experience on LSD」というテキストをもとに作成されています。
日本語だと、「LSDによる幻覚体験」ということですね。

LSDの経験がないので、実際はわかりません。
でも、それらしい感じはします。

Deep Dazeを使えば、言葉を画像にできます。
これは、今までにない体験であり感覚です。
一度は、実際に味わってみてほしい経験と言えます。

以上、Deep Dazeについて説明しました。
次は、Deep Dazeのシステム要件を確認します。

Deep Dazeのシステム要件

現時点(2021年9月)でのDeep Dazeの最新バージョンは、0.10.2となります。
この最新バージョンは、2021年4月8日にリリースされています。

サポートOSに関しては、以下を含むクロスプラットフォーム対応です。

  • Windows
  • macOS
  • Linux

公式(GitHub)上には、特に記載はありません。
ただ、100%Pythonであり、OS依存の箇所は見当たりません。

サポート対象となるPythonのバージョンは、Python 3.6と記載されています。
しかし、setup.pyを見てもバージョンによる制約はありません。

このような場合、Python 3.6以降であれば問題ないでしょう。
私は、次のバージョンで検証しています。

>python -V 
Python 3.9.6

実際、上記バージョンにおける動作に問題はありません。
Deep Dazeで最も注意すべきは、PyTorchです。

GPU対応版のPyTorchを利用したいなら、事前にインストールする必要があります。
そうしないと、CPU版のPyTorchが自動でインストールされてしまいます。

Deep Dazeのsetup.py

  install_requires=[ 
    'einops>=0.3', 
    'fire', 
    'ftfy', 
    'imageio>=2.9.0', 
    'siren-pytorch>=0.0.8', 
    'torch>=1.7.1', 
    'torch_optimizer', 
    'torchvision>=0.8.2', 
    'tqdm', 
    'regex' 
  ],

上記の指定だと、CPU版のPyTorchがインストールされることになるからです。
それだと困るので、GPU版のPyTorchを事前にインストールします。
PyTorchのインストールは、次の記事で解説しています。

以上、Deep Dazeのシステム要件を説明しました。
次は、Deep Dazeをインストールしていきます。

Deep Dazeのインストール

まずは、現状のインストール済みパッケージを確認しておきます。
この時点では、GPU版のPyTorchをインストールしているだけです。

>pip list
Package           Version
----------------- ------------
numpy             1.21.2
Pillow            8.3.1
pip               21.2.4
setuptools        57.4.0
torch             1.9.0+cu111
torchaudio        0.9.0
torchvision       0.10.0+cu111
typing-extensions 3.10.0.2

次にするべきことは、pipとsetuptoolsの更新です。
pipコマンドを使う場合、常に以下のコマンドを実行しておきましょう。

python -m pip install --upgrade pip setuptools

では、Deep Dazeのインストールです。
Deep Dazeのインストールは、以下のコマンドとなります。

pip install deep-daze

インストールは、すぐに終わります。
では、どんなパッケージがインストールされたのかを確認しましょう。

>pip list
Package           Version
----------------- ------------
colorama          0.4.4
deep-daze         0.10.2
einops            0.3.2
fire              0.4.0
ftfy              6.0.3
imageio           2.9.0
numpy             1.21.2
Pillow            8.3.1
pip               21.2.4
pytorch-ranger    0.1.1
regex             2021.8.28
setuptools        57.4.0
siren-pytorch     0.1.5
six               1.16.0
termcolor         1.1.0
torch             1.9.0+cu111
torch-optimizer   0.1.0
torchaudio        0.9.0
torchvision       0.10.0+cu111
tqdm              4.62.2
typing-extensions 3.10.0.2
wcwidth           0.2.5

それなりの数のパッケージが、インストールされました。
やはり、画像を生成する以上は依存パッケージも多くなるでしょう。

このような場合には、Pythonの仮想環境の利用がおススメです。

Windowsなら、IDEにPyCharmを使えば簡単に仮想環境を利用できます。
プロジェクト毎に仮想環境となります。

また、以下のようにコマンドでも簡単に仮想環境を利用できます。

以上、 Deep Dazeのインストールについて説明しました。
最後は、 Deep Dazeの動作確認を行います。

Deep Dazeの動作確認

Deep Dazeには、以下の二つの利用方法があります。

  • コマンドラインツール
  • API

今回の動作確認は、コマンドラインツールで行います。

最初に、コマンドプロンプトかPowerShellを起動します。
画像にしたいテキストとともに、「imagine」コマンドを実行。

imagine "a house in the forest"

「”a house in the forest”」の部分は、他のテキストにしても問題ありません。
ただし、テキストによっては意味不明の画像になる可能性があります。

そのため、公式で記載のある「”a house in the forest”」を利用しています。

しかし、ここで注意すべきことを述べておきます。
それは、処理に時間がかかるということです。

以下は、検証で用いたマシンスペックです。

CPUインテル Core i9 9900KF
GPUNVIDIA GeForce RTX 2060 SUPER
メモリ16GB

上記スペックでは、処理に約4時間かかりました。
CPU版のPyTorchを使ったら、一体どれほどの時間がかかるのでしょうか?
想像すると、ちょっと恐ろしいですね。

そして、約4時間かけて出来上がった画像は以下。

確かに、森の中に家のようなモノが見えます。
しかし、出来上がった画像の質は明らかに低いです。

他のテキストにしたら、結果は異なるのかもしれません。
でも、また4時間待つのはちょっと・・・・

それなら、Deep Dazeの代替品を試してみてはどうでしょうか?
と言うより、明らかに Big Sleepの方が質の高い画像を作成してくれます。
Big Sleepについては、次の記事で説明しています。

以上、Deep Dazeの動作確認を説明しました。

タイトルとURLをコピーしました