[論文メモ] PixelFolder: An Efficient Progressive Pixel Synthesis Network for Image Generation

arxiv.org

Pixel Shufflerを使ったピクセルレベルの画像生成

f:id:Ninhydrin:20220412090208p:plain

既存手法にCIPSというのがあり、これはピクセル座標と潜在変数から画像を生成するというもの。ピクセルは独立で、空間方向でのconvolutionはなく、基本ピクセル独立のMLP(Network In Networkみたいな)。
しかし、メモリの消費も大きく計算量も多いのでそれをどうにかしたいというお気持ち。

手法

Pixel Shufflerを導入して解像度を下げる。ここではpixel foldingという名前をつけているが統一してほしい。ここでは一応pixel foldingという名前を使う。

pixel foldingの仕組みは図3(a)を参照。
f:id:Ninhydrin:20220412091240p:plain
pixel foldingはあるテンソル X \in \mathbb{R}^{H \times W \times d} X' \in \mathbb{R}^{\frac{H}{4} \times \frac{W}{4} \times 4d}にreshapeし解像度を下げる(図3(a)の上)。
逆操作のpixel unfoldingはテンソル X \in \mathbb{R}^{\frac{H}{4} \times \frac{W}{4} \times 4d} X' \in \mathbb{R}^{H \times W \times d}にreshapeし解像度を上げる(図3(a)の下)。
reshapeするだけなので計算コストも少なく情報も落ちない。

このpixel foldingを使ったアーキテクチャをPixelFolderとする。
アーキテクチャの全体像は図2(b)を参照。ちなみに図2(a)が既存手法のCIPSのアーキテクチャ
f:id:Ninhydrin:20220412091959p:plain

アーキテクチャは各解像度で各ピクセルの初期値となる入力があり、入力と同じサイズの画像を生成する。最終的にそれらをターゲットの解像度にアップサンプリングし足し合わせることで画像を生成する。
途中pixel foldingで解像度を落としpixel unfoldingで元に戻すボトルネックな構造。

ピクセルに対してのMLPを適用して画像を生成するので解像度を下げるとコストを下げられる。ただすでにピクセル独立ではないと思う。

各解像度では初期値特徴を多分conv1x1あたりでチャンネル数を1/4にし、pixel folding -> ModConv -> pixel unfolding -> ModConv -> ToRGBというプロセスをたどる。自身より解像度の低いステージがある場合はその中間特徴も受け取る。
初期値特徴は各座標のフーリエ特徴と座標ごとの学習可能なパラメータ。
ModConvはStyleGAN2で採用されたModulated Convでこれは3x3カーネルサイズ。

実験・結果

データセットはFFHQとLSUN Churchで解像度は256x256。

モデルサイズや計算コストの比較。ピクセルレベルの生成なのでパラメータ数は少なく、解像度を落としているので計算もそこそこ速い。
f:id:Ninhydrin:20220412094032p:plain

品質
f:id:Ninhydrin:20220412093949p:plain

Ablations。

foldingとunfoldingをそれぞれアップサンプリングとDeConv(TransposeConv)に置き換え。計算コスト、品質ともにfolding・unfoldingが良さげ。
f:id:Ninhydrin:20220412094301p:plain

f:id:Ninhydrin:20220412094525p:plain
f:id:Ninhydrin:20220412094546p:plain

所感

CIPSについて聞いたことある気がと思ったら以前に実装したことがあるモデルだった。
CIPSは(確か)ピクセルが完全に独立だったが、PixelFolderはそうではなくなったのでCIPSは比較対象として微妙な気がする。StyleGAN2と比較してるのでいいが。
512x512やそれより大きな解像度の実験もやってほしかった。

最近Pixel Shuffler系を目にしていたのでやっぱり出てきたかという印象。名称を統一してほしい。

せっかくなのでCIPSを実装しキャラクター画像で実験した結果を供養しておく。
f:id:Ninhydrin:20220412095308p:plain