這是到Pytorch的官方實施距離的正式實施的港口。請參閱https://github.com/bioinf-jku/ttur使用TensorFlow的原始實現。
FID是兩個圖像數據集之間相似性的度量。證明它與人類對視覺質量的判斷良好相關,最常用於評估生成對抗網絡樣品的質量。 FID是通過計算兩個高斯擬合以特徵構成網絡表示的高斯之間的距離來計算得出的。
在gan中可以找到進一步的見解和對FID分數的獨立評估嗎?一項大規模研究。
權重和模型與官方Tensorflow實現完全相同,並經過測試以給出非常相似的結果(例如,使用Progan生成的圖像,例如.08絕對誤差和LSUN的0.0009相對誤差)。但是,由於圖像插值實現和庫後端的差異,FID結果仍然與原始實現略有不同。因此,如果您在論文中報告了FID分數,並且希望它們與其他論文中報告的FID分數完全媲美,則應考慮使用官方的TensorFlow實施。
從PIP安裝:
pip install pytorch-fid
要求:
要計算兩個數據集之間的FID分數,其中每個數據集的圖像包含在單個文件夾中:
python -m pytorch_fid path/to/dataset1 path/to/dataset2
要在GPU上運行評估,請使用標誌--device cuda:N ,其中N是GPU使用的索引。
在與官方實現的不同之處,您可以選擇使用Inepper網絡的不同特徵層而不是默認的pool3層。由於較低層的特徵仍然具有空間範圍,因此在估計平均值和協方差之前,首先將全局平均值匯總到向量。
如果您要比較的數據集小於其他所需的2048張圖像,這可能會很有用。請注意,這改變了FID分數的幅度,您無法將它們與在另一個維度上計算的分數進行比較。最終的分數也可能不再與視覺質量相關。
您可以選擇要與標誌--dims N一起使用的功能的維度,其中n是特徵的維度。選擇是:
.npz存檔經常使用的用例是將多個模型與原始數據集進行比較。為了在原始數據集中多次保存培訓,還可以從數據集中生成兼容的.npz檔案。這是使用前面提到的參數的任何組合以及添加--save-stats標誌的任何組合來完成的。例如:
python -m pytorch_fid --save-stats path/to/dataset path/to/outputfile
然後,可以將輸出文件代替原始數據集的路徑以進行進一步的比較。
如果您在研究中使用此存儲庫,請考慮使用以下Bibtex條目引用它:
@misc{Seitzer2020FID,
author={Maximilian Seitzer},
title={{pytorch-fid: FID Score for PyTorch}},
month={August},
year={2020},
note={Version 0.3.0},
howpublished={url{https://github.com/mseitzer/pytorch-fid}},
}
此實施是根據Apache許可證2.0許可的。
FID是由Martin Heusel,Hubert Ramsauer,Thomas Unterthiner,Bernhard Nessler和Sepp Hochreiter介紹的,“經過兩個時間尺度更新訓練的gans the https://arxiv.org.org/abs/1706.08550000
最初的實施是由生物信息學研究所JKU Linz,根據Apache許可證2.0許可。請參閱https://github.com/bioinf-jku/ttur。