使用最新的Google Colab,使无法运行的StyleGAN2能够运行的方法
到2023年8月为止,Google Colab由于Python 3.10、TensorFlow 2.x和CUDA 11成为标准要求,无法简单地运行基于Tensorflow 1的StyleGAN2实现(没有任何方法符合要求)。
想不到的是,通过进行以下安装,我成功地在T4 GPU上执行了StyleGAN2和Toonify(截至2023年8月23日)。
-
- Python 3.8
-
- NVIDIA-TensorFlow 1.15.5+nv22.12
- gcc/g++ 8
关于脚本,没有特别需要进行修正的必要。
由於在Colab的單元格中無法以互動方式運行Python 3.8,因此需要事先將其作為py文件模塊創建,然後通過運行“!python hoge.py”命令來執行所需的處理。
# Python 3.8
!sudo apt-get install python3.8
!sudo apt-get update -y
!sudo update-alternatives --install /usr/bin/python3 python3 /usr/bin/python3.8 1
!sudo update-alternatives --config python3
!sudo apt install python3-pip
!sudo apt-get install python3.8-distutils
# NVIDIA-TensorFlow 1.15.5
!wget https://developer.download.nvidia.com/compute/redist/nvidia-tensorflow/nvidia_tensorflow-1.15.5+nv22.12-6638418-cp38-cp38-linux_x86_64.whl
!wget https://developer.download.nvidia.com/compute/redist/nvidia-dali-nvtf-plugin/nvidia_dali_nvtf_plugin-1.20.0+nv22.12-6638418-cp38-cp38-linux_x86_64.whl
!wget https://developer.download.nvidia.com/compute/redist/nvidia-dali-cuda110/nvidia_dali_cuda110-1.20.0-6562491-py3-none-manylinux2014_x86_64.whl
!pip install nvidia-pyindex
!pip install nvidia_dali_cuda110-1.20.0-6562491-py3-none-manylinux2014_x86_64.whl
!pip install nvidia_dali_nvtf_plugin-1.20.0+nv22.12-6638418-cp38-cp38-linux_x86_64.whl
!pip install nvidia_tensorflow-1.15.5+nv22.12-6638418-cp38-cp38-linux_x86_64.whl
# GCC-8
!sudo apt update
!wget http://mirrors.kernel.org/ubuntu/pool/universe/g/gcc-8/gcc-8_8.4.0-3ubuntu2_amd64.deb
!wget http://mirrors.edge.kernel.org/ubuntu/pool/universe/g/gcc-8/gcc-8-base_8.4.0-3ubuntu2_amd64.deb
!wget http://mirrors.kernel.org/ubuntu/pool/universe/g/gcc-8/libgcc-8-dev_8.4.0-3ubuntu2_amd64.deb
!wget http://mirrors.kernel.org/ubuntu/pool/universe/g/gcc-8/cpp-8_8.4.0-3ubuntu2_amd64.deb
!wget http://mirrors.kernel.org/ubuntu/pool/universe/g/gcc-8/libmpx2_8.4.0-3ubuntu2_amd64.deb
!wget http://mirrors.kernel.org/ubuntu/pool/main/i/isl/libisl22_0.22.1-1_amd64.deb
!sudo apt install ./libisl22_0.22.1-1_amd64.deb ./libmpx2_8.4.0-3ubuntu2_amd64.deb ./cpp-8_8.4.0-3ubuntu2_amd64.deb ./libgcc-8-dev_8.4.0-3ubuntu2_amd64.deb ./gcc-8-base_8.4.0-3ubuntu2_amd64.deb ./gcc-8_8.4.0-3ubuntu2_amd64.deb
# G++-8
!wget http://mirrors.kernel.org/ubuntu/pool/universe/g/gcc-8/libstdc++-8-dev_8.4.0-3ubuntu2_amd64.deb
!wget http://mirrors.kernel.org/ubuntu/pool/universe/g/gcc-8/g++-8_8.4.0-3ubuntu2_amd64.deb
!sudo apt install ./libstdc++-8-dev_8.4.0-3ubuntu2_amd64.deb ./g++-8_8.4.0-3ubuntu2_amd64.deb
# GCCのバージョンを変更(無理やり実行ファイルを変更)
!sudo mv /usr/bin/g++ /usr/bin/g++-11
!sudo mv /usr/bin/gcc /usr/bin/gcc-11
!sudo cp /usr/bin/g++-8 /usr/bin/g++
!sudo cp /usr/bin/gcc-8 /usr/bin/gcc
# ライブラリ
!pip install pillow requests matplotlib
!pip install numpy==1.23.4
nvidia-pyindexを事前にインストールしているにもかかわらず、なぜかうまくnvidia_tensorflow-1.15.5+nv22.12に依存するライブラリを探せていないようだったので、nvidia_dali_cuda110、nvidia_dali_nvtf_pluginについては手動でインストールさせました。
あとは、!pip install hogeで必要なライブラリをインストールすればStyleGAN2を動かすことができました。