GAN มีโหมดการทำงานที่ไม่สําเร็จหลายรูปแบบ ปัญหาที่พบได้ทั่วไปเหล่านี้ล้วนเป็นหัวข้อที่นักวิจัยกำลังศึกษาอยู่ แม้ว่าจะยังแก้ปัญหาเหล่านี้ไม่ได้ทั้งหมด แต่เราจะพูดถึงสิ่งที่ผู้ใช้ได้ลองทำ
การไล่ระดับสีที่เลือนหายไป
งานวิจัยชี้ว่าหากตัวแยกแยะทำงานได้ดีเกินไป การฝึกสร้างอาจไม่สำเร็จเนื่องจากการลดลงของอนุพันธ์ ด้วยเหตุนี้ ตัวแยกแยะแบบเพิ่มประสิทธิภาพจึงให้ข้อมูลไม่เพียงพอที่จะช่วยให้เครื่องกำเนิดภาพทํางานได้
การพยายามแก้ไข
- Wasserstein Loss: Wasserstein Loss ออกแบบมาเพื่อป้องกันไม่ให้ Gradient จางหายไปแม้ว่าคุณจะฝึก Discriminator ให้มีประสิทธิภาพสูงสุดแล้วก็ตาม
- การสูญเสียแบบ Minimax ที่แก้ไขแล้ว: บทความ GAN ฉบับแรกเสนอการแก้ไขการสูญเสียแบบ Minimax เพื่อจัดการกับ Gradient ที่หายไป
โหมดยุบ
โดยปกติแล้ว คุณต้องการให้ GAN ผลิตเอาต์พุตที่หลากหลาย เช่น คุณต้องการให้ใบหน้าแต่ละใบหน้าแตกต่างกันสำหรับอินพุตแบบสุ่มทั้งหมดในเครื่องมือสร้างใบหน้า
อย่างไรก็ตาม หากเครื่องมือสร้างเอาต์พุตที่สมเหตุสมผลเป็นพิเศษ เครื่องมือสร้างอาจเรียนรู้ที่จะสร้างเอาต์พุตนั้นเท่านั้น อันที่จริงแล้ว ตัวสร้างจะพยายามค้นหาเอาต์พุตเดียวที่ดูเหมือนจะเป็นไปได้มากที่สุดสำหรับตัวแยกแยะอยู่เสมอ
หากเครื่องกำเนิดเริ่มสร้างเอาต์พุตเดียวกัน (หรือชุดเอาต์พุตขนาดเล็ก) ซ้ำๆ กลยุทธ์ที่ดีที่สุดของโปรแกรมแยกแยะคือการเรียนรู้ที่จะปฏิเสธเอาต์พุตนั้นเสมอ แต่หากตัวแยกแยะรุ่นถัดไปติดอยู่ในจุดต่ำสุดในพื้นที่และไม่พบกลยุทธ์ที่ดีที่สุด การทำซ้ำของตัวแปรสร้างรุ่นถัดไปก็จะพบเอาต์พุตที่น่าเชื่อถือที่สุดสำหรับตัวแยกแยะปัจจุบันได้ง่ายๆ
แต่ละรอบของ Generator จะเพิ่มประสิทธิภาพให้กับตัวแยกแยะบางตัวมากเกินไป และตัวแยกแยะก็ไม่สามารถเรียนรู้วิธีหลบหนีจากกับดักได้ ด้วยเหตุนี้ ตัวแปรจึงสลับใช้ประเภทเอาต์พุตเพียงไม่กี่ประเภท ความล้มเหลวของ GAN รูปแบบนี้เรียกว่าการยุบโหมด
การพยายามแก้ไข
แนวทางต่อไปนี้จะพยายามบังคับให้เครื่องมือสร้างขยายขอบเขตโดยป้องกันไม่ให้เครื่องมือเพิ่มประสิทธิภาพสำหรับตัวระบุแบบคงที่รายการเดียว
- การสูญเสียของ Wasserstein: การสูญเสียของ Wasserstein ช่วยลดการยุบตัวของโมเดลโดยให้คุณฝึกตัวแยกแยะให้ดีที่สุดได้โดยไม่ต้องกังวลเกี่ยวกับลู่ลาดที่หายไป หากตัวแยกแยะไม่ติดอยู่ในจุดต่ำสุดในพื้นที่ มันจะเรียนรู้ที่จะปฏิเสธเอาต์พุตที่เครื่องกำเนิดไฟฟ้าทำให้เสถียร ดังนั้น โปรแกรมสร้างจึงต้องลองวิธีใหม่
- Unrolled GAN: Unrolled GAN ใช้ฟังก์ชันการสูญเสียของ Generator ซึ่งรวมการแยกประเภทของ Discriminator ปัจจุบัน รวมถึงเอาต์พุตของ Discriminator เวอร์ชันในอนาคต ดังนั้น เครื่องมือสร้างจึงไม่สามารถเพิ่มประสิทธิภาพให้กับตัวแยกแยะรายการเดียวมากเกินไป
ไม่สามารถรวม
GAN มักจะทำงานไม่สำเร็จตามที่ได้กล่าวไว้ในข้อบังคับเกี่ยวกับการฝึก
การพยายามแก้ไข
นักวิจัยได้พยายามใช้รูปแบบต่างๆ ของการปรับให้เหมาะสมเพื่อปรับปรุงการบรรจบของ GAN ซึ่งรวมถึง
- การเพิ่มสัญญาณรบกวนให้กับอินพุตของตัวแยกแยะ: โปรดดูตัวอย่างที่หัวข้อแนวทางการสร้างวิธีการที่มีหลักการสำหรับการฝึก Generative Adversarial Network
- การลดน้ำหนักตัวแยกแยะ: โปรดดูตัวอย่างที่การทำให้การฝึก Generative Adversarial Network ทำงานได้อย่างเสถียรผ่านการควบคุม