นี่คือพอร์ตของการดำเนินการอย่างเป็นทางการของระยะการเริ่มต้นFréchetไปยัง Pytorch ดู https://github.com/bioinf-jku/ttur สำหรับการใช้งานดั้งเดิมโดยใช้ TensorFlow
FID เป็นการวัดความคล้ายคลึงกันระหว่างชุดข้อมูลสองชุด มันแสดงให้เห็นว่ามีความสัมพันธ์ที่ดีกับการตัดสินใจของมนุษย์เกี่ยวกับคุณภาพภาพและส่วนใหญ่มักใช้ในการประเมินคุณภาพของตัวอย่างของเครือข่ายฝ่ายตรงข้าม FID คำนวณโดยการคำนวณระยะห่างจากFréchetระหว่างสอง Gaussians ที่ติดตั้งเพื่อแสดงคุณสมบัติของเครือข่าย Inception
ข้อมูลเชิงลึกเพิ่มเติมและการประเมินอย่างอิสระของคะแนน FID สามารถพบได้ใน Gans ที่สร้างขึ้นเท่ากันหรือไม่? การศึกษาขนาดใหญ่
น้ำหนักและโมเดลนั้นเหมือนกับในการใช้งาน TensorFlow อย่างเป็นทางการและได้รับการทดสอบเพื่อให้ได้ผลลัพธ์ที่คล้ายกันมาก (เช่น. .08 ข้อผิดพลาดสัมบูรณ์และข้อผิดพลาดสัมพัทธ์ 0.0009 บน LSUN โดยใช้ภาพที่สร้าง Progan) อย่างไรก็ตามเนื่องจากความแตกต่างในการใช้งานการแก้ไขภาพและแบ็กเอนด์ไลบรารีผลลัพธ์ 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 ที่จะใช้
แตกต่างจากการใช้งานอย่างเป็นทางการคุณสามารถเลือกที่จะใช้เลเยอร์คุณสมบัติที่แตกต่างกันของเครือข่าย Inception แทนเลเยอร์ 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 ที่ได้รับการฝึกฝนโดยกฎการอัพเดทสองครั้งที่มาบรรจบกันเพื่อสมดุลของแนชในท้องถิ่น" ดู https://arxiv.org/abs/1706.0855.0855
การใช้งานดั้งเดิมคือโดยสถาบันชีวสารสนเทศศาสตร์ JKU Linz ได้รับใบอนุญาตภายใต้ Apache License 2.0 ดู https://github.com/bioinf-jku/ttur