
ที่เก็บนี้ให้การใช้งาน ที่แม่นยำ มีประสิทธิภาพ และ ขยายได้ ของตัวชี้วัดยอดนิยมสำหรับการประเมินแบบจำลองการกำเนิดรวมถึง:
ความแม่นยำเชิงตัวเลข : ซึ่งแตกต่างจากการปรับแต่งอื่น ๆ อีกมากมายค่าที่ผลิตโดยการใช้งานอ้างอิงการจับคู่ความเที่ยงตรงของคบเพลิงจนถึงความแม่นยำของเครื่อง Floating Point สิ่งนี้ช่วยให้การใช้ความเที่ยงตรงของคบเพลิงสำหรับการรายงานตัวชี้วัดในเอกสารแทนการใช้งานอ้างอิงที่กระจัดกระจายและช้า อ่านเพิ่มเติมเกี่ยวกับความแม่นยำเชิงตัวเลข
ประสิทธิภาพ : การแบ่งปันคุณสมบัติระหว่างตัวชี้วัดที่แตกต่างกันช่วยประหยัดเวลาการคำนวณและระดับการแคชเพิ่มเติมหลีกเลี่ยงคุณสมบัติการคำนวณใหม่และสถิติเมื่อใดก็ตามที่เป็นไปได้ ประสิทธิภาพสูงช่วยให้การใช้ความเที่ยงตรงของคบเพลิงในลูปการฝึกอบรมเช่นในตอนท้ายของทุกยุค อ่านเพิ่มเติมเกี่ยวกับประสิทธิภาพ
Extensibility : การเกินกว่าการสร้างภาพ 2D นั้นง่ายเนื่องจากโมดูลสูงและเป็นนามธรรมของตัวชี้วัดจากข้อมูลอินพุตโมเดลและสารสกัดจากคุณลักษณะ ตัวอย่างเช่นหนึ่งสามารถสลับ exceptractor inceptionv3 feature สำหรับหนึ่งที่ยอมรับปริมาณการสแกน 3 มิติเช่นที่ใช้ใน MRI อ่านเพิ่มเติมเกี่ยวกับ Extensibility
tldr; การประเมิน GAN ที่รวดเร็วและเชื่อถือได้ใน Pytorch
pip install torch-fidelityดูเพิ่มเติมที่: การติดตั้งรหัส GitHub ล่าสุด
ด้านล่างนี้เป็นสามตัวอย่างของการใช้ความเที่ยงตรงของคบเพลิงเพื่อประเมินตัวชี้วัดจากบรรทัดคำสั่ง ดูตัวอย่างเพิ่มเติมในเอกสาร
คะแนนเริ่มต้นของการฝึกอบรม CIFAR-10:
> fidelity --gpu 0 --isc --input1 cifar10-train
inception_score_mean: 11.23678
inception_score_std: 0.09514061 คะแนนเริ่มต้นของไดเรกทอรีของภาพที่เก็บไว้ใน ~/images/ :
> fidelity --gpu 0 --isc --input1 ~ /images/ การคำนวณที่มีประสิทธิภาพของ ISC และ PPL สำหรับ input1 และ FID, KID, PRC ระหว่างแบบจำลองการกำเนิดที่เก็บไว้ใน ~/generator.onnx และ CIFAR-10 แยกการฝึกอบรม:
> fidelity
--gpu 0
--isc
--fid
--kid
--ppl
--prc
--input1 ~ /generator.onnx
--input1-model-z-type normal
--input1-model-z-size 128
--input1-model-num-samples 50000
--input2 cifar10-train ดูเพิ่มเติม: ตัวอย่างการใช้งานอื่น ๆ
เมื่อพูดถึงการติดตามประสิทธิภาพของแบบจำลองการกำเนิดขณะที่พวกเขาฝึกอบรมการประเมินการวัดหลังจากทุกยุคสมัยมีราคาแพงอย่างห้ามเนื่องจากเวลาการคำนวณที่ยาวนาน torch_fidelity จัดการกับปัญหานี้โดยการใช้การแคชอย่างเต็มที่เพื่อหลีกเลี่ยงการคำนวณคุณสมบัติทั่วไปและสถิติต่อเมตรเมื่อเป็นไปได้ การคำนวณตัวชี้วัดทั้งหมดสำหรับ 50000 32x32 ภาพที่สร้างขึ้นและ cifar10-train ใช้เวลาเพียง 2 นาที 26 วินาทีใน NVIDIA P100 GPU เมื่อเทียบกับ> 10 นาทีหากใช้รหัสเดิม ดังนั้นการวัดคอมพิวเตอร์ 20 เท่าตลอดวงจรการฝึกอบรมทั้งหมดทำให้เวลาการฝึกอบรมโดยรวมนานขึ้นเพียงหนึ่งชั่วโมง
ในตัวอย่างต่อไปนี้ให้สมมติว่าการตั้งค่าการสร้างภาพที่ไม่มีเงื่อนไขด้วย CIFAR-10 และ generator รุ่น Generative ซึ่งใช้เวกเตอร์เสียงรบกวนปกติ 128 มิติ
ก่อนนำเข้าโมดูล:
import torch_fidelityเพิ่มบรรทัดต่อไปนี้ในตอนท้ายของการประเมินยุค:
wrapped_generator = torch_fidelity . GenerativeModelModuleWrapper ( generator , 128 , 'normal' , 0 )
metrics_dict = torch_fidelity . calculate_metrics (
input1 = wrapped_generator ,
input2 = 'cifar10-train' ,
cuda = True ,
isc = True ,
fid = True ,
kid = True ,
prc = True ,
verbose = False ,
)พจนานุกรมที่เกิดขึ้นพร้อมตัวชี้วัดที่คำนวณได้สามารถบันทึกโดยตรงไปยัง Tensorboard, Wandb หรือคอนโซล:
print ( metrics_dict )เอาท์พุท:
{
'inception_score_mean' : 11.23678 ,
'inception_score_std' : 0.09514061 ,
'frechet_inception_distance' : 18.12198 ,
'kernel_inception_distance_mean' : 0.01369556 ,
'kernel_inception_distance_std' : 0.001310059
'precision' : 0.51369556 ,
'recall' : 0.501310059
}ดูเพิ่มเติม: การอ้างอิง API เต็มรูปแบบ
อ้างถึง sngan_cifar10.py สำหรับตัวอย่างการฝึกอบรมที่สมบูรณ์
วิวัฒนาการของแฝงของเครื่องกำเนิดไฟฟ้าคงที่ในตัวอย่าง:

