Skip to main content

Distribution Metrics for Generative Models

Distribution metric は、生成された sample set の分布が real data distribution にどれだけ近いかを測る指標です。個々の画像が美しいかというより、model 全体として 品質と多様性を両立しているか を見ます。

Inception Score

Inception Score (IS) は、生成画像を Inception v3 classifier に入れ、次の二つを同時に満たすほど高い score になるように設計されています。

  • 各画像の class prediction p(yx)p(y \mid x) が sharp である。
  • 生成画像全体の marginal class distribution p(y)p(y) が多様である。
IS=exp(Ex[DKL(p(yx)p(y))])\mathrm{IS} = \exp\left(\mathbb{E}_{x}\left[D_{\mathrm{KL}}\left(p(y \mid x)\,\|\,p(y)\right)\right]\right)

IS は初期の GAN evaluation で広く使われましたが、class 内 diversity を直接見ないこと、classifier の class taxonomy に依存すること、人間の知覚とずれることが課題です。

Fréchet Inception Distance

Fréchet Inception Distance (FID) は、real images と generated images を Inception feature space に写し、それぞれを Gaussian distribution と見なして distance を計算します。

FID=μrμg22+Tr(Σr+Σg2(ΣrΣg)1/2)\mathrm{FID} = \|\mu_r - \mu_g\|_2^2 + \operatorname{Tr}\left(\Sigma_r + \Sigma_g - 2(\Sigma_r \Sigma_g)^{1/2}\right)

ここで、μr,Σr\mu_r, \Sigma_r は real feature の平均と共分散、μg,Σg\mu_g, \Sigma_g は generated feature の平均と共分散です。低いほど real distribution に近いと解釈します。

FID の長所と限界

観点内容
長所品質と多様性をある程度同時に反映できる
長所model-level comparison に向いている
限界多数 sample が必要で、少数画像には不安定
限界Inception feature と Gaussian assumption に依存する
限界prompt alignment を直接評価しない

FD-DINO

FD-DINO は、FID の feature extractor を Inception v3 から DINOv2 などの self-supervised vision transformer に置き換える発想です。DINOv2 feature は semantic / perceptual representation が豊かで、classification 用に閉じた Inception feature より生成画像評価に適する場合があります。

FID の式自体はほぼ同じで、feature space を変えることで評価感度を変えます。

CMMD

CMMD は、CLIP feature space 上で Maximum Mean Discrepancy (MMD) を測る metric です。Gaussian assumption に頼る FID と異なり、kernel mean embedding の距離として distribution difference を測ります。

MMD2(P,Q)=Ex,xP[k(x,x)]+Ey,yQ[k(y,y)]2ExP,yQ[k(x,y)]\mathrm{MMD}^2(P, Q) = \mathbb{E}_{x,x' \sim P}[k(x,x')] + \mathbb{E}_{y,y' \sim Q}[k(y,y')] - 2\mathbb{E}_{x \sim P, y \sim Q}[k(x,y)]

CMMD では、CLIP-L feature と Gaussian RBF kernel を使う構成が代表的です。Text-image model の embedding と相性が良く、inpainting evaluation でも候補になります。

Fréchet Video Distance

Fréchet Video Distance (FVD) は、FID を video feature space に拡張した metric です。生成動画と real video を video recognition model の feature に写し、Gaussian distribution 間の Fréchet distance を測ります。

FVD は video generation の代表的な single-number metric ですが、temporal consistency、motion、prompt alignment、style などを一つの数値に潰すため、VBench のような multi-dimensional benchmark と併用するのが望ましいです。

いつ使うべきか

状況推奨 metric
GAN / image generator の model-level 比較FID、FD-DINO、CMMD
生成画像が少数しかないAesthetic Score、CLIP-IQA、human rating を優先
Prompt への忠実度を見たいCLIPScore、VQA Score、Gecko Score
Video generation を総合評価したいVBench、FVD を併用
Inpainting で大規模 dataset があるFID、FD-DINO、CMMD、LPIPS

数式で見る FID / KID / precision-recall の関係

FID は、feature distribution を Gaussian と見なし、平均と共分散の距離を測ります。

FID=μrμg22+Tr(Σr+Σg2(ΣrΣg)1/2)\mathrm{FID}=\|\boldsymbol{\mu}_r-\boldsymbol{\mu}_g\|_2^2+ \mathrm{Tr}\left(\boldsymbol{\Sigma}_r+\boldsymbol{\Sigma}_g-2(\boldsymbol{\Sigma}_r\boldsymbol{\Sigma}_g)^{1/2}\right)

KID は、MMD の unbiased estimator として定義されます。

MMD2(P,Q)=Ex,xP[k(x,x)]+Ey,yQ[k(y,y)]2ExP,yQ[k(x,y)]\mathrm{MMD}^2(P,Q)=\mathbb{E}_{x,x'\sim P}[k(x,x')]+ \mathbb{E}_{y,y'\sim Q}[k(y,y')]-2\mathbb{E}_{x\sim P,y\sim Q}[k(x,y)]

この式の気持ちは、「実データ特徴と生成特徴の分布がどれくらい近いか」を測るというものです。FID は平均と共分散に要約するため計算しやすい一方、multi-modal な失敗を見落とすことがあります。Precision / recall 型 metric は、quality と diversity を分けて見るために使います。

  • Precision は「生成 sample が実データ manifold に乗っているか」を見ます。
  • Recall は「生成分布が実データ manifold をどれくらい覆えているか」を見ます。

したがって、FID が良くても recall が低ければ mode dropping が疑われ、precision が低ければ破綻 sample が多い可能性があります。

関連ページ

主なソース