จุดตรวจสอบเครื่องกำเนิดไฟฟ้าที่เกิดจากการฝึกอบรมตัวอย่างสามารถดาวน์โหลดได้ที่นี่
แสดงให้เห็นว่าเครื่องมือ fidelity แบบสแตนด์อโลนจะไม่สามารถใช้งานได้เว้นแต่จะมีการเพิ่มเส้นทางด้านบนลงในตัวแปรสภาพแวดล้อมเส้นทาง หากการแก้ไขเป็นสิ่งที่ไม่พึงประสงค์เครื่องมือยังสามารถเรียกได้ด้วยเส้นทางเต็ม: <SOMEPATH>/fidelity
แนะนำให้อ้างอิงเพื่อเสริมสร้างโปรโตคอลการประเมินผลในงานที่ต้องอาศัยความเที่ยงตรงของคบเพลิง เพื่อให้แน่ใจว่ามีการทำซ้ำเมื่ออ้างถึงที่เก็บนี้ให้ใช้ bibtex ต่อไปนี้:
@misc{obukhov2020torchfidelity,
author={Anton Obukhov and Maximilian Seitzer and Po-Wei Wu and Semen Zhydenko and Jonathan Kyl and Elvis Yu-Jing Lin},
year=2020,
title={High-fidelity performance metrics for generative models in PyTorch},
url={https://github.com/toshas/torch-fidelity},
publisher={Zenodo},
version={v0.3.0},
doi={10.5281/zenodo.4957738},
note={Version: 0.3.0, DOI: 10.5281/zenodo.4957738}
